2.23inch OLED HAT
2.23inch OLED HAT
用户手册
产 品 概 述
本产品是专为树莓派设计的 2.23 寸 OLED 显示屏,分辨率为 128*32,带有内部控制器和
树莓派接口,同时也引出 IIC 与 SPI 的通信接口,方便用户与 STM32 等主控芯片对屏幕进行
控制。该屏幕可使用 SPI 或 I2C 进行控制(出厂默认使用 SPI 进行通信),用户可以通过更改
屏幕后面的电阻进而切换屏幕的通信方式,提供基于 BCM2835、WiringPi 、Python 库的树
莓派例程,STM32 例程及 Arduino 例程。
版本:V1.0.0,日期:2019 年 08 月 15 日
1
2.23inch OLED HAT
产 品 特 性
驱动芯片 : SSD1305
支持接口 : I2C
分辨率 : 128 * 32
显示尺寸 : 2.23inch
像素大小 :0.41 x 0.39(mm)
显示颜色 : 白色
工作电压 : 3.3V
管 脚 配 置
功能引脚
描述
VCC
GND
DIN
CLK
CS
DC
电源正
电源地
数据输入
时钟输入
片选(低有效)
寄存器/数据选择
RST
复位(低有效)
版本:V1.0.0,日期:2019 年 08 月 15 日
2
2.23inch OLED HAT
模块出厂默认使用 SPI 通信模式, 即 BS1,BS2,DIN,CLK,CS,DS 默认将 0R 电阻
接上方两个焊盘。如上图所示的焊接方式,则是选择 I2C 的通信方式,具体硬件链接见下表:
工 作 原 理
SSD1305 是一款 132*64 像素的 OLED 控制器,但该 OLED 只有 128*32 个像素点,所
以该屏只用到了 SSD1305 缓存区的前一部分。
该 OLED 支持 8bit 8080 并行、SPI 和 I2C 等通信方式,但考虑到该模块的尺寸,以及节
省微控制器宝贵的 IO 资源,故舍弃了 8bit 8080 并行方式,支持 I2C 与 SPI 的通信方式。
版本:V1.0.0,日期:2019 年 08 月 15 日
3
2.23inch OLED HAT
I2C 通 信 协 议
在 I2C 通信时,先发送一个 7bit 的从设备地址+1bit 的读写位,等待设备的响应。
在从设备应答后,接着发送一个控制字节,该字节决定了后面发送的字节是命令还是数
据,然后再等待从设备应答。
在从设备再次应答之后,若发送命令,则只发送一字节的命令。若发送数据,可以只发送
一个字节,也可以多个字节的数据连着发送,视情况而定。
详见 Datasheet Page22 Figure 8-6。
SPI 通 信 协 议
版本:V1.0.0,日期:2019 年 08 月 15 日
4
2.23inch OLED HAT
如上图所示,SDIN 上的数据按 MSB 在前 LSB 在后为次序在每个 SCLK 的上升沿到来
时被移入一个 8-bit 移位寄 存器。D/C#在每第 8 个时钟被采样,并且移位寄存器里的数据
被写入图形显示内存(GDDRAM) 或者命令寄存器,在同样的计数时钟下。 在串行模式
下,仅允许写操作。 在 4-wireSPI 模式下的写操作过程。.
详见 Datasheet Page21 Figure 8-5。
例 程 使 用 说 明
该模块提供 STM32、Arduino、树莓派例程,并实现常用屏幕操作功能:画点、画线、画
矩形、画圆,可以控制它们的大小、宽度、填充,可以显示字符串。
STM32 的 使 用
硬件配置
该例程使用的开发板为:XNUCLEO-F103RB
IIC 连接方式:
功能引脚
开发板
VCC
GND
DIN
CLK
3V3
GND
PB15
PB13
版本:V1.0.0,日期:2019 年 08 月 15 日
5
2.23inch OLED HAT
SPI 连接方式:
功能引脚
开发板
VCC
GND
DIN
CLK
CS
DC
RST
3V3
GND
PB15
PB13
PB12
PC6
PC2
功能引脚
开发板(BCM)
VCC
GND
DIN
CLK
3V3
GND
SDA
SCL
树 莓 派 的 使 用
1. 硬件连接
IIC 连接方式:
版本:V1.0.0,日期:2019 年 08 月 15 日
6
2.23inch OLED HAT
SPI 连接方式:
功能引脚
开发板(BCM)
VCC
GND
DIN
CLK
CS
DC
RST
3V3
GND
MOSI
SCLK
CE0
24
25
2. 开启树莓派外设功能
sudo raspi-config
选择 Interfacing Options -> I2C ->yes 启动 I2C 内核驱动:
选择 Interfacing Options -> SPI ->yes 启动 SPI 内核驱动:
版本:V1.0.0,日期:2019 年 08 月 15 日
7
2.23inch OLED HAT
3.
库的安装
▪ 安装 BCM2835, 打开树莓派终端,并运行一下指令
1. wget http://www.airspayce.com/mikem/bcm2835/bcm2835-1.60.tar.gz
2. tar zxvf bcm2835-1.60.tar.gz
3. cd bcm2835-1.60/
4. sudo ./configure
5. sudo make
6. sudo make check
7. sudo make install
8. # 更多的可以参考官网:http://www.airspayce.com/mikem/bcm2835/
▪ 安装 wiringPi
1. sudo apt-get install wiringpi
2. #对于树莓派 4B 可能需要进行升级:
3. cd /tmp
4. wget https://project-downloads.drogon.net/wiringpi-latest.deb
5. sudo dpkg -i wiringpi-latest.deb
6. gpio -v
7. # 运行 gpio -v 会出现 2.52 版本,如果没有出现说明安装出错
▪ 安装 Python 函数库
1. #python2
2. sudo apt-get update
3. sudo apt-get install python-pip
4. sudo apt-get install python-pil
5. sudo apt-get install python-numpy
6. sudo pip install RPi.GPIO
7. sudo pip install spidev
8. #python3
9. sudo apt-get update
10. sudo apt-get install python3-pip
11. sudo apt-get install python3-pil
12. sudo apt-get install python3-numpy
13. sudo pip3 install RPi.GPIO
14. sudo pip3 install spidev
版本:V1.0.0,日期:2019 年 08 月 15 日
8