12864的程序绘图.字符.docx
《12864的程序绘图.字符.docx》由会员分享,可在线阅读,更多相关《12864的程序绘图.字符.docx(10页珍藏版)》请在第一文库网上搜索。
1、玩转12864液晶(1)-显示字符在我们常用的人机交互显示界面中,除了数码管,1ED,以及我们之前已经提到的1CD1602之外,还有一种液晶屏用的比较多。相信接触过单片机的朋友都知道了,那就是12864液晶。顾名思义,12864表示其横向可以显示128个点,纵向可以显示64个点。我们常用的12864液晶模块中有带字库的,也有不带字库的,其控制芯片也有很多种,如KSO108T6963,ST7920等等。在这里我们以ST7920为主控芯片的12864液晶屏来学习如何去驱动它。(液晶屏采用金鹏的OCMJ4X8C)关于这个液晶屏的更多信息,请参考它的DATASHEET,附件中有下载。我们先来了解一下它
2、的并行连接情况。下面是电路连接图从上面的图可以看出,液晶模块和单片机的连接除了PO口的8位并行数据线之外,还有RS,RW,E等几根线。其中R/S是指令和数据寄存器的选择控制线(串行模式下为片选),R/W是读写控制线(串行模式下是数据线),E是使能线(串行模式下为时钟线)。通过这几根控制线和数据线,再结合它的时序图,我们就可以编写出相应的驱动程序啦。看看并行模式下的写时序图:根据这个时序图,我们就可以写出写数据或者写命令到1CD12864液晶的子程序。读时序图如下:根据这个时序图我们就可以从1CD12864液晶模块内部RAM中读出相应的数据,我们的忙检测函数就是根据这个时序图写出来的。以及后面章
3、节中讲的画点函数等都要用到读时序。有了这两个时序图,然后我们再看看OCMJ4X8C的相关指令集,就可以编写出驱动程序了。这里要注意的是指令集分为基本指令集和扩充指令集,其中扩充指令集主要是与绘图相关,在此后的章节中会有相应的介绍。下面让我们根据这些编写出它的驱动程序吧。我的硬件测试条件为:STC89C516(11.0592MHz)+OCMJ4X8C实际显示效果图片如下:程序部分如下,请结合液晶模块的DATASHEET看程序,这样能够更加快速的弄懂程序的流程。大致有如下几个函数:写数据,写指令,忙检测,初始化,指定地址显示字符串等等。1. #inc1udereg52.h2. #inc1udein
4、trins.h3. sbitio_1CD12864_RS=P10;4. sbitio_1CD12864_RW=P11;5. sbitio_1CD12864_EN=P12;6. #defineio_1CD12864_DATAPORTPO7. #defineSET_DATAio_1CDI2864_RS=1;8. #defineSETJNCio_1CD12864_RS=0;9. #defineSET.READio_1CD12864.RW=1;10. #defineSET_WRITEio_1CD12864_RW=0;11. #defineSET_ENio_1CD12864.EN=1;12. #defi
5、neC1R_ENio_1CD12864_EN=0;13. voidVJ1Cd12864CheCkBusy_f(void)忙检测函数14. (15. unsignedintnTimeOut=0;16. SETJNC17. SET.READ18. C1R_EN19. SET_EN20. whi1e(io_1CD12864_DATAPORT&0x80)&(+nTimeOut!=0);21. C1R_EN22. SETJNC23. SET_READ24. 25. voidv_1cd12864SendCmd_f(unsignedcharbyCmd)发送命令26. 27. v_1cd12864CheCkB
6、usy_f();28. SETJNC29. SET_WRITE30. C1R_EN31. io_1CD12864_DATAPORT=byCmd;32. _nop_();33. _nop_();35.SET_EN36._nop_();37._nop_();38.C1R_EN39.SET_READ40.SETJNC41.)42.voidv_1cd12864SendData_f(unsignedcharbyData)发送数据43.(44.v_1cd12864CheckBusy_f();45.SET_DATA46.SET_WRITE47.C1R_EN48.io_1CD12864_DATAPORT=by
7、Data;49.-op-0;50.-P-();51.SET_EN52._nop_();53.-op-0;54.C1R_EN55.SET_READ56.SETJNC57.58.)59.voidv_De1ayMs_f(unsignedintnDe1ay)延时60.(61.unsignedinti;62.for(;nDe1ay0;nDe1ay)63.(64.for(i=125;i0;i-);65.)66.67.168.voidv_1cd12864Init_f(void)初始化69.(70.v_1cd12864SendCmd.f(0x30);基本指令集71.v_De1ayMs_f(50);72.v_1
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 12864 程序 绘图 字符