将SPI LCD与Arduino接口

问题描述 投票:0回答:2

我有一个LCD显示器,正试图与arduino交互。它使用SPI作为其通信接口,并且有一个应用笔记详细说明了与之通信的代码。我的问题是我不知道如何将应用笔记中的代码转录为基于C的处理/ Arduino语言。

这是有人可以帮助我完成的简单任务吗?我只需要能够在此屏幕上写两行文本,仅此而已。

数据表:http://www.newhavendisplay.com/specs/NHD-C0216CZ-FSW-FBW-3V3.pdf

应用笔记:http://www.newhavendisplay.com/app_notes/NHD-C0216CZ.txt

谢谢

附加说明:LCD屏幕具有一个ST7032等效控制器。我为该控制器的Arduino库尝试了google,但出现的问题很短

arduino spi lcd
2个回答
2
投票

这是一个简单的任务...

编号

有人可以帮助我吗?

以下内容可以帮助您理解示例并成功。对于某些嵌入式系统,变量直接耦合到IO引脚。因此示例中的这些代码行:

RST = 0;
SCL = 1;

似乎无所事事。但是变量是耦合到IO引脚的,因此代码只是在LCD屏幕上有些破烂。他们已将变量命名为其原理图上的引脚。在Arduino上,所有那些看起来像变量赋值(_ = 0 _ = 1)的行都将被写入操作:

digitalWrite(pinRst, 0); 
digitalWrite(pinScl, 1);

LCD的接口是一个3线串行接口,带有芯片选择,时钟和数据-这方面相当普遍。 RST引脚仅在干净状态下上电。 RS引脚有些独特-它选择通过3线接口发送的是命令还是数据。

那应该使您开始翻译。我将警告说,在没有示波器或逻辑分析仪的情况下开发此类硬件接口代码将很痛苦。如果代码的错误最小,则LCD可能不会执行任何操作。不会有错误消息或任何有用的反馈信息:(无需任何工具,您只需盯着您的代码并跟踪它在您脑海中正在做什么。如果您可以使用它,那就胜利了-在github上发布!

一旦成功,请查看Arduino SPI库。该设备不是标准的4线串行设备,因为它使用同一根线来写入数据和读取数据。如果仅写入LCD,则可以使用SPI类替换位操作代码。


0
投票

符合您要求的示例可以在这里找到:

https://github.com/olkal/LCD_ST7032

实质上是实现与]进行低级接口的C文件>

https://github.com/olkal/LCD_ST7032/blob/master/src/LCD_ST7032.cpp

这是执行文本显示的Arduino程序:

https://github.com/olkal/LCD_ST7032/blob/master/examples/HelloWorld/HelloWorld.ino

还有一个Python版本:

https://pypi.org/project/lcd-st7032/

© www.soinside.com 2019 - 2024. All rights reserved.