打印
[牛人杂谈]

新唐使用笔记 - M051 的 N5110 液晶屏驱动

[复制链接]
2072|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
slotg|  楼主 | 2015-5-16 23:40 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 slotg 于 2015-5-16 23:43 编辑



帮单片机加上一个显示屏总是能够让系统看起来高档许多,这次我们帮 NuTiny-SDK-M051 开发板加上一个液晶屏,除了 12864 这种屏之外 Nokia 5110 液晶屏也是一个不错的选择,这种液晶屏的模块在目前很容易买的到,价格不贵相关的资料在网上也是很容易取得,只是不同公司生产的模块外接的管脚不一定相同,我手上这一片的接脚如下:


原理图:



模块与 NuTiny-SDK-M051 板连接的方式:

RST     -> P1.0
CE      -> P1.4 (SPISS0)
DC      -> P1.1
Din     -> P1.5 (MOSI_0)
Clk     -> P1.7 (SPICLK0)

Vcc     -> +5V
BL      -> +5V
Gnd     -> GND

N5110 屏是 84x48 点阵,在程序当中我们所使用的显示字体为 6x8 (含间隔),也就是在这个屏所能够显示的内容是一行 14 个字,总共 6 行。所使用的函式原本是在 MBED 环境下所使用的,我将其改写到 M051 下使用。

驱动程序提供了这些函数:

// 清除 N5110 显示内容
void N5110_Clear(void);

// 初始设定 N5110
void N5110_InitLcd(void);

// 设定显示的 X,Y 位置
void N5110_set_xy(unsigned char x,unsigned char y);

// 写一个英文字(6x8)
void N5110_write_char(char c);

// 写一串英文字串(6x8)
void N5110_write_string(char *p);

// 在 X,Y 位置写一串英文字串(6x8)
void N5110_write_stringxy(unsigned char x,unsigned char y,char *p);

main 回路演示了在屏的 4 个角落分别显示数字 0、1、2、3,并显示一些讯息,运行后效果如下:




工程文件,使用 KEIL 4.72 与 M051_Series_BSP_CMSIS_Rev3.00.002 库
D006.rar (1.26 MB)




新唐使用笔记 - M051 的 LCD12864 显示程式
https://bbs.21ic.com/icview-894166-1-1.html

新唐使用笔记 - 使用牛桥调试 MAX7219 模组
https://bbs.21ic.com/icview-904322-1-1.html

新唐使用笔记 - 使用 M051 设计一个计时器
https://bbs.21ic.com/icview-910044-1-1.html

新唐使用笔记 - M051 小游戏 (数字防御)
https://bbs.21ic.com/icview-917284-1-1.html




沙发
fjjjnk1234| | 2015-5-17 15:46 | 只看该作者
赞一个!

使用特权

评论回复
板凳
slotg|  楼主 | 2015-5-17 17:12 | 只看该作者

感谢关注 :handshake

使用特权

评论回复
地板
gaoyang9992006| | 2015-5-18 09:00 | 只看该作者
这个液晶屏有大量供货吗?我看都是诺基亚拆机货。

使用特权

评论回复
5
slotg|  楼主 | 2015-5-18 09:15 | 只看该作者
gaoyang9992006 发表于 2015-5-18 09:00
这个液晶屏有大量供货吗?我看都是诺基亚拆机货。

还没有正式去问过,但是目前看起来都是拆货的

使用特权

评论回复
6
Messi1999| | 2015-5-18 16:29 | 只看该作者
非常好的资料,谢谢分享
赞一个

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

38

主题

1177

帖子

6

粉丝