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

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

3天内不再提示

基于FPGA的OLED动态显示(温湿度实时数据)

HME京微齐力 来源:HME京微齐力 作者:HME京微齐力 2023-06-19 10:18 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

实验结果

9644d0f6-0c2f-11ee-962d-dac502259ad0.png

从视频中,可以看到,当手指捏住传感器后,OLED屏上的温湿度数据发生变化。

基于FPGA的OLED动态显示(温湿度实时数据)

Part一

硬件解析

1. 国产FPGA:HME-P1P060

58K逻辑单元,36K LUT-6,4个PLL,32个全局时钟,144个DSP,基本上已经满足了学生等级开发,感兴趣的,可以去米联客店铺看看。

96764c30-0c2f-11ee-962d-dac502259ad0.png

2. 0.96寸OLED

96e4f6b2-0c2f-11ee-962d-dac502259ad0.png

关于OLED的显示,这里不做介绍,详见二级菜单文章:京微齐力:基于HMEP060的OLED字符显示(及FUXI工程建立演示)

3. DTH11温湿度模块(比较枯燥,请耐心看完原理)

96f4150c-0c2f-11ee-962d-dac502259ad0.png

DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器。

97638ed2-0c2f-11ee-962d-dac502259ad0.png

上图为DHT11的内部原理图,可以看出感湿元件、感温元件和OTP内存直接连接在内部一个八位MCU上,该MCU通过计算得出测量数值。

DATA用于FPGA与DHT11之间的通讯和同步,采用单总线数据格式,一次通讯时间4ms左右,数据分为整数部分和小数部分,数据格式如下:一次完整的数据传输为40bit,高位在前。

数据格式:

9778b9ba-0c2f-11ee-962d-dac502259ad0.png

数据传送正确时校验和数据等于“8bit湿度整数数据+8bit湿度小数数据+8bit温度整数数据+8bit温度小数数据”所得结果的末8位。校验和=数据之和,通过这个可以判断接收到的数据是否正确。

下面说一下,数据传输时序:

97944f04-0c2f-11ee-962d-dac502259ad0.png

主机(此处指FPGA)首先发送一次开始信号,即:拉低数据线,保持t1(至少18ms)时间;然后拉高数据线保持t2(20~40us)时间,随后开始读取DHT11的响应;如果操作正确的话,DHT11会拉低数据线,保持t3(80us)时间,作为响应信号;接下来DHT11会拉高数据线,保持t4(80us)时间,随后开始输出有效数据。

DHT11共输出40bit有效数据,每1bit数据都是以50us低电平开始,高电平的持续时间作为判断数据位的条件。当数据位为0时,高电平的持续时间为26~28us;当数据位为1时,高电平的持续时间为70us。

DHT11数据位“0”时序图和数据位“1”时序图如图:

979e6db8-0c2f-11ee-962d-dac502259ad0.png

需要注意的是,DHT11的温度和湿度转换较慢,如果读取速度过快会导致DHT11无法响应的情况。

Part二

程序设计

1. DTH11数据采集(状态机)

DHT11驱动模块使用三段式状态机来读取DHT11的温度和湿度值,从下图可以比较直观的看到每个状态实现的功能以及跳转到下一个状态的条件。

再次强调,这里需要注意:由于DHT11温度和湿度转换较慢,如果读取速度过快会导致DHT11无法响应的情况,所以我们在每次读操作结束后延时两秒(这样鲁棒性会比较高,也可以不要这步)。

97e0253c-0c2f-11ee-962d-dac502259ad0.png

在时序图中,提到了18ms、26-28us、20-40us、50us、70us、80us等等,但是经过分析后,并不需要定义这么多个计时周期数,只需要定义两个即可。为什么只定义这两个就可以了呢?

在时序图中,需要FPGA判断时间的,有两个位置,一个是FPGA拉低18ms以上,另外一个是判断数据表示是数据0还是数据1。第一个很清楚就是18ms。数据0表示的数据位26-28us,为了保险起见,这里设置为35us,如果高电平的持续时间低于35us,那么就表示数据0。

981f08ce-0c2f-11ee-962d-dac502259ad0.png

982d3520-0c2f-11ee-962d-dac502259ad0.png

988146ec-0c2f-11ee-962d-dac502259ad0.png

98973aba-0c2f-11ee-962d-dac502259ad0.png

98bdfd80-0c2f-11ee-962d-dac502259ad0.png

98c7907a-0c2f-11ee-962d-dac502259ad0.png

2. 字符显示

OLED的显示(包括字符提取等),这里不做介绍,我在另一篇文章有介绍过,感兴趣的可以看看:京微齐力:基于HMEP060的OLED字符显示(及FUXI工程建立演示)

98f7f47c-0c2f-11ee-962d-dac502259ad0.png

3. 字符输出

代码有注释,可以看注释

9b0aff0c-0c2f-11ee-962d-dac502259ad0.png

35 本例中,OLED显示一共分为如下5个状态。在初始化完成后,屏幕显示的是杂乱无章的数据,所以在初始化完成后,要进行一次刷新,将OLED中的数据全部写0。然后进行显示固定不变的支符,例如像温度湿度这样的字符。然后进入空闲态,直到DHT11采集到数据后,就进入到数据显示状态,数据显示完成后,又回到空闲态。这是整个的一个流程。

9b32bf92-0c2f-11ee-962d-dac502259ad0.png

9b3ead02-0c2f-11ee-962d-dac502259ad0.png

9b64f2dc-0c2f-11ee-962d-dac502259ad0.png

9b7a6e0a-0c2f-11ee-962d-dac502259ad0.png

9ba72e7c-0c2f-11ee-962d-dac502259ad0.png

9bb674c2-0c2f-11ee-962d-dac502259ad0.png

Part三

弧形抓取

在工程中,例化了debugware IP核,对温湿度传感器的波形进行抓取,可以看到如下:

9c03108e-0c2f-11ee-962d-dac502259ad0.png

前文有说过,传感器的数据位总共有40位,考虑到后续可能抓取别的波形,所以此处debugware的数据位宽我设置到了45位,预留了5位。

这里抓到的波形是:2E 0019 034A
对应的二进制即:

0010_1110_0000_0000_0001_1001_0000_0011_0100_1010

根据上文数据公式:8bit湿度整数数据+8bit湿度小数数据+8bit温度整数数据+8bit温度小数数据+8bit校验和数据

所以此刻的,湿度:

46.00(10_1110_0000_0000)

温度:

25.03(0001_1001_0000_0011)

9c47ab68-0c2f-11ee-962d-dac502259ad0.png

审核编辑:汤梓红

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

    关注

    2578

    文章

    55892

    浏览量

    795754
  • dsp
    dsp
    +关注

    关注

    561

    文章

    8292

    浏览量

    369200
  • FPGA
    +关注

    关注

    1665

    文章

    22587

    浏览量

    641153
  • OLED
    +关注

    关注

    121

    文章

    6395

    浏览量

    234689
  • 动态显示
    +关注

    关注

    0

    文章

    40

    浏览量

    12009

原文标题:京微齐力:基于P1P060的OLED动态显示(温湿度实时数据)

文章出处:【微信号:HME-FPGA,微信公众号:HME京微齐力】欢迎添加关注!文章转载请注明出处。

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    基于STM32的远程温湿度采集监测报警OLED显示设计

    设计综合实验的内容为基于STM32F103c8t6单片机的温湿度采集报警系统。完成OLED液晶显示、DHT11温湿度测量、指示灯、蜂鸣器控制等多项任务。 1、以STM32为最小系统电路
    的头像 发表于 05-27 09:15 394次阅读
    基于STM32的远程<b class='flag-5'>温湿度</b>采集监测报警<b class='flag-5'>OLED</b><b class='flag-5'>显示</b>设计

    基于STM32物联网WiFi云平台温湿度烟雾报警器设计

    温湿度采集使用DHT11数字传感器; 3. 显示设备使用OLED,可以在屏幕上显示实时烟雾浓度值、温湿
    的头像 发表于 05-12 10:05 576次阅读
    基于STM32物联网WiFi云平台<b class='flag-5'>温湿度</b>烟雾报警器设计

    动环监控核心组件:温湿度变送器的电子技术与设计研产理念

    。 设计理念: TH100温湿度变送器的设计初衷在于提供高精度、高稳定性的环境温湿度监测解决方案。设计团队深入动环监控场景,理解用户对于数据准确性和实时性的需求,采用半导体敏感元件,确
    的头像 发表于 04-28 09:08 570次阅读

    低功耗+LCD常显单芯片蓝牙温湿度计方案

    蓝牙温湿度计是一款将蓝牙BLE低功耗无线通信技术与高精度温湿度传感功能相融合的智能设备。它可以实时、稳定地采集所处环境的温度和湿度数据,并通过蓝牙BLE连接,快速传输到智能手机、平板或
    的头像 发表于 04-07 16:13 253次阅读
    低功耗+LCD常显单芯片蓝牙<b class='flag-5'>温湿度</b>计方案

    物联网架构下温湿度远程监测、数据上传及云平台管理方案

    /24vdc供电。 3.大屏显示。 4.可开关量信号输入信号采集。 5.可开关量信号输出控制。 6.可记录温湿度数据。 以太网温湿度记录仪 目录 1. 方案概述 2. 设计目标 3. 系统架构 4.
    的头像 发表于 03-25 10:28 287次阅读
    物联网架构下<b class='flag-5'>温湿度</b>远程监测、<b class='flag-5'>数据</b>上传及云平台管理方案

    纺织车间温湿度数据采集远程监控系统方案

    对精细化的纺织工业来说,确保适宜的温湿度是保证成纱质量的关键。保持适宜的温湿度条件,可以有效提高纤维刚性和弹性,减少纤维与机器部件之间的摩擦及堵塞现象。如果车间相对湿度过低,不仅容易产生静电,导致棉
    的头像 发表于 02-05 15:07 425次阅读
    纺织车间<b class='flag-5'>温湿度数据</b>采集远程监控系统方案

    冷库温湿度监控系统物联网解决方案

    响应滞后,易导致物资变质损耗;数据缺乏实时记录与追溯,无法满足行业监管要求;局部温湿度不均问题难以发现,影响整体存储质量。
    的头像 发表于 01-19 16:57 833次阅读

    全无线物联网库房温湿度自动监控系统设计与实施解决方案

    在食品、药品、电子元件、仓储物流、文物馆藏等众多领域,库房内的温湿度环境是影响物资存储质量的关键因素。传统库房温湿度管理多采用人工定时巡检、纸质记录的方式,存在效率低下、误差大、实时性差、漏检误报等问题。一旦
    的头像 发表于 01-15 17:49 1278次阅读

    数据安全优先:以太网温湿度监测与追溯合规方案

    的关键参数。传统人工监测方式存在效率低、误差大、数据不连续、无法实时预警等问题,难以满足现代化管理对环境监测的精细化、智能化要求。以太网温湿度记录仪凭借 实时传输、远程管理、
    的头像 发表于 12-23 14:39 1306次阅读

    【瑞萨RA6E2地奇星开发板试用】DHT11 测量温湿度

    使用瑞萨 RA6E2 微控制器,实现 DHT11 温湿度传感器的数据采集,并通过 I2C 接口的 OLED12864 显示实时
    发表于 12-19 18:50

    温湿度传感器HTU31D在温湿度控器中的应用优势

    对环境温湿度即时采样,当环境温度高于控制设定值时控制电路停止或者通过PWM降低加热功率,将温度恒定在设置值附近,同样,湿度也是类如如此控制方式。为了准确控制温湿度,需要一颗能够提供可靠的温湿度
    的头像 发表于 11-06 14:38 528次阅读
    <b class='flag-5'>温湿度</b>传感器HTU31D在<b class='flag-5'>温湿度</b>控器中的应用优势

    一款适用于粉尘、易结露等恶劣环境温湿度监控中的温湿度传感芯片

    温湿度监控系统在恶劣环境中通过传感器实时监测温湿度参数,当达到预设阈值时自动触发预警或调节机制,确保环境状态维持在安全范围内。
    的头像 发表于 07-09 09:41 991次阅读
    一款适用于粉尘、易结露等恶劣环境<b class='flag-5'>温湿度</b>监控中的<b class='flag-5'>温湿度</b>传感芯片

    物联网温湿度监控系统

    物联网温湿度监控系统作为现代智能化管理的重要工具,已广泛应用于农业温室、医药仓储、数据中心、食品冷链等多个领域。其核心价值在于通过实时数据采集、智能分析和远程控制,实现对环境参数的精准管理,从而保障
    的头像 发表于 07-07 17:36 1506次阅读

    常见的温湿度传感器类型?

    ),温度精度为±0.2℃(典型)。湿度和温度数据可以通过MCU、蓝牙芯片或SoC芯片通过数字接口直接读取。它与SMBus、I2C接口兼容。非常适合用于暖通空调、环境监测等。 在选择温湿度传感器时,应根据具体的使用场景和需求综合考
    发表于 06-24 09:24

    温湿度变送器功能有哪些?一文详细解析

    ,也能通过电脑、手机等设备实时查看温湿度数据。对于一些需要实时监控的场所,如机房、医院的药品仓库等,远程监控功能能够让管理人员及时发现异常情况并采取措施。 三、报警功能 为了确保环境温湿度
    发表于 06-03 10:56