剛接觸可變電阻,不曉得那三隻腳是做甚麼的?
-先理解可變電阻的運作原理,就不用死記那三隻腳要怎麼接線。
不會使用Arduino來讀取可變電阻的分壓?
-下面有接線圖及Arduino的範例程式來幫助你來完成這個小專案。
內容目錄
可變電阻簡介


圖中是我們常見的可變電阻,有三個端子,中間的為滑動端。
隨著旋鈕改變,中間滑動端位置也會改變,因此與兩端的阻值就會發生改變。

以10kΩ的可變電阻為例,若是量測到左對中是2kΩ ,那麼中對右就會是8kΩ ,左對右(兩者相加)就會是固定的總阻值10kΩ。
轉動旋鈕使滑動端往右邊移動,就可以調整成左端為8 kΩ ,右端為2 kΩ 。
下面影片(ApourMaker中文频道)很清楚地說明了可變電阻的內部結構,以及其運作原理。
可變電阻分壓電路

我們可以把可變電阻看成”兩個電阻串連“,然後從中間拉一條線出來(Vout)。
分壓電路的公式: Vout= Vin *R2/( R1 + R2 )
圖中計算: Vout = 5*5/(5+5) = 2.5V
從這裡我們就可以知道,當我們調整可變電阻時,會因為上下電阻的比例變動,而使Vout電壓跟著變動,再透過Arduino來讀取電壓值,這樣就可以拿來應用了。
Arduino讀取可變電阻分壓
我在這裡使用LCD來顯示讀取到的數值,若是沒使用過LCD的朋友,可參考這篇“【Arduino】LCD I2C模組使用教學”。
線路連接

aRDUINO | 可變電阻 |
---|---|
5V | 左端(或右端) |
GND | 右端(或左端) |
A0 | 中間端 |
Arduino程式
#include <Wire.h> // I2C程式庫
#include <LiquidCrystal_I2C.h> // LCD_I2C模組程式庫
// LCD I2C位址,默認為0x27或0x3F,依據背板的晶片不同而有差異,16、2為LCD顯示器大小。
LiquidCrystal_I2C lcd(0x27, 16, 2);
const int VR_pin=A0;
int Value;
void setup() {
pinMode(VR_pin,INPUT); //將VR_pin設置為類比輸入腳位
// 初始化LCD
lcd.init();
lcd.backlight();
}
void loop() {
Value=analogRead(VR_pin); //將VR_pin讀取到的值存到Value變數中。
lcd.setCursor(2, 0); // (colum, row)從第一排的第三個位置開始顯示
lcd.print("Value: ");
lcd.print(Value); //LCD顯示出Value的值
lcd.print(" ");
delay(100);
}
最後!! 你喜歡這篇文章,或是這篇文章對你有幫助的話,也歡迎分享出去給需要的人,訂閱免費電子報獲得最新資訊😄😄😄
讚,謝謝分享。