arduino開發ESP8266學習筆記五——模擬輸入


ESP8266ADC檢測電壓是0V到1V,和arduino uno和nano的0~5V不同,使用時一定要注意輸入的電壓不能超過0V到1V否則會燒壞ESP8266的ADC。ESP8266的ADC是12為的,所以返回值值從0-1023之間的值,ESP8266只有一個ADC即使A0腳。

電路圖如圖1所示:

 

 

 

圖1

 

 

通過電阻分壓得到適當的電壓值,為保險起見,將上面的電阻設置成3.3K。這樣最大電壓值就是

 

 

為了效果明顯,使用一個LED用采到的電壓值,設置LED亮度。

 程序代碼

int analogInput=A0;//
int LED=14;
void setup() {
  Serial.begin(9600);//初始化串口波特率
  pinMode(LED,OUTPUT);
  //Serial.println("模擬電壓值:");//通過串口發送

}

void loop()
{
  int analogValue;//用來存放讀到的模擬值,范圍是0-1023
  // float brightnessValue;
  analogValue=analogRead(analogInput);
  // brightnessValue=1.0*analogValue/1024.0;
  analogWrite(LED,analogValue);
  delay(1);
  Serial.println(analogValue);//通過串口將采到的模擬值發送到電腦

}

 

額,代碼是對的,但是不知道是不是開發板的原因,我的模擬返回值最高只有241(分壓電阻位50K),當分壓電阻為1K的時候只有136。 

 ?????????????????

 

 

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM