OLED屏显+实践操作

目录

  • 一、题目要求
  • 二、SPI介绍
    • 2.1 SPI简介
    • 2.2 SPI特点
  • 三、OLED介绍
    • 3.1 OLED概述
    • 3.2 OLED模块描述
    • 3.2 OLED模块原理图
  • 四、STM32+OLED显示个人学号姓名
    • 4.1 文字取模方法
    • 4.2 工程代码修改与编写
    • 4.3 线路连接及代码烧录
  • 五、实验二:STM32+OLED滑动显示长字符
    • 5.1 代码撰写
    • 5.2 效果展示图
  • 六、实验三:STM32+OLED显示温湿度
    • 6.1 代码撰写
    • 6.2 效果展示
  • 总结

一、题目要求

理解OLED屏显和汉字点阵编码原理,使用STM32F103的SPI或IIC接口实现以下功能:

  1. 显示自己的学号和姓名;

  2. 显示AHT20的温度和湿度;

  3. 上下或左右的滑动显示长字符,比如“Hello,欢迎来到重庆交通大学物联网205实训室!”或者一段歌词或诗词(最好使用硬件刷屏模式)。

二、SPI介绍

2.1 SPI简介

SPI 规定了两个 SPI 设备之间通信必须由主设备 (Master) 来控制次设备 (Slave). 一个 Master 设备可以通过提供 Clock 以及对 Slave 设备进行片选 (Slave Select) 来控制多个 Slave 设备, SPI 协议还规定 Slave 设备的 Clock 由 Master 设备通过 SCK 管脚提供给 Slave 设备, Slave 设备本身不能产生或控制 Clock, 没有 Clock 则 Slave 设备不能正常工作。

2.2 SPI特点

  • SPI控制方式
    采用主-从模式(Master-Slave) 的控制方式。

SPI 规定了两个 SPI 设备之间通信必须由主设备 (Master) 来控制次设备 (Slave). 一个 Master 设备可以通过提供 Clock 以及对 Slave 设备进行片选 (Slave Select) 来控制多个 Slave 设备, SPI 协议还规定 Slave 设备的 Clock 由 Master 设备通过 SCK 管脚提供给 Slave 设备, Slave 设备本身不能产生或控制 Clock, 没有 Clock 则 Slave 设备不能正常工作。

  • SPI传输方式
    采用同步方式(Synchronous)传输数据Master 设备会根据将要交换的数据来产生相应的时钟脉冲(Clock Pulse), 时钟脉冲组成了时钟信号(Clock Signal) , 时钟信号通过时钟极性 (CPOL) 和 时钟相位 (CPHA) 控制着两个 SPI 设备间何时数据交换以及何时对接收到的数据进行采样, 来保证数据在两个设备之间是同步传输的。
    OLED屏显+实践操作

三、OLED介绍

3.1 OLED概述

OLED,即有机发光二极管(Organic Light-Emitting Diode),又称为有机电激光显示(OrganicElectroluminesence Display, OELD)。OLED 由于同时具备自发光,不需背光源、对比度高、厚度薄、视角广、反应速度快、可用于挠曲性面板、使用温度范围广、构造及制程较简单等优异之特性,被认为是下一代的平面显示器新兴应用技术。

LCD 都需要背光,而 OLED 不需要,因为它是自发光的。这样同样的显示,OLED 效果要来得好一些。以目前的技术,OLED 的尺寸还难以大型化,但是分辨率确可以做到很高。

3.2 OLED模块描述

ATK-0.96’ OLED 模块是 ALIENTEK 推出的一款高性能 OLED 显示模块,尺寸小巧(27mm26mm),结构紧凑,模块通过 1 个 28P 的 2.54mm 间距排针与外部连接,模块外观如图所示:

OLED屏显+实践操作
该模块采用 8*2 的 2.54 排针与外部连接,总共有 16 个管脚,在 16 条线中,我们只用了 15条,有一个是悬空的。15 条线中,电源和地线占了 2 条,还剩下 13 条信号线。在不同模式下,我们需要的信号线数量是不同的,在 8080 模式下,需要全部 13 条,而在 IIC 模式下,仅需要2条线就够了!这其中有一条是共同的,那就是复位线 RST(RES),RST 上的低电平,将导致 OLED 复位,在每次初始化之前,都应该复位一下 OLED 模块。

在下面实验中,将会采用七线OLED
参考厂家给出的Demo程序:0.96寸SPI_OLED模块配套资料包

OLED屏显+实践操作
  • 打开取字模软件应用程序:
    OLED屏显+实践操作
    • 在文字输入区输入姓名,并ctrl+enter,得到显示图:
      OLED屏显+实践操作

      4.2 工程代码修改与编写

      找到工程项目中oledfont.h文件下的cfont16数组:

      OLED屏显+实践操作
      在test.c文件中对函数Test_MainPage进行修改:
      OLED屏显+实践操作

      工程编译生成hex文件:

      OLED屏显+实践操作屏效果图展示

      OLED屏显+实践操作

      在test.c中对函数Test_MainPage进行修改:

      OLED屏显+实践操作

      OLED屏显+实践操作

      oled

      六、实验三:STM32+OLED显示温湿度

      6.1 代码撰写

      找到项目中oledfont.h,增添所需文字点阵:

      OLED屏显+实践操作

      OLED屏显+实践操作
      线路连接规则,烧录代码
      usb to ttl —> stm32f103c8t6以及stm32f103c8t6 —> OLED屏显的连线在实验一已经介绍过了,这里不再赘述
      STM32F103C8T6核心开发板 —-> 温湿度采集器的连接:
      3V3 —> 引脚1
      GND —> 引脚3
      PB6 —> SCL
      PB7 —> SDA

      OLED屏显+实践操作

      温湿度显示

      总代码:链接:https://pan.baidu.com/s/1Q3kphdUQOE_PkA-3TlBKfA
      提取码:1902

      总结

      通过本次实验,加深了对OLED的知识理解,在实践上也获得了很多心得,学会了运用字模的提取以及在代码中运用,再到OLED的显示,以及温湿度采集器在OLED上的显示。这三个实验每一个都很有实践操作意义,增强了我们的动手能力,
      参考链接:
      https://blog.csdn.net/dengjin20104042056/article/details/108404650
      https://blog.csdn.net/Firefly_cjd/article/details/51935079
      https://blog.csdn.net/qq_46467126/article/details/121439142
      https://blog.csdn.net/qq_53112972/article/details/127596367

      来源:源的涵涵葛

      声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年10月2日
下一篇 2022年10月2日

相关推荐