“OLED Display Module”的版本间的差异
Yousimaier17(讨论 | 贡献) (→使用说明) |
Yousimaier17(讨论 | 贡献) (→使用说明) |
||
第48行: | 第48行: | ||
== 使用说明 == | == 使用说明 == | ||
+ | |||
+ | === 树莓派 === | ||
*'''以0.91寸OLED为例''' | *'''以0.91寸OLED为例''' | ||
− | |||
* '''打开I2C接口''' | * '''打开I2C接口''' | ||
** 在终端执行: | ** 在终端执行: | ||
第131行: | 第132行: | ||
sudo python3 main.py | sudo python3 main.py | ||
+ | === Arduino === | ||
*'''以1.3寸OLED(4线)为例''' | *'''以1.3寸OLED(4线)为例''' | ||
+ | ==== 安装库 ==== | ||
+ | *打开arduino IED,点击工具 -> 管理库,等待更新库列表 | ||
+ | **[[File:OLED Display Module_arduino1.png|400px]] | ||
+ | *在上方对话框内输入U8g2,并找到该库,点击安装 | ||
+ | **[[File:OLED Display Module_arduino2.png|400px]] | ||
+ | |||
+ | ==== 例程下载 ==== | ||
+ | *点击文件 -> 示例 -> 第三方库示例 U8g2 -> full buffer -> U8q2Logo,打开示例文件 | ||
+ | **[[File:OLED Display Module_arduino3.png|400px]] | ||
+ | *找到以下语句,取消注释。 | ||
+ | U8G2_SSD1306_128X64_NONAME_F_SW_I2C u8g2(U8G2_R0, /* clock=*/ SCL, /* data=*/ SDA, /* reset=*/ U8X8_PIN_NONE); // All Boards without Reset | ||
+ | :*注:其中如果你的屏幕接的不是SCL和SDA,你也可以把中间SCL,SDA这两个参数改成你自己屏幕接的引脚,例如:A4,A5 | ||
+ | U8G2_SH1106_128X64_NONAME_F_SW_I2C u8g2(U8G2_R0, /*SCL*/ A4, /*SDA*/ A5, /*reset*/ U8X8_PIN_NONE); | ||
+ | **[[File:OLED Display Module_arduino4.png|400px]] | ||
+ | *注释以下两行: | ||
+ | **[[File:OLED Display Module_arduino5.png|400px]] | ||
+ | *编译上传,即可显示 | ||
+ | **[[File:OLED Display Module_arduino6.png|400px]] | ||
== 参考资料 == | == 参考资料 == |
2023年5月29日 (一) 11:40的版本
| ||||||||||||||||||||||
| ||||||||||||||||||||||
|
产品概述
OLED(Organic Light-Emitting Diode):有机发光二极管又称为有机电激光显示,OLED显示技术具有自发光的特性,采用非常薄的有机材料涂层和玻璃基板当有电流通过时,这些有机材料就会发光,而且OLED显示屏幕可视角度大,功耗低。OLED由于同时具备自发光、不需背光源(只上电是不会亮的,驱动程序和接线正确才会点亮)、对比度高、厚度薄、视角广、反应速度快、可用于挠曲面板、使用温度范围广、结构及制程简单等优异之特性。最先接触的12864屏都是LCD的,需要背光,功耗较高,而OLED的功耗低,更加适合小系统;由于两者发光材料的不同,在不同的环境中,OLED的显示效果更佳。模块供电可以是3.3V也可以是5V不需要修改模块电路,OLED屏具有多个控制指令,可以控制OLED的亮度、对比度、开关升压电路等指令。操作方便,功能丰富。可显示汉字、ASCII、图案等。同时为了方便应用在产品上,预留4个M3固定孔,方便用户固定在机壳上。
引脚说明
参数说明
尺寸说明
使用说明
树莓派
- 以0.91寸OLED为例
- 打开I2C接口
- 在终端执行:
sudo raspi-config 选择 Interfacing Options -> I2C ->yes 启动 i2C 内核驱动
- 然后重启树莓派:
sudo reboot
- 安装库
- 安装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
- 安装wiringPi
sudo apt-get install wiringpi #对于树莓派2019年5月之后的系统(早于之前的可不用执行),可能需要进行升级: wget https://project-downloads.drogon.net/wiringpi-latest.deb sudo dpkg -i wiringpi-latest.deb gpio -v # 运行gpio -v会出现2.52版本,如果没有出现说明安装出错
- 安装Python函数库
#python2 sudo apt-get update sudo apt-get install python-pip sudo apt-get install python-pil sudo apt-get install python-numpy sudo pip install RPi.GPIO sudo pip install spidev #python3 sudo apt-get update sudo apt-get install python3-pip sudo apt-get install python3-pil sudo apt-get install python3-numpy sudo pip3 install RPi.GPIO sudo pip3 install spidev
sudo apt-get install p7zip-full wget http://www.waveshare.net/w/upload/3/37/0.91inch_OLED_Module_Code.7z 7z x 0.91inch_OLED_Module_Code.7z -r -o./0.91inch_OLED_Module_Code sudo chmod 777 -R 0.91inch_OLED_Module_Code cd 0.91inch_OLED_Module_Code/RaspberryPi
- 运行测试例程
注:如果使用了BCM2835库,需要重启才能正常运行wiringPi库和python库。
- BCM2835
cd bcm2835/ make clean make sudo ./oled_0in91
- wiringPi
由于默认的波特率只有100Kbps,而芯片实际上可以达到400Kbps,而wiringPi无法修改树莓派I2C的波特率,因此我们需要在/boot/config.txt找到dtparam=i2c_arm=on,在其后面加上:,i2c_arm_baudrate=400000,具体步骤如下:
sudo nano /boot/config.txt 找到dtparam=i2c_arm=on,将其修改成如下: dtparam=i2c_arm=on,i2c_arm_baudrate=400000 然后重启: sudo reboot 重启之后 cd 0.91inch_OLED_Module_Code/RaspberryPi/wiringpi/ make clean make sudo ./oled_0in91
- python
cd python/ #python2.7 sudo python main.py #python3 sudo python3 main.py
Arduino
- 以1.3寸OLED(4线)为例
安装库
例程下载
U8G2_SSD1306_128X64_NONAME_F_SW_I2C u8g2(U8G2_R0, /* clock=*/ SCL, /* data=*/ SDA, /* reset=*/ U8X8_PIN_NONE); // All Boards without Reset
- 注:其中如果你的屏幕接的不是SCL和SDA,你也可以把中间SCL,SDA这两个参数改成你自己屏幕接的引脚,例如:A4,A5
U8G2_SH1106_128X64_NONAME_F_SW_I2C u8g2(U8G2_R0, /*SCL*/ A4, /*SDA*/ A5, /*reset*/ U8X8_PIN_NONE);
参考资料
FAQ
|