2493|1

35

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

【微雪 RP2040双核开发板】测试4——温度传感器 [复制链接]

【微雪 RP2040双核开发板】测试4——I温度传感器

 

《微雪 RP2040双核开发板》具有丰富的外部接口,给用户进行硬件开发提供了方便,具体如下:

  • 全部GPIO(共30个,但是有引脚已经连接内部电路,复用时需要注意,详情请参考)经过1.27间距排母引出
  • 支持低功耗睡眠和休眠模式
  • 2 个 SPI,2 个 I2C,2 个 UART,4 个 12 位 ADC,16 个可控 PWM 通道
  • 精确的片上时钟和定时器
  • 8 个可编程 I/O (PIO) 状态机,用于自定义外设支持

 

本文主要介绍如何利用微雪RP2040双核开发板Micropython内置库模块DHT、ds18x20配以温度传感器DHT11、DS18B20,进行环境温湿度检测。

 

  • 硬件配置介绍
  1. 温度传感器DHT11

      DHT11是一款湿温度一体化的数字传感器。该传感器包括一个电阻式测湿元件和一个NTC测温元件,并与一个高性能8位单片机相连接。通过单片机等微处理器简单的电路连接就能够实时的采集本地湿度和温度。DHT11与MCU之间能采用简单的单总线进行通信,仅仅需要一个I/O口。传感器内部湿度和温度数据40Bit的数据一次性传给MCU,数据采用校验和方式进行校验,有效的保证数据传输的准确性。DHT11功耗很低,5V电源电压下,工作平均最大电流 0.5mA。

DHT11 的技术参数如下:

  • 工作电压范围:3.3V-5.5V
  • 工作电流 :平均 0.5mA
  • 输出:单总线数字信号
  • 测量范围:湿度 20~90%RH,温度 0~50℃
  • 精度 :湿度±5%,温度±2℃
  • 分辨率 :湿度 1%,温度 1℃

DHT11 的管脚排列如下图所示:

 

  1. 温度传感器DS18B20

DS18B20是常用的数字温度传感器,其输出的是数字信号,具有体积小,硬件开销低,抗干扰能力强,精度高的特点。技术性能描述:

  • 独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯;
  • 测温范围 -55℃~+125℃;
  • 支持多点组网功能,多个DS18B20可以并联在唯一的三线上,最多只能并联8个,实现多点测温;
  • 工作电源: 3.0~5.5V/DC
  • 内部温度采集精度可以由用户自定义为9-Bits至12-Bits。

 

 

  • 温度传感器与RP2040的连接

由于温度传感器DHT11、DS18B20的外部接口均为3线,分别为VCC、GND、Dout(数据输出线,DS18B20为DQ),VCC、GND、Dout 分别接RP2040的GPIO引出排母H1的第18、20、10(GPIO 4)即可。

  • 运行
  1. 连接温度传感器DHT11

程序如下:

import dht

import machine

import framebuf

import time

import lcd_GA9 as LCD_1

if __name__=='__main__':

d = dht.DHT11(machine.Pin(4))

d.measure()

    LCD = LCD_1.LCD_1inch28()

    LCD.set_bl_pwm(65535)

    LCD.fill(LCD.white)

    LCD.fill_rect(0,50,240,60,LCD.red)

    LCD.text("DHT11 Test",80,70,LCD.white)   

    while(True):

        d.measure()

        temp=d.temperature()

        humi=d.humidity()

       

        LCD.fill_rect(0,100,240,80,LCD.blue)

       

        LCD.text("Temp:{:.2f}C".format(temp),70, 120,LCD.green)

        LCD.text("Humi:{:.2f}%".format(humi),70, 150,LCD.white)

        LCD.show()

        time.sleep(2)

运行结果:

 

  1. 连接温度传感器DS18B20

程序如下:

import time, ds18x20

from machine import Pin

import onewire

import framebuf

import lcd_GA9 as LCD_1



if __name__=='__main__':

    LCD = LCD_1.LCD_1inch28()

    LCD.set_bl_pwm(65535)

    LCD.fill(LCD.white)

    LCD.fill_rect(0,50,240,60,LCD.red)

    LCD.text("DS18B20 Test",60,70,LCD.white)


    ow = onewire.OneWire(Pin(4)) # create a OneWire bus on GPIO12


    while(True):

        ds = ds18x20.DS18X20(ow)

        roms = ds.scan()      

        ds.convert_temp()

        time.sleep_ms(750)

        ow.reset()              # reset the bus

        LCD.fill_rect(0,100,240,80,LCD.blue)

        for rom in roms:

            print(ds.read_temp(rom))       

              LCD.text("Temp:{:.2f}C".format(ds.read_temp(rom)),70, 120,LCD.green)

            LCD.show()

运行结果:

 

  • 总结

由于微雪RP2040双核开发板提供了丰富的外部接口及内置模块,使得圆弧在进行硬件开发时倍感轻松。需要提醒的是用户在使用GPIO时一定要阅读微雪RP2040双核开发板的相关文档,系统已经使用的GPIO一定要避免,否则会产生冲突。

此帖出自移动便携论坛

最新回复

这个界面非常好看,不错的开发板,希望展示更多好功能!  详情 回复 发表于 2022-12-15 07:13
点赞 关注
 
 

回复
举报

6841

帖子

11

TA的资源

版主

沙发
 
这个界面非常好看,不错的开发板,希望展示更多好功能!
此帖出自移动便携论坛
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
推荐帖子
2009电子设计大赛 FFT算法 C滤波算法

本帖最后由 paulhyde 于 2014-9-15 03:51 编辑 2009电子设计大赛 VHDL语言实现的FFT算法,以及C语言实现的滤波算法。 本帖最 ...

小梅哥和你一起深入学习FPGA之初学者指南

感谢论坛给我的诸多照顾,通过和广大电子爱好者深入交流,我真正了解到了很多初学者的困惑。特权同学的深入浅出玩转FPGA系列 ...

关于铝电解电容寿命计算公式的疑问

下图是厂家提供的铝电解电容寿命计算公式 请问图中的实际纹波电流怎么测试呢,还有FF指的是什么参数呢? 509253

瞬态响应

本帖最后由 qwqwqw2088 于 2021-5-26 08:57 编辑 瞬态响应是当负载吸收电流发生跳变的瞬间,就会造成电源输出端的电压瞬间偏 ...

问一个离谱的问题,为什么电容放电 要用电阻给它一个通路形成放电路径呢

问一个离谱的问题,为什么电容放电 要用电阻给它一个通路形成放电路径呢, 消耗掉电容释放的电荷? 有人说 不加电阻电容放的点没 ...

41“万里”树莓派小车——ROS学习(ROSBridge控制小乌龟)

本帖最后由 lb8820265 于 2022-11-3 22:29 编辑 前面介绍了使用键盘控制小乌龟,使用指令控制小乌龟,使用自己编写的C语言 ...

【DIY】罗技K260键盘套装改锂电池供电及加工作指示

本帖最后由 dcexpert 于 2023-1-24 18:22 编辑 过年放假,难得没有太多事情,有时间可以做点别的。看到手边的罗技K260无线键 ...

[N32WB031_STB开发板测评]+RTC计时与显示

本帖最后由 jinglixixi 于 2023-5-9 23:58 编辑 N32WB031内置了RTC计时器,并具有日历处理功能,因此在OLED屏的配合下极易实 ...

多领域在互联网转型过程中作用于特定互联网环境反馈处理过程模型技术基础的探索

DSP技术在现代混合信号测试系统中区别于传统混合信号测试系统 参数测试过程优化 噪声和谐波分量在产品测试过程中的设计优化 ...

《Cmake构建实战》4 onnxruntime的查找模块实践

本帖最后由 maskmoo 于 2024-11-3 18:21 编辑 1 onnxruntime模块配置 onnxruntime是微软开发的一个机器学习推理和训练的加 ...

关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表