0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

第十章 OLED(硬件IIC)

撞上电子 2022-02-07 17:47 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

第一节硬件解读

蓝桥杯物联网开发板最炫酷的模块就是OLED,这是一块0.91寸的OLED,大家先看看原理图。从下图我们可以看出,OLED是由PA8和PB4组成的IIC来控制的。

3dfe7cee-7f8b-11ec-9e9d-dac502259ad0.png

那么其他的电阻电容是干什么的呢?大家别急,我们可以看到蓝桥杯官方提供的资源包中,有该OLED的数据手册,如下图:

3e113582-7f8b-11ec-9e9d-dac502259ad0.png

既然知道OLED是由IIC来控制的,本次的实验就好理解了。需要注意的是,OLED的供电部分不是直接接3.3V。如下图:

3e209428-7f8b-11ec-9e9d-dac502259ad0.png

这个S_+3V3是OLED屏幕的供电部分,在查找原理图之后,可以发现PB5也连接到一个S_+3V3,也就是说,需要PB5控制OLED等电源

3e2d5c80-7f8b-11ec-9e9d-dac502259ad0.png

总结以下,OLED与控制器引脚关系如下:

OLED引脚

开发板引脚

电源使能引脚

PB5

SCL

PA8/I2C3_SCL

SDA

PB4/I2C3_SDA

第二章 环境配置

1,需要声明的是,本次实验是基于蓝桥杯物联网的官方的历程,大家可以打开赛点资源包查看。公子只做修改和注释。

2,官方的PC14和PC15也用了但是它们和OLED没有关系,我们不要去管它。

3e3cfa28-7f8b-11ec-9e9d-dac502259ad0.png

3,官方也没有选择Debug引脚,我们也不需要勾选。

3e4d1084-7f8b-11ec-9e9d-dac502259ad0.png

4,PB5作为OLED模块的电源使能引脚,直接配置为输出模式。

3e61e838-7f8b-11ec-9e9d-dac502259ad0.png

5,PA8和PB4作为IIC的引脚,应该配置为IIC,但是蓝桥杯官方的是硬件IIC,也配置为输出模式,如下图:

3e719f58-7f8b-11ec-9e9d-dac502259ad0.png

3e86335a-7f8b-11ec-9e9d-dac502259ad0.png

6,其他配置将不再阐述。

第三节 编写代码

1,说明,本代码是赛点资源包中提供,也就是说,比赛会提供该项目。公子只是对该项目进行解读和修改。

2,先说说项目的文件的类别吧。

3e93a350-7f8b-11ec-9e9d-dac502259ad0.png

3,进入到main函数,看见只写了2个数组:

3ea48d1e-7f8b-11ec-9e9d-dac502259ad0.png

4,在main函数进入while之前,有一个Task_BrdInit函数

3eb432dc-7f8b-11ec-9e9d-dac502259ad0.png

5,那我们来看看这个函数的具体内容吧:

3ecaaf58-7f8b-11ec-9e9d-dac502259ad0.png

6,看完Task_BrdInit函数,我们继续看while里面的函数:

3ee39036-7f8b-11ec-9e9d-dac502259ad0.png

7,其他的关于OLED的代码请看附录内容,正文只解释和OLED相关度高的函数,谢谢。

8,编译代码,配置下载器等信息,下载代码。

第四节 实验现象

实验注意事项:

1,程序语句需要位于程序的BEGIN与END之间。

2,利用USB线将电脑USB口与开发板USB1口连接。

3,CN4所有拨码开关必须选择ON DP档,否则无法下载程序。

实验现象:

LD1,LD4常亮。OLED第一行显示“GXCT IOT”,第二行显示“OLED Text”。

宗旨:

免费的服务,永远的开源

说明:

1.本教程免费,开源,禁止用于任何商业用途,违者必究。

2.本教程版权所属为东莞市东城墨竹公子电子工作室,盗版必究。

3.资料下载请通过以下方式:

微信公众号:撞上电子

CSDN:撞上电子

掘金:撞上电子

今日头条:撞上电子

淘宝企业店:撞上电子

--东莞市东城墨竹公子电子工作室

--墨竹公子

--2021.12.04

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • OLED
    +关注

    关注

    121

    文章

    6375

    浏览量

    234333
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    【「Altium Designer 25 电路设计精进实践」阅读体验】+花絮篇

    在本书的第十章以结语的形式介绍本书的成书的过程,由此可知成书的过程是一个不断积累、不断提升和更新的过程,在本书之前作者就已完成了《Altium Designer22电路设计与仿真实战从入门到精通
    发表于 02-13 00:17

    【瑞萨RA × Zephyr开发板评测】+模拟IIC实现OLED输出(与硬件IIC输出的失败经验)

    无需额外工具即可编写/调试程序。此外,通过Arduino Uno和Pmod™接口,包括对微控制器所有引脚的标准和通孔访问等,它具有很高的可扩展性。 按照上图进行Oled接线,首先使用IIC硬件接口
    发表于 01-19 22:23

    RA MCU众测宝典 | IIC之【RA2E1】IIC通信的OLED显示

    “RAMCU众测宝典”IIC专题上线啦!这次,瑞萨嵌入式小百科将和大家一起聚焦【瑞萨RA2E1】开发板,一步步玩转IIC通信的OLED显示。从IIC协议的核心原理、FSP中I2CMas
    的头像 发表于 01-01 10:04 3340次阅读
    RA MCU众测宝典 | <b class='flag-5'>IIC</b>之【RA2E1】<b class='flag-5'>IIC</b>通信的<b class='flag-5'>OLED</b>显示

    【瑞萨RA6E2地奇星开发板试用】+ 电压检测与OLED屏显示

    ); return ret; } 实现OOLED屏初始化的函数为: void OLED_Init(void) { Write_IIC_Command(0xAE
    发表于 12-27 19:20

    【瑞萨RA6E2地奇星开发板试用】软件IIC驱动OLED屏幕实现数字打印

    瑞萨地奇星RA6E2测评版 软件IIC驱动OLED数字显示测评报告 一、测评概述 1.1 测评背景 瑞萨地奇星RA6E2测评板是基于RA6E2系列MCU的入门级开发板,主打低功耗、高性能和丰富的外设
    发表于 12-11 19:58

    【瑞萨RA6E2】硬件IIC驱动九轴传感器与OLED显示

    IIC_Write(OLED_ADDR, OLED_CMD, 0xDA);// 设置COM硬件配置 IIC_Write(
    发表于 11-27 02:18

    【RA4M2-SENSOR】+OLED屏显示驱动

    RA4M2-SENSOR开发板是一款近于最小系统的开发板,通过添加相应的外设,可丰富其功能。 这里就为它配置一个I2C接口的OLED屏,驱动OLED屏的方式有2种,即软件方式和硬件方式。 其中软件
    发表于 09-02 18:28

    【微五科技CF5010RBT60开发板试用体验】硬件IIC点亮OLED小屏幕

    微五科技 CF5010RBT60 测评:硬件 IIC 驱动 OLED 的流畅体验 作为一款基于高性能 RISC-V 内核 (CF5010RBT60, 160MHz) 的开发板,微五科技
    发表于 08-08 11:01

    【RA-Eco-RA6M4开发板评测】uart+OLED

    继上一篇调通串口后,这次我们开始加上IIC接口的0.96寸OLED显示。 准备工作 连接好环境,在e2studio上配置IIC相关信息,使用的是IIC0.我们把
    发表于 07-24 20:58

    第十章 W55MH32 SNTP示例

    本文讲解了如何在W55MH32芯片上实现SNTP授时功能,通过实例详细展示了从SNTP服务器同步时间的实现流程,包括时间请求、响应解析和本地时间校准等核心步骤。文章还对SNTP的应用场景进行了分析,帮助读者理解其在时间同步中的实际应用价值。
    的头像 发表于 07-24 09:43 1497次阅读
    <b class='flag-5'>第十章</b> W55MH32 SNTP示例

    【RA-Eco-RA6M4开发板评测】+OLED屏显示驱动

    char IIC_Byte) { unsigned char i; unsigned char m,da; da=IIC_Byte; OLED_SCLK_Clr(); for(i=0;i&
    发表于 07-23 17:33

    RK3568驱动指南|第十二篇 GPIO子系统-第130 GPIO的调试方法

    RK3568驱动指南|第十二篇 GPIO子系统-第130 GPIO的调试方法
    的头像 发表于 06-03 11:32 1467次阅读
    RK3568驱动指南|<b class='flag-5'>第十</b>二篇 GPIO子系统-第130<b class='flag-5'>章</b> GPIO的调试方法

    第十五章 DAC (下篇)

    本篇文章为第十五章DAC(下篇),介绍三个例程:DAC_OutDMASineWave用DMA输出正弦波,DAC_OutNoiseWave输出噪声波,DAC_OutTriangleWave生成三角波,均有初始化、波形配置及串口调试功能。
    的头像 发表于 05-28 15:39 1449次阅读
    <b class='flag-5'>第十五章</b> DAC (下篇)

    RK3568驱动指南|第十二篇 GPIO子系统-第135 GPIO子系统与pinctrl子系统相结合实验

    RK3568驱动指南|第十二篇 GPIO子系统-第135 GPIO子系统与pinctrl子系统相结合实验
    的头像 发表于 05-23 13:47 1216次阅读
    RK3568驱动指南|<b class='flag-5'>第十</b>二篇 GPIO子系统-第135<b class='flag-5'>章</b> GPIO子系统与pinctrl子系统相结合实验

    第十章 W55MH32中断应用概览

    本章讲述了W55MH32中断应用,涵盖异常类型、NVIC介绍、优先级定义与分组,阐述中断编程三要点(使能中断、配置 NVIC、编写服务函数),并强调优先级分组设置注意事项。
    的头像 发表于 05-22 17:07 2074次阅读
    <b class='flag-5'>第十章</b> W55MH32中断应用概览