查看: 2143|回复: 7

ASR扩展库——SSD1306驱动

[复制链接]

9

主题

68

帖子

625

积分

版主

Rank: 7Rank: 7Rank: 7

积分
625
发表于 2022-7-21 13:47:13 | 显示全部楼层 |阅读模式
本帖最后由 scratch创意设计 于 2022-7-21 13:49 编辑

扩展库使用说明——SSD1306

一、OLED简介

OLED显示,主要是通过电场驱动,有机半导体材料和发光材料通过过载流子注入和复合后实现发光。从本质上来说,就是通过ITO玻璃透明电极作为器件阳极,金属电极作为阴极,通过电源驱动,将电子从阴极传输到电子传输层,空穴从阳极注入到空穴传输层,之后分迁移到发光层,二者相遇后产生激子,让发光分子激发,经过辐射后产生光源。简单来说,一块OLED屏幕,就是由百千万个“小灯泡”组成。

规格参数
驱动芯片 SSD1306
支持接口 I2C
分辨率128×64
显示尺寸 0.96英寸
显示颜色白光/蓝光
外形尺寸27.5×27.8(mm)
玻璃尺寸26.7×19.26×1.4(mm)
显示区域 21.74(W)×10.864(mm)
点间距 0.17×0.17(mm)
点大小0.15×0.15(mm)
管脚数 4针
功耗 正常显示功耗为 21mA-28MAX
工作电流 正常工作时电流在20ma左右休眠时在ua级电流
视角全视角
工作温度 -20℃~70℃
存储温度-30℃~80℃
工作电压 5V / 3.3V

接口定义
PIN SYMBOL Descriptions
1 GND Ground of Logic Circuit(逻辑电路接地)  
2 VDD Power Supply for Logic(逻辑电源)  
3 SCK Serial clock input(串行时钟输入)  
4 SDA Serial data inpu(串行数据)  

从地址数据格式
b7 b6 b5 b4 b3 b2 b1 b0
0 1 1 1 1 0 SA0 R/W#
“SA0”位为从机地址提供扩展位。“0111100”(即0x3c)或“0111101”(0x3d)可以选择作为SSD1306的从机地址。D/C#引脚充当SA0,用于从机地址选择。“R/W#”位用于确定I2C总线接口的操作模式。R/W#=1,处于读取模式。R/W#=0,处于写入模式。

二、硬件连线图

8.OLED显示.png

三、库函数功能

SSD1306模拟IIC初始化_1658307409434.png
SSD1306初始化,模拟IIC
输入参数:
1.宽度:设置分辨率的宽度,默认为128
2.宽度:设置分辨率的高度,默认为64
3.SDA:串行SPI数据输入端
4.SCL:串行SPI时钟信号
5.设备地址:根据SA0引脚电平设为0x3c。设备地址设置规则请参考从机地址数据格式。

SSD1306硬件IIC初始化_1658307441242.png
SSD1306初始化,硬件IIC
输入参数:
1.宽度:设置分辨率的宽度,默认为128
2.宽度:设置分辨率的高度,默认为64
3.设备地址:根据SA0引脚电平设为0x3c。设备地址设置规则请参考从机地址数据格式。

SSD1306清屏_1658307551192.png
SSD1306清屏
输入参数:
1.状态:亮,屏幕所有像素点亮
灭,屏幕所有像素熄灭

SSD1306设置光标位置_1658307596888.png
SSD1306设置光标位置
输入参数:
1.X:设置光标的X轴坐标。
2.Y:设置光标的Y轴坐标。

SSD1306显示汉字_1658307624810.png
SSD1306显示汉字
输入参数:
1.显示汉字,自定义,默认为好好搭搭
2.字体大小,可选12,16,24,32。

SSD1306更新显示_1658307647569.png
SSD1306更新显示

四、程序范例

8_OLED显示_1658305790406.png

五、实现效果

图片1.png
回复

使用道具 举报

0

主题

1

帖子

6

积分

注册会员

Rank: 2

积分
6
发表于 2022-9-17 11:12:42 | 显示全部楼层
lu-asr01可以用吗
回复

使用道具 举报

0

主题

1

帖子

8

积分

注册会员

Rank: 2

积分
8
发表于 2022-9-29 18:23:56 | 显示全部楼层
用该模块打印英文和数字咋都是乱码啊
回复

使用道具 举报

0

主题

1

帖子

10

积分

注册会员

Rank: 2

积分
10
发表于 2022-12-4 14:59:19 | 显示全部楼层
怎么显示变量啊,一直报错
回复

使用道具 举报

1

主题

2

帖子

13

积分

注册会员

Rank: 2

积分
13
发表于 2023-3-7 22:14:09 | 显示全部楼层
你好,请问这个扩展库能改成7线的吗
1.jpg
回复

使用道具 举报

4

主题

15

帖子

94

积分

注册会员

Rank: 2

积分
94
发表于 2023-3-23 14:42:11 | 显示全部楼层
在PROTEUS上面仿真怎么不显示,实际的1306OLED就会正常显示。
回复

使用道具 举报

0

主题

2

帖子

18

积分

注册会员

Rank: 2

积分
18
发表于 2023-10-18 21:21:29 | 显示全部楼层
为什么我没有硬件外设初始化和临界保护?
回复

使用道具 举报

0

主题

1

帖子

6

积分

注册会员

Rank: 2

积分
6
发表于 2024-4-2 23:40:03 | 显示全部楼层
TinyStar 发表于 2022-9-29 18:23
用该模块打印英文和数字咋都是乱码啊

你好!找到解决方法了吗?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|好好搭搭在线 ( © 好好搭搭在线 浙ICP备19030393号-1 )

GMT+8, 2024-4-16 16:44 , Processed in 0.360969 second(s), 25 queries .

Powered by Discuz!

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表