资料介绍
描述
在本教程中,我们将学习如何使用 LED 矩阵 MAX7219、温度和湿度传感器 DHT11 和 RTC DS1307 模块来显示当前温度、湿度、时间和日期。
观看视频!
第 1 步:您需要什么
- Arduino UNO(或任何其他 Arduino)
- LED矩阵。我们将使用 FC-16 模块,它具有四个级联的 8×8 LED 矩阵显示器和每个显示器的内置 MAX7219 LED 驱动器。
- 面包板
- 跳线
- RTC DS1307 模块
- DHT11传感器
- Visuino 程序:下载 Visuino
第 2 步:电路
- 将 RTC DS1307 模块引脚[VCC] 连接到 Arduino 引脚[5V]
- 将 RTC DS1307 模块引脚[GND] 连接到 Arduino 引脚[GND]
- 将 RTC DS1307 模块引脚[SDA] 连接到 Arduino 引脚[SDA]
- 将 RTC DS1307 模块引脚[SCL] 连接到 Arduino 引脚[SCL]
- 将 DHT11 传感器引脚 [GND] 连接到 Arduino 引脚 [GND]
- 将 DHT11 传感器引脚 [VCC] 连接到 Arduino 引脚 [5V]
- 将 DHT11 传感器信号引脚 [S] 连接到 Arduino 数字引脚 [4]
- 将 LED 矩阵引脚 [VCC] 连接到 Arduino 引脚 [5V]
- 将 LED 矩阵引脚 [GND] 连接到 Arduino 引脚 [GND]
- 将 LED 矩阵引脚 [DIN] 连接到 Arduino 数字引脚 [11]
- 将 LED 矩阵引脚 [CS] 连接到 Arduino 数字引脚 [10]
- 将 LED 矩阵引脚 [CLK] 连接到 Arduino 数字引脚 [13]
注意:另请阅读下面的故障排除部分
第 3 步:启动 Visuino,并选择 Arduino UNO 板类型
Visuino:https ://www.visuino.eu也需要安装。下载免费版本或注册免费试用。
启动Visuino,如第一张图所示点击Visuino中Arduino组件(图1)上的“工具”按钮出现对话框时,选择“Arduino UNO”,如图2所示
第 4 步:在 Visuino 中添加组件
- 添加2X“比较整数值”组件
- 添加 2X“数字(布尔)值”组件
- 添加“延迟”组件
- 添加“数字多源合并”组件
- 添加“时钟发生器”组件
- 添加2X“计数器”组件
- 添加“ Maxim LED Display Controller SPI MAX7219/MAX7221 ”组件
- 添加“日期/时间值”组件
- 添加“实时时钟(RTC)DS1307 ”组件
- 添加“解码(拆分)日期/时间”组件
- 添加4X“格式化文本”组件
- 添加“ DHT11 ”组件
- 添加“ Text Mux(多通道切换) ”组件
- 添加“整数多源”组件
第 5 步:在 Visuino 设置组件中
- 选择“ Delay1 ”并在属性窗口中将“Interval (uS)”设置为 5000000
- 选择“ DigitalValue2 ”并在属性窗口中将“ Value ”设置为 True
- 选择“ ClockGenerator1 ”并在属性窗口中将“频率”设置为 10 并选择“启用”并单击 Pin 图标并选择“ Boolean SinkPin ”
- 选择“ Counter1 ”并在属性窗口中将Max>Roll Over设置为 False 并将Max>Value设置为 5
- 选择“ Counter1 ”并在属性窗口中将Min>Value设置为 -8
- 选择“ Counter1 ”并在属性窗口中将“ Reversed ”设置为 True
- 选择“ CompareValue1 ”并在属性窗口中将“ Value ”设置为 5
- 选择“ Counter2 ”并在属性窗口中将Max>Value设置为 3
- 选择“ Counter2 ”并在属性窗口中将Min>Value设置为 0
- 选择“ IntegerMultiSource1 ”并在属性窗口中设置为Output Pins to 3
- 双击“ LedController1 ”并在“Pixel Groups”窗口中将“ 2D Graphics ”拖到左侧
- 并在属性窗口中将“水平镜像”设置为真,将“水平反转”设置为真,并将“宽度”设置为 32
- 还在属性窗口中选择“元素”,然后单击 3 点按钮
在元素窗口中拖动:
- 左侧的“ Text Field ”并在属性窗口中将“ Wrap ”设置为False,然后单击“ X ”引脚按钮并选择“ Integer Sink Pin ”并单击“ Y ”引脚按钮并选择“ Integer Sink销"
- “填充屏幕”到左侧
关闭“元素”窗口
关闭“像素组”窗口
- 选择“ DateTimeValue1 ”并在属性窗口中将“ Value ”设置为您当前的日期和时间
- 选择“ TextMux1 ”并在属性窗口中将“ Input Pins ”设置为 4
- 选择“ FormattedText1 ”并在属性窗口中将“ Text ”设置为%0%1
- 双击“ FormattedText1 ”并在元素窗口中
- 将“ Analog Element ”拖到左侧并在属性窗口中将“ Precision ”设置为1
- 将“文本元素”拖到左侧并在属性窗口中将“初始值”设置为 C
关闭元素窗口
- 选择“ FormattedText2 ”并在属性窗口中将“ Text ”设置为%0%1
- 双击“ FormattedText2 ”并在元素窗口中
- 将“ Analog Element ”拖到左侧并在属性窗口中将“ Precision ”设置为0
- 将“文本元素”拖到左侧并在属性窗口中将“初始值”设置为 %
关闭元素窗口
- 选择“ FormattedText3 ”并在属性窗口中将“ Text ”设置为%0:%1
- 双击“ FormattedText3 ”并在元素窗口中
- 将2X “文本元素”拖到左侧
关闭元素窗口
- 选择“ FormattedText4 ”并在属性窗口中将“Text”设置为%0.%1
- 双击“ FormattedText4 ”并在元素窗口中
- 将 2X“文本元素”拖到左侧
关闭元素窗口
第 6 步:在 Visuino Connect 组件中
- 将“ DateTimeValue1 ”引脚输出连接到“ RealTimeClock1 ”引脚设置
- 将“ RealTimeClock1 ”引脚控制 I2C 连接到Arduino引脚 I2C In
- 将“ RealTimeClock1 ”引脚输出连接到“ DecodeDateTime1 ”引脚输入
- 将“ DecodeDateTime1 ”引脚“月”连接到“ FormattedText4 >“ TextElement2 ”引脚
- 将“ DecodeDateTime1 ”引脚“Day”连接到“FormattedText4 > “TextElement1”引脚 In
- 将“ DecodeDateTime1 ”引脚“Hour”连接到“FormattedText3 > “TextElement1”引脚
- 将“ DecodeDateTime1 ”引脚“Minute”连接到“FormattedText3 > “TextElement2”引脚
- 将“ HumidityThermometer1 ”引脚传感器连接到Arduino板数字引脚 [4]
- 将“ HumidityThermometer1 ”引脚温度连接到“FormattedText1> AnalogElement1”引脚输入
- 将“HumidityThermometer1”引脚湿度连接到“FormattedText2>AnalogElement1”引脚输入
- 将“ FormattedText1 ”引脚输出连接到“ TextMux1 ”引脚[0]
- 将“ FormattedText2 ”引脚输出连接到“ TextMux1 ”引脚[1]
- 将“ FormattedText3 ”引脚输出连接到“ TextMux1 ”引脚[2]
- 将“ FormattedText4 ”引脚输出连接到“ TextMux1 ”引脚[3]
- 将“ TextMux1 ”引脚输出连接到“LedController1 > Text Field”引脚输入
- 将“ CompareValue2 ”引脚输出连接到“ Delay1 ”引脚“Start”和“ DigitalValue1 ”引脚时钟
- 将“ Delay1 ”引脚输出连接到“ DigitalValue2 ”引脚时钟
- 将“ DigitalValue1 ”引脚输出连接到“ DigitalMultiMerger1 ”引脚[0]
- 将“ DigitalValue2 ”引脚输出连接到“ DigitalMultiMerger1 ”引脚 [1]
- 将“ DigitalMultiMerger1 ”引脚输出连接到“ ClockGenerator1 ”引脚“启用”
- 将“ ClockGenerator1 ”引脚时钟连接到“ Counter1 ”引脚输入
- 将“ Counter1 ”引脚输出连接到“ IntegerMultiSource1 ”引脚输入,“ CompareValue1 ”引脚输入和“ CompareValue2 ”引脚输入
- 将“ CompareValue1 ”引脚输出连接到“ Counter2 ”引脚输入
- 将“ Counter2 ”引脚输出连接到“ TextMux1 ”引脚选择
- 将“ IntegerMultiSource1 ”引脚 [0] 连接到“LedController1 > 文本字段”引脚 Y
- 将“ IntegerMultiSource1 ”引脚 [1] 连接到“LedController1 > Fill Screen”引脚时钟
- 将“ IntegerMultiSource1 ”引脚 [2] 连接到“LedController1 > Text Field”引脚时钟
- 将“ LedController1 ”引脚输出 SPI 连接到Arduino 板引脚 SPI In
- 将“ LedController1 ”引脚芯片选择连接到Arduino 板数字引脚 [10]
第 7 步:生成、编译和上传 Arduino 代码
在 Visuino 中,在底部单击“构建”选项卡,确保选择了正确的端口,然后单击“编译/构建和上传”按钮。
第 8 步:播放
如果您为 Arduino UNO 模块供电,LED 矩阵将开始从底部到顶部显示温度、湿度、时间和日期。
恭喜!您已经使用 Visuino 完成了您的项目。还附上了我为本教程创建的 Visuino 项目文件,您可以下载并在 Visuino 中打开它:
第 9 步:故障排除
在我的情况下,当为 Arduino 供电时,LED 矩阵闪烁并且文本没有完全显示。这是因为 MAX7219 芯片对任何电压干扰都非常敏感。
为了解决这个问题,我在 LED Matrix VCC(+) 和 GND(-) 之间添加了一个 47uf 电解电容,确保正确连接电容,+ on (VCC) 和 - on (GND)
- 实时湿度和温度监测开源项目
- Matrix IR非接触式温度计开源设计
- 从任何地方监控温度/湿度和控制LED
- 温度和湿度开源项目
- LCD显示温度和湿度开源硬件
- 测量温度和湿度开源硬件
- 温度和湿度数据记录器开源案例
- 带有温度、回历日期和祈祷时间的NodeMCU时钟
- 温度和湿度数据记录器开源分享
- Arduino控制时钟和动画开源分享
- 温度和湿度可控的发酵室开源分享
- Atmega328 led动画或vumeter开源分享
- 在-Oracle-和-PHP-中日期和时间的使用
- ZH9830天气时间日期温湿度计芯片的数据手册免费下载 0次下载
- Android动画电子温度计 39次下载
- IC长时间工作温度多少合适? 1275次阅读
- 常见的几种日期对象用法 616次阅读
- 在QML动画设计中通过指定关键帧创建时间线动画 1859次阅读
- 如何使用属性动画实现简单属性变化的动画效果 1280次阅读
- 时钟芯片如何确定日期和时间? 7304次阅读
- S7-300PLC如何将时间日期信息进行存储 5450次阅读
- dfrobotLED Matrix点阵屏简介 2313次阅读
- 基于AT89S52单片机的温度和湿度检测系统设计 2989次阅读
- 湿度传感器安装说明 3373次阅读
- 昆仑通态窗口显示日期和时间 3.3w次阅读
- 温湿度传感器在农业上的运用 5401次阅读
- LCD显示远程温度湿度数据记录器与应用软件的介绍 4742次阅读
- 能够在户外运动手表中显示温度湿度信息的传感器 4505次阅读
- 地铁空调通风系统监测环境温度和空气湿度生的温湿度传感器 2080次阅读
- 大棚温度和湿度自动控制器电路图 4779次阅读
下载排行
本周
- 1山景DSP芯片AP8248A2数据手册
- 1.06 MB | 532次下载 | 免费
- 2RK3399完整板原理图(支持平板,盒子VR)
- 3.28 MB | 339次下载 | 免费
- 3TC358743XBG评估板参考手册
- 1.36 MB | 330次下载 | 免费
- 4DFM软件使用教程
- 0.84 MB | 295次下载 | 免费
- 5元宇宙深度解析—未来的未来-风口还是泡沫
- 6.40 MB | 227次下载 | 免费
- 6迪文DGUS开发指南
- 31.67 MB | 194次下载 | 免费
- 7元宇宙底层硬件系列报告
- 13.42 MB | 182次下载 | 免费
- 8FP5207XR-G1中文应用手册
- 1.09 MB | 178次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 2555集成电路应用800例(新编版)
- 0.00 MB | 33566次下载 | 免费
- 3接口电路图大全
- 未知 | 30323次下载 | 免费
- 4开关电源设计实例指南
- 未知 | 21549次下载 | 免费
- 5电气工程师手册免费下载(新编第二版pdf电子书)
- 0.00 MB | 15349次下载 | 免费
- 6数字电路基础pdf(下载)
- 未知 | 13750次下载 | 免费
- 7电子制作实例集锦 下载
- 未知 | 8113次下载 | 免费
- 8《LED驱动电路设计》 温德尔著
- 0.00 MB | 6656次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935054次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537798次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420027次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233046次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191187次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183279次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138040次下载 | 免费
评论
查看更多