Forum: Mikrocontroller und Digitale Elektronik rpi gpio pin6 bleibt high


von elektrikker (Gast)


Lesenswert?

Hallo,
ich habe neulich eine Schaltung für mein Pi gebastelt, welche einem 
GPIO-Pin erlauben sollte elektrische Leistung von fremden Quellen zu 
messen.
Dazu nahm ich einen 22uF Kondensator, zwei 1kO Widerstände und ein BC547 
Transistor.

Mit einer Fehlerquote von ~1% klappte das bislang super, jedoch gab 
heute der GPIO06-Pin scheinbar auf, denn er bleibt ständig auf HIGH, 
auch wenn ich ihn auf LOW setze, egal ob er im INPUT oder OUTPUT Modus 
ist.

Natürlich könnte ich jetzt einfach den Pin6 auf ein belibigen anderen 
wechseln, aber diese will ich nicht auch noch zerstören!

Dieser Pin war zusammen mit dem + Beinchen des Kondensators zum 
Collector des Transistors angeschlossen während ein anderer GPIO-Pin 
(der noch funktioniert) über einen der Widerstände an der Base des 
Transistors war.
Am Collector war dann die fremde Stromquelle (max 20V 1A) über einen 
anderen Widerstand (auch 1kO).

Da die Pins im INPUT Status bei 1.2V auf HIGH schalten habe ich einfach 
die Zeit gemessen, wie lange der Kondensator von 0 auf 1.2V braucht.

Fakt:
Ich vermute, dass der Pin bei einem Lag (den ich mit Oszi nie gemessen 
hatte) eine zu hohe Spannung abgekriegt hat, da der pin an der Base des 
Transistors nicht früh genug abgeschaltet hat. Liege ich mit meiner 
Vermutung richtig, oder kann man den Pin eventuell noch retten?

Das einzige, dass ich bisher versuchte war ein Neustart des Pi's und es 
brachte nichts!

PS: ich konfiguriere die Pins mittels c++ und shell 'echo 0 > 
/sys/class/gpio/gpio6/value; cat /sys/class/gpio/gpio6/value;'

MFG
Elektrikker

von Pulli (Gast)


Lesenswert?

N'Abend,

kannst Du dazu mal einen genauen Schaltplan skizzieren?

Was Du da mit dem Transistor machst, hab ich nicht verstanden...
GPIO auf Collector und die 20V Quelle ebenfalls auf den Collector?

Hat der GPIO einen Pulldown?

von elektrikker (Gast)


Angehängte Dateien:

Lesenswert?

Pin13 hat ca. eine Frequenz von 2.
Pin6 ist OUTPUT bis Pin13 HIGH wird.

Der Kondensator ist nach ~13mS bei 1.2V, wenn ich die 20V Quelle 
wegnehme und nach ~10µS - 13mS mit, je nach Belastung der 20V Quelle.

Messdauer ist ~6µS bzw. das Prüfen ob Pin6 schon HIGH ist (durch die 
1.2V)!

Ich hab mitm Oszi aber 3.6V am Kondensator gemessen, als der p6 put 
ging.

MFG

Elektrikker

von Martin (Gast)


Lesenswert?

elektrikker schrieb:
> Ich vermute, dass der Pin bei einem Lag (den ich mit Oszi nie gemessen
> hatte) eine zu hohe Spannung abgekriegt hat, da der pin an der Base des
> Transistors nicht früh genug abgeschaltet hat.

Du hast da kein Echtzeitbetriebssystem dahinter. Ich denke früher oder 
später musste es so kommen. Wenn dann musst du noch einen zusätzlichen 
Hardwareschutz für den Pin einbauen.

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
Noch kein Account? Hier anmelden.