[活动专区] 【AT-START-F407测评】三、I2C_OLED

[复制链接]
 楼主| lisingch 发表于 2021-1-29 02:25 | 显示全部楼层 |阅读模式
本帖最后由 lisingch 于 2021-2-5 18:50 编辑

      编辑原因:补充工程文件。整理了一下,感觉还是有点乱。            
      本次实验使用AT32F407VGT7的I2C1驱动0.91' OLED显示器。
一、实验资源
1、AT-START-F407开发板;
2、keil v5.31.0.0;
3、BSP等相关资源;4、0.91'OLED(4Pin I2C);

二、相关知识学习
      AT32F407VGT7具有3个I2C接口,支持两种速度模式,同时兼容SMBus2.0:
2021-01-29_091104.png
2021-01-29_091142.png
2021-01-29_091208.png
2021-01-29_091347.png

本次实验使用I2C主模式:
2021-01-29_091628.png
2021-01-29_091709.png

三、硬件连接
      使用了I2C1端口,原打算将I2C1重映射至Arduino UNO上的I2C接口省着连线,无奈OLED模块上SDA与SCL排针位置颠倒。
2021-01-29_092358.png
2021-01-29_092206.png

四、程序实现
      主要是利用“BSP”中相关程序进行修改,使用I2C主模式只有数据的写入。OLED模块只知道地址为0X78,套用了SSD1306的驱动程序,之前已驱动成功过。
2021-01-29_093746.png
2021-01-29_093809.png
2021-01-29_093947.png
2021-01-29_094000.png
2021-01-29_094020.png

五、实验结果
微信图片_20210129094241.jpg
微信图片_20210129094235.jpg

六、总结
      通过OLED驱动,对AT32F407系列微控制器的I2C总线有了初步认知。对于从“BSP”中移植的代码还欠缺深入理解,“I2C_Master_Transmit()”函数的应用并不完全正确,还有待进一步学习。

七、附件
I2C_OLED_091.rar (385.29 KB, 下载次数: 19)




 楼主| lisingch 发表于 2021-1-29 10:00 | 显示全部楼层
折腾了半晚上想保存,结果迷迷糊糊地按错发表了,早上又赶紧重新编辑了一下。
gaoyang9992006 发表于 2021-1-29 20:48 | 显示全部楼层
记得工程也要分享啊,不然帖子没有价值啊。。。
 楼主| lisingch 发表于 2021-1-29 20:57 | 显示全部楼层
gaoyang9992006 发表于 2021-1-29 20:48
记得工程也要分享啊,不然帖子没有价值啊。。。

当时着急代码太乱,要整理一下
 楼主| lisingch 发表于 2021-2-5 18:52 | 显示全部楼层
gaoyang9992006 发表于 2021-1-29 20:48
记得工程也要分享啊,不然帖子没有价值啊。。。

工程文件已补充。请多多指教。
 楼主| lisingch 发表于 2021-2-5 18:56 | 显示全部楼层
文末已补充工程文件
您需要登录后才可以回帖 登录 | 注册

本版积分规则

99

主题

15005

帖子

19

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