基于安信可科技Ai-M61开发板的0.96寸IIC单色屏移植教程
01、外设介绍
先来介绍下0.96寸OLED显示屏(驱动芯片:SSD1306 / SSD1315)[color=rgba(0, 0, 0, 0.87)],0.96寸OLED显示屏是一种小尺寸的有机发光二极管(OLED)显示屏,具有许多优点和特点。以下是对0.96寸OLED显示屏的介绍:
尺寸:0.96寸指的是显示屏的对角线尺寸,通常为0.96英寸(约24.4毫米),适合小型设备和紧凑空间。
分辨率:通常具有128x64像素的分辨率,可以显示清晰的图像和文本。
技术:采用OLED技术,每个像素都是自发光的,不需要背光,因此具有更高的对比度和更广的视角。
高亮度:OLED显示屏具有较高的亮度,即使在室外或明亮的环境下也能清晰可见。
低功耗:相比传统的液晶显示屏,OLED显示屏具有较低的功耗,可以延长电池寿命。
快速响应:OLED显示屏具有快速的响应时间,可以实现流畅的图像和动画效果。
色彩鲜艳:OLED显示屏可以呈现鲜艳、饱满的颜色,使图像更加生动逼真。
视角广:OLED显示屏具有广阔的视角,即使从不同的角度观看,图像仍然清晰可见。
薄型轻便:OLED显示屏采用薄型设计,重量轻,适合应用于便携式设备和可穿戴设备。
灵活性:某些OLED显示屏采用柔性基板制造,具有弯曲和弯折的能力,适用于柔性显示应用。
高对比度:OLED显示屏具有高对比度,黑色显示非常深黑,白色显示非常亮白,使图像更加清晰。
高刷新率:OLED显示屏具有高刷新率,可以实现流畅的视频播放和动态图像效果。
02、外设规格参数
工作电压:3.3V
工作电流:9MA
模块尺寸:27.3 x 27.8 MM
像素大小:128(H) x 64(V)RGB
驱动芯片:SSD1306
通信协议:IIC
管脚数量:4 Pin(2.54mm间距排针)
03、移植过程
keil stm32项目移植:
man.c事例代码移植
删除不用的代码。
#include "stm32f10x.h" // Device header
#include "Delay.h"
确少一个延时,功能一样直接调用博流的库,可以手动替换成bflb_mtimer_delay_ms,但是可以根据c语法,[color=rgba(0, 0, 0, 0.87)]在代码中添加以下宏定义:
#define Delay_ms(ms) bflb_mtimer_delay_ms(ms)
则无需修改任何代码。
oled.c i2c移植
OLED引脚初始化>>OLED_GPIO_Init,
I2C发送一个字节>>OLED_I2C_SendByte
iOLED写命令>>OLED_WriteCommand
OLED写数据>>OLED_WriteData
修改方法:直接复制sdk里面的i2c代码即可
经过分析。原先工程用的是软件模拟i2c,本次使用的硬件库的。
I2C发送一个字节>>OLED_I2C_SendByte这个不用移植,直接删掉。
iOLED写命令>>OLED_WriteCommand
OLED写数据>>OLED_WriteData
这里分析得出就是发送从机地址和命令。里面的函数都用不到,可以直接删除:
OLED_I2C_Start(); I2C起始
OLED_I2C_SendByte(0x78);
OLED_I2C_Stop(); //I2C终止
04、移植验证
这里介绍功能齐全-支持字符、数字、汉字、图像及各种绘图图形显示。
PS:代码非原创,只是移植到了Ai-M61,经验证代码无任何报错。
快速使用:解压修改Makefile文件BL_SDK_BASE ?=D:\test\boliu\bouffalo_sdk/
为自己的sdk路径即可#include "OLED.h"
/*OLED初始化*/
OLED_Init();
/*在(0,0)位置显示字符'A',字体大小为8*16点阵*/
OLED_ShowChar(0, 0, 'A', OLED_8X16);
/*调用OLED_Update函数,将OLED显存数组的内容更新到OLED硬件进行显示*/
OLED_Update();
只需要引用一个,就能方便调用了。
高级设置:OLED.c
OLED_GPIO_Init函数:OLED引脚初始化
只需要替换GPIO_PIN_0、GPIO_PIN_1,就可以修改自定义引脚
OLED_Data.c
注意:添加没有的中文字库,添加图像都在此,demo里面有详细的调用过程。
04、取模教程
一:配置软件,点设置然后按照如下设置。
二:生成字模。
三:安装格式。主要是删掉多余的,复制没有的即可。
效果如下:
05、常见问题汇总
移植纯c代码需要改的地方并不多,甚至原封不动的复制过来的man文件,仅仅是添加了文件头。一些常见问题汇总给大家作参考:
5.1文件找不到
打开CMakeLists.txt
添加文件包含,格式空格一个文件名
target_sources(app PRIVATE oled.c OLED_Data.c)
5.2编译器找不到路径
修改Makefile文件
BL_SDK_BASE ?=D:\test\boliu\bouffalo_sdk/
也可以直接修改为sdk的绝对路径,这样你项目的目录可以随便放在任何地方。
5.3数据类型找不到
引入c语言库能解决90%
#include <string.h>
#include <math.h>
#include <stdio.h>
#include <stdarg.h>
- |
- +1 赞 0
- 收藏
- 评论 0
本文由ll转载自安信可科技公众号,原文标题为:【外设移植】0.96寸IIC单色屏Ai-M61开发板,本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。
相关推荐
Ai-BS21系列烧录指导——开发板or模组
本篇以Ai-BS21-32S_Kit为例指导烧录固件,这是由深圳市安信可科技有限公司开发的蓝牙星闪开发板。该模块核心处理器芯片Hi2821是一款高集成2.4GHzSoCBLE&SLE芯片,支持BLE5.4/SLE1.0,集成RF电路,RF包含功率放大器PA、低噪声放大器、TX/RXSwitch、集成电源管理等模块,支持1M/2M/4M3种带宽,最大支持12Mbit/s速率。
设计经验 发布时间 : 2024-06-24
打卡智能家居之旅(5):Ai-WB2 使用HomeAssistant-C库接入HomeAssistant
之前所有写的《智能家居之旅》帖子代码都是基于Ai-M61来开发的,不少大佬跟我反馈说:Ai-M61/62只用来连接MQTT太浪费资源了,Ai-WB2更具性价比!我觉得有道理,所以昨天就把HomeAssistant-C 给做了一次大改,提升了耦合性,目前仓库的master分支也可以支持Ai-WB2了,现在,跟着我来试试吧!
设计经验 发布时间 : 2024-07-22
BU03 UWB室内定位测距模块,配套测试说明
安信可推出了BU03定位模组,采用DW3000芯片,体积小巧,可集成至主板。BU03_Kit开发板使用STM32F103主控芯片,支持SPI连接和STM32 ST-LINK Utility烧录。测试时,需至少两个开发板,通过AT指令设置基站和标签,进行测距和定位测试。开发板提供USB和TTL接口,可配合上位机获取位置数据。
设计经验 发布时间 : 2024-10-31
低能耗、低时延、快速度,星闪开发板Ai-BS21-32S-Kit更多场景应用,邀您一起来探索!
万众期待的星闪开发板上架了!Ai-BS21-32S-Kit 低延迟,高效率!话不多说!先回顾下基本参数信息。
产品 发布时间 : 2024-06-23
【外设移植】基于AI-WB2-32S开发板的SG90舵机控制案例
介绍Ai-WB2模组驱动舵机控制(SG90)的技术要求和方案。
应用方案 发布时间 : 2024-11-05
高性能开发板Ai-M61-32S-Kit助力Wi-Fi6+BLE5.3模组
Ai-M61-32S-Kit是针对Ai-M61-32S模组设计的开发板。Ai-M61-32S是由深圳市安信可科技有限公司开发的Wi-Fi6+BLE5.3模组,该模组搭载BL618芯片作为核心处理器,支持Wi-Fi 802.11b/g/n/ax协议和BLE协议,支持Thread协议。
产品 发布时间 : 2024-06-22
星闪开发板or模组烧录指导
Ai-BS21-32S_Kit是由安信可科技开发的蓝牙星闪开发板。该模块核心处理器芯片Hi2821是一款高集成2.4GHzSoCBLE&SLE芯片,支持BLE5.4/SLE1.0,集成RF电路,RF包含功率放大器PA、低噪声放大器、TX/RXSwitch、集成电源管理等模块,支持1M/2M/4M3种带宽,最大支持12Mbit/s速率。
设计经验 发布时间 : 2024-06-21
BW16 Combo-AT指令的开发板和旧版AT指令的开发板不通用吗
指令格式不同,不通用
技术问答 发布时间 : 2024-09-30
安信可星闪开发板与西门子PLC通信的应用探索
星闪技术作为一项中国原生的、具有竞争力的近距离无线通信技术,通过技术创新和标准体系建设,打破了传统蓝牙和Wi-Fi在特定应用领域的一些局限性,为物联网、车联网、工业互联网等场景带来了更高性能、更安全、更具成本效益的无线连接解决方案。随着相关产品的不断推出和生态系统的持续完善,星闪技术有望在全球范围内产生深远影响,成为未来短距离无线通信领域的重要力量。
设计经验 发布时间 : 2024-06-24
安信可推出基于Ai-M61-32S的屏幕驱动开发板,支持2.8/3.5寸等30Pin SPI显示屏
小安派-DSL(AiPi-DSL) 是安信可开源团队专门为 Ai-M61-32S 设计的一款屏幕驱动开发板,支持 2.8/3.5 寸等 30Pin SPI 显示屏、2.4 寸及 1.28 寸等 18Pin SPI 显示屏。
原厂动态 发布时间 : 2023-07-13
TG-12F开发板的开发资料
https://blog.csdn.net/Boantong_/article/details/110559410
技术问答 发布时间 : 2024-09-30
ESP-S3-32S-Kit Specification
型号- ESP-S3-12K,NODEMCU-ESP-S3-12K,ESP-S3-32S,ESP-S3-32S-KIT,ESP32-S3,NODEMCU-ESP-S3-32S
安信可24G毫米波雷达Rd-03打造卫生间感应香薰系统
利用ESP32C3开发板、安信可24G毫米波雷达Rd-03和超声波雾化器,构建了一套卫生间感应香薰系统。通过雷达模块检测人体存在,并控制雾化器定时释放香薰,改善卫生间气味环境。系统具备时间间隔判断和雾化时长限制功能,有效防止过度工作。
应用方案 发布时间 : 2024-09-12
请问,BW16开发板arduino开发环境要如何搭建?
参考说明链接:https://blog.csdn.net/weixin_51452951/article/details/122286441
技术问答 发布时间 : 2024-09-30
电子商城
现货市场
服务
可加工PCB层数:1-30层;板材类型:FR4板/铝基板/铜基板/刚扰结合板/FPC板/高精密板/Rogers高频板;成品尺寸:5*5mm~53*84cm;板厚:0.1~5.0mm。
最小起订量: 1 提交需求>
可贴PCB板厚范围:0.6~2.0mm,也支持生产软硬接合板,拼板长宽:50*50mm~550*500mm,PCBA快速贴片支持01005CHIP元件。
最小起订量: 1片 提交需求>
登录 | 立即注册
提交评论