各位好:
在Arduino UNO 上測試 LM35 溫度感應器, 可以得到正確的溫度值(29~31), 但用同樣的程式上傳到 Arduino Pro Mini, 得到卻是不同的值, 而且值都從0~500飄移
我使用的是官方測試程式
================================================================
#define LM35 A1
int val = 0; //存放AD变量缓存
float temp = 0; //温度值
void setup()
{
Serial.begin(9600); //串口波特率9600
}
void loop()
{
val = analogRead(LM35); //读取AD值
temp = val * 0.48876; //计算温度值
Serial.print("LM35 = ");
Serial.println(temp); //串口输出温度值
delay(1000);
}
=================================================================
後來發現, 將 Pro Mini 上的 A0 插針換至 A1, 顯示的值都是一樣)
是 Pro Mini 壞掉嗎? 還是這兩種版本的板子, 在接收 Analog 信號後, 計算出來的比例值是不一樣的?
Ps. 這兩片板子使用到的接腳有: Vcc, Gnd, A0, 2~13
對了...還有一點不同的是, Uno 使用的傳輸線為附贈的 USB 線, 而 Pro mini 使用的的是"CP2102 USB TTL Arduino USB-TTL UAR STC win8.1 下載線"
Arduino Pro Mini Vcc ::::: CP2102 +5V
Arduino Pro Mini GND ::::: CP2102 GND
Arduino Pro Mini RXD ::::: CP2102 TXD
Arduino Pro Mini TXD ::::: CP2102 RXD
Arduino Pro Mini DTR ::::: CP2102 DTR
DTR 焊接至 CP2102 第18隻腳位
(資料參照 http://gsyan888.blogspot.hk/2014/10/arduino-cp2102-dtr-pin.html )
pinlin00 wrote:
各位好:
在Arduino...(恕刪)
沒用過 Arduino,但幫您猜測幾個方向
1. 供電問題,從 datasheet 上看,Arduino uno 是用 5V 供電,而 Arduino Pro Mini 是可以用 3.3V 供電。LM35 至少要 4V 的工作電壓,請先確定供電給 LM35 的電壓是恰當的
2. Arduino Pro Mini 的 A/D 轉換沒有正確啟動,如果顯示的值會飄很寬的範圍,先用示波器量一下 A/D 的輸入腳位,是否有明顯波形,如果有波形應該可以確定是 A/D 的啟動程序不正確
3. 承 2,如果無波形,把 A/D 結果直接輸出,不要透過計算,看看是否正確。




























































































