Ich habe eine einfache Schaltung verkabelt, wobei eine LED an Pin 18 der BOARD-Referenz angeschlossen ist. Ich führe ein einfaches Programm aus, um Pin 18 auf HIGH zu setzen, wodurch die LED aufleuchtet. Einige Sekunden später setze ich Pin 18 auf LOW und beende mein Programm schließlich mit GPIO.cleanup ().
Zu diesem Zeitpunkt ist die LED aus, was bedeutet, dass Pin 18 aus ist (LOW). Jetzt starte ich meinen Raspberry Pi neu oder starte ihn neu, und wenn er wieder hochfährt, leuchtet die LED an Pin 18 wieder, obwohl der Pin vor dem Neustart des Raspberry Pi ausgeschaltet war.
Warum kann das passieren? Wie kann ich einen bestimmten Pin wie Pin 18 so konfigurieren, dass er ausgeschaltet ist, wenn der Raspberry Pi hochfährt? Und ich möchte nicht, dass GPIO-Pins auf HIGH stehen, wenn der Raspberry Pi hochfährt.
Ich mache mir Sorgen wegen dieses Problems, weil wir annehmen, dass Pin 18 mit einem Gleichstrommotor eines Roboters verbunden ist, und wenn der Raspberry Pi hochfährt, schaltet sich der Motor ein, und das ist nichts, was ich will, weil das stört Die gesamte Struktur des Roboters und einige Motoren werden möglicherweise gestartet, andere nicht. Dies hängt von den Stiften ab, mit denen sie verbunden sind. Ich möchte alle Motoren manuell synchronisiert einschalten.
Eine andere Sache ist, dass nicht alle Stifte dieses Problem haben. Einige bleiben aus, wenn der Raspberry Pi startet, andere nicht.
/sys/class/gpio
Pin 18 aufrufen und exportieren, in welchem Zustand befindet sich das System dann, wenn Sie nichts ändern?
echo
, was etwas schreibt, dh setzt. Nachdem Sie es exportiert haben, möchten Sie davon Abstand nehmen und nur cat
das Lesen verwenden, um die Richtung und den Wert zu überprüfen.