Arduino項目:讀取類比輸入

在這個項目中,我們將使用一個電位計並將其連接到Arduino的類比輸入引腳,並編寫一個程式來讀取當前的值。 在Arduino的第2個項目中,我們學會了如何讀取數字輸入。讀取到的值可以是 0 或 1,LOW 或 HIGH。 這可以通過數字I/O引腳來完成,引腳編號從 0 到 13。 類比I/O引腳以 A 開頭。在Arduino Uno上,您可以找到6個類比I/O引腳 A0 / A5: 在Arduino MKR 1010 WiFi上,您有7個類比I/O引腳,從 A0 到 A6: 不同的板子擁有不同數量和位置的引腳。這些引腳可以配置為類比輸入或類比輸出。 數字信號只能是高或低。類比信號可以保持一系列的值,在Arduino的情況下,它的範圍從 0 到 1023,對應著輸入端的電壓從0V到5V的程度。 各種傳感器都會提供給我們類比值。想想溫度傳感器、距離傳感器、聲音傳感器、運動傳感器…我們可以使用Arduino讀取它們的數值,並根據數據決定要做什麼。 我們可以使用一個名為 analogRead() 的函數來實現。 但讓我們先建立一個小電路。 在項目“使用電位計建立一個LED調光器”中,我們建立了一個簡單的電路,使用一個電位計控制LED光。現在讓我們複製該電路的一部分,除了現在我們將Arduino放在那裡。 如果將電位計完全向左轉動,我們讀取到的值應該是 0。完全向右轉動時,我們讀到的值應該是 1023,在中間位置時應該是 512。 以下是使用一個10kΩ電位計構建的電路示意圖: 我們從Arduino的電源輸出引腳獲得0V和5V,並將它們連接到麵包板。然後我們將這些電壓級別連接到電位計的輸入引腳,並獲得輸出引腳,將其連接到類比引腳 A1: 我們編寫一個程式從該引腳讀取,並將讀取到的值打印到串行接口,這樣我們就可以從Arduino IDE的串行監視器上讀取它: void setup() { Serial.begin(9600); } void loop() { int value = analogRead(A1); Serial.println(value); } 需要注意的是,我沒有將 A1 引腳明確設置為輸入引腳,因為引腳默認情況下是輸入的。如果我想寫入該引腳,我需要在 setup() 中使用 pinMode() 进行設置。 以下是我們的程式運行時的結果。當電位計完全向左轉動時,我們讀到的值是 0: 當電位計完全向右轉動時,我們讀到的值是 1023(有時由於處理類比值並且不是100%精確,可能是 1022):...

麵包板電源模組

在我的一些電子教程中,我通常會將電路連接到一個9V電池,因為這是非常簡單且容易找到的。 但這並不是最佳的解決方案。首先,電池會隨著時間的推移而耗盡,無法提供所宣稱的9V電壓。 麵包板電源模組通過從電池、12V適配器或其他任何電源的“桶型插孔”輸入,根據我們的需求為電路提供5V或3.3V電壓。我們將很快引入Arduino系列開發板到我們的電路中,而所有的Arduino電路都將使用這些電壓。 有很多不同的模組可供選擇,這是我想要向你展示的電源模組,它是Elegoo套件的一部分,我建議你去購買,但也有其他品牌販售相同形狀和特性的產品,你可以在亞馬遜上搜索“Arduino電源”來看看其他選擇: ! ! ! ! ! 輸入電壓範圍為6.5V至9V直流電。 最大輸出電流為700mA。 我們可以直接將其連接到麵包板上: ! ! ! 然後,你可以在每側選擇要應用到麵包板上的電壓,可以獨立選擇5V,例如這種情況: ! 或者3.3V,通過更改跳線的位置: ! 你也可以將其關閉,將跳線放置在中間位置: ! 然後,你可以使用桶型插孔連接到12V至220V適配器: ! 按下灰色按鈕開啟它,LED燈將會亮起: ! ! USB端口並不是用來為電源模組供電的,它用於根據需要供電給USB設備(例如Arduino)。 麵包板上還有其他提供GND、5V和3.3V的輸出接口,以防需要使用: !