要求:设计硬件电路并编写程序,实现AT89C51单片机控制一个16×16 LED点阵屏拉幕式显示汉字。
一、先提取需要展示汉字的字模,在Keil上写入代码
取字模我用的是字模精灵,注意选纵向取模。 ![在这里插入图片描述](https://img-blog.csdnimg.cn/cf7ebddc9eb042d8ab86d2aca370f5c8.png)
以下是代码:
#include
unsigned int i;
unsigned char j,k;
/*---转换字符 送 ---*/
unsigned char code zifu1[]=
{0x02,0x00,0x02,0x02,0x42,0x04,0x33,0xF8,0x00,0x04,0x11,0x02,0x91,0x0A,0x71,0x12,
0x11,0x62,0x1F,0x82,0x11,0x42,0x31,0x22,0xD1,0x1A,0x11,0x02,0x01,0x02,0x00,0x00};
/*---转换字符 你 ---*/
unsigned char code zifu2[]=
{0x00,0x80,0x01,0x00,0x06,0x00,0x1F,0xFF,0xE0,0x00,0x02,0x08,0x04,0x30,0x18,0xC0,
0xF0,0x02,0x10,0x01,0x13,0xFE,0x10,0x00,0x10,0x80,0x14,0x60,0x18,0x18,0x00,0x00};
/*---转换字符 一 ---*/
unsigned char code zifu3[]=
{0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,
0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x00,0x00};
/*---转换字符 朵 ---*/
unsigned char code zifu4[]=
{0x01,0x02,0x01,0x42,0x02,0x44,0x04,0x44,0x78,0x48,0x40,0x50,0x40,0x60,0x41,0xFF,
0x40,0x60,0x40,0x50,0x7C,0x48,0x02,0x44,0x02,0x44,0x02,0x42,0x02,0x02,0x00,0x00};
/*---转换字符 小 ---*/
unsigned char code zifu5[]=
{0x00,0x10,0x00,0x20,0x00,0xC0,0x07,0x00,0x00,0x00,0x00,0x02,0x00,0x01,0xFF,0xFE,
0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x02,0x00,0x01,0x80,0x00,0x70,0x00,0x00};
/*---转换字符 红 ---*/
unsigned char code zifu6[]=
{0x04,0x44,0x0C,0xE6,0x35,0x44,0xC6,0x48,0x04,0x48,0x18,0x48,0x00,0x02,0x20,0x02,
0x20,0x02,0x20,0x02,0x3F,0xFE,0x20,0x02,0x20,0x02,0x20,0x02,0x00,0x02,0x00,0x00};
/*---转换字符 花 ---*/
unsigned char code zifu7[]=
{0x20,0x20,0x20,0x40,0x20,0x80,0x21,0xFF,0xF6,0x00,0x20,0x08,0x20,0x10,0x20,0x20,
0x27,0xFC,0x20,0x82,0xF1,0x02,0x22,0x02,0x24,0x02,0x20,0x02,0x20,0x1E,0x00,0x00};
void delay() //延时函数
{
for(i=200;i>0;i--)
;
;
}
void main() //主函数
{
while(1)
{
for(k=60;k>0;k--) //显示汉字“送”
{
for(j=0;j0;k--) //显示汉字“你”
{
for(j=0;j0;k--) //显示汉字“一”
{
for(j=0;j0;k--) //显示汉字“朵”
{
for(j=0;j0;k--) //显示汉字“小”
{
for(j=0;j0;k--) //显示汉字“红”
{
for(j=0;j0;k--) //显示汉字“花”
{
for(j=0;j |