每日热讯!基于FPGA的OLED动态显示(温湿度实时数据)
时间:2023-06-19 12:11:31 来源:HME京微齐力
实验结果
(资料图片仅供参考)
从视频中,可以看到,当手指捏住传感器后,OLED屏上的温湿度数据发生变化。
基于FPGA的OLED动态显示(温湿度实时数据)
Part一硬件解析
1. 国产FPGA:HME-P1P060
58K逻辑单元,36K LUT-6,4个PLL,32个全局时钟,144个DSP,基本上已经满足了学生等级开发,感兴趣的,可以去米联客店铺看看。
2. 0.96寸OLED
关于OLED的显示,这里不做介绍,详见二级菜单文章:京微齐力:基于HMEP060的OLED字符显示(及FUXI工程建立演示)
3. DTH11温湿度模块(比较枯燥,请耐心看完原理)
DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器。
上图为DHT11的内部原理图,可以看出感湿元件、感温元件和OTP内存直接连接在内部一个八位MCU上,该MCU通过计算得出测量数值。
DATA用于FPGA与DHT11之间的通讯和同步,采用单总线数据格式,一次通讯时间4ms左右,数据分为整数部分和小数部分,数据格式如下:一次完整的数据传输为40bit,高位在前。
数据格式:
数据传送正确时校验和数据等于“8bit湿度整数数据+8bit湿度小数数据+8bit温度整数数据+8bit温度小数数据”所得结果的末8位。校验和=数据之和,通过这个可以判断接收到的数据是否正确。
下面说一下,数据传输时序:
主机(此处指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”时序图如图:
需要注意的是,DHT11的温度和湿度转换较慢,如果读取速度过快会导致DHT11无法响应的情况。
Part二
程序设计
1. DTH11数据采集(状态机)
DHT11驱动模块使用三段式状态机来读取DHT11的温度和湿度值,从下图可以比较直观的看到每个状态实现的功能以及跳转到下一个状态的条件。
再次强调,这里需要注意:由于DHT11温度和湿度转换较慢,如果读取速度过快会导致DHT11无法响应的情况,所以我们在每次读操作结束后延时两秒(这样鲁棒性会比较高,也可以不要这步)。
在时序图中,提到了18ms、26-28us、20-40us、50us、70us、80us等等,但是经过分析后,并不需要定义这么多个计时周期数,只需要定义两个即可。为什么只定义这两个就可以了呢?
在时序图中,需要FPGA判断时间的,有两个位置,一个是FPGA拉低18ms以上,另外一个是判断数据表示是数据0还是数据1。第一个很清楚就是18ms。数据0表示的数据位26-28us,为了保险起见,这里设置为35us,如果高电平的持续时间低于35us,那么就表示数据0。
2. 字符显示
OLED的显示(包括字符提取等),这里不做介绍,我在另一篇文章有介绍过,感兴趣的可以看看:京微齐力:基于HMEP060的OLED字符显示(及FUXI工程建立演示)
3. 字符输出
代码有注释,可以看注释
35 本例中,OLED显示一共分为如下5个状态。在初始化完成后,屏幕显示的是杂乱无章的数据,所以在初始化完成后,要进行一次刷新,将OLED中的数据全部写0。然后进行显示固定不变的支符,例如像温度湿度这样的字符。然后进入空闲态,直到DHT11采集到数据后,就进入到数据显示状态,数据显示完成后,又回到空闲态。这是整个的一个流程。
Part三
弧形抓取
在工程中,例化了debugware IP核,对温湿度传感器的波形进行抓取,可以看到如下:
前文有说过,传感器的数据位总共有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)
审核编辑:汤梓红
标签:
最新文章推荐
- 每日热讯!基于FPGA的OLED动态显示(温湿度实时数据)
- 单位pt是什么意思_pt是什么单位 每日视点
- 高空掉下拳头大小冰块,男子被砸倒地!当事人准备起诉全楼业主
- 传统音乐让非遗流动起来 长沙音乐厅非遗音乐周落幕
- 2023年玉溪悦购红塔消费券第二期使用规则(时间+范围+查券)_每日热文
- 正常开馆!湖北省科技馆发布端午安排
- 宏观主导看多情绪,国内油脂品种大涨
- 头条:宗系(关于宗系介绍)
- 建行企业网银登录密码_建行企业网银登录|世界要闻
- 就在明天!人民币大消息→
- “热心”的就业服务,一些学生为何不买账?
- 乌干达反政府武装袭击学校事件已致40人死亡 当前快播
- 关于考试祝福语成语
- 中信证券:A股正处谷底,轮动持续
- 环球快资讯丨再招博士!湖北省地质局博士人才数将突破100名
- 美国得州遭龙卷风袭击 造成至少三人死亡数十人受伤 当前动态
- 环球头条:喜欢你邓紫棋白话谐音_喜欢你谐音歌词邓紫棋
- 【世界报资讯】寿命最长的3个生肖,福气满满!
- 最后的倔强:德约科维奇不是GOAT,因为纳达尔可以赢得24个大满贯_世界观热点
- “三伤坦克流”成新手澜的福音,能抗能打能秒人,这套出装是关键|速递
- 天天实时:凝聚力量提速国际科技创新中心建设——市委组织部系列座谈会报道四
- 快看:元隆雅图与成都大运会执委会签署数字文创类特许生产及零售协议
- 高尔基的童年人物关系图片_高尔基的童年人物关系图
- 74岁台湾山地歌王万沙浪去世,曾在春晚唱红《娜鲁湾情歌》,受伤患病后晚景凄凉|全球热头条
- 新动态:汗流浃背的意思是什么呢_汗流浃背的意思
- 中国5月稀土及其制品出口9886吨 同比降6.4%
- 丰宁满族自治县气象台更新高温橙色预警【Ⅱ级/严重】【2023-06-18】 全球速看料
- 看错名本科变专科?填志愿前必看高校起名经|天天观天下
- 在东京教课的马云回来了:现身杭州围观数学竞赛
- 大连法院全面推行“数字执行” 电子卷宗随案生成 环球要闻
X 关闭
资讯中心
2023-01-17
2022-09-16
2021-10-18
2021-10-18
X 关闭
热点资讯
-
1
环球观焦点:中国数码信息(00250.HK):中期录得溢利700万港元 继续停牌
-
2
【全球聚看点】12月29日泛在电力物联网板块十大熊股一览
-
3
以网络文学书写时代的壮丽多姿
-
4
水枪大混战作文600字(通用10篇)
-
5
天天消息!重庆:未来半年内到期的房地产融资可在原规定基础上多展期1年
-
6
【港股通】上海医药(02607):吸入用硫酸沙丁胺醇溶液获国家药监局注册批准
-
7
志晟信息(832171)12月29日游资资金净卖出16.86万元_每日信息
-
8
新易贷商户贷款逾期多长时间会上征信
-
9
焦点快播:国联股份:公司是否造假问题实在不值得驳斥。至于股价波动,公司本身无法也不能够予以干预
-
10
从“蜗牛慢跑”到“猎豹速跑” 广西提升基层政务服务办事效率 环球速讯
-
11
冬天太干嘴起皮,什么食物护唇? 当前要闻
-
12
B站公布2023年内容招商版图:推出“MATES人群模型” 快讯
-
13
2023年国家博物馆元旦放假吗?开放时间一览
-
14
当前观察:苯泄露有什么危害,有什么预防措施?
-
15
环球热讯:厦门2023兔年纪念币余额查询入口(中行+建行+工行+邮储)
-
16
2023年贺岁普通纪念币江苏省预约兑换公告|天天即时看
-
17
中间价调升279个基点!机构:短期人民币仍在寻找方向|天天信息
-
18
做了30年的女配角,卖别墅为丈夫还债,如今无儿无女退休金2500,依旧乐此不疲地折腾着
-
19
卧龙地产: 卧龙地产2023年第一次临时股东大会会议资料
-
20
焦点速递!湖南关于已参与市场交易用户改为电网企业代理购电有关事项的提示