找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 376|回复: 1
打印 上一主题 下一主题
收起左侧

16*16点阵循环汉字

[复制链接]
跳转到指定楼层
楼主
ID:1106235 发表于 2023-12-25 18:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#include <reg51.h>
#define uchar unsigned char
#define uint unsigned int
#define out0 P0
#define out1 P1
#define out2 P2


void delay(uint y) //延时函数
{
        uchar x=250;
        for(;y>0;y--)
        {
                while(--x);
                x=100;
        }
}

uchar code string[]=
{
/*--  文字:  欢  --*/
/*--  宋体14;  此字体下对应的点阵为:宽x高=19x19   --*/
/*--  宽度不是8的倍数,现调整为:宽度x高度=24x19  --*/
0x08,0x68,0xE8,0xC8,0x88,0xE8,0xF8,0x78,0x88,0xF0,0xFE,0xFE,0xE6,0xA0,0x20,0xE0,
0xF0,0x60,0x00,0x00,0xC0,0xE0,0x79,0x1F,0x1F,0x7F,0x78,0xE3,0xC1,0xF8,0x3F,0x1F,
0x7F,0xF9,0xC1,0x80,0x00,0x00,0x80,0x80,0x86,0x9E,0x9C,0x98,0xF8,0xFC,0xFC,0x04,
0x06,0xFE,0xFC,0xF8,0x08,0xF8,0xF8,0xF8,0x00,

/*--  文字:  迎  --*/
/*--  宋体14;  此字体下对应的点阵为:宽x高=19x19   --*/
/*--  宽度不是8的倍数,现调整为:宽度x高度=24x19  --*/
0x80,0xC0,0xC0,0x7F,0x7F,0xC0,0xCF,0x9F,0x9F,0x8C,0x84,0xFF,0xFF,0xFF,0x88,0x9F,
0x9F,0x8F,0x00,0x00,0x00,0x00,0x08,0x18,0xF8,0xF0,0x60,0xFE,0xFE,0xFE,0x80,0xE0,
0x78,0x38,0x10,0x80,0x00,0x00,0x00,0x01,0x01,0x01,0x81,0xF1,0x7F,0x3F,0x03,0x01,
0xFF,0xFF,0x01,0x01,0x01,0x01,0xF1,0xF1,0x00,

/*--  文字:  光  --*/
/*--  宋体14;  此字体下对应的点阵为:宽x高=19x19   --*/
/*--  宽度不是8的倍数,现调整为:宽度x高度=24x19  --*/
0x00,0xFC,0xFC,0xF8,0xFF,0xFF,0xFF,0xC0,0x78,0x3E,0x2F,0x6F,0xE8,0xC8,0xC8,0x0C,
0x0C,0x08,0x00,0x00,0x7F,0x7F,0x3F,0xFF,0xFF,0xFF,0x00,0xFE,0xFE,0x82,0xFE,0xFE,
0xFF,0x83,0xFE,0xFE,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

/*--  文字:  临  --*/
/*--  宋体14;  此字体下对应的点阵为:宽x高=19x19   --*/
/*--  宽度不是8的倍数,现调整为:宽度x高度=24x19  --*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

}  ;
void main()
{        uchar i,j,n;
        while(1)
        {
                for(j=0;j<4;j++)
                {
                        for(n=0;n<40;n++)
                        {
                                for(i=0;i<15;i++)
                                {
                                        out1=i%15;
                                    out0=string[i*2+j*32];
                                        out2=string[i*2+1+j*32];
                                        delay(4);
                                         
                                }
                        }
                        delay(40);
                        out0=0x00;        //点阵正极接P0和P2口,所以给0熄灭
                        out2=0x00;
                 
                }
        }
}


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:1121110 发表于 2024-5-16 23:46 来自手机 | 只看该作者
  out1=i%15啥意思?大佬们给萌新讲一下?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表