匿名
未登录
登录
丢石头百科
搜索
查看“0.91inch OLED Module”的源代码
来自丢石头百科
名字空间
页面
讨论
更多
更多
页面选项
查看
查看源代码
历史
←
0.91inch OLED Module
因为以下原因,您没有权限编辑本页:
您所请求的操作仅限于该用户组的用户使用:
用户
您可以查看与复制此页面的源代码。
<div class="tabber"> {{外围模块|colorscheme=blue |name = 0.91inch OLED Module |img=[[File:0.91inch-OLED-Module-intro.jpg|360px|alt=0.91inch OLED Module|0.91inch OLED Module]] |category1=OLED |category2=显示屏 |brand=Waveshare |feature-name1= 显示尺寸 |feature-value1=0.91英寸 |feature-name2= 分辨率 |feature-value2=128×32 | interface1 =I2C | interface2 =OLED |Product1 = {{OLED-Related}} }} <div class="tabbertab" title="说明"> ==产品特性== *驱动芯片 : SSD1306 *支持接口 : I2C *分辨率 : 128 * 32 *显示尺寸 : 0.91inch *显示颜色 : 白色 *工作电压 : 3.3V / 5V ==工作原理== SSD1306 是一款 128*64 像素的 OLED 控制器,但该 OLED 只有 128*32 个像素点,所以该屏只用到了 SSD1306 缓存区的前半部分。<br /> 该 OLED 支持 8bit 8080 并行、8bit 6800 并行、三线 SPI、四线 SPI 和 I2C 等通信方式,但考虑到该模块的尺寸,以及节省微控制器宝贵的 IO 资源,故舍弃了前四种通信方式,只支持 I2C的通信方式。<br /> ===I2C 通信协议=== [[file:0.91inch_oled_module_i2c.png|900px]]<br /> 在 I2C 通信时,先发送一个 7bit 的从设备地址+1bit 的读写位,等待设备的响应。<br /> 在从设备应答后,接着发送一个控制字节,该字节决定了后面发送的字节是命令还是数据,然后再等待从设备应答。<br /> 在从设备再次应答之后,若发送命令,则只发送一字节的命令。若发送数据,可以只发送一个字节,也可以多个字节的数据连着发送,视情况而定。<br /> [https://{{SERVERNAME}}/w/upload/a/af/SSD1306-Revision_1.1.pdf 详见 Datasheet Page20 Figure 8-7] =树莓派使用= {{RPI_open_i2c}} ==安装库== {{RPI_C_lib}} *安装Python函数库 <pre> #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 </pre> ==硬件连接== [[file:0.91inch_OLED_Module_user01.png]]<br /> {|border=1; style="width:400px;" align="center" |-style="background:#0000ff; color:white;" align="center" |OLED||RPi引脚号||BCM |-align="center" |VCC||3.3V||3.3V |-align="center" |GND||GND||GND |-align="center" |SDA||3||SDA |-align="center" |SCL||5||SCL |-align="center" |} ==下载示例程序== <pre> sudo apt-get install p7zip-full wget http://wiki.diustou.com/w/upload/3/37/0.91inch_OLED_Module_Code.7z 7z x 0.91inch_OLED_Module_Code.7z sudo chmod 777 -R 0.91inch_OLED_Module_Code cd 0.91inch_OLED_Module_Code/RaspberryPi </pre> ==运行测试例程== *BCM2835 <pre> cd bcm2835/ make clean make sudo ./oled_0in91 </pre> *wiringPi <pre> cd wiringpi/ make clean make sudo ./oled_0in91 </pre> *python <pre> cd python/ sudo python Adafruit_Python_SSD1306/setup.py install sudo python stats.py </pre> =STM32使用= *本例程使用的开发板主控为 XNUCLEO-F103RB *本例程基于 HAL 库,因此可以使用 STM32CubeMX 把示例程序移植到其他 STM 芯片上 *本例程在 Keil v5 环境下编译通过 {|border=1; style="width:400px;" align="center" |-style="background:#0000ff; color:white;" align="center" |模块||XNUCLEO-F103RB |-align="center" |VCC||3V3/5V |-align="center" |GND||GND |-align="center" |SDA||SDA/D14 |-align="center" |SCL||SCL/D15 |} 在资料中下载程序,或[https://{{SERVERNAME}}/w/upload/3/37/0.91inch_OLED_Module_Code.7z 点击此处下载]<br /> 解压后打开\STM32\0.91inch_OLED_Demo\MDK-ARM\0.91inch_OLED_Demo.uvprojx<br /> 编译并下载到开发板上<br /> =Arduino使用= *本例程使用的开发板主控为Arduino UNO {|border=1; style="width:400px;" align="center" |-style="background:#0000ff; color:white;" align="center" |模块||XNUCLEO-F103RB |-align="center" |VCC||3V3/5V |-align="center" |GND||GND |-align="center" |SDA||SDA |-align="center" |SCL||SCL |} 在资料中下载程序,或[https://{{SERVERNAME}}/w/upload/3/37/0.91inch_OLED_Module_Code.7z 点击此处下载]<br /> 解压后将Arduino\0.91Inch_OLED_Demo\下的文件复制到Arduino\0.91Inch_OLED_Demo\oled\目录下<br /> 打开Arduino\0.91Inch_OLED_Demo\oled\oled.ino<br /> 编译并下载到开发板上<br /> </div> <div class="tabbertab" title="资料"> ===文档=== *[https://{{SERVERNAME}}/w/upload/2/2a/0.91inch_OLED_Module_Schematic.pdf 原理图]<br> ===程序=== *[https://{{SERVERNAME}}/w/upload/3/37/0.91inch_OLED_Module_Code.7z 示例程序]<br> ===软件=== {{OLED_Software}} ===数据手册=== *[https://{{SERVERNAME}}/w/upload/a/af/SSD1306-Revision_1.1.pdf SSD1306 手册] <!--{{Join_us}}--> </div> == FAQ == <div class="tabbertab" title="FAQ"> {{FAQ|OLED模块接上电源为什么不亮?| OLED是没有背光的,显示属于自发光方式。只接VCC和GND,OLED是不会亮的。 必须用程序控制才能亮点OLED。 |||}} {{FAQ|使用该OLED模块,有什么需要注意的?| 1.注意电源不要接反。 2.不能长时间显示同一画面,否则将产生残影,导致OLED损坏。 |||}} </div> <div class="tabbertab" title="售后"><br />{{Service08}}</div>
该页面使用的模板:
模板:FAQ
(
查看源代码
)
模板:OLED Software
(
查看源代码
)
模板:OLED-Related
(
查看源代码
)
模板:RPI C lib
(
查看源代码
)
模板:RPI open i2c
(
查看源代码
)
模板:Service00
(
查看源代码
)
模板:Service08
(
查看源代码
)
模板:Tipbox
(
查看源代码
)
模板:外围模块
(
查看源代码
)
返回至
0.91inch OLED Module
。
导航
导航
首页
最近更改
随机页面
MediaWiki帮助
首页
首页
树莓派
主机
配件包
外壳
键鼠
电源
扩展板
显示屏
墨水屏
摄像模块
通信模块
继电器
电机驱动板
游戏机
产品分类
树莓派
Arduino
micro:bit
STM32
Espressif
WiFi模块
蓝牙模块
无线模块
LoRa模块
4G模块
GSM
GPRS
以太网
导航模块
北斗卫星
GPS
LCD
墨水屏
OLED
摄像头
USB模块
串口模块
RS232
RS485
CAN
传感器
温度模块
湿度模块
气压模块
继电器
电机模块
指纹模块
电平转换
音频模块
编程器
Wiki工具
Wiki工具
特殊页面
页面工具
页面工具
用户页面工具
更多
链入页面
相关更改
页面信息
页面日志