打开/关闭菜单
打开/关闭个人菜单
未登录
未登录用户的IP地址会在进行任意编辑后公开展示。

0.96inch OLED Module (IIC-4P SKU:MC096GX):修订间差异

来自LCD wiki
Root留言 | 贡献
无编辑摘要
Root留言 | 贡献
无编辑摘要
第54行: 第54行:
| colspan="3" |15(g)
| colspan="3" |15(g)
|}
|}
{{lan
    |
cn=http://www.lcdwiki.com/zh/0.96inch_OLED_Module_(IIC-4P_SKU:MC096VX)
    |
en=http://www.lcdwiki.com/0.96inch_OLED_Module_(IIC-4P_SKU:MC096VX)                                                 
}}
== <font color="blue">产品图片</font> ==
[[File:MC096-002.jpg|300px]]
[[File:MC096-004.jpg|300px]]
[[File:MC096-003.jpg|300px]]
==<font color="blue">产品介绍</font> ==
*高分辨率:128x64(和12864同分辨率,高PPI)
*超大可视角度:大于160°(显示屏中可视角度最大的一种屏幕)
*超低功耗:正常显示0.06w(远低于TFT显示屏)
*宽电压供电(3V~5V),兼容3.3V和5V电平逻辑,无需电平转换芯片
*IIC接口只需2个IO轻松点亮
*工作温度范围为工业级(-20℃~70℃)
*军工级工艺标准,长期稳定工作
*提供丰富的多平台例程,提供底层驱动技术支持
*黄蓝、白、蓝三种颜色显示方案可选
==<font color="blue">产品参数</font> ==
{| class="wikitable" border="1" style="width: 30%; background-color: white;"
| align="center" |名称
| colspan="3" align="center" |颜色分类
|-
|显示颜色
|白色
|蓝色
|黄蓝双色
|-
|SKU
| style="color: #ff0000; " |MC096VW
| style="color: #ff0000; " |MC096VB
| style="color: #ff0000; " |MC096VY
|-
|尺寸
| colspan="3" |0.96(inch)
|-
|类型
| colspan="3" |OLED
|-
|OLED驱动芯片
| colspan="3" |SSD1306
|-
|分辨率
| colspan="3" |128*64 (Pixel)
|-
|模块接口
| colspan="3" style="color: #ff0000; " |IIC,①-VCC,②-GND,③-SCL,④-SDA
|-
|有效显示区域
| colspan="3" |21.744x10.864(mm)
|-
|模块尺寸
| colspan="3" |27.3x27.8(mm)
|-
|视角
| colspan="3" |>160°
|-
|工作温度
| colspan="3" | -20℃~70℃
|-
|存储温度
| colspan="3" | -30℃~80℃
|-
|工作电压
| colspan="3" |3.3V / 5V
|-
|功耗
| colspan="3" |全亮约为25mA,全灭约为1.5mA。
|-
|产品重量
| colspan="3" |15(g)
|}
==<font color="blue">接口定义</font> ==
{| class="wikitable" border="1" style="width: 30%; background-color: white;"
|-
| align="center" |PIN
| align="center" |标号
| align="center" |引脚说明
|-
| align="center" |1
| align="center" |VCC
|OLED电源正(3.3V~5V)
|-
| align="center" |2
| align="center" |GND
|OLED电源地
|-
| align="center" |3
| align="center" |SCL
|OLED IIC总线时钟信号
|-
| align="center" |4
| align="center" |SDA
|OLED IIC总线数据信号
|}
==<font color="blue">产品尺寸</font> ==
产品尺寸图:[http://www.lcdwiki.com/zh/%E6%96%87%E4%BB%B6:MC096-005.jpg 0.96寸OLED产品尺寸图]
==<font color="blue">硬件说明</font> ==
硬件原理图:[http://www.lcdwiki.com/res/MC096VW/%E5%85%A8%E5%8A%A8%E7%94%B5%E5%AD%900.96%E5%AF%B8OLED%E6%98%BE%E7%A4%BA%E6%A8%A1%E5%9D%97%E5%8E%9F%E7%90%86%E5%9B%BE.pdf 全动电子0.96寸OLED显示模块原理图.pdf]
IIC从设备地址选择硬件调整说明:
[[文件:MC096-006.jpg|300x300像素]]
 
如图红色矩形框内,如果电阻接在0x78这边,则表示IIC从设备地址为0x78,如果接在0x7A这边,则表示IIC从设备地址为0x7A。
==<font color="blue">软件说明</font> ==
本模块提供了三个平台的测试程序,分别是C51、STM32和Arduino,每个平台的测试程序大致由三部分组成:
平台相关的代码、OLED操作相关的代码以及IIC操作相关的代码。除了平台相关的代码因平台而异,其他两部
分的代码原理和实现方法都差不多,和所用的平台没有关系。在同一平台上,代码可以直接移植,只需要修
改相关的引脚定义就可以正常运行了。
'''C51代码说明
'''
打开C51代码工程,发现有如下文件:
[[文件:MC096-007.jpg|558x236像素]]
REG51.h是和平台相关的代码,里面定义了一些平台相关的参数。
oledfont.h、bmp.h都存放图片和汉字取模后的点阵数组。
oled.h存放的是和OLED屏相关的一些参数,包括引脚定义。
oled.c存放的是和OLED屏操作相关的一些函数,包括IIC的读写,OLED屏数据写入等
main.c则是主程序操作了。
通过以上描述我们可以知道,只需要修改oled.h文件里的引脚定义即可。
打开oled.h文件,找到以下内容:
[[文件:MC096-008.jpg|558x236像素]]
只要修改OLED_SCL和OLED_SDIN的值就可以了。
这里是将P23引脚定义为时钟信号引脚,将P24引脚定义为数据信号引脚。
再找到如下内容,可以修改IIC从设备地址:
[[文件:MC096-009.jpg|558x236像素]]
该OLED模块IIC地址为0x78。
'''STM32代码说明'''
打开STM32代码,发现有以下文件:
[[文件:MC096-010.jpg|750x300像素]]
除了main.c、oled.c、oled.h、bmp.h、oledfont.h,其他都是和平台相关的代码。
oledfont.h、bmp.h都存放图片和汉字取模后的点阵数组。
oled.h存放的是和OLED屏相关的一些参数,包括引脚定义。
oled.c存放的是和OLED屏操作相关的一些函数,包括IIC的读写,OLED屏数据写入等
main.c则是主程序操作了。
由于STM32比C51多了GPIO口初始化操作,所以移植代码需要修改oled.h和oled.c两个文件。
 
打开oled.h文件,找到如下内容:
[[文件:MC096-011.jpg|558x236像素]]
根据自己定义,修改GPIO_ResetBits和GPIO_SetBits的GPIO组和pin脚。
这里将GPIOB的13号引脚定义为时钟信号引脚,将GPIOB的14号引脚定义为数据信号引脚。
再找到如下内容,可以修改IIC从设备地址:
[[文件:MC096-009.jpg|558x236像素]]
该OLED模块IIC地址为0x78。
 
打开oled.c文件,找到如下内容:
[[文件:MC096-012.jpg|558x236像素]]
分别对定义的引脚进行输出模式、速率以及置位设置。
'''Arduino代码说明'''
Arduino使用硬件IIC,芯片内部已经对IIC引脚做了定义,因此软件上不需要再对IIC引脚进行定义,
只是不同型号的单片机,IIC引脚定义不一样,需要在接线上做调整。由于软件使用了U8glib开源库,
所以初始化时,需要根据OLED屏驱动IC的型号选择正确的类。
例如本模块使用了U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE)进行初始化。
如果要修改IIC从设备地址,则需要打开u8g_com_arduino_ssd_i2c.c文件,找到如下内容:
[[文件:MC096-013.jpg|558x236像素]]
该OLED模块的IIC地址为0x3c*2(0x78)
==<font color="blue">使用说明</font> ==
通过查看SSD1306的数据手册可以得知该IC支持四线和三线SPI、IIC 接口以及8bit的并口连接。
由于并口连接方式占用的数据线较多,接线麻烦,所以不太常用。关于通信接口方式怎么选择,
这是通过BS0、BS1以及BS2这三个管脚来配置的,具体定义如下图:
[[文件:MC096-014.jpg|600x198像素]]
本模块使用IIC通信接口,只需要接4根线就可以完成OLED屏数据通信,如下图所示:
[[文件:MC096-004.jpg|300像素]]
VCC:电源正极(接5V电源)
   
GND:电源负极(接地)
   
SCL:IIC时钟信号线
   
SDA:IIC数据信号线
 
VCC接到单片机的5V电源引脚上,GND接到GND引脚上,SCL和SDA需要根据不同的平台引脚定义来接线。
 
C51和STM32一般使用模拟IIC,就是自己定义两个引脚作为SCL和SDA。
 
Arduino使用硬件IIC,就是芯片本来就定义好了SCL和SDA引脚,不需要我们自己再重新定义。
 
接好线上电后,可以运行我们提供的测试程序进行测试。
==<font color="blue">驱动下载</font> ==
百度云盘下载:[https://pan.baidu.com/s/1UcJRGOd8ZNFA0H6PqEgj1w 全动电子0.96寸OLED显示模块资料V1.0]
==<font color="blue">常用软件说明</font> ==
取模软件说明见软件包,下载地址如下:
PCtoLCD2002:[http://www.lcdwiki.com/res/software/PCtoLCD2002.zip PCtoLCD2002]

2018年6月13日 (三) 10:44的版本

产品参数

名称 颜色分类
显示颜色 白色 蓝色 黄蓝双色
SKU MC096GW MC096GB MC096GY
尺寸 0.96(inch)
类型 OLED
OLED驱动芯片 SSD1306
分辨率 128*64 (Pixel)
模块接口 IIC,①-GND,②-VCC,③-SCL,④-SDA
有效显示区域 21.744x10.864(mm)
模块尺寸 27.3x27.8(mm)
视角 >160°
工作温度 -20℃~70℃
存储温度 -30℃~80℃
工作电压 3.3V / 5V
功耗 全亮约为25mA,全灭约为1.5mA。
产品重量 15(g)

语言选择

Languages

➤中文
➤EN


产品图片

产品介绍

  • 高分辨率:128x64(和12864同分辨率,高PPI)
  • 超大可视角度:大于160°(显示屏中可视角度最大的一种屏幕)
  • 超低功耗:正常显示0.06w(远低于TFT显示屏)
  • 宽电压供电(3V~5V),兼容3.3V和5V电平逻辑,无需电平转换芯片
  • IIC接口只需2个IO轻松点亮
  • 工作温度范围为工业级(-20℃~70℃)
  • 军工级工艺标准,长期稳定工作
  • 提供丰富的多平台例程,提供底层驱动技术支持
  • 黄蓝、白、蓝三种颜色显示方案可选

产品参数

名称 颜色分类
显示颜色 白色 蓝色 黄蓝双色
SKU MC096VW MC096VB MC096VY
尺寸 0.96(inch)
类型 OLED
OLED驱动芯片 SSD1306
分辨率 128*64 (Pixel)
模块接口 IIC,①-VCC,②-GND,③-SCL,④-SDA
有效显示区域 21.744x10.864(mm)
模块尺寸 27.3x27.8(mm)
视角 >160°
工作温度 -20℃~70℃
存储温度 -30℃~80℃
工作电压 3.3V / 5V
功耗 全亮约为25mA,全灭约为1.5mA。
产品重量 15(g)

接口定义

PIN 标号 引脚说明
1 VCC OLED电源正(3.3V~5V)
2 GND OLED电源地
3 SCL OLED IIC总线时钟信号
4 SDA OLED IIC总线数据信号

产品尺寸

产品尺寸图:0.96寸OLED产品尺寸图

硬件说明

硬件原理图:全动电子0.96寸OLED显示模块原理图.pdf

IIC从设备地址选择硬件调整说明:


如图红色矩形框内,如果电阻接在0x78这边,则表示IIC从设备地址为0x78,如果接在0x7A这边,则表示IIC从设备地址为0x7A。

软件说明

本模块提供了三个平台的测试程序,分别是C51、STM32和Arduino,每个平台的测试程序大致由三部分组成:

平台相关的代码、OLED操作相关的代码以及IIC操作相关的代码。除了平台相关的代码因平台而异,其他两部

分的代码原理和实现方法都差不多,和所用的平台没有关系。在同一平台上,代码可以直接移植,只需要修

改相关的引脚定义就可以正常运行了。

C51代码说明

打开C51代码工程,发现有如下文件:

REG51.h是和平台相关的代码,里面定义了一些平台相关的参数。

oledfont.h、bmp.h都存放图片和汉字取模后的点阵数组。

oled.h存放的是和OLED屏相关的一些参数,包括引脚定义。

oled.c存放的是和OLED屏操作相关的一些函数,包括IIC的读写,OLED屏数据写入等

main.c则是主程序操作了。

通过以上描述我们可以知道,只需要修改oled.h文件里的引脚定义即可。

打开oled.h文件,找到以下内容:

只要修改OLED_SCL和OLED_SDIN的值就可以了。

这里是将P23引脚定义为时钟信号引脚,将P24引脚定义为数据信号引脚。

再找到如下内容,可以修改IIC从设备地址:

该OLED模块IIC地址为0x78。

STM32代码说明

打开STM32代码,发现有以下文件:

除了main.c、oled.c、oled.h、bmp.h、oledfont.h,其他都是和平台相关的代码。

oledfont.h、bmp.h都存放图片和汉字取模后的点阵数组。

oled.h存放的是和OLED屏相关的一些参数,包括引脚定义。

oled.c存放的是和OLED屏操作相关的一些函数,包括IIC的读写,OLED屏数据写入等

main.c则是主程序操作了。

由于STM32比C51多了GPIO口初始化操作,所以移植代码需要修改oled.h和oled.c两个文件。

打开oled.h文件,找到如下内容:

根据自己定义,修改GPIO_ResetBits和GPIO_SetBits的GPIO组和pin脚。

这里将GPIOB的13号引脚定义为时钟信号引脚,将GPIOB的14号引脚定义为数据信号引脚。

再找到如下内容,可以修改IIC从设备地址:

该OLED模块IIC地址为0x78。

打开oled.c文件,找到如下内容:

分别对定义的引脚进行输出模式、速率以及置位设置。

Arduino代码说明

Arduino使用硬件IIC,芯片内部已经对IIC引脚做了定义,因此软件上不需要再对IIC引脚进行定义,

只是不同型号的单片机,IIC引脚定义不一样,需要在接线上做调整。由于软件使用了U8glib开源库,

所以初始化时,需要根据OLED屏驱动IC的型号选择正确的类。

例如本模块使用了U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE)进行初始化。

如果要修改IIC从设备地址,则需要打开u8g_com_arduino_ssd_i2c.c文件,找到如下内容:

该OLED模块的IIC地址为0x3c*2(0x78)

使用说明

通过查看SSD1306的数据手册可以得知该IC支持四线和三线SPI、IIC 接口以及8bit的并口连接。

由于并口连接方式占用的数据线较多,接线麻烦,所以不太常用。关于通信接口方式怎么选择,

这是通过BS0、BS1以及BS2这三个管脚来配置的,具体定义如下图:

本模块使用IIC通信接口,只需要接4根线就可以完成OLED屏数据通信,如下图所示:

VCC:电源正极(接5V电源)

GND:电源负极(接地)

SCL:IIC时钟信号线

SDA:IIC数据信号线

VCC接到单片机的5V电源引脚上,GND接到GND引脚上,SCL和SDA需要根据不同的平台引脚定义来接线。

C51和STM32一般使用模拟IIC,就是自己定义两个引脚作为SCL和SDA。

Arduino使用硬件IIC,就是芯片本来就定义好了SCL和SDA引脚,不需要我们自己再重新定义。

接好线上电后,可以运行我们提供的测试程序进行测试。

驱动下载

百度云盘下载:全动电子0.96寸OLED显示模块资料V1.0

常用软件说明

取模软件说明见软件包,下载地址如下:

PCtoLCD2002:PCtoLCD2002