發表文章

目前顯示的是 8月, 2018的文章
4X4X4 LED 方塊   為什麼要實作 4X4X4 LED 方塊? 因為這是在 YOUTUBE 譽為十大 Audrino 實作之一。看似很炫,做起來郤沒有太大難度。 因為先前在淘寶誤淘了一包 100 粒 LED ,價錢實在太便宜,用了在香港只可買到幾粒 LED 的價錢,竟然淘來了 100 粒。我還以為這一生都不會用完這批 LED… 因為這實作要很多焊接,正好讓那把烙鐵展露一下身手。 想做一個用底板的實作,長期只用面包板太小學雞了。 因為那天閑著,看了幾段 YOUTUBE 實作片後,就動手做起來了。 實作 MK-0 時遇到什麼問題? 最大的問題是那 100 粒 LED 是 3mm 直徑,屬於小型的L ED 。由於材料體積較小, LED 之間的距離較細,引致焊接要更精巧,誤差也相對較明顯。 其次是手上的工具不足,你知道我手邊連一把膠間尺也沒有,所以我的紙模上連排成一個 4X4 的正方矩陣都不完全嗎? 由於不懂得將 LED 正極屈曲出來,到連接二層時才發覺 LED 本身檔住接腳。這時才強制焊接,其實難以形成一個矩離相等的立體。 最後, MK-0 是可成功運行的 4X4X4 LED 方塊。但由於外觀歪歪斜斜,我沒有將它焊死在底板上。換言之,它是一個半製成品。 實作 MK-1 的情況如何? 吸取了 MK-0 的經驗,我馬上從淘寶淘來另外 100 粒 LED 。不過這次是較大的 5mm 直徑 LED 。同時訂了一些較大的實驗板,有信心足夠大放上方塊及 Arduino Nano ( 還是忘記了電池)。反覆看了幾個網頁和 YOUTUBE 片,心中有足夠思量如何才保證成品像個正方體 ( 因為網上相片的模型都正方得很厲害 ) 。實作期間魯莽地將電池直接沾上L ED 的正負二極,結果燒了幾顆L ED 。這樣,要去掉燒了的L ED 重新焊回新的,過程中難免有捐最後成品的外觀。焊接實驗板的技術有待加強,除了使用了不少飛線外,亦有不少燻黑的地方,不過沒有造成任何短路就算了。 這實作意義何在? 從 STEM 角度出發,這實作完全由零開始製成一個模型,無模板可以依偱。這是一個很好的創作歷程,因為在過程中不是依據圖則裝嵌零件,成品的完成度,美觀度,完全依...
圖片
上拉下拉的開關   一個普通的開關,在電子世界裏卻分為上拉 (Pull-Up) 和下拉 (Pull-Down) 設計。 上拉的意思是指單板機的接口由一個電阻接到 +5V, 另一方則 通過一個開關 接地,閉合後下拉到接地。這樣,開關敝開 (Open) 時接口的狀態為 HIGH ,開關閉合 (Close) 時接口狀態變為 LOW 。其實上拉是指那枚電阻 (Pull-up resistor) 。但一般我們會用它形容整個開關電路設計,稱為上拉開關設計 (Pull-up Button) 。 這個實驗是實作上拉,下拉及 Arduino 內部下拉的線路示範。 上圖籃色部份 (S1) 是上拉設計,綠色部份 (S2) 是下拉設計,橙色部份 (S3) 是內部上拉設計,其實即是無需電阻,由 Audrino 內部自行安排一個合適的電阻。 以下是實驗的 Arduino 編程及視頻示範: /** Pull-Up and Pull-Down Buttons * Kevin Lee 08 Aug 2018 * */ #define PUB 2 // Pull-up button #define PDB 3 // Pull-down button #define IUB 4 // Internal Pull-up button #define PUL 5 // Pull-up LED #define PDL 6 // Pull-down LED #define IUL 7 // Internal Pull-up LED void setup() {   pinMode(PUB, INPUT);   pinMode(PDB, INPUT);   pinMode(IUB, INPUT_PULLUP);   pinMode(PUL, OUTPUT);   pinMode(PDL, OUTPUT);   pinMode(IUL, OUTPUT);   // Make Sure all LED are OFF at start   digitalWri...