使用材料:Arduino leonardo
說明:
Arduino本身就有AD轉換功能,ANALOG PIN(圖片右下角),只要將類比從此處輸入即可!
程式:
int anologPin=1; //指定輸入腳,和數位不一樣的宣告方式
long val ; //宣告電壓變數,看個人的需求,如果只要取整數,也可以宣告int
void setup()
{
Serial.begin(9600);
}
void loop()
{
val = analogRead(analogPin); //這裡的值是轉換值(0~1023),若要顯示數值要改成 val = (analogRead(analogPin))*5/1024;
Serial.print(val);
}
小建議:
因為在真實電路中,Arduino 並不會真的輸出5V,通常會在小一些,但是Arduino本身的AD轉換無法改變基準電壓,所以可以把輸入的電壓值,再另外做處理。
這就是數學啦~~
已知AD轉換是換為10位元2進制的方式
AD轉換完的值*5/1024=電壓值
這時候把原先設定5V,改為實際Arduino輸出電壓值
AD轉換完的值*(實際Arduino輸出電壓值)/1024=待測電壓值
EX.我測量到的值是4.84V
所以我的公式改成 AD轉換完的值*4.48/1024
其實這會有誤差是難免的,因為AD轉換的值算法是*1024/5,為了輸出2進制,要強取整數,小數會被無條件捨去,所以會影響到最後的輸出值。
文章標籤
全站熱搜
留言列表