Hallo Forum Was prinzipielles, schwer im Internet zu suchen. Kann ich bei einem STM32 MCU einen Pin als open drain bidirektional verwenden? Also dass der MCU ihn bei Bedarf auf 0 ziehen kann (also Mode auf OUTPUT, OD). Ein extern angeschlossener IC darf auch auf Null ziehen. Wenn ich den GPIO dann abfrage ohne ihn auf Input gestellt zu haben möchte och eine Null auslesen wenn extern auf Null gezogen wird. Geht das prinzipiell?
es_gibt_nur_bloede_fragen schrieb: > Was prinzipielles, schwer im Internet zu suchen. Das steht auch im Internet, denn da findet man sicherlich das Datenblatt! Bei Atmel z.B. gibt es den Satz: "Independent of the setting of Data Direction bit DDxn, the port pin can be read through the PINxn Register bit." Also da geht es, beim STM32 solltest du selbst mal den Abschnitt über die IOs durchlesen.
Beitrag #5290722 wurde von einem Moderator gelöscht.
Laut Datenblatt sollte das funktionieren (Siehe Bild). Leider bei mir im Code nicht. Ist noch mit StdPeripheralLibrary. GPIO_ReadInputDataBit() liefert ständig SET obwohl in dem Moment bereits auf Null gezogen. GPIO_SetBits() und GPIO_ResetBits() funktioniert wie erwartet.
es_gibt_nur_bloede_fragen schrieb: > Kann ich bei einem STM32 MCU einen Pin als open drain bidirektional > verwenden? Das sollte eigentlich bei fast allen Mikrocontrollern gehen, denn das braucht man noch oft bei softwaremässig implementierter Kommunikation zur Kollisionsdetektion CSMA/CD. https://de.wikipedia.org/wiki/Carrier_Sense_Multiple_Access/Collision_Detection
Hat sich erledigt, das funktioniert, war ein anderer Programmierfehler der mit der Problematik nichts zu tun hat.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.
