8*8LED点阵显示0-9
时间:11-29
来源:互联网
点击:
电路很简单8*8点阵的行和列分别接在单片机的p3口和p1口,我测试成功.
#include unsigned char code tab[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};unsigned char code digittab[10][8]={ {0x00,0x00,0x3e,0x41,0x41,0x41,0x3e,0x00}, //0{0x00,0x00,0x00,0x00,0x21,0x7f,0x01,0x00}, //1{0x00,0x00,0x27,0x45,0x45,0x45,0x39,0x00}, //2{0x00,0x00,0x22,0x49,0x49,0x49,0x36,0x00}, //3{0x00,0x00,0x0c,0x14,0x24,0x7f,0x04,0x00}, //4{0x00,0x00,0x72,0x51,0x51,0x51,0x4e,0x00}, //5{0x00,0x00,0x3e,0x49,0x49,0x49,0x26,0x00}, //6{0x00,0x00,0x40,0x40,0x40,0x4f,0x70,0x00}, //7{0x00,0x00,0x36,0x49,0x49,0x49,0x36,0x00}, //8{0x00,0x00,0x32,0x49,0x49,0x49,0x3e,0x00} //9};unsigned int timecount;unsigned char cnta;unsigned char cntb;void main(void){TMOD=0x01;TH0=(65536-3000)/256;TL0=(65536-3000)%256;TR0=1;ET0=1;EA=1;while(1){;}}void t0(void) interrupt 1 using 0{TH0=(65536-3000)/256;TL0=(65536-3000)%256;P3=tab[cnta];P1=digittab[cntb][cnta];cnta++;if(cnta==8){cnta=0;}timecount++;if(timecount==333){timecount=0;cntb++;if(cntb==10){cntb=0;}}}
8*8LED点阵显示0- 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)