7. [Micropython]TPYBoard F407 驱动OLED液晶屏¶
版权声明:翻译整理属于TPYBoard,转载时请以超链接形式标明文章原始出处和作者信息及本声明
7.1. 实验目的¶
- 学习在PC机系统中扩展简单I/O 接口的方法。
- 进一步学习编制数据输出程序的设计方法。
- 学习 F407 Micropython开发板控制OLED显示字符。
7.2. 所需元器件¶
- TPYBoard F407 Micropython开发板一块
- 数据线一条
- 杜邦线若干
- OLED液晶屏一块
7.3. 什么是OLED显示屏¶
7.3.1. OLED显示屏简介¶
有机发光二极管(organic light-emitting diode,OLED)是一种由柯达公司开发并拥有专利的显示技术,这项技术使用有机聚合材料作为发光二极管中的半导体(semiconductor)材料。聚合材料可以是天然的,也可能是人工合成的,可能尺寸很大,也可能尺寸很小。其广泛运用于手机、数码摄像机、DVD机、个人数字助理(PDA)、笔记本电脑、汽车音响和电视。OLED显示器很薄很轻,因为它不使用背光。
本例中使用0.96 寸OLED显示屏,该屏具有高亮度,低功耗屏,显示颜色纯正,在阳光下有很好的可视效果。模块供电可以是3.3V 也可以是5V,不需要修改模块电路,同时兼容3种通信方式:4 线SPI、3线SPI、 IIC,通信模式的选择可以根据提供的BOM表进行跳选。该模块一共有三种颜色:蓝色、白色、黄蓝双色。OLED 屏具有多个控制指令,可以控制OLED 的亮度、对比度、开关升压电路等指令。操作方便,功能丰富。同时为了方便应用在产品上,预留4个M2 固定孔,方便用户固定在机壳上。0.96寸OLED显示屏的驱动芯片为:SSD1306(已集成在屏中)。
实际显示效果
7.3.2. OLED接口定义¶
GND | 电源地 |
---|---|
VCC | 电源地(2.8V~5.5V) |
DO | 时钟线 |
DI | 数据线 |
RES | 复位线 |
DC | 数据/命令 |
CS | 片选 |
7.4. 硬件的接线方法¶
在这OLED需要SPI接口与TPYBoard F407 Micropython开发板进行连接传输数据,SPI接口是在CPU和外围低速器件之间进行同步串行数据传输,在这OLED需要SPI接口与TPYBoard F407 Micropython开发板自带两个SPI接口,本实验中我们用的开发板的SPI1接口。
7.5. 具体接线方法¶
OLED液晶屏 | TPYBoardF407 开发板(SPI1) |
---|---|
GND | GND |
VCC | 3v3 |
D0 | X16 |
D1 | X18 |
RES | X35 |
DC | X36 |
CS | 悬空 |
7.7. 程序源代码¶
import pyb
from ssd1306 import SSD1306
display = SSD1306(pinout={'dc': 'X36',
'res': 'X35'},
height=64,
external_vcc=False)
led_red = pyb.LED(1)
led_red.off()
display.poweron()
display.init_display()
display.draw_text(1,1,'Hello EveryOne',size=1,space=1)
display.draw_text(1,10,'Micropython F407',size=1,space=1)
display.draw_text(1,20,'Let Us Do it',size=1,space=1)
# 显示出你想要显示的内容
display.display()