電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>LED MATRIX動(dòng)畫時(shí)間、日期、溫度和濕度開源

LED MATRIX動(dòng)畫時(shí)間、日期、溫度和濕度開源

2022-11-07 | zip | 0.00 MB | 次下載 | 免費(fèi)

資料介紹

描述

在本教程中,我們將學(xué)習(xí)如何使用 LED 矩陣 MAX7219、溫度和濕度傳感器 DHT11 和 RTC DS1307 模塊來顯示當(dāng)前溫度、濕度、時(shí)間和日期。

觀看視頻!

第 1 步:您需要什么

  • Arduino UNO(或任何其他 Arduino)
  • LED矩陣。我們將使用 FC-16 模塊,它具有四個(gè)級(jí)聯(lián)的 8×8 LED 矩陣顯示器和每個(gè)顯示器的內(nèi)置 MAX7219 LED 驅(qū)動(dòng)器
  • 面包板
  • 跳線
  • RTC DS1307 模塊
  • DHT11傳感器
  • Visuino 程序:下載 Visuino

第 2 步:電路

?
poYBAGNkdJCAd26kAAGRY0-uEFg260.jpg
?
  • 將 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 傳感器信號(hào)引腳 [S] 連接到 Arduino 數(shù)字引腳 [4]
  • 將 LED 矩陣引腳 [VCC] 連接到 Arduino 引腳 [5V]
  • 將 LED 矩陣引腳 [GND] 連接到 Arduino 引腳 [GND]
  • 將 LED 矩陣引腳 [DIN] 連接到 Arduino 數(shù)字引腳 [11]
  • 將 LED 矩陣引腳 [CS] 連接到 Arduino 數(shù)字引腳 [10]
  • 將 LED 矩陣引腳 [CLK] 連接到 Arduino 數(shù)字引腳 [13]

注意:另請閱讀下面的故障排除部分

第 3 步:啟動(dòng) Visuino,并選擇 Arduino UNO 板類型

?
?
?
?
poYBAGNghkqAQ9LeAABpWGAU18Q335.jpg
?
1 / 2
?

Visuino:https ://www.visuino.eu也需要安裝。下載免費(fèi)版本或注冊免費(fèi)試用。

啟動(dòng)Visuino,如第一張圖所示點(diǎn)擊Visuino中Arduino組件(圖1)上的“工具”按鈕出現(xiàn)對話框時(shí),選擇“Arduino UNO”,如圖2所示

第 4 步:在 Visuino 中添加組件

?
?
?
?
poYBAGNkdJWAG7k6AAAWliVvAt0540.jpg
?
1 / 13
?
  • 添加2X“比較整數(shù)值”組件
  • 添加 2X“數(shù)字(布爾)值”組件
  • 添加“延遲”組件
  • 添加“數(shù)字多源合并”組件
  • 添加“時(shí)鐘發(fā)生器”組件
  • 添加2X“計(jì)數(shù)器”組件
  • 添加“ Maxim LED Display Controller SPI MAX7219/MAX7221 ”組件
  • 添加“日期/時(shí)間值”組件
  • 添加“實(shí)時(shí)時(shí)鐘(RTC)DS1307 ”組件
  • 添加“解碼(拆分)日期/時(shí)間”組件
  • 添加4X“格式化文本”組件
  • 添加“ DHT11 ”組件
  • 添加“ Text Mux(多通道切換) ”組件
  • 添加“整數(shù)多源”組件

第 5 步:在 Visuino 設(shè)置組件中

?
?
?
?
pYYBAGNkdJeAVAeOAAA-bWCZIC4969.jpg
?
1 / 15
?
  • 選擇“ Delay1 ”并在屬性窗口中將“Interval (uS)”設(shè)置為 5000000
  • 選擇“ DigitalValue2 ”并在屬性窗口中將“ Value ”設(shè)置為 True
  • 選擇“ ClockGenerator1 ”并在屬性窗口中將“頻率”設(shè)置為 10 并選擇“啟用”并單擊 Pin 圖標(biāo)并選擇“ Boolean SinkPin
  • 選擇“ Counter1 ”并在屬性窗口中將Max>Roll Over設(shè)置為 False 并將Max>Value設(shè)置為 5
  • 選擇“ Counter1 ”并在屬性窗口中將Min>Value設(shè)置為 -8
  • 選擇“ Counter1 ”并在屬性窗口中將“ Reversed ”設(shè)置為 True
  • 選擇“ CompareValue1 ”并在屬性窗口中將“ Value ”設(shè)置為 5
  • 選擇“ Counter2 ”并在屬性窗口中將Max>Value設(shè)置為 3
  • 選擇“ Counter2 ”并在屬性窗口中將Min>Value設(shè)置為 0
  • 選擇“ IntegerMultiSource1 ”并在屬性窗口中設(shè)置為Output Pins to 3
  • 雙擊“ LedController1 ”并在“Pixel Groups”窗口中將“ 2D Graphics ”拖到左側(cè)
  • 并在屬性窗口中將“水平鏡像”設(shè)置為真,將“水平反轉(zhuǎn)”設(shè)置為真,并將“寬度”設(shè)置為 32
  • 還在屬性窗口中選擇“元素”,然后單擊 3 點(diǎn)按鈕

在元素窗口中拖動(dòng):

  • 左側(cè)的Text Field ”并在屬性窗口中將“ Wrap ”設(shè)置為False,然后單擊“ X ”引腳按鈕并選擇“ Integer Sink Pin ”并單擊“ Y ”引腳按鈕并選擇“ Integer Sink銷"
  • 填充屏幕”到左側(cè)

關(guān)閉“元素”窗口

關(guān)閉“像素組”窗口

  • 選擇“ DateTimeValue1 ”并在屬性窗口中將“ Value ”設(shè)置為您當(dāng)前的日期和時(shí)間
  • 選擇“ TextMux1 ”并在屬性窗口中將“ Input Pins ”設(shè)置為 4
  • 選擇“ FormattedText1 ”并在屬性窗口中將“ Text ”設(shè)置為%0%1
  • 雙擊“ FormattedText1 ”并在元素窗口中
  • 將“ Analog Element ”拖到左側(cè)并在屬性窗口中將“ Precision ”設(shè)置為1
  • 將“文本元素”拖到左側(cè)并在屬性窗口中將“初始值”設(shè)置為 C

關(guān)閉元素窗口

  • 選擇“ FormattedText2 ”并在屬性窗口中將“ Text ”設(shè)置為%0%1
  • 雙擊“ FormattedText2 ”并在元素窗口中
  • 將“ Analog Element ”拖到左側(cè)并在屬性窗口中將“ Precision ”設(shè)置為0
  • 將“文本元素”拖到左側(cè)并在屬性窗口中將“初始值”設(shè)置為 %

關(guān)閉元素窗口

  • 選擇“ FormattedText3 ”并在屬性窗口中將“ Text ”設(shè)置為%0:%1
  • 雙擊“ FormattedText3 ”并在元素窗口中
  • 2X 文本元素”拖到左側(cè)

關(guān)閉元素窗口

  • 選擇“ FormattedText4 ”并在屬性窗口中將“Text”設(shè)置為%0.%1
  • 雙擊“ FormattedText4 ”并在元素窗口中
  • 將 2X“文本元素”拖到左側(cè)

關(guān)閉元素窗口

第 6 步:在 Visuino Connect 組件中

?
?
?
?
pYYBAGNkdJyACSOCAAEwXTjQ7lM136.jpg
?
1 / 5
?
  • 將“ DateTimeValue1 ”引腳輸出連接到“ RealTimeClock1 ”引腳設(shè)置
  • 將“ 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板數(shù)字引腳 [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 ”引腳時(shí)鐘
  • 將“ Delay1 ”引腳輸出連接到“ DigitalValue2 ”引腳時(shí)鐘
  • 將“ DigitalValue1 ”引腳輸出連接到“ DigitalMultiMerger1 ”引腳[0]
  • 將“ DigitalValue2 ”引腳輸出連接到“ DigitalMultiMerger1 ”引腳 [1]
  • 將“ DigitalMultiMerger1 ”引腳輸出連接到“ ClockGenerator1 ”引腳“啟用”
  • 將“ ClockGenerator1 ”引腳時(shí)鐘連接到“ Counter1 ”引腳輸入
  • 將“ Counter1 ”引腳輸出連接到“ IntegerMultiSource1 ”引腳輸入,“ CompareValue1 ”引腳輸入和“ CompareValue2 ”引腳輸入
  • 將“ CompareValue1 ”引腳輸出連接到“ Counter2 ”引腳輸入
  • 將“ Counter2 ”引腳輸出連接到“ TextMux1 ”引腳選擇
  • 將“ IntegerMultiSource1 ”引腳 [0] 連接到“LedController1 > 文本字段”引腳 Y
  • 將“ IntegerMultiSource1 ”引腳 [1] 連接到“LedController1 > Fill Screen”引腳時(shí)鐘
  • 將“ IntegerMultiSource1 ”引腳 [2] 連接到“LedController1 > Text Field”引腳時(shí)鐘
  • 將“ LedController1 ”引腳輸出 SPI 連接到Arduino 板引腳 SPI In
  • 將“ LedController1 ”引腳芯片選擇連接到Arduino 板數(shù)字引腳 [10]

第 7 步:生成、編譯和上傳 Arduino 代碼

?
pYYBAGNkXMOATYIuAAC6zMtn_xU450.jpg
?

在 Visuino 中,在底部單擊“構(gòu)建”選項(xiàng)卡,確保選擇了正確的端口,然后單擊“編譯/構(gòu)建和上傳”按鈕。

第 8 步:播放

如果您為 Arduino UNO 模塊供電,LED 矩陣將開始從底部到頂部顯示溫度、濕度、時(shí)間和日期。

恭喜!您已經(jīng)使用 Visuino 完成了您的項(xiàng)目。還附上了我為本教程創(chuàng)建的 Visuino 項(xiàng)目文件,您可以下載并在 Visuino 中打開它:

第 9 步:故障排除

在我的情況下,當(dāng)為 Arduino 供電時(shí),LED 矩陣閃爍并且文本沒有完全顯示。這是因?yàn)?MAX7219 芯片對任何電壓干擾都非常敏感。

為了解決這個(gè)問題,我在 LED Matrix VCC(+) 和 GND(-) 之間添加了一個(gè) 47uf 電解電容,確保正確連接電容,+ on (VCC) 和 - on (GND)


下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數(shù)據(jù)手冊
  2. 1.06 MB  |  532次下載  |  免費(fèi)
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費(fèi)
  5. 3TC358743XBG評估板參考手冊
  6. 1.36 MB  |  330次下載  |  免費(fèi)
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費(fèi)
  9. 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費(fèi)
  11. 6迪文DGUS開發(fā)指南
  12. 31.67 MB  |  194次下載  |  免費(fèi)
  13. 7元宇宙底層硬件系列報(bào)告
  14. 13.42 MB  |  182次下載  |  免費(fèi)
  15. 8FP5207XR-G1中文應(yīng)用手冊
  16. 1.09 MB  |  178次下載  |  免費(fèi)

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費(fèi)
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費(fèi)
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費(fèi)
  7. 4開關(guān)電源設(shè)計(jì)實(shí)例指南
  8. 未知  |  21549次下載  |  免費(fèi)
  9. 5電氣工程師手冊免費(fèi)下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費(fèi)
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費(fèi)
  13. 7電子制作實(shí)例集錦 下載
  14. 未知  |  8113次下載  |  免費(fèi)
  15. 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德爾著
  16. 0.00 MB  |  6656次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費(fèi)
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537798次下載  |  免費(fèi)
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費(fèi)
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費(fèi)
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費(fèi)
  11. 6電路仿真軟件multisim 10.0免費(fèi)下載
  12. 340992  |  191187次下載  |  免費(fèi)
  13. 7十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138040次下載  |  免費(fèi)