“1.5inch RGB OLED Module”的版本间的差异
(→硬件连接) |
小 (文本替换 - 替换“http://{{”为“https://{{”) |
||
(未显示同一用户的5个中间版本) | |||
第1行: | 第1行: | ||
<div class="tabber"> | <div class="tabber"> | ||
− | {{ | + | {{Product |
− | + | |images=[[File:1_5inch-RGB-OLED-Module-intro.jpg|360px |alt=1.5inch RGB OLED Module | 1.5inch RGB OLED Module]] | |
− | | | + | |categories= |
− | | | + | {{Category|OLED}} |
− | | | + | {{Category|显示屏}} |
|brand=Waveshare | |brand=Waveshare | ||
− | | | + | |features= |
− | + | * 显示尺寸:1.5英寸 | |
− | | | + | * 分辨率:128×128 |
− | | | + | |interfaces= |
− | | | + | {{Category|SPI接口}} |
− | | | + | {{Category|OLED接口}} |
− | + | |related= | |
+ | {{OLED-Related}} | ||
}} | }} | ||
第27行: | 第28行: | ||
==管脚配置== | ==管脚配置== | ||
− | {|border=1; | + | {|border=1; |
|-style="background:#0000ff; color:white;" align="center" | |-style="background:#0000ff; color:white;" align="center" | ||
|功能引脚||描述 | |功能引脚||描述 | ||
第39行: | 第40行: | ||
|CLK||时钟输入 | |CLK||时钟输入 | ||
|-align="center" | |-align="center" | ||
− | CS||片选 | + | |CS||片选 |
|-align="center" | |-align="center" | ||
|DC||数据/命令信号选择 | |DC||数据/命令信号选择 | ||
第96行: | 第97行: | ||
==硬件连接== | ==硬件连接== | ||
− | + | [[File:1.5inch-rgb-oled-module-rpi-connet.jpg]] | |
{|border=1; style="width:700px;" | {|border=1; style="width:700px;" | ||
|-style="background:#0000ff; color:white;" align="center" | |-style="background:#0000ff; color:white;" align="center" | ||
第201行: | 第202行: | ||
<div class="tabbertab" title="资料"> | <div class="tabbertab" title="资料"> | ||
===文档=== | ===文档=== | ||
− | *[ | + | *[https://{{SERVERNAME}}/w/upload/a/a3/1.5inch_RGB_OLED_Module_Schematic.pdf 原理图]<br> |
===程序=== | ===程序=== | ||
− | *[ | + | *[https://{{SERVERNAME}}/w/upload/e/eb/1.5inch_RGB_OLED_Module_Code.7z 示例程序]<br> |
===软件=== | ===软件=== | ||
{{OLED_Software}} | {{OLED_Software}} | ||
===数据手册=== | ===数据手册=== | ||
− | *[ | + | *[https://{{SERVERNAME}}/w/upload/a/a7/SSD1351-Revision_1.5.pdf SDD1351数据手册] |
− | *[ | + | *[https://{{SERVERNAME}}/w/upload/4/43/UG-2828GDEDF11.pdf UG-2828GDEDF11用户手册] |
− | *[ | + | *[https://{{SERVERNAME}}/w/upload/3/36/1.5inch_RGB_OLED_Module_DS.pdf 1.5inch RGB OLED数据手册] |
===应用笔记=== | ===应用笔记=== | ||
第221行: | 第222行: | ||
<!--{{Join_us}}--> | <!--{{Join_us}}--> | ||
</div> | </div> | ||
+ | |||
+ | == FAQ == | ||
<div class="tabbertab" title="FAQ"> | <div class="tabbertab" title="FAQ"> | ||
{{FAQ|OLED模块的工作电流是多少?| | {{FAQ|OLED模块的工作电流是多少?| |
2021年6月18日 (五) 17:58的最新版本
| ||||||||||||||||||||||
| ||||||||||||||||||||||
| ||||||||||||||||||||||
|
目录
产品概述
提供树莓派、STM32、Arduino例程
产品特性
- 驱动芯片 : SSD1351
- 支持接口 : 4-wire SPI、3-wire SPI
- 分辨率 : 128 * 128
- 显示尺寸 : 1.5inch
- 显示颜色 : 65K彩色
- 工作电压 : 3.3V / 5V
管脚配置
功能引脚 | 描述 |
VCC | 电源正 |
GND | 电源地 |
DIN | 数据输入 |
CLK | 时钟输入 |
CS | 片选 |
DC | 数据/命令信号选择 |
RST | 复位信号 |
硬件配置
- 本OLED模块提供两种通信方式:4-wire SPI和3wire-SPI,在模块的背面有一个可选择焊接的电阻,通过该电阻来选择通信方式。如下图:
模块出厂默认使用4线SPI通信,即BS0默认接0
注:下表为接口连接。
通信协议 | BS | CS | DC | DIN | CLK |
4Wire SPI | 0 | 片选 | DC | MOSI | SCK |
3Wire SPI | 1 | 片选 | GND | MOSI | SCK |
具体硬件配置,如下:
使用4线SPI:即出厂设置,BS接0连接到GND,DIN接控制引脚MOSI, CLK接控制引脚SCK;
使用3线SPI: BS接1连接到VCC,D/C需接地,DIN接控制引脚MOSI, CLK接控制引脚SCK;
工作原理
SSD1351是一款128RGB * 128 Dot Matrix OLED/PLED 控制器,其内部有一个128*128*18bit的SRAM作为显示缓存区,支持262k和65k两种颜色深度。并支持8bit 8080并行、8bit 6800并行、3wire-SPI和4wire-SPI等通信方式。
本模块选择了4wire-SPI和3wire-SPI作为通信方式,减小模块的面积,同时节省了控制器的IO资源。
4WIRE-SPI通信协议
在4wire-SPI通信中,先将DC置1或置0,再发送一个或多个字节的数据。
当DC置1时,发送的字节将作为显示数据存入SSD1351的SRAM中,作为显示数据。在发送数据时,可以连续发送多个字节。
当DC置0时,发送的字节将作为控制OLED的命令,发送命令时,一般一次只发送一个字节。
详见SSD1351 Datasheet Figure 8-5。
3WIRE-SPI通信协议
3wire-SPI和4wire-SPI唯一的区别在于,它去掉了控制发送命令和数据的DC引脚,在每次SPI传输的字节前加一个位来识别该字节是命令还是数据。
故在3wire-SPI中,DC引脚需要接地,此外,每次传输的数据不是8bit,而是9bit。
树莓派
提供C语言与python例程
开启SPI接口
- 打开树莓派终端,输入以下指令进入配置界面
sudo raspi-config 选择Interfacing Options -> SPI -> Yes 开启SPI接口
sudo reboot
请确保SPI没有被其他的设备占用,你可以在/boot/config.txt中间检查
安装库
- 安装BCM2835, 打开树莓派终端,并运行一下指令
wget http://www.airspayce.com/mikem/bcm2835/bcm2835-1.60.tar.gz tar zxvf bcm2835-1.60.tar.gz cd bcm2835-1.60/ sudo ./configure sudo make sudo make check sudo make install # 更多的可以参考官网:http://www.airspayce.com/mikem/bcm2835/
- 安装wiringPi
sudo apt-get install wiringpi #对于树莓派4B可能需要进行升级: cd /tmp wget https://project-downloads.drogon.net/wiringpi-latest.deb sudo dpkg -i wiringpi-latest.deb gpio -v # 运行gpio -v会出现2.52版本,如果没有出现说明安装出错 #Bullseye分支系统使用如下命令: git clone https://github.com/WiringPi/WiringPi cd WiringPi ./build gpio -v # 运行gpio -v会出现2.70版本,如果没有出现说明安装出错
- python
sudo apt-get updata sudo apt-get install python-pip sudo pip install RPi.GPIO sudo pip install spidev
硬件连接
LCD | 树莓派BCM |
VCC | 5V |
GND | GND |
DIN | MOSI |
CLK | SCK |
CS | CE0 |
DC | 24 |
RST | 25 |
下载例程
在树莓派终端运行:
sudo apt-get install p7zip wget http://wiki.diustou.com/w/upload/e/eb/1.5inch_RGB_OLED_Module_Code.7z 7zr x 1.5inch_RGB_OLED_Module_Code.7z -r -o./1.5inch_RGB_OLED_Module_Code sudo chmod 777 -R 1.5inch_RGB_OLED_Module_Code cd /1.5inch_RGB_OLED_Module_Code/RaspberryPi/
如果下载很慢,你可以git我们github上的工程:
git clone https://github.com/waveshare/1.5inch-RGB-OLED-Module cd 1.5inch-RGB-OLED-Module
运行例程
- C语言
cd c make clean make sudo ./main
- python
cd python sudo python main.py
STM32
- 该例程使用的开发板为:XNUCLEO-F103RB
- 示例工程基于MDK-ARM V5,使用STM32CubeMX配置生成
硬件配置
LCD | 树莓派BCM |
VCC | 5V |
GND | GND |
DIN | D11(PA7) |
CLK | D13(PA5) |
CS | D10(PB6) |
DC | D7(PA8) |
RST | D8(PA9) |
- 下载示例程序,打开/STM32/OLED_Demo/MDK-ARM/OLED_Demo.uvprojx
- 编译并选择烧录器
- 复位开发,可看到演示效果
Arduino
- 该例程使用的开发板为:UNO
硬件配置
LCD | 树莓派BCM |
VCC | 5V |
GND | GND |
DIN | D11 |
CLK | D13 |
CS | D10 |
DC | D7 |
RST | D8 |
- 下载示例程序,打开Arduino/1.5 inch OLED Demo/OLED_Demo/OLED_Demo.ino
- 编译并选择开发板
- 复位开发板,可看到演示效果
文档
程序
软件
数据手册
应用笔记
FAQ
|
|
|
|