最适合初学液晶者参考的程序
来源:互联网 发布:苹果电脑系统修复软件 编辑:程序博客网 时间:2024/05/22 16:05
//液晶为金鹏12864,20引脚由于我单片机P1^0不能用让我受累了,再者就是延时函数两个变量写一样了
//本程序采用延时而不用查询状态
#include<reg52.h>
#define uchar unsigned char
sbit rs=P1^1; //inst_data标志位
sbit rw=P1^2; //读写状态标志位
sbit en=P1^3; //使能标志位
uchar code line1[]={"你好欢迎你来这里"};
uchar code line2[]={"我们这里欢迎你 "};
uchar code line3[]={"我叫权利红哈哈哈"};
uchar code line4[]={"互相学习共同进步"};
void send_comm(uchar comd); //写指令函数声明
void send_data(uchar dat); //写数据函数声明
void inst(); //初始化函数声明
void outchinese(uchar post,uchar hang,uchar datt[]);//输出汉字函数声明也可输出字符
void delay(uchar k); //延时函数声明
//主函数
void main()
{
inst();
outchinese(0x80,8,line1); //地址位已定义好按顺序输出line1~4的内容
outchinese(0x90,8,line2);
outchinese(0x88,8,line3);
outchinese(0x98,8,line4);
}
//发送指令函数
void send_comm(uchar comd)
{
en=0;
rs=0;
rw=0;
en=1;
P2=comd;
delay(1); //如果没有查忙函数这个延时必须加上
en=0;
}
//发送数据函数
void send_data(uchar dat)
{
en=0;
rs=1;
rw=0;
en=1;
P2=dat;
//delay(1); //这个延时可以省去
en=0;
}
//初始化函数
void inst()
{
send_comm(0x30);//功能设置,一次送8位数据,基本指令集
send_comm(0x01);//0000,0001 清DDRAM
send_comm(0x06);//0000,0010 DDRAM地址归位
send_comm(0x0C);//0000,1100 整体显示,游标off,游标位置off
}
//输出汉字或字符函数
void outchinese(uchar post,uchar hang,uchar datt[])
{
uchar i;
send_comm(post);
for (i=0;i<hang*2;i++)
send_data (datt[i]);
}
void delay(uchar k)
{
uchar i;
while(k--)
for(i=0;i<125;i++);
}
- 最适合初学液晶者参考的程序
- birt初学时遇到的几个问题,适合初学人员参考
- (原创)液晶的一个最简单的测试程序
- JAVA初学基本简单的程序----适合初学者(一)
- JAVA初学基本简单的程序----适合初学者(二)
- 适合初学ORACLE9的朋友们
- 最完美的适合
- 初学C语言者适合做的练习
- struts2 初学(一)最简单的struts2程序
- 初学JAVA面向对象最应该看的小程序
- C#初学界面参考小程序
- KM最容易看懂的教程和参考程序
- 初学Spring有没有适合的书?
- 一些最基本的概念,适合刚接触java者.
- 一些最基本的概念,适合刚接触java者
- 1601液晶程序
- 12864液晶程序
- lcd128*32液晶程序
- c#泛型的使用(轉)
- CLI 语言一览表
- C/C++一些知识2(指针)
- the Differences of Fold-left and Fold-right
- 反射的使用方法(轉)
- 最适合初学液晶者参考的程序
- 随机散列的实现(VB2005)
- jffs2文件系统不支持export的问题
- 在VC里没有ActiveMovieControl Object这个控件
- 修改网址占位符后的参数
- 我眼中的微软大战略和中国软件之殇
- css+div布局
- javascript实现无刷新计算GridView里购物清单总价格
- 全排列的随机散列的实现(VB2005)