阿炳诶 阿炳诶
关注数: 22 粉丝数: 177 发帖数: 3,126 关注贴吧数: 35
新人求助:关于51单片机与8*8点阵。 本人在做51单片机与8*8点阵时遇到了问题,问题如下: 要设计一个滚动的,编译成功后发现点阵上某些字滚动的时候,字的一部分会一直是暗的,不亮。 不明所以,特来请教一下贴吧大神! 程序如下: #include<reg51.h> #define uchar unsigned char uchar code image[43][8]={ {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x78}, {0x00,0x00,0x00,0x00,0x00,0x00,0x78,0x24}, {0x00,0x00,0x00,0x00,0x00,0x78,0x24,0x22}, {0x00,0x00,0x00,0x00,0x78,0x24,0x22,0x22}, {0x00,0x00,0x00,0x78,0x24,0x22,0x22,0x24}, {0x00,0x00,0x78,0x24,0x22,0x22,0x24,0x78}, {0x00,0x78,0x24,0x22,0x22,0x24,0x78,0x00}, {0x78,0x24,0x22,0x22,0x24,0x78,0x00,0x44}, {0x24,0x22,0x22,0x24,0x78,0x00,0x44,0x7E}, {0x22,0x22,0x24,0x78,0x00,0x44,0x7E,0x40}, {0x22,0x24,0x78,0x00,0x44,0x7E,0x40,0x00}, {0x24,0x78,0x00,0x44,0x7E,0x40,0x00,0x20}, {0x78,0x00,0x44,0x7E,0x40,0x00,0x38,0x24}, {0x00,0x44,0x7E,0x40,0x00,0x38,0x24,0x7E}, {0x44,0x7E,0x40,0x00,0x38,0x24,0x7E,0x20}, {0x7E,0x40,0x00,0x38,0x24,0x7E,0x20,0x00}, {0x40,0x00,0x38,0x24,0x7E,0x20,0x00,0x44}, {0x00,0x38,0x24,0x7E,0x20,0x00,0x44,0x62}, {0x38,0x24,0x7E,0x20,0x00,0x44,0x62,0x52}, {0x24,0x7E,0x20,0x00,0x44,0x62,0x52,0x4C}, {0x7E,0x20,0x00,0x44,0x62,0x52,0x4C,0x00}, {0x20,0x00,0x44,0x62,0x52,0x4C,0x00,0x44}, {0x20,0x00,0x44,0x62,0x52,0x4C,0x00,0x44}, {0x44,0x62,0x52,0x4C,0x00,0x44,0x62,0x52}, {0x62,0x52,0x4C,0x00,0x44,0x62,0x52,0x4C}, {0x52,0x4C,0x00,0x44,0x62,0x52,0x4C,0x00}, {0x4C,0x00,0x44,0x62,0x52,0x4C,0x00,0x00}, {0x00,0x44,0x62,0x52,0x4C,0x00,0x00,0x00}, {0x44,0x62,0x52,0x4C,0x00,0x00,0x00,0x22}, {0x62,0x52,0x4C,0x00,0x00,0x00,0x22,0x4A}, {0x52,0x4C,0x00,0x00,0x00,0x22,0x4A,0x4A}, {0x4C,0x00,0x00,0x00,0x22,0x4A,0x4A,0x34}, {0x00,0x00,0x00,0x22,0x4A,0x4A,0x34,0x00}, {0x00,0x00,0x22,0x4A,0x4A,0x34,0x00,0x44}, {0x00,0x22,0x4A,0x4A,0x34,0x00,0x44,0x7E}, {0x22,0x4A,0x4A,0x34,0x00,0x44,0x7E,0x40}, {0x4A,0x4A,0x34,0x00,0x44,0x7E,0x40,0x00}, {0x4A,0x34,0x00,0x44,0x7E,0x40,0x00,0x00}, {0x34,0x00,0x44,0x7E,0x40,0x00,0x00,0x00}, {0x00,0x44,0x7E,0x40,0x00,0x00,0x00,0x00}, {0x44,0x7E,0x40,0x00,0x00,0x00,0x00,0x00}, {0x7E,0x40,0x00,0x00,0x00,0x00,0x00,0x00}, {0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00}, }; void main() { TMOD = 0x01; TH0 = 0xfc; TL0 = 0x67; EA = 1; ET0 = 1; TR0 = 1; while(1); } void Timer0() interrupt 1 { static counter=0; static j=0; static i=0; TH0 = 0xfc; TL0 = 0x67; counter++; if(counter==200) { counter=0; i++; if(i==43) i=0; } switch(j) { case 0:P0=image[i][0]; P1=0xfe; j++; break; case 1:P0=image[i][1]; P1=0xfd; j++; break; case 2:P0=image[i][2]; P1=0xfb; j++; break; case 3:P0=image[i][3]; P1=0xf7; j++; break; case 4:P0=image[i][4]; P1=0xef; j++; break; case 5:P0=image[i][5]; P1=0xdf; j++; break; case 6:P0=image[i][6]; P1=0xbf; j++; break; case 7:P0=image[i][7]; P1=0x7f; j=0; break; } } 求帮助,谢谢!!!
1 下一页