第六章 OLED模块+STM32的使用

这篇具有很好参考价值的文章主要介绍了第六章 OLED模块+STM32的使用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

        这一章教大家使用OLED显示模块,OLED模块在众多的物联网相关的毕设中出现率是比较高的,一般我们用OLED模块来显示系统的一些检测数据或者当前一些状态。

        下图是我经常使用的OLED显示模块,其使用也是非常简单,模块上有4根引脚,分别是连接3.3V或5V的VCC引脚,接地的GND引脚,连接IIC时钟线的SCL引脚,连接IIC数据线的SDA引脚。关注公众号发送“OLED”,获取资料下载链接,按照链接里的接线图,用杜邦线把STM32F103C8T6与OLED模块连接起来,再通过Jlink或STlink将提供的代码烧录进STM32中即可看到现象。

第六章 OLED模块+STM32的使用第六章 OLED模块+STM32的使用

         接下来讲解STM32的代码。

第六章 OLED模块+STM32的使用

        7行 delay_init( ) 初始化延时函数,执行这条语句后,延时效果才会准确。

        9行 NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2) 是设置中断优先级分组。此份代码没有用到中断,所以将该行代码删除了也不影响效果。

        11行 OLED_Init( ) 初始化OLED模块函数,初始化完成后,我们就可以调用15~28行的屏幕显示函数来实现OLED显示汉字、字符、字符串和数值了。        

        13行 OLED_Clear( ) 屏幕清除函数,就是将屏幕的显示全部清除,以免影响接下来15~28行显示函数的显示效果。

        15~25行 OLED_ShowCHinese( ) 是显示汉字函数,该函数有三个参数,前面两个是汉字显示的起始X坐标、Y坐标,我们可以通过改变这两个参数来改变汉字显示的位置,起始坐标就是一个汉字显示区域的左上角的那个点,如下图所示,“欢”字起始X坐标是0,起始Y坐标是0,“欢”字起始X坐标是16,起始Y坐标是0。

第六章 OLED模块+STM32的使用

第六章 OLED模块+STM32的使用

        在这里注意一下,参数X轴的取值范围是0~127,Y轴的取值范围是0~7,而一个汉字在Y轴方向占2个单位(即0和1),在X轴方向占16个单位(即0~15),具体如下图所示,在X轴占了0~15,在Y轴占用了0和1,在X轴占了16~31,在Y轴占用了0和1......以此类推。

第六章 OLED模块+STM32的使用

        接下来说第三个参数,第三个参数是要显示的汉字字模在存储数组里的位置号,存储数组的代码在下图中的位置。图中,从上往下,最前面的两个数组是位置0,接下来两个数组是位置1,再接下来两个数组是位置2....以此类推,我们就知道了每个汉字字模存储的位置号了,想要显示什么字,直接在OLED_ShowCHinese( )函数的第三个参数写上它所在的位置号就可以了。例如上图,想要起始坐标(32,0)的位置打印一个“大”字,我们就可以直接调用OLED_ShowCHinese(32,0,2);为什么最后一个参数要写2,因为“大”的字模存储在位置2。

第六章 OLED模块+STM32的使用

         那万一存储数组里边没有我们想要的汉字字模怎么办呢?我们可以用一个软件生成我们想要的字模,然后把它添加进上图的Hzk数组里边就可以了。首先打开下图的取模软件(资料链接里面有)

第六章 OLED模块+STM32的使用

         打开软件后,按照下面操作。

第六章 OLED模块+STM32的使用

         打开设置后,按照下图进行设置,设置完后点击确定。

第六章 OLED模块+STM32的使用

         设置完后,在下图中的输入框内输入汉字,然后点击生成字模即可。

第六章 OLED模块+STM32的使用

         将生成的字模加添加到Hzk数组里就好了。顺便在注释里面对应好位置号,如下图所示。

第六章 OLED模块+STM32的使用

        执行完这些操作,如果想要在屏幕上显示“牛”字,我们只要确定好显示坐标后,直接调用OLED_ShowCHinese( )函数并将坐标和“牛”的位置号11填写进去就可以了,参考下图。

第六章 OLED模块+STM32的使用

         OLED_ShowString( )函数是显示英文字符串的函数,该函数有四个参数,前面两个参数也是显示的起始X坐标、Y坐标,第三个参数是我们要显示的英文字符串(记得加上英文双引号),第四个参数不用改动,参考下图。

第六章 OLED模块+STM32的使用

        OLED_ShowNum( )显示数值的函数,该函数有五个参数,前面两个参数也是显示的起始X坐标、Y坐标,第三个参数是我们要显示的数值,参考例程中,第三个参数是常数 666 ,我们可以用变量来代替,这样,我们要在屏幕上显示什么数值,只要改变变量的数值就可以了,第四个参数是要显示的数值的最大位数,例如,DHT11温湿度模块能检测到的最高温度在99以内,所以第四个参数只要大于等于2就可以了,接下来第五个参数我们不用改动,参考下图。

第六章 OLED模块+STM32的使用

         这一章还是建议大家买个模块,将资料链接里提供的例程下载到STM32中,然后尝试自己修改,资料链接里还有模块的购买链接和OLED与STM32的接线图。(关注公众号发送“OLED”,获取资料下载链接

        下一章给教大家在屏幕上动态显示DHT11获取到的温湿度数据。文章来源地址https://www.toymoban.com/news/detail-413169.html


到了这里,关于第六章 OLED模块+STM32的使用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • K_A16_001 基于STM32等单片机驱动HX711称重模块 串口与OLED0.96双显示

    单片机型号 测试条件 模块名称 代码功能 STC89C52RC 晶振11.0592M HX711称重模块 STC89C52RC驱动HX711称重模块 串口与OLED0.96双显示 STM32F103C8T6 晶振8M/系统时钟72M HX711称重模块 STM32F103C8T6驱动HX711称重模块参数 串口与OLED0.96双显示 其他资料目录 直戳跳转 HX711参数 1.两路可选择差分输入

    2023年04月27日
    浏览(53)
  • K_A37_005 基于STM32等单片机驱动ADS1115 ADC模块 串口与OLED0.96双显示

    其他资料目录 直戳跳转 单片机型号 测试条件 模块名称 代码功能 STC89C52RC 晶振11.0592M ADS1115 ADC模块 STC89C52RC驱动ADS1115 ADC模块 串口与OLED0.96双显示 STM32F103C8T6 晶振8M/系统时钟72M ADS1115 ADC模块 STM32F103C8T6驱动ADS1115 ADC模块 串口与OLED0.96双显示 ADS1115 ADC模块 引脚说明 VIN 正极 5V供电

    2024年02月16日
    浏览(42)
  • K_A12_022 基于STM32等单片机驱动VL53L0X模块 串口与OLED0.96双显示

    注:偏差校准步骤(均十六进制发送) 1、偏差校准命令 A5 21 0A D0(此处是在10CM处校准) 2、加载数据命令 A5 43 04 EC(断电重启后加载偏差补偿) 3、保存设置命令 A5 87 01 2D(保存设置后生效) 单片机型号 测试条件 模块名称 代码功能 STC89C52RC 晶振11.0592M VL53L0X模块 STC89C52RC驱动VL53L0X模

    2024年02月13日
    浏览(28)
  • stm32c8t6+dht11+MQ系列环境检测模块+oled显示屏(基于物联网的家庭环境检测系统设计)

    元件清单: stm32f103c8t6、mq2 检测烟雾浓度(模拟量输出)、mq7 检测一氧化碳浓度、mq135 检测空气质量、OLED屏幕(四引脚仅支持iic协议通信)、dht11检测温湿度(数字量输出)、风扇模块、无源蜂鸣器、两引脚按键、WH-NB73-B5、ttl-usb 接线图:  0:实现了dht11的温湿度以及mq2烟雾

    2024年02月02日
    浏览(37)
  • K_A12_004 基于STM32等单片机采集人体红外感应(HC-SR501)模块串口与OLED0.96双显示

    单片机型号 测试条件 模块名称 代码功能 STC89C52RC 晶振11.0592M HC-SR501模块 STC89C52RC采集HC-SR501模块参数 串口与OLED0.96双显示 STM32F103C8T6 晶振8M/系统时钟72M HC-SR501模块 STM32F103C8T6采集HC-SR501模块参数 串口与OLED0.96双显示 其他资料目录 直戳跳转 HC-SR501模块 引脚说明 VCC 正极 3.3-5V供电

    2024年01月19日
    浏览(36)
  • 【正点原子STM32连载】 第六十一章 USB读卡器(Slave)实验摘自【正点原子】APM32F407最小系统板使用指南

    1)实验平台:正点原子APM32F407最小系统板 2)平台购买地址:https://detail.tmall.com/item.htm?id=609294757420 3)全套实验源码+手册+视频下载地址: http://www.openedv.com/thread-340252-1-1.html## 本章将介绍使用APM32F407作为USB从设备,模拟出USB读卡器,使得PC与APM32F407通过USB连接后,能够访问与

    2024年02月21日
    浏览(41)
  • K_A12_014 基于STM32等单片机驱动S12SD紫外线传感器模块 串口与OLED0.96双显示

    注:PCF8591为8位ADC通过计算后分辨率会相对不是很理想 建议用10位及其以上ADC模块或者用STM32 具体计算公式可参考文档手册中CJMCU-S12D-test-arduino.txt文件 单片机型号 测试条件 模块名称 代码功能 STC89C52RC 晶振11.0592M S12SD紫外线传感器模块 STC89C52RC采集S12SD紫外线传感器模块参数

    2024年02月05日
    浏览(34)
  • 【正点原子STM32连载】第六十六章 综合测试实验摘自【正点原子】STM32F103 战舰开发指南V1.2

    1)实验平台:正点原子stm32f103战舰开发板V4 2)平台购买地址:https://detail.tmall.com/item.htm?id=609294757420 3)全套实验源码+手册+视频下载地址: http://www.openedv.com/thread-340252-1-1.html# 为了方便大家使用和验证综合例程,本章内容是综合例程的使用介绍。目的是展示STM32F1的强大处理

    2024年02月02日
    浏览(51)
  • STM32进阶-OLED屏幕模块

    实验前言: 在当今的嵌入式系统开发领域,STM32微控制器因其强大的性能和广泛的应用范围而受到广泛应用。为了进一步扩展其应用范围,我们常常需要与各种外部设备进行交互。其中,OLED屏幕模块作为一种高分辨率、低功耗的显示设备,能够为我们提供丰富的图形和文本信

    2024年04月26日
    浏览(32)
  • STM32之OLED显示

    一、模块介绍 1、常见的显示设备 LED、数码管、点阵、LCD屏(1602/12864)、OLED屏(消费电子) 2、OLED屏的概述 OLED,即有机发光二极管(Organic Light-Emitting Diode),又称为有机电激光显示(Organic Electroluminesence Display, OELD)。因为具备 轻薄、省电等 特性,因此从2003 年开始,这种显示

    2024年01月17日
    浏览(31)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包