資料介紹
描述
概述
我已經(jīng)建立了幾個(gè)時(shí)鐘。我喜歡那些連接到互聯(lián)網(wǎng)并設(shè)置自己的。這個(gè)應(yīng)該是有教育意義的,因?yàn)樗Y(jié)合了一堆不同的技術(shù)來(lái)生產(chǎn)一個(gè)非常有趣的時(shí)鐘。
首先,我們使用帶有內(nèi)置 WiFi 和許多強(qiáng)大功能的 ESP32 處理器。憑借其 WiFi 功能,我們從 Internet 獲取 NTP 或 Epoch 時(shí)間,并使用它來(lái)配置 DS3231 RTC(實(shí)時(shí)時(shí)鐘)模塊。
我們將其與 32x8 靈活的 WS2812B LED 矩陣顯示器相結(jié)合,并使用 FastLED 庫(kù)來(lái)控制可編程 LED。我編寫了自己的矩陣?yán)?- 即處理從單鏈可編程 LED(實(shí)際上是這個(gè)顯示器)到由其 XY 坐標(biāo)尋址的 LED 矩陣的轉(zhuǎn)換的例程。
從技術(shù)上講,由于 ESP32 是 3.3 伏邏輯,LED 矩陣是 5 伏,我們應(yīng)該為數(shù)據(jù)線使用電平轉(zhuǎn)換器,但我覺得沒(méi)有必要。LED 顯示屏對(duì) 3.3 伏邏輯信號(hào)響應(yīng)良好。
最后,為了在我們的 LED 矩陣上顯示時(shí)間,我們需要一種適合我們的 32 x 8 LED 矩陣的字體。我們需要軟件來(lái)在顯示屏上顯示數(shù)字。所以我們的時(shí)鐘軟件做了很多事情來(lái)制作這個(gè)簡(jiǎn)單的時(shí)鐘!
說(shuō)到滴答聲,我們的顯示器只夠顯示小時(shí)和分鐘。所以我以兩種方式處理秒數(shù)。首先,閃爍的冒號(hào)顯示秒。此外,顯示屏的顏色會(huì)以秒為單位告訴我們大致所處的位置。一分鐘開始時(shí),顯示為綠色。在前 30 秒內(nèi),它逐漸從綠色變?yōu)樗{(lán)色。在第二個(gè) 30 秒內(nèi),它逐漸從藍(lán)色變?yōu)榧t色,當(dāng)分鐘變化時(shí)又變回綠色。這些顏色變化是使用 256 種彩虹色調(diào)完成的,這是 FastLED 庫(kù)中內(nèi)置的一項(xiàng)功能。
電源由一個(gè) 5 伏的小型墻磚提供,但 ESP32 和 RTC 還需要 3.3 伏。它源自 LM2596 可調(diào)降壓穩(wěn)壓器模塊。它需要調(diào)整并設(shè)置為 3.3 伏輸出。
建筑/硬件
硬件非常簡(jiǎn)單。我們的 ESP32 板是 Adafruit Huzzah ESP32 Feather,盡管我懷疑任何 ESP32 板都可以工作。示意圖如下所示:
LED 顯示器有一個(gè)三線輸入、一個(gè)三線輸出(連接到潛在的第二個(gè)顯示器)和單獨(dú)的電源連接。就我們的目的而言,我們只需要三線輸入,它本身就可以供電。我們只以大約 6% 的最大亮度為 LED 供電,并且任何時(shí)候都只有不到一半的時(shí)間亮著,因此我們不需要連接單獨(dú)的電源線。因此,我們到顯示器的 3 線輸入包括 +5 伏、接地和連接到 ESP32 的數(shù)字引腳 21 的單個(gè)數(shù)據(jù)輸入。
DS3231 RTC模塊有一個(gè)電池的地方,可以在時(shí)鐘關(guān)閉時(shí)保持時(shí)間設(shè)置,但由于每次時(shí)鐘上電時(shí)時(shí)鐘都會(huì)將RTC重置為互聯(lián)網(wǎng)時(shí)間,因此電池確實(shí)是不必要的。
降壓穩(wěn)壓??器是 ESP32 和 RTC 使用的 3.3 伏電壓源。需要使用板載電位器將其調(diào)整為輸出 3.3 伏。在連接到處理器之前將電壓設(shè)置為 3.3 伏,然后在負(fù)載下再次檢查電壓以確認(rèn)您有 3.3 伏。
上圖顯示了在安裝顯示器之前時(shí)鐘是如何物理連接的。這個(gè)盒子是 3D 打印的,頂部有一個(gè)凹槽,可以容納顯示器。第二個(gè)名為“顯示器支架”的 3D 打印件被放置在柔性顯示器的后面,以保持其筆直并為其提供一點(diǎn)支撐。包括處理器在內(nèi)的最終組裝中的所有東西都用熱膠固定到位。
軟件
在我們深入了解軟件的任何細(xì)節(jié)之前,需要注意一些設(shè)置項(xiàng)目。這個(gè)時(shí)鐘通過(guò) WiFi 設(shè)置自己,所以你需要給它你的 WiFi 憑據(jù):WiFi 服務(wù)器名稱和密碼。您還需要將您的時(shí)區(qū)指定為與 GMT 的小時(shí)偏移量。(例如,我在 MST(山地標(biāo)準(zhǔn)時(shí)間),距格林威治標(biāo)準(zhǔn)時(shí)間 -7 小時(shí)。)如果您愿意,您也可以更改 NTP 時(shí)間服務(wù)器,但這不是必需的。
另一個(gè)需要注意的細(xì)節(jié)是各種#include。您可能需要安裝 Makuna 的 NTPClient、FastLED 和 Rtc。RtcDS3231.h 是最后一個(gè)的一部分。您可能已經(jīng)擁有的其他物品 - 我有。
安裝必要的庫(kù)后,您應(yīng)該能夠編譯應(yīng)用程序。現(xiàn)在讓我們談?wù)勊侨绾喂ぷ鞯摹?/font>
該軟件基本上由三個(gè)組件組成:
1) 通過(guò) WiFi 連接到 Internet 到 NTP 時(shí)間服務(wù)器以獲取 Epoch 時(shí)間,該時(shí)間定義為自 1970 年初以來(lái)的秒數(shù)。
2) 設(shè)置 RTC(實(shí)時(shí)時(shí)鐘)并使用 Epoch 時(shí)間將其設(shè)置為正確的時(shí)間。
3) 以 24 或 12 小時(shí)格式在顯示屏上顯示時(shí)間。這涉及創(chuàng)建一個(gè) XY 矩陣,其中各個(gè) LED 可以通過(guò)它們的 XY 坐標(biāo)來(lái)尋址,將時(shí)間分解為其組成數(shù)字,然后使用 6x8 像素字體來(lái)顯示這些數(shù)字中的每一個(gè)。
我們的 setup() 例程必須處理上述所有三個(gè)過(guò)程。我們的 loop() 例程的任務(wù)稍微簡(jiǎn)單一些,只需從 RTC 讀取時(shí)間并將其顯示在顯示器上即可。
有一些輔助例程可以幫助顯示時(shí)間:
- setNUM 例程使用我們的字體將單個(gè)數(shù)字放置在顯示屏上的 4 個(gè)位置之一。它通過(guò)將顯示在顯示器上的內(nèi)容存儲(chǔ)在 32 x 8 陣列中來(lái)實(shí)現(xiàn)這一點(diǎn)。
- setColon 例程只是打開或關(guān)閉構(gòu)成閃爍冒號(hào)的 8 個(gè) LED。
- myHue 例程將顯示的顏色作為自最后一分鐘更改后的秒數(shù)來(lái)管理。
- 最后,refreshDisplay 例程獲取 32x8 陣列的內(nèi)容并將其投影到顯示器上,從而糾正了顯示器實(shí)際上是在 LED 矩陣上來(lái)回曲折的單串 LED 的事實(shí)。
?
- 小丑時(shí)鐘開源分享
- 樂(lè)高時(shí)鐘開源設(shè)計(jì)
- 時(shí)鐘開源項(xiàng)目
- LED像素時(shí)鐘開源分享
- 意大利字時(shí)鐘開源分享
- 微時(shí)鐘開源設(shè)計(jì)
- 歐姆時(shí)鐘開源分享
- LED矩陣時(shí)鐘開源分享
- MakeTime時(shí)鐘開源分享
- 數(shù)碼時(shí)鐘開源分享
- Homematic顯示時(shí)鐘開源分享
- Arduino時(shí)鐘開源分享
- 大型設(shè)計(jì)中FPGA的多時(shí)鐘設(shè)計(jì)策略詳細(xì)說(shuō)明 14次下載
- Fuzzy控制自調(diào)整函數(shù)設(shè)計(jì) 36次下載
- RFID自調(diào)節(jié)式讀寫器控制系統(tǒng)設(shè)計(jì)
- 基于CPU的大型語(yǔ)言模型推理實(shí)驗(yàn) 258次閱讀
- PTP時(shí)鐘源設(shè)備全攻略:從普通時(shí)鐘到透明時(shí)鐘的進(jìn)階之路 1093次閱讀
- FPGA中時(shí)鐘的用法 1368次閱讀
- 50Gb/s波長(zhǎng)自調(diào)諧單纖雙向光模塊介紹 546次閱讀
- 清華等開源「工具學(xué)習(xí)基準(zhǔn)」ToolBench,微調(diào)模型ToolLLaMA性能超越ChatGPT 481次閱讀
- 時(shí)鐘抖動(dòng)和時(shí)鐘偏斜講解 2861次閱讀
- 前沿開源技術(shù)領(lǐng)域的開源大數(shù)據(jù)一一解讀 1005次閱讀
- 支持Python和Java的BigCode開源輕量級(jí)語(yǔ)言模型 852次閱讀
- 大型多GHz時(shí)鐘樹中的時(shí)鐘偏斜 886次閱讀
- 計(jì)算機(jī)視覺開源庫(kù)集錦 5084次閱讀
- 什么是時(shí)鐘呢 時(shí)鐘信號(hào)的關(guān)鍵指標(biāo) 6.1w次閱讀
- 基于STM32時(shí)鐘系統(tǒng)的開發(fā)及配置 2224次閱讀
- 什么是時(shí)鐘周期_時(shí)鐘周期怎么算 5w次閱讀
- 時(shí)鐘是怎么恢復(fù)的? 2.1w次閱讀
- FPGA全局時(shí)鐘和第二全局時(shí)鐘資源的使用方法 4665次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數(shù)據(jù)手冊(cè)
- 1.06 MB | 532次下載 | 免費(fèi)
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費(fèi)
- 3TC358743XBG評(píng)估板參考手冊(cè)
- 1.36 MB | 330次下載 | 免費(fèi)
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費(fèi)
- 5元宇宙深度解析—未來(lái)的未來(lái)-風(fēng)口還是泡沫
- 6.40 MB | 227次下載 | 免費(fèi)
- 6迪文DGUS開發(fā)指南
- 31.67 MB | 194次下載 | 免費(fèi)
- 7元宇宙底層硬件系列報(bào)告
- 13.42 MB | 182次下載 | 免費(fèi)
- 8FP5207XR-G1中文應(yīng)用手冊(cè)
- 1.09 MB | 178次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33566次下載 | 免費(fèi)
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費(fèi)
- 4開關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21549次下載 | 免費(fèi)
- 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費(fèi)
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費(fèi)
- 7電子制作實(shí)例集錦 下載
- 未知 | 8113次下載 | 免費(fèi)
- 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德爾著
- 0.00 MB | 6656次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537798次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191187次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183279次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138040次下載 | 免費(fèi)
評(píng)論
查看更多