Arduino: Analog Input (Analog Input) 用可變電阻控制LED開關間距


Analog Input

目標

使用可變電阻 (Potentiometer)控制LED燈的開關間距,
從而令LED以不同頻率閃動。

材料:

1. Arduino 主板,這次測試是用Arduino Duemilanove USB的板子作示範。

2. 10kΩ變電阻 (Potentiometer),它是電阻的一種,
不過它有一個旋鈕,它的電阻值會隨著旋鈕位置不同而改變。



圖解:

最左方的是這次會用上的款式,旋鈕需要用螺絲起子來調較。
其餘是較大的款式,單價較右方的款式便宜,
使用時旋鈕可以配上一個膠蓋,視覺上較美觀,絕緣度也較好。
其次藍色的是RS的天價產品,這個是做一個AC220V的調光器時多買的,
特點是膠柄,品質、造工優良和昂貴。
最右方的是長柄的版本,比較少機會需要使用,也比較昂貴。

(如果到市面上的店家單買上述零件的話,價錢會是天文數字的,
其實有一些店家會打包一些寫MCU (Arduino)會用到的零件組合在賣,
如果你找不到的話可以電郵給我,我可以提供我平常買的店家資料給你。)

4. 麵包板和連接線



接線圖





將可變電阻的中間腳位接上Arduino Duemilanove Analog Input 0腳,
可變電阻的其餘兩腳則分別接上DC5V和GND。


接線完成了應該是這個模樣的。




程式碼

這次用的範例是內建了在Arduino Software的AnalogInput範例。
程式路徑: File > Examples > 3.Analog > AnalogInput





程式碼解說

先來是作者的話和程式來源的介紹。





然後是設定變量、I/O PIN和程式運作的主體部分。




明白了上面的講解就可以按編譯及上傳了,按鈕在上排的方塊,
成功後下方應出現Done uploading. 的字樣。





然後你就可以動手測試了,
這次不用額外的LED的原因是因為PIN13本身就接著一顆在板子上SMD的LED。


你可以一邊用螺絲起子調整可變電阻,一邊觀察LED的閃動頻率。

最後完成了應該是這個模樣的。




下次我們來做一個Analog Input 和 Analog Output 聯動的程式。

留言

這個網誌中的熱門文章

艦これ 1/700 輕巡洋艦 大淀

FIREへ資産形成記録:2024年1月

74LS247 BCD to 7-Segment Decoder 七劃管解碼器