太原理工大学现代科技学院 课程设计
……………………………………装………………………………………订…………………………………………线………………………………………0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
/*-- 文字: 岁 --*/ /*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/ 0x01,0x00,0x21,0x08,0x21,0x08,0x21,0x08,0x3F,0xF8,0x04,0x00,0x04,0x00,0x0F,0xF8, 0x10,0x10,0x24,0x10,0x42,0x20,0x02,0x40,0x01,0x80,0x06,0x00,0x18,0x00,0x60,0x00, /*-- 文字: 拥 --* / /*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
0x10,0x00,0x13,0xFE,0x12,0x22,0xFE,0x22,0x12,0x22,0x13,0xFE,0x16,0x22,0x1A,0x22,
0x33,0xFE,0xD2,0x22,0x12,0x22,0x12,0x22,0x14,0x22,0x14,0x22,0x58,0x2A,0x20,0x04,
/*-- 文字: 抱 --*/ /*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/ 0x11,0x00,0x11,0x00,0x11,0x00,0x11,0xFC,0xFE,0x04,0x12,0x04,0x17,0xE4,0x1A,0x24, 0x32,0x24,0xD3,0xE4,0x12,0x14,0x12,0x08,0x12,0x02,0x12,0x02,0x51,0xFE,0x20,0x00, /*-- 文字: 新 --*/ /*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
0x10,0x00,0x08,0x0E,0x7F,0x70,0x22,0x40,0x14,0x40,0xFF,0x7E,0x08,0x48,0x08,0x48, 0xFF,0x48,0x08,0x48,0x2C,0x48,0x2A,0x88,0x4A,0x88,0x89,0x08,0x2A,0x08,0x10,0x08, /*-- 文字: 生 --*/ /*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/ 0x00,0x80,0x10,0xC0,0x10,0x80,0x10,0x88,0x1F,0xFC,0x20,0x80,0x20,0x80,0x40,0x88,
0x9F,0xFC,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x84,0x7F,0xFE,0x00,0x00,
}; register unsigned char i,j,k,l;
SCON =0x00; TMOD =0x01;
TR0 =1;
P1 =0x3F; IE =0x82; 太原理工大学现代科技学院 课程设计
……………………………………装………………………………………订…………………………………………线………………………………………while (1) { for(i=0;i<16;i++) { for(j=0;j<2;j++) for(k=1;k<9;k++) { for(l=0;l<16;l++) { dispram[l*BLKN] = dispram[l*BLKN] << 1 | dispram[l*BLKN+1] >> 7; dispram[l*BLKN+1] =dispram[l*BLKN+1] <<1 | Bmp[i][l*2+j] >> (8-k);
dispram[l*BLKN+2] =dispram[l*BLKN+2] <<1 | dispram[l*BLKN+3] >> 7;
dispram[l*BLKN+3] =dispram[l*BLKN+3] <<1 | Bmp[i+1][l*2+j] >>(8-k); } delay(100); } }delay(2000);
for(i=0;i<4;i++) { for(j=0;j<2;j++)
for(k=1;k<9;k++) {
for (l=0;l<16;l++)
{dispram[l*BLKN] = dispram[l*BLKN] >> 1 | dy[i*2][l*2+1-j] << (8-k);
dispram[l*BLKN+1] =dispram[l*BLKN+1] >> 1 |dispram[l*BLKN] << 7; dispram[l*BLKN+2] =dispram[l*BLKN+2] << 1 | dispram[l*BLKN+3] >> 7; dispram[l*BLKN+3] =dispram[l*BLKN+3] << 1 | dy[i*2+1][l*2+j] >> (8-k); 太原理工大学现代科技学院 课程设计
……………………………………装………………………………………订…………………………………………线………………………………………} delay(30); }
delay(2000); }delay(2000); for(i=0;i<4;i++) {for(j=0;j<16;j++) { for(k=0;k<15;k++) {dispram[k*BLKN]=dispram[(k+1)*BLKN]; dispram[k*BLKN+1]=dispram[(k+1)*BLKN+1]; dispram[k*BLKN+2]=dispram[(k+1)*BLKN+2]; dispram[k*BLKN+3]=dispram[(k+1)*BLKN+3]; } dispram[60]=sgp[i*2][j*2]; dispram[61]=sgp[i*2][j*2+1]; dispram[62]=sgp[i*2+1][j*2]; dispram[63]=sgp[i*2+1][j*2+1];
delay(100); } }delay(2000); } }
void delay(unsigned int dt) { register unsigned char bt; for(;dt;dt--) for (bt =0;bt<255;bt++); 太原理工大学现代科技学院 课程设计
……………………………………装………………………………………订…………………………………………线………………………………………} void leddisplay(void) interrupt 1 using 1 { register unsigned char i,j=BLKN; TH0=0xFC; TL0=0x18;
i=P1; i=++i & 0x0f; do { j--; SBUF = dispram[i*BLKN+j];
while(!TI);TI=0;
} while(j); G=1; P1&=0xf0; RCLK = 1; P1 |=i; RCLK=0; G=0; }
附录二 系统PCB图 太原理工大学现代科技学院 课程设计
……………………………………装………………………………………订…………………………………………线………………………………………
太原理工大学现代科技学院 课程设计
……………………………………装………………………………………订…………………………………………线………………………………………目录
一、功能要求
二、方案论证
2.1 LED驱动显示方案
2.2数据传输和显示方案 2.3系统整体方案框图 三、系统硬件电路设计
3.1单片机系统及其外围电路
3.2行驱动电路
3.3列驱动电路
四、主要元器件功能介绍
4.1 8×8点阵LED结构
4.2 74LS154芯片介绍
4.3 74LS595芯片介绍
五、系统软件设计
5.1 显示驱动程序
5.2软件调试
六.调试及性能分析
6.1硬件调试
6.2软件调试
七.设计总结
参考文献 附录一: 完整源程序
附录二:系统PCB图