2016-05-27 7 views
2

Ich habe diesen einfachen Code auf Raspberry B +.wiringPi funktioniert nur mit Pin 7

#include <wiringPi.h> 
#include <stdio.h> 

int main (int argc, char** argv) 
{ 
    int pin; 
    if (argc <2) 
    pin = 7; 
    else 
    pin = atoi(argv[1]); 
    printf("Raspberry Pi wiringPi blink test\n"); 

    if (wiringPiSetup() == -1) 
    return 1; 

    pinMode(pin, OUTPUT); 

    for (;;){ 
    printf("LED On\n"); 
    digitalWrite(pin, 1); 
    delay(250); 
    printf("LED Off\n"); 
    digitalWrite(pin, 0); 
    delay(250); 
    } 

    return 0; 
} 

Ich möchte eine LED blinken, die mit einem bestimmten Pin verbunden ist. Aber aus irgendeinem Grund blinkt die LED nur, wenn sie an Pin 7 angeschlossen ist. (Ich habe nicht alle anderen Pins versucht, nur 8,31,32,33); Wenn ich den Befehl gpio -g 6 write 1 (was für Pin 31 ist) versuchen, leuchtet die LED ... Was ist falsch mit dem Code?

Antwort

1

Ich fand heraus!

Die Pin-Nummerierung von wiringPi unterscheidet sich von R-Pi! Here ist eine Tabelle, für die Pin ist.

Es war nur ein Zufall, dass Pin 7 auf R-Pi Pin 7 auf WiringPi auch ist.

+0

wow, so cool! hatte das gleiche Problem –