步驟1:此項(xiàng)目所需的部件
零件清單:
taydaelectronics上的Arduino Uno $ 6
arduino uno的Protoshield。
DS3231 plus電池。
WS2813 LED 144 1米。
Tay OH電子公司的470 OHM 1 W碳膜電阻約1美分。
Taydaelectronics的1000uf 16V電解電容9美分
5v電源 - 我用了一個(gè)舊的黑莓充電器。
6in圓鏡。
10個(gè)亞克力圓盤
2 - 6“木質(zhì)刺繡箍(是的,右邊)
Silver one - 鏡片.Ebay似乎最便宜。
各種電線。
3/8“木制方形銷釘
舊木制時(shí)鐘底座或其他展示架。
2個(gè)小拉鏈。
原型盾不是必需的,但如果您喜歡使用Arduino,您會(huì)發(fā)現(xiàn)它在構(gòu)建這些項(xiàng)目時(shí)非常方便。如果需要,可以使用面包板交換原型屏蔽。
您可能還需要烙鐵。
我希望該項(xiàng)目的成本約為40.00美元
第2步:設(shè)置你的電腦
如果這是你的第一個(gè)arduino項(xiàng)目:
從arduino.cc下載arduino軟件
使用USB電纜將Arduino連接到PC。
啟動(dòng)軟件后,您需要安裝三個(gè)庫:
單擊“草圖”菜單,然后單擊“包含庫”,然后單擊“管理庫。..” “
安裝兩個(gè)庫:FastLED和RTClib。有關(guān)詳細(xì)信息,請(qǐng)參閱圖片。
從我的github獲取Arduino scketch
我將在最后查看代碼,以便您可以修改它如所須。
此時(shí)加載程序Infinity_Clock_DS3231_WS2813.ino
轉(zhuǎn)到草圖和上傳以加載Arduino。
Instructable的最后一部分涵蓋了一些可配置的參數(shù)。
現(xiàn)在最好上傳草圖,因?yàn)橐坏┨砑恿送獠侩娫?,最好不要將它連接到您的PC。
第3步:連接項(xiàng)目。
如果您正在使用ProtoType Shield將它放在Arduino上。
接線是最復(fù)雜的部分該項(xiàng)目。我收錄了圖片,以幫助您了解我的所作所為。我建議在開機(jī)前仔細(xì)檢查所有連接。
DS3231 - 實(shí)時(shí)時(shí)鐘模塊
將 DS3231 模塊放入面包板并按照?qǐng)D片連接。
Arduino接地至GND
Arduino 5V至VCC
Arduino A4至SDA
Arduino A5至SCL
在圖片中,我將5v和地線連接到面包板上的自己的運(yùn)行,因?yàn)樯院笪覀儗⑿枰B接外部電源。
結(jié)果
將WS2813 LED燈條
arduino 5V連接到5V電源。
中間的兩個(gè)連接器是冗余數(shù)據(jù)引腳。它們轉(zhuǎn)到引腳7
確保在引腳7和兩條數(shù)據(jù)引線之間放置一個(gè)470 OHM電阻。
Arduino接地到最后連接器。
連接外部5V電源(建議不要長時(shí)間從arduino電源運(yùn)行LED燈條。)
在引線之間放置一個(gè)1000uf的電解電容器。
將電源和地線連接到Arduino電源(5V)和接地(GND)
我不建議將外部電源和USB連接到Arduino上同時(shí)。
第4步:構(gòu)建無限鏡像
構(gòu)建無限鏡像的步驟
將膠片涂在丙烯酸膠片上。這將使你的單向鏡像。
將丙烯酸圓盤放入刺繡箍中。擰緊螺絲以防止滑動(dòng)
將鏡子放入另一個(gè)Embroiery箍中。 Tighen向下擰螺絲。
將方形銷釘切成小截面。約1/2“
將LED燈條環(huán)繞在圓圈內(nèi)。
使用拉鏈將LED固定到位。
你可以需要在拉鏈領(lǐng)上切一個(gè)缺口。
把環(huán)放在鏡子上
用木塊作為墊片
將塊粘貼到位。它們應(yīng)足夠牢固以將LED固定在適當(dāng)?shù)奈恢谩?/p>
將丙烯酸鏡放在鏡子/LED頂部并粘合到位。
第5步:代碼
該程序使用實(shí)時(shí)時(shí)鐘庫和Fastled庫。
以下是一些自定義行為的代碼片段。
OFFSET - 是重疊。編程期望重疊來自LED0。我有3個(gè)LED偏移。
CLOCKSTART - 中午就在時(shí)鐘的位置.LED 30將它從電氣連接中撥出來。
我編寫程序使用HTML顏色。你可以從https://htmlcolorcodes.com/獲取它們只需在prog中交換#為0x ram。
你可以改變上午/下午的背景
backgroundAM = 0x070707;
backgroundPM = 0x646D7E;
LED指針時(shí)鐘:
hourHand = 0x000FFF;
minHand = 0x00CC00;
secHand = 0xcc0000;
為了讓它脫穎而出,我添加了一個(gè)選項(xiàng),可以讓3個(gè)LED用于時(shí)針,但允許您更改兩側(cè)的顏色中間一個(gè)讓它脫穎而出。
theeledhour = true;//你可以使它成為真或假
extraHourHand = 0x00001F;
另一個(gè)不錯(cuò)的功能是RTClib將檢測(cè)到你的DS3231已經(jīng)取出電池并將設(shè)置到PC編譯時(shí)的時(shí)間。它是新DS3231的一個(gè)很好的功能。
-
時(shí)鐘
+關(guān)注
關(guān)注
10文章
1733瀏覽量
131480 -
Arduino
+關(guān)注
關(guān)注
188文章
6469瀏覽量
187070
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論