久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

專注電子技術學習與研究
當前位置:單片機教程網 >> Arduino >> 瀏覽文章

基于Proteus的Arduino學習05-片內ADC與電壓表

作者:我不是奔跑哥   來源:我不是奔跑哥的blog   點擊數:  更新時間:2014年06月08日   【字體:

這次我們利用片內ADC測量電壓,做一個串口輸出的電壓表。

首先了解一下Arduino UNO的ADC情況。
Arduino UNO擁有6路模擬輸入:標號A0至A5,每一路具有10位的分辨率(即輸入有1024個不同值),默認輸入信號范圍為0到5V,可以通過AREF調整輸入上限。AREF:模擬輸入信號的參考電壓。【文獻1】
分辨率是ADC的一個重要指標,一般以位數來說明,比如為N位,就是將參考電壓分成2的N次方份,每一份即為可以測量的最小變化量。Arduino UNO的ADC為10位,默認參考電壓為5V,則可分辨的最小變化量為0.00488V,約為0.005V。
由上面可知,可測量的最小變量由分辨率和參考電壓決定。Arduino的片內ADC均為10位,當我們需要測量更小的最小變量時,可以通過更改AREF管腳的電壓來改變參考電壓。
硬件方面,和第四節一樣,我們在Arduino UNO實驗板上添加"POT-HG"電位器,并將其中間端接至A0口,如圖1所示。此處需要注意,AREF需要接至+5V。

圖1 修改后的Arduino UNO實驗板
軟件方面,我們打開Arduino IDE自帶例程"AnalogReadSerial",如圖2所示。

圖2 打開例程“AnalogReadSerial”的界面
需要將例程作部分修改,修改后的程序如下所示。
int sensorValue=0;//AD轉換后的數字量
float float_sensorValue;//把10位數字量換算成浮點電壓量
void setup() {
  Serial.begin(9600);  //定義串口波特率為9600
}
void loop() {
  sensorValue = analogRead(A0);  //讀取A0口電壓值
   float_sensorValue=(float)sensorValue/1023*5.00;  //換算為浮點電壓值
  Serial.println(float_sensorValue,2);  //保留兩位小數發送數據
  delay(1000);        // 一秒刷新一次
}
編譯好了之后,下面我們進行仿真。調節電位器的阻值,觀察串口輸出的數據,并與虛擬電壓表進行比較。不同阻值下,串口輸出的電壓值:當電壓為0V時,如圖3所示,當電壓為5V時,如圖4所示;當電壓為1.45V時,如圖5所示;當電壓為2.60V時,如圖6所示。圖3 電壓為0V時串口輸出電壓
圖4 電壓為5V時串口輸出電壓

圖5 電壓為1.45V時串口輸出電壓

圖6 電壓為2.60V時串口輸出電壓
最后,附上視頻。
關閉窗口

相關文章

主站蜘蛛池模板: 久久精品久久久久久久 | 伊人成人在线 | 亚洲综合免费 | 亚洲精品美女 | 羞羞的视频网站 | 亚洲第十页 | 国产日韩一区二区 | 日本精品网站 | 欧美视频精品 | 国产一区二区福利 | 欧美日韩一区二区三区四区 | 国产精品久久久国产盗摄 | 黄色一级片视频 | 日韩大片在线观看 | 夜夜嗨av一区二区三区网页 | 久久天天操 | 超碰在线免费公开 | 欧美成人精品欧美一级乱黄 | 国产精品嫩草影院桃色 | 成人激情视频网 | 久久久久久爱 | 超碰人人在线 | 中文字幕在线免费播放 | 国产天堂在线观看 | 精品第一页 | 日韩精品免费 | 久草福利视频 | www.日韩欧美 | 亚洲精品免费在线观看 | 二区三区在线观看 | 成年网站在线观看 | 日本一区二区三区四区五区 | 日韩三级久久 | 毛片网站视频 | 久久久久久久 | 午夜国产在线观看 | 国产一区二区在线看 | 久久久精品一区二区三区 | 性av在线| 精品视频在线观看免费 | 亚洲www啪成人一区二区麻豆 |