根据当前市场情况,主流OLED驱动芯片主要包括以下几类:
1、分辨率
2、电源电压
3、电流能力
4、亮度控制
5、接口类型
6、其他参数
韩国厂商
台湾厂商
美国厂商
大陆在OLED驱动芯片领域的技术能力虽然起步较晚,但也在逐步进步并争取市场份额。主要代表厂商包括:
本文主要采用了晶门半导体有限公司的SSD1315做为驱动芯片。
一、SSD1315基本信息
二、SSD1315技术特点
三、SSD1315应用场景
SSD1315广泛应用于各种需要OLED显示屏的场合,如电子标签、仪器仪表、消费电子产品等。由于其低功耗、高对比度、快速响应等优点,SSD1315在便携式设备和低功耗应用中尤为受欢迎。
硬件参考设计
研发设计注意使用事项
本文采用了奇迹物联的红豆版开源技术平台为主控单元,一步步手把手教会读者如何使用红豆版开源平台编写SSD1315驱动。这里对代码就不多详解,如果需要详细了解,请到奇迹物联的红豆版开源平台了解详细代码讲解。
Demo位于amaziot_bloom_os_sdk\sample\3rd\3.1_SSD1315 Gitee源码地址:https://gitee.com/ning./hongdou Github源码地址:https://github.com/ayumid/hongdou 编译指令:.\build.bat -l .\amaziot_bloom_os_sdk\sample\3rd\3.1_SSD1315 |
驱动OLED显示图片,不同大小的汉字,字符,数字;画圆,画矩形,画线;OLED驱动使用SSD1315。任何品牌的OLED,只要是驱动芯片使用的SSD1315,都可以使用本驱动。驱动使用模拟spi实现。
使用SSD1315作为主控的OLED,硬件有两种接法,区别是是否使用DC引脚。使用DC引脚,需要主控来控制DC引脚确定当前发送的是命令还是数据,不使用DC引脚,需要主控在发送数据之前发送一个bit,来确定是命令还是数据,具体查看drv_ssd1315_wr_byte的实现。
功能:该函数用于,显示图片。
参数:
参数 | 释义 |
x,y | 起点坐标 |
sizex,sizey | 图片长宽 |
BMP[] | 要写入的图片数组 |
mode | 反色显示;1,正常显示 |
返回值:无
示例:
C |
功能:该函数用于,滚动显示汉字。
参数:
参数 | 释义 |
num | 显示汉字的个数 |
space | 每一遍显示的间隔 |
mode | 0,反色显示;1,正常显示 |
返回值:无
示例:
C |
功能:该函数用于,显示汉字。
参数:
参数 | 释义 |
x,y | 起点坐标 |
num | 汉字对应的序号 |
mode | 0,反色显示;1,正常显示 |
返回值:无
示例:
C |
功能:该函数用于,显示数字。
参数:
参数 | 释义 |
x1,y1 | 起始坐标 |
x2,y2 | 终止坐标 |
color | 线的颜色 |
返回值:无
示例:
C |
功能:该函数用于,显示数字。
参数:
参数 | 释义 |
m | 底数 |
n | 指数 |
返回值:无
示例:
C |
功能:该函数用于,显示字符串。
参数:
参数 | 释义 |
x,y | 起点坐标 |
size1 | 字体大小 |
*chr | 字符串起始地址 |
mode | 0,反色显示;1,正常显示 |
返回值:无
示例:
C |
功能:该函数用于,在指定位置显示一个字符,包括部分字符。
参数:
参数 | 释义 |
x,y | 显示坐标 |
size1 | 选择字体 6x8/6x12/8x16/12x24 |
mode | 0,反色显示;1,正常显示 |
返回值:无
示例:
C |
功能:该函数用于,画圆。
参数:
参数 | 释义 |
x,y | 显示坐标 |
r | 圆的半径 |
返回值:无
示例:
C |
功能:该函数用于,画线。
参数:
参数 | 释义 |
x1,y1 | 起点坐标 |
x2,y2 | 结束坐标 |
返回值:无
示例:
C |
功能:该函数用于,画点。
参数:
参数 | 释义 |
x,y | 显示坐标 |
t | 1 填充 0,清空 |
返回值:无
示例:
C |
功能:该函数用于,清屏。
参数:无
返回值:无
示例:
C |
功能:该函数用于,更新显存到OLED。
参数:无
返回值:无
示例:
C |
功能:该函数用于,开启OLED显示。
参数:
返回值:无
示例:
C |
功能:该函数用于,发送一个字节的数据,注意硬件DC引脚有误,会根据宏定义DRV_SSD1315_USED_DC_PIN来控制使用哪种驱动实现方式。
参数:
参数 | 释义 |
dat | 数据 |
cmd | 命令 数据 |
width | 图片宽度 |
pic[] | 图片数组 |
返回值:无
示例:
C |
功能:该函数用于,屏幕旋转180度。
参数:
参数 | 释义 |
i | 0 正常显示 1 翻转180度 |
返回值:无u
示例:
C |
功能:该函数用于,反显函数。
参数:
参数 | 释义 |
i | 0 正常显示 1 反色显示 |
返回值:无
示例:
C |
复制20.1_file_xtu示例工程,到同一个文件夹下,修改文件名为3.1_SSD1315,如图:
增加文件组件所在目录头文件路径,和源文件路径,如图:
使用代码编辑器,将新建的工程文件加入代码编辑器中,打开main.c,修改main.c,加入am.h等头文件,如图:
在Phase2Inits_exit 创建一个任务,如图:
输出日志到DEBUG 串口,日志比较少,可以输出到这个串口,如果日志比较多,需要输出到usb口,以免不必要的问题出现
输出日志到USB 串口,使用catstudio查看,catstudio查看日志需要更新对应版本mdb.txt文件,软件打开filtter过滤日志,只查看用户输出的日志
栈空间宏定义
任务栈空间,本例使用数组实现,用户在做项目时,可以预先估算下当先任务需要的大致栈空间,OS没有提供可以查看栈空间使用情况的API
任务指针
底层初始化,本例空
底层初始化,本例空
底层初始化,本例空
创建主任务,初始化消息队列,定时器,任务等。
代码片段:
C |
主任务,获取imsi,rsrq等参数信息。
代码片段:
C |
在SDK根目录打开命令行,输入命令.\build.bat -l .\amaziot_bloom_os_sdk\sample\3rd\3.1_SSD1315\
C++ |
参考入门中开发工具,生成工具。
测试步骤:
上电后,屏幕会依次显示图片,不同大小的汉字,字符,数字;
(如有侵权,联系删除)
文章评论(0条评论)
登录后参与讨论