lcd128*32液晶程序
来源:互联网 发布:硕普网络日语培训软件 编辑:程序博客网 时间:2024/05/01 07:20
/***************************
液晶:OCMJ2*8A程序
作者:孙毅明
Q Q :574287254
**************************/
#include<reg52.h>
#define uchar unsigned char
sbit BUSY=P0^4;
sbit REQ=P0^3;
void delay(uchar i)
{
uchar j=123;
while(i--)
{
while(j--);
}
}
void write(uchar buf)
{
P3=buf;
REQ=1;
while(!BUSY);
REQ=0;
}
void clear()
{
BUSY=1;
write(0xf4);
delay(20);
write(0xf4);
delay(20);
}
void disp(uchar y,uchar x,uchar *s,uchar time,bit n) // 显示字符,英文字母,数字,0-3行,0-15列,time为显示间隔时间,default值为1
{ //n的default值为0,当n为1时,字符串在一个地址循环显示
if(y>3)
{
while(*s!='/0')
{
write(0XF1);
if(n)write(x);
if(!n)write(x++);
write(y);
write(*s);
if(x==16){x=0;y=y+8;if(y>=33)y=1;}
s++;
delay(time+1);
}
}
else
{
switch(y)
{
case 0: y=1; break;
case 1: y=9; break;
case 2: y=17;break;
case 3: y=25;break;
}
while(*s!='/0')
{
write(0XF1);
write(x++);
write(y);
write(*s);
if(x==16){x=0;y=y+8;if(y==33)y=1;}
s++;
delay(time+1);
}
}
}
void disp_str(uchar y,uchar x,uchar *s,uchar time,bit n) //显示汉字,0-1行,0-7列,time为显示间隔时间,default值为1
{ //n的default值为0,当n为1时,字符串在一个地址循环显示
while(*s!='/0')
{
write(0XF0);
if(n)write(x);
if(!n)write(x++);
write(y);
write(*s-0xa0);
s++;
write(*s-0xa0);
s++;
if(x==8){x=0;y=~y;}
delay(time+1);
}
}
更好玩,更有趣,创客必进
- lcd128*32液晶程序
- 1601液晶程序
- 12864液晶程序
- [51]1602液晶程序
- [51]12864液晶程序
- 1602液晶程序一:
- STM8L15X液晶初始化程序
- 32 x 8段液晶驱动HT1622 程序
- PIC16F877驱动KS0066U液晶程序
- 51单片机1602液晶程序
- 液晶条UI程序框架
- atmega16中的1602液晶程序
- ST7920液晶---DS1302时钟程序
- 51单片机1602液晶程序main.c
- 20121113-1602液晶测试程序1
- 20121113-1602液晶测试程序2
- 12.9 1602液晶简单显示程序
- 单片机-1602液晶基本显示程序
- TypeError: __init__() got an unexpected keyword argument ‘maxlength’
- 我的广告~~~~村民自治的一种方式
- 能帮你找到网页设计灵感的16个网站
- 一个很好的编程学习网站(电子书,教程,经验分享等等):http://www.ccrun.com/index.asp
- 7月,昏昏噩噩
- lcd128*32液晶程序
- 哭问娘在何方(2)
- 2009年下半年计划
- java同步机制浅谈
- 哭问娘在何方(1)
- 设计模式在项目中的运用
- 关于LUT
- 关于模版
- 当“二奶”——贾府丫鬟的最高理想(2)