找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1737|回复: 0
打印 上一主题 下一主题
收起左侧

HC32F460开发板OLED屏显示驱动

[复制链接]
跳转到指定楼层
楼主
与其他的开发板不同,在HC32F460开发板上配置了小巧别致的I2C接口OLED屏。
有了它,我们需要显示的数据和信息就不必完全借助于串口通信了!
好像是华大要测试测评者的水平,尽管开发板配置了OLED显示屏,但在例程中却没有提供相应的程序支持。
好在要驱动它并不难,所做的无非是两件事,一是了解GPIO口的使用方法,将SDA和SCL引脚设置为输出口,
然后定义好输出高低电平的语句,来对OLED屏厂商的例程加以衔接;另一件事就是配置相应的延时函数,
以控制OLED屏的时序要求。
此外,为了在OLED屏上实现汉字显示功能,可使用相应的字模提取软件来获得所需用到的字模,
以构建专用的小字库。字模的提取过程参见图1所示。

图1 提取字模

在如下的主程序控制下,可见到图2和图3的显示效果。
  1. int32_t main(void)
  2. {
  3.          SysClkIni();
  4.          OLED_Init();
  5.          Delay_ms(100);
  6.          OLED_Clear();
  7.          OLED_ShowString(0,0,"HC32F460",16);
  8.          OLED_ShowString(0,2,"OLED TEST",16);
  9.          OLED_ShowCHinese(72,0,0);
  10.          OLED_ShowCHinese(88,0,1);
  11.          OLED_ShowCHinese(104,0,2);
  12.         
  13.          Delay_m (5000);
  14.          OLED_Clear();
  15.          OLED_ShowCHinese(0,0,3);
  16.          OLED_ShowCHinese(16,0,4);
  17.          OLED_ShowCHinese(32,0,5);
  18.          OLED_ShowCHinese(48,0,6);
  19.          OLED_ShowCHinese(64,0,7);
  20.          OLED_ShowCHinese(0,2,8);
  21.          OLED_ShowCHinese(16,2,9);
  22.          OLED_ShowCHinese(32,2,10);
  23.          OLED_ShowCHinese(48,2,11);
  24.          OLED_ShowCHinese(64,2,12);
  25.          while(1);
  26. }
复制代码

图2 显示效果1


图3 显示效果2

其实在得到HC32F460开发板前,自己就购置了多种类型的OLED屏,如双色屏,彩色屏等,按接口类型又有I2C接口的及SPI接口的。
受引脚的制约,手头只有一款灰色的显示屏可与开发板匹配,其显示效果见图4所示。

图4 显示效果3

评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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