課程目標(biāo)
相關(guān)知識(shí)
電位器是具有三個(gè)引出端、阻值可按某種變化規(guī)律調(diào)節(jié)的電阻元件。常用于音量調(diào)節(jié),燈光調(diào)節(jié),馬達(dá)調(diào)速,溫度調(diào)節(jié)等場(chǎng)合。
電路搭建
所需材料
ArduinoUNO * 1
可調(diào)電位器 * 1
220Ω電阻 * 1
任意顏色LED * 1
杜邦線若干
接線方式
程序編寫(xiě)
練習(xí)一:串口讀取模擬輸入
通過(guò)串口讀取電位器的輸入值,并在串口監(jiān)視器中顯示出來(lái)。
圖形化方式:
通過(guò)上傳下面的程序,可以在串口監(jiān)視器中讀取到電位器的值,調(diào)節(jié)電位器旋鈕,能清晰發(fā)現(xiàn)取值范圍為0~1023。
由于傳感器表達(dá)的是模擬信號(hào),它不會(huì)像數(shù)字信號(hào)那樣只有簡(jiǎn)單的高電平和低電平,而有可能是在這兩者之間的任何一個(gè)數(shù)值。至于到底有多少可能的值則取決于模數(shù)轉(zhuǎn)換的精度,精度越高能夠得到的值就會(huì)越多。
Arduino所采用的ATmega8微處理器其有6個(gè)模數(shù)轉(zhuǎn)換器(ADC,Analog to Digital Converter),每一個(gè)模數(shù)轉(zhuǎn)換器的精度都是10bit,也就是說(shuō)能夠讀取1024(2^10 = 1024)個(gè)狀態(tài)。
在Arduino的每一個(gè)模擬輸入管腳上,電壓的變化范疇是從0V到5V,因此Arduino能夠感知到的最小電壓變化是4.8毫伏(5/1024 = 4.8mV)。
代碼方式:
/* 項(xiàng)目名稱:串口讀取模擬值
* 項(xiàng)目日期:2022.02.18
* 項(xiàng)目作者:MRX
*/
int AR = 0;
void setup() {
pinMode(A0,INPUT);
Serial.begin(9600);
}
void loop() {
AR = analogRead(A0);
Serial.println(AR);
delay(1000);
}
練習(xí)二:編程實(shí)現(xiàn)電位器調(diào)節(jié)LED燈的亮度
用電位器做輸入,LED燈做輸出。
電路接線:
圖形化方式:
Arduino的模擬輸入量是0-1023,而模擬輸出卻是0-255。所以下面的程序通過(guò)映射的方式將模擬輸入量和輸出量進(jìn)行了轉(zhuǎn)換。
代碼方式:
/* 項(xiàng)目名稱:串口讀取模擬值
* 項(xiàng)目日期:2022.02.18
* 項(xiàng)目作者:MRX
*/
int AR = 0;
int LEDpin = 3;
void setup() {
pinMode(A0,INPUT);
pinMode(LEDpin,OUTPUT);
}
void loop() {
AR = map(analogRead(A0), 0, 1023, 0, 255);
analogWrite(LEDpin,AR);
}
-
傳感器
+關(guān)注
關(guān)注
2551文章
51171瀏覽量
754245 -
電位器
+關(guān)注
關(guān)注
14文章
1012瀏覽量
66828 -
模數(shù)轉(zhuǎn)換器
+關(guān)注
關(guān)注
26文章
3208瀏覽量
126862 -
模擬信號(hào)
+關(guān)注
關(guān)注
8文章
1133瀏覽量
52483 -
Arduino
+關(guān)注
關(guān)注
188文章
6471瀏覽量
187238
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論