你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

[Nucleo学习]Nucleo-F072RB开发5110显示驱动库

[复制链接]
shower.xu 提问时间:2015-1-8 16:54 /
拿到板子有一段时间了,但是一直忙没有动手,最近摸索了一下,写了一个“标准”的nokia5110液晶的驱动库出来,练练手。

板载的F072是m0的内核,外设资源也很丰富,但之前F3/F4都有接触,所以对他其他方面没什么期待了,那为什么还要买它呢,我主要是看中了他的开放式可编程性能,mbed在线编程,标准Arduino Uno Revision 3的接口,也就是可以兼容Arduino Uno Revision 3的众多外设(可惜我没有);而且flash和ram
也相对较大,可玩性不错。


之前没玩过Arduino,但是它的大名早已有所耳闻,它的标准库操作和驱动类的实现很是强大,对编程的学习很有帮助。


手头上有一块之前剩下的5110的液晶,SPI驱动,小巧方便,打算先拿来试试。
QQ截圖20150108162833.jpg
库地址在http://developer.mbed.org/users/shower_xu/code/SX5110/
用起来很简单
  1. LcdPins myLcdPins = { SPI_MOSI, SPI_SCK, D9, D10, D8};
  2.     Lcd5110 myLcd( myLcdPins );    // SPI is started here (8-bits, mode 1)
  3.     myLcd.InitLcd();                // LCD is reset and DDRAM is cleared
复制代码
先设置驱动脚位,顺序是
struct LcdPins{    PinName mosi;    PinName sclk;    PinName dc;    PinName sce;    PinName rst;};
前两个是spi接口的IO,但是如果你硬件的IO口被占用需要用模拟的IO也可以,只需要把头文件里的#define HW_SPI注释掉即可。
接着调用InitLcd()方法来初始化lcd,就可以使用了。

库支持大部分函数,可以直接显示字符
  1.     public:
  2.         void InitLcd();
  3.         void clear();
  4.         void ShutdownLcd();
  5.         void SendCmd(char cmd);
  6.         void SendData(char data);
  7.         void TestLcd(char test_pattern);
  8.         
  9.     public:
  10.         void SetXY(char x, char y);
  11.         void write_char(char c);
  12.         void set_xy(unsigned char x,unsigned char y);
  13.         void write_stringxy(unsigned char x,unsigned char y,char *p);
  14.         void write_string(char *p);
  15.         char* NumToStr(int num);
复制代码
下面是图片
IMG_20150108_161310.jpg

收藏 1 评论12 发布时间:2015-1-8 16:54

举报

12个回答
相思谷 回答时间:2015-1-8 16:55:49
谢谢分享
沐紫 回答时间:2015-1-8 17:04:02
谢谢,楼主还可以分享方案参赛,拿开发经费支持https://www.stmcu.org.cn/page/STM32Nucleo-homepage/
麟狮蕟 回答时间:2015-1-9 00:29:33
手指一抖经验到手
我是酱油哥 回答时间:2015-1-9 08:45:44
不错不错
sasmike 回答时间:2015-1-9 09:37:10
挺有意思,不错!
万里-363223 回答时间:2015-1-9 10:56:33
谢谢分享
晓枫VS枯叶 回答时间:2015-1-9 16:03:02
楼主这个也能做参赛方案........之前我就分享了一个基于nucleo stm32f072的温度计,使用了tmp275和5110,也是基于mbed.........
terrypsp 回答时间:2015-2-24 14:50:20
有点意思
nobody8 回答时间:2015-2-24 14:56:31
谢谢分享
miniplayer 回答时间:2015-2-24 15:07:23
手指一抖经验到手
党国特派员 回答时间:2015-2-24 20:18:21
谢谢分享   nothing.png nothing.png nothing.png nothing.png nothing.png nothing.png nothing.png nothing.png nothing.png nothing.png
wamcncn 回答时间:2015-2-25 10:10:17
mbed在线编译,感觉不错,可是没有一定的教程,弄懂它还需要多看,感觉还是库开发比较实在

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版