- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
12864教程画点画线换正弦波(非常完整)有程序
12864教程
(芯片HS12864-15B 带中文字库)
基本驱动函数 (一般包括四个函数):
1、写命令函数;
2、写数据函数;
3、读状态函数;
4、读数据函数
这四个函数并不是必须全部写的,具体要看你实现的功能,如果只是单纯的显示汉字和
字符,写命令、写数据、读状态这三个函数就够了,如过你还需要进行一些绘图的操作,那
读数据函数也必须书写。
另外关于读状态函数,其实也就是用于判忙操作,我看郭天祥的书里面是这样说的:原
则上每次对控制器进行读写操作之前,都必须进行读写检测,由于单片机的操作速度慢于液
晶控制器的反应速度,因此可不进行读写检测,或者只进行简短的延时即可。因此,读状态
函数也可以不写,只用简短的延时函数替换即可。
1. 写命令数据函数/
首先看时序图
由图可见操作很简单:
1RS=1(写数据操作);或者RS=0(写命令操作);
2RW=0;//指明为写操作
3E=1;
4DB=data;//data为你要写入的命令或数据值
具体程序如下:
//写命令子函数
void write_com(uchar Command)
{
RW=0; RS=0;
delay(1);
P0=Command;
EN=1;
delay(1);
EN=0;
}
//写数据子函数
void write_data(uchar Data)
{
RW=0; RS=1;
delay(1);
P0=Data;
EN=1;
EN=0;
}
初始化操作(以8位并行显示文字操作为例)
初始化操作流程如下图所示
初始化操作如下:
1芯片上电;
2延时40ms 以上;
3复位操作:RST 出现一个上升沿(RST=1;RST=0;RST=1;);
4功能设定;
5延时100us以上;
6再次进行功能设定;
7延时37us;
8显示开关控制;
9延时100us以上;
10清除显示;
11延时10ms以上;
12进入点设置;
13初始化结束;
具体程序
void LCD_str_init()
{
delay(40); //大于40MS 的延时程序
PSB=1; //设置为8BIT并口工作模式
delay(1); //延时
LCD_reset();
write_com(0x30); //Extended Function Set :8BIT设置,RE=0: basic
instruction set, G=0 :graphic display OFF
delay(100); //大于100uS的延时程序
write_com(0x30); //Function Set
delay(37); ////大于37uS的延时程序
write_com(0x08); //Display on Control
delay(100); //大于100uS的延时程序
write_com(0x10); //Cursor Display Control光标设置
delay(100); //大于100uS的延时程序
write_com(0x0C); //Display Control,D=1,显示开
delay(100); //大于100uS的延时程序
write_com(0x01); //Display Clear
delay(10); //大于10mS的延时程序
write_com(0x06); //Enry Mode Set,光标从右向左加1位移动
delay(100); //大于100uS的延时程序
}
显示图片的初始化函数:
//LCD显示图片初始化程序
void LCD_pi
文档评论(0)