51单片机16点阵显示程序
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
#include
//汉字字模//
unsigned char matrix[]={0,2,127,64,63,1,34,21,12,22,101,4,3,0,0,0,0,0,240,16,224,0,128,96,128,96,128,112,0,0,0,0//家的字模};//填入你自己想要的字模
unsigned char selected[]={0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09,0x0a,0x0b,0x0c,0x0d,0x0e,0x0f};//74hc154位选
void delay(unsigned int num)
{ int a,b;
for(a=num;a>0;a--)
{;};
for(b=20;b>0;b--)
{;};
}
void main()
{
unsigned char x,y,i;
P0=0xff;//端口初始化
while(1)
{
for(x=0;x<1;x++) //字数,这里是显示一个字循环所以x<1让;
{ P1=0x00;//清0
P2=0x00;//清0
for(y=0;y<20;y++)//循环20次,这里决定了每个字出现的时间。要确定还要中
{
P1=0x00;//清0
P2=0x00;//清0
for(i=0;i<16;i++)//
{
P0=selected[i];
P1=matrix[x*32+i];
delay(1); }
P1=0x00;//清0
P2=0x00;//清0
for(i=16;i<32;i++)//
{
P0=selected[i-16];
P2=matrix[x*32+i];
delay(1);
} }
}
}
}