这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » 国产MCU » AiCube生成驱动OLED-12864代码,【SPI,SPI-DMA,I2C,

共2条 1/1 1 跳转至

AiCube生成驱动OLED-12864代码,【SPI,SPI-DMA,I2C,I2C-DMA】,@Ai8051U

助工
2025-06-17 09:10:20     打赏

AiCube 生成驱动 OLED-12864代码,【SPI,SPI-DMA,I2C,I2C-DMA】
===4种 通信组合,一网打尽,使用AiCube生成基于Ai8051U的代码
大家可以轻松改到 STC8H8K64U / STC32G12K128 系列

1、认识 OLED-12864 显示屏(SPI+I2C,2种 通信模式)
下图是网络上比较常用的OLED-12864显示屏,通过电阻跳线选择是 SPI通信接口,还是 I2C通信接口

  

当需要使用SPI接口时,R1、R2、R8不焊,R3、R4焊4.7K电阻,如下图


当需要使用I2C接口时,R2、R3、R9不焊,R1、R4焊4.7K电阻,R8焊0欧电阻,如下图



2、OLED-12864屏接口
本帖的测试环境使用的是Ai8051U试验箱V1.2,试验箱上的OLED12864接口如下图所示:

此部分的接口电路图如下:


SPI使用的是:SS(P3.5), MOSI(P3.4), MISO(P3.3), SCLK(P3.2)这组切换
I2C使用的是:SCL(P3.2), SDA(P3.3)这组切换

试验箱上的OLED接口是8Pin,本帖使用的OLED是7Pin,靠左对齐将屏插到接口上即可,如下图:


3、使用AiCube生成SPI驱动框架
打开AiCube,新建Ai8051U-32Bit项目


3.1、在图形化I/O配置界面中选择SPI的P3口切换组

3.2、在图形化I/O配置界面对OLED相关的I/O模式做如下配置

3.3、在图形化I/O配置界面配置完成后,务必勾选相应的端口,如下图
(若不勾选,则AiCube不会生成相应的初始化代码)

3.4、如下图对SPI功能模块进行配置

3.5、完成上面的配置点击AiCube界面中的“创建Keil项目”按钮即可生成Keil项目框架及相应的代码


4、完善代码添加OLED驱动代码
4.1、添加OLED驱动代码和数据代码到项目中
打开AiCube自动生成的Keil项目,将OLED驱动代码"oled.c"和图片字库代码"tab.c"添加到项目中

4.2、使用硬件SPI实现OLED的低层驱动代码(核心代码)

image.png

image.png

4.3、其它代码可参考附件中的代码完成
4.4、代码完成代码编写后,将编译生成的HEX文件下载到试验箱,即可看到效果

演示程序如下:OLED_SPI_Demo.rar

原帖:https://www.stcaimcu.com/thread-18574-1-1.html




关键词: AiCube     OLED-12864     @Ai8051    

专家
2025-06-17 17:21:49     打赏
2楼

很详细的过程,非常适合初学者跟进学习!


共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]