使用LPC845转接板和SPI的OLED显示应用示例
这是一个快速入门,介绍了如何使用SPI的SDK驱动程序将LPC845扩展板与基于流行的SSD1306控制器的OLED显示器接口。使用此应用程序,您可以打印文本字符串或绘制位图图像。
SPI协议
串行外围设备接口(SPI)协议是异步串行数据标准,主要用于允许微处理器与其他微处理器或IC通信,例如存储器,液晶二极管(LCD),模数转换器子系统等。
SPI是非常简单的同步串行数据,基于四行的主/从协议:
•时钟线(SCLK)
•串行输出(MOSI)
•串行输入(MISO)
•从站选择(SS)
Adafruit单色OLED图形显示器
该显示器由128x64个单独的白色OLED像素组成,每个像素都由控制器芯片打开或关闭。由于显示器自身发光,因此不需要背光。这降低了运行OLED所需的功率,这就是显示器具有如此高对比度的原因。我们非常喜欢这种微型显示器的脆性!
OLED显示示例
恩智浦为LPC845 Breakout提供了一个示例程序包,其中包括使用该板的主要外设的项目:ADC,I2C,PWM,USART,Captouch和SPI
我们需要的:
·LPC845突破板
·MCUXpresso IDE V10.3.0
·SDK_2.5.0_LPC845
·恩智浦示例包
·Adafruit的OLED显示屏(也可通过NXP分销商获得)
·LCD助手软件可转换位图
·USB线
下载完成后,我们从MCUXpresso IDE的“快速入门”面板中使用“从文件系统导入项目...”将库项目导入到工作区中:
图1.导入项目。
然后浏览示例程序包归档文件:
图2.选择Example Package。
按next,然后看到要导入的项目选择,在这种情况下,请仅选择LPC845_BoB_OLED的外观如下图:图3.选择OLED project.png
图3.选择OLED项目。
按完成,项目示例将显示在工作空间中:
图4.工作区中的OLED项目。
创建位图
位图(BMP)是一种图像文件格式,可用于创建和存储计算机图形。位图文件以图案显示小点,从远处观看时会创建整体图像。位图图像是由行和列组成的网格,其中为特定单元格提供了一个值,该值将其填充或保留为空白,从而从数据中创建图像。
首先,您必须使用任何种类的图形软件(例如油漆,Photoshop等)创建图像,并将图片另存为单色位图(bmp),并确保图像尺寸与OLED尺寸相匹配。
图5.将图片另存为Bitmap。
现在,在LCD软件助手中,该程序将帮助我们将图像从位图转换为数据数组,我们必须通过单击文件>>加载图像来加载图像,然后选择适当的大小。
图6. LCD助手
要导入数组,请转至文件>>保存输出,选择要保存的位置。然后在示例中,转到fsl_Font5x7.h并粘贴数组。
图7.数据数组。
*注意:在示例中,NXP徽标的阵列已经存在,如果要其他图像,请删除该阵列并粘贴新的图像。
连接
现在,随着项目已经在工作区中,是时候在LPC845 Breakout板和OLED Display之间建立连接了。下表显示了哪个LPC845 Breakout引脚连接到SPI接口的每一行,以及用于复位和数据/命令选择的引脚。
表1.连接。
您可以根据以下图片检查电路板的数据表,查看引脚在哪里,请注意,OLED显示屏也需要GND和3.3V:
图8. LPC845与OLED的连接。 调试
现在,完成工作区中的演示并完成连接,将Micro USB电缆从连接器CN2连接到主机,并调试应用程序。
图9.运行示例
|