16215;16点阵滚动显示汉字c51程序

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

16×16点阵滚动显示汉字c51程序给大家共享一个51驱动的16×16点阵滚动显示汉字的程序,是公车上用的。

下载源代码

#include

#define int8 unsigned char

#define int16 unsigned int

#define int32 unsigned long

int8 flag;

int8 n;

int8 code table[][32]={

欢迎您乘坐广州三汽公司公共汽车大学城2线开往大学城请您坐好扶稳

具体的字码省略,请点此处下载本列16×16点阵汉字滚动显示源代码

};

void delay(void);

int16 offset;

void main(void)

{

int8 i;

int8 *p;

flag=0x10;

n=0;

TMOD=0x01;

TH0=0xb1;

TL0=0xe0;

ET0=1;

EA=1;

TR0=1;

p=&table[0][0];

while (1)

{

for (i=0;i<8;i++) //显示左半边屏幕

{

P0=*(p+offset+2*i);

P2=i|0x08; //P2.4=0,P2.3=1 选中U2, 输出扫描码给U6 delay();

P0=*(p+offset+2*i+1);

P2=i|0x10; //P2.4=1,P2.3=0 选中U3, 输出扫描码给U7 delay();

}

for (i=8;i<16;i++) //显示右半边屏幕

{

P0=*(p+offset+2*i);

P2=(i-8)|0x20; //P2.5=1 P2.4=0, P2.3=0 选中U4,输出扫描码U8 delay();

P0=*(p+offset+2*i+1);

P2=(i-8)|0x40; //P2.6=1 P2.5=0, P2.4=0 选中U5,输出扫描码U9 delay();

}

}

}

void delay(void)

{

int16 i;

for (i=0;i<50;i++)

;

}

void timer0() interrupt 1 using 3

{

TF0=0;

TH0=0xb1;

TL0=0xe0;

if (n1100)

offset=0; n=0;

}

}

相关文档
最新文档