Ich möchte etwas von einem UART Rx Pin mit C++ lesen (tatsächlich ein nodejs natives Modul dafür entwickeln). Ich kann die pigpio Bibliothek erfolgreich initialisiert, aber wenn ich versuche, mit diesem Code zu lesen:C Pigpio: lesen bit bang seriell
gpioSerialReadOpen(TXD, 9600, 8);
while(true){
gsr = gpioSerialRead(TXD, buf, 8);
if(gsr < 0) {
printf("%d\n", gsr);
}else{
fwrite(buf, 8, 1, stdout);
}
sleep(100);
}
erhalte ich nur eine 4-stellige Nummer jedes Mal gelesen (die Zahl ist das gleiche jede Anwendungsinstanz - wenn ich den Neustart Programm ändert sich die Nummer). Was mache ich falsch?
Setzen Sie, was ist 'buf'? Es scheint nicht definiert zu sein. – stevieb
Ihr Code-Fragment ist ziemlich nutzlos - es ist unvollständig, daher kann es nicht von jemandem kompiliert/ausgeführt werden, der daran interessiert ist, Ihnen zu helfen. 1. Erstellen Sie ein minimales vollständig überprüfbares Beispiel Ihres Problems - KOMPLETT bedeutet, dass jemand es in eine Datei einfügen und kompilieren/ausführen kann. MINIMAL bedeutet klein - gerade genug Code, um das Problem zu zeigen. 2. Bearbeiten Sie den Code in Ihre Frage. – barny
Danke, ich behalte das für das nächste Mal im Hinterkopf (siehe meine Antwort) – artus90