本帖最后由 paradisespace 于 2012-5-21 10:36 编辑
关于ST7920控制器的12864液晶,网上资料有很多,但是大部分感觉都有漏洞或者说是错误。本文转载网上zhaoshan413之手,感谢他的无私贡献。真心觉得这篇文章有其分量,在阿莫论坛上貌似没有看到,所以想分享给各位,有不得当之处还望指点。
废话少说,正题吧!
关于ST7920的芯片说明书网上有很多这里就不占有阿莫的资源了,呵呵
一、首先说一下关于驱动函数的书写,这些是液晶显示的基础
一般包括四个函数:
1、写命令函数;
2、写数据函数;
3、读状态函数;
4、读数据函数;
这四个函数并不是必须全部写的,具体要看你实现的功能,如果只是单纯的显示汉字和字符,写命令、写数据、读状态这三个函数就够了,如过你还需要进行一些绘图的操作,那读数据函数也必须书写。
另外关于读状态函数,其实也就是用于判忙操作,我看郭天祥的书里面是这样说的:原则上每次对控制器进行读写操作之前,都必须进行读写检测,由于单片机的操作速度慢于液晶控制器的反应速度,因此可不进行读写检测,或者只进行简短的延时即可。因此,读状态函数也可以不写,只用简短的延时函数替换即可。
1、写操作的编写:
首先看一下时序图
照片 005.jpg (139.6 KB, 下载次数: 2)
下载附件
2012-5-21 10:11 上传
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
四、关于CGRAM的使用:
可以参考这个网站的程序: http://bbs.友好站点,请勿转贴.com/ShowTopic.aspx?id=81220 ST7920自行产生RAM提供使用者图像定义(造字)功能,可以提供四组16*16点的自定义图像空间,使用者可以将内部自行没有提供的图像自行定义到CGRAM中,便可以通过DDRAM显示在液晶屏上。注意:网上介绍说ST7920芯片同屏幕不能显示4个以上自定义汉字(用CGRAM)。显示CGRAM字型:将16位元资料写入DDRAM中,一共有0000H,0002H,0004H,0006H四种编码。
照片 012.jpg (109.79 KB, 下载次数: 0)
下载附件
2012-5-21 10:26 上传
在呢,看不到吗?
一周热门 更多>