最近在玩AB32VG1,在做OLED显示实验时,在csdn搜索了很多关于AB32VG1驱动OLED的文章,很多都是官方例程操作,在msh窗口中输入测试指令,测试驱动是否正常。很少有关于在main函数中直接实现的,本编文章直接在MAIN函数实现OLED显示,上电自动执行。
根据说明书,AB32VG1开发板上有一路 I2C,本文通过 RT-Thread Studio配置 AB32VG1片上外设 I2C的引脚,驱动OLED工作,使开发板上电,OLED显示字符串“Hello IIC”。电路原理如图所示,
步骤说明:
首先创建工程,如图所示,输入工程名AB32VG1_IIC_OLED,点击完成即可。
工程创建成功如上图所示。
2.添加SSD1309软件包
展开工程,双击打开RT-Thread Settings,如下图所示,点击Add按钮,弹出软件包搜索界面,如下图所示
在搜索框中,输入SSD1306,点击搜索,结果如上图所示,点击添加即可。软件包已经添加至工程中,返回上个界面,既可以看到软件包下面有了ssd1306,如下图所示、
双击软件包进入SSD1306软件包配置界面,这里驱动要打上勾号,如下图所示
然后在硬件中,开启IIC功能,如下图所示
点击保存按钮即可,SSD1306驱动配置完成。配置完成之后,打开packeges,可以看到该文件下已经有了SSD1306_LATEST文件,这里存放的就是SSD1306的头文件和源文件。如下图所示。
打开源文件,可以看到如下蓝色代码,其中char ssd1306_WriteString(char* str, FontDef Font, SSD1306_COLOR color)这个函数是使得OLED显示字符串,void ssd1306_SetCursor(uint8_t x, uint8_t y)这个函数,则是设置光标位置。下面我们调用这两个函数实现“hello IIC”的显示。
3.修改main函数代码
首先,要包含头文件,#include “ssd1306.h”//包含SSD1306的头文件
然后在main函数里面添加如下代码:
ssd1306_Init();//添加代码,显示屏初始化ssd1306_SetCursor(2, 6);//添加代码,设置显示光标位置ssd1306_WriteString(“Hello IIC”, Font_11x18, White);//添加代码,设置显示内容ssd1306_UpdateScreen();////添加代码,更新显示屏信息
修改之后的main函数如下图所示。编译工程,下载文件至开发板,运行效果如下图所示。
OK大功告成!!!!
责任编辑:haq
-
OLED
+关注
关注
119文章
6174浏览量
223767 -
开发板
+关注
关注
25文章
4926浏览量
97137 -
中科蓝讯
+关注
关注
9文章
53浏览量
9847
原文标题:【原创专栏】RTT大赛作品连载:AB32VG1开发板OLED显示实验
文章出处:【微信号:gh_9b9470648b3c,微信公众号:电子发烧友论坛】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论