2016-02-09 195 views
0

我是Arduino的新手。我試圖讀取UNO上的所有模擬和數字引腳,並通過串行輸出到python腳本。我收到一個錯誤,說明變量D2-D12未在此範圍內聲明。變量a0 - a5不報告錯誤。我知道我必須俯視一些非常簡單的事情。在Arduino中聲明全局變量

byte APins[] = {A0, A1, A2, A3, A4, A5}; 
byte DPins[] = {D2, D3, D4, D5, D6, D7, D8, D9, D10, D11, D12}; 

void setup(){ 
    Serial.begin(115200); 
} 

void loop(){ 
    for (int x = 2; x < 13; x++){  
    Serial.print("A"); 
    Serial.print(x); 
    Serial.print(":"); 
    Serial.println(analogRead(APins[x])); 

    } 

    for (int x = 2; x < 13; x++){  
    Serial.print("D"); 
    Serial.print(x); 
    Serial.print(":"); 
    Serial.println(digitalRead(DPins[x-2])); 

    delay(250); 
    } 
} 

回答

2

更改以下

byte DPins[] = {D2, D3, D4, D5, D6, D7, D8, D9, D10, D11, D12}; 

byte DPins[] = {2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12}; 

的是沒有D前綴數字引腳。它只是十進制數。