分享一個8*8LED點陣屏縱向滾動并且顯示三個字"我愛你"
附件包含
proteus仿真圖
keilc源碼
取模軟件
另外附加proteus快速連接導線的方法(很實用的小技巧)

仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)
0.png (17.89 KB, 下載次數: 115)
下載附件
2018-5-4 02:47 上傳
0.png (45.81 KB, 下載次數: 109)
下載附件
2018-5-4 02:46 上傳
單片機源程序如下:
- #include<reg51.h>
- unsigned char code image[]={0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
- 0xC3,0xE7,0xE7,0xE7,0xE7,0xE7,0xC3,0xFF,
- 0x99,0x00,0x00,0x00,0x81,0xC3,0xE7,0xFF,
- 0x99,0x99,0x99,0x99,0x99,0x81,0xC3,0xFF,
- 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF}; //24個
- unsigned char code TAB[8] = {0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x01};
- void main(){
- EA=1;
- TMOD=0x01;
- TH0=0xfc;
- TL0=0x67;
- ET0=1;
- TR0=1;
- while(1);
- }
- void int0() interrupt 1{
- static unsigned char i=0;
- static unsigned char tmr=0;
- static unsigned char index=0;
- TH0=0xfc;
- TL0=0x67;
-
- P0=0xff;
- switch(i){
-
- case 0: P1=TAB[7];i++;P0=image[index+0]; break;
- case 1: P1=TAB[6];i++;P0=image[index+1]; break;
- case 2: P1=TAB[5];i++;P0=image[index+2]; break;
- case 3: P1=TAB[4];i++;P0=image[index+3]; break;
- case 4: P1=TAB[3];i++;P0=image[index+4]; break;
- case 5: P1=TAB[2];i++;P0=image[index+5]; break;
- case 6: P1=TAB[1];i++;P0=image[index+6]; break;
- case 7: P1=TAB[0];i=0;P0=image[index+7]; break;
- default: break;
- }
- tmr++;
- if(tmr>=250){
-
- tmr=0;
- index++;
- if(index>=32){
- index=0;
- }
-
- }
-
-
- }
復制代碼
順便分享一個小技巧:Protues小技巧之元件導線快速連
所有資料51hei提供下載:
LED點陣縱向滾動我愛你.rar
(269.79 KB, 下載次數: 167)
2018-5-4 02:50 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
|