钻石会员
主题
回帖0
积分11988
阅读权限50
注册时间2011-1-9
最后登录1970-1-1
在线时间 小时
|
本帖最后由 384065902 于 2013-1-28 15:51 编辑
回复 1# ylwwp
这个是有字库的屏,自己看说明书现写的一个代码,没有任何优化......自己编译通过了,直接把这些复制下来编译一下就行了,你看看好使不?
显示是测试字符的,写入一屏ascii正向字符,保持,再显示ascii反向字符,保持
#include <reg52.h>
sbit req=P3^0
void t(char i)
{
char j,k;
for(j=i;j>0;j--)
for(k=13;k>0;k--);;
}
void disp(char x,char y,char s)
{
y=y*8;
req=0;
t(2);
P1=0xf1;
req=1;
t(2);
req=0;
t(2);
P1=x;
reg=1;
t(2);
req=0;
t(2);
P1=y;
reg=1;
t(2);
req=0;
t(2);
P1=s;
reg=1;
t(2);
req=0;
}
void suan1()
{
char ss=0,yy,xx;
for(yy=0;yy<16;yy++)
{
for(xx=0;xx<30;xx++)
{
ss++;
disp(xx,yy,ss);
if(ss>126)
ss=0;
}
}
t(25000)
P1=0xf4;
req=1;
t(3);
req=0;
}
void suan2()
{
char ss=127,yy,xx;
for(yy=0;yy<16;yy++)
{
for(xx=0;xx<30;xx++)
{
ss--;
disp(xx,yy,ss);
if(ss==0)
ss=127;
}
}
t(25000)
P1=0xf4;
req=1;
t(3);
req=0;
}
void main()
{
while(1)
{
suan1;
suan2;
}
} |
|