緣由51單片機實現8*8滾動箭頭的程序,運行時什么圖案都沒有,甚至根本不亮 - 24小時必答區
#include<reg52.h>
unsigned char code M[]={0xff,0xff,0xfe,0xfd,0xf8,0xfd,0xfe,0xff,0xff,0xff,0xfd,0xfb,0xf0,0xfb,0xfd,0xff,0xff,0xff,0xfb,0xf7,0xe0,0xf7,0xfb,0xff,0xff,0xff,0xf7,0xef,0xc0,0xef,0xf7,0xff,0xff,0xff,0xef,0xdf,0x80,0xdf,0xef,0xff,0xff,0xff,0xdf,0xbf,0x00,0xbf,0xdf,0xff};
void main()
{unsigned char wei=0,zt=0,ys=0,cs=0,sj=0;while(1){//入門時可以用獨占計數延時到處嵌套,入門后中高級應用就不能再使用到處獨占嵌套循環延時,除了數碼管、點陣顯示器需要外。if(wei==0)wei=1;else wei*=2;//點陣位控制類似8位數碼管的位P3=M[sj+cs];//點陣數據對應1位8個燈亮滅P2=wei;while(++ys);//顯示延時必須獨占P2=P3=255;//消隱if(++sj>8){sj=0;++zt;}//控制點陣一屏顯示完成同時計算切合延時非獨占if(zt>47){cs+=8;if(cs>40)cs=0;zt=0;}}//控制切換速度另8個數據組成一屏即動畫速度到全部數據顯示完成
}