极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12012|回复: 4

【分享】LCM14432@ST7920芯片,软SPI文本驱动程序

[复制链接]
发表于 2013-10-27 16:46:07 | 显示全部楼层 |阅读模式
适用
LCM模块:LCM3037BDW(TOpway),LCM14432等兼容中文显示模块(自带字库)
等兼容LCM模块
驱动芯片:ST7920+ST7921或其兼容芯片


代码参考(抄袭)DFRobot的LCD12864RSPI_1.0,对此表示感激。

代码说明:
仅对文本显示做出了功能上的封装
图形显示方面,直接用了DFRobot的函数,并不推荐该类型显示器进行图形方面的显示
引脚定义的修改,请到LCM14432_SPI.h文件
功能函数说明等,在该文件内有比较详细的说明,当然,你也可以打开LCM14432_SPI.cpp查看里边的一些说明。


函数说明:
void Init(void);//基础函数:初始化LCM
void delayns(void);//基础函数:LCM命令之间的延时
void WriteByte(int dat);//基础函数:往LCM发送数据
基础函数不推荐在程序中调用

void RW(int Z,int Data);//功能函数:读写LCM,格式:RW(0命令|1数据,内容)
void CLEAR(void);//功能函数:清除LCM内容
void DisplayString(int X,int Y,uchar *ptr,int dat);//功能函数:显示字符串,格式displaystring(行,列,内容,字串长度)
void DisplaySig(int M,int N,int sig);//功能函数:显示单个字符,格式displaySig(行,列,Asii值)
void DrawFullScreen(uchar *p);//功能函数:LCM进行绘图
void Inverse(int X);//功能函数:LCM反白显示,格式Inverse(0第一行|1第二行),调用1次为反白,调用2次为正常,要成对调用
void Roll(int X);//功能函数:LCM进行滚动显示,格式Roll(R向左滚动|L向右滚动)
void Cursor(int X);//功能函数:LCM显示并移动光标,格式Cursor(0向左移动|1向右移动)


特别注意:
1、由于ST7920是驱动128*64的芯片,但本文提到的中文lcm只有2行显示空间,但芯片却支持4行显示空间,有时候在您的参数上错误设置了,可能就会把内容写到第三和第四行去了。
2、芯片是支持128*64的,但显示模块却是144*32的,这个144多出来的部分,是第三行、第四方的一部分,在进行图形显示的时候,你会看到莫名其妙的东东哦。


附件下载:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复

使用道具 举报

 楼主| 发表于 2013-10-27 16:47:54 | 显示全部楼层
请各位懂驱动封装的兄弟多多指点,如有改进的地方,请直接说出来哦。。。

能力有限,难免会出现错误的地方,请多多包涵。
回复 支持 反对

使用道具 举报

发表于 2013-10-28 09:20:41 | 显示全部楼层
支持一下!
回复 支持 反对

使用道具 举报

发表于 2014-12-14 19:42:04 | 显示全部楼层
支持支持 有空研究下
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-12-14 22:05:12 | 显示全部楼层
老胖熊 发表于 2014-12-14 19:42
支持支持 有空研究下

谢谢……
希望你修改之后,也传上来我学习一下
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|联系我们|极客工坊

GMT+8, 2026-6-17 06:29 , Processed in 0.051446 second(s), 20 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表