Ich habe ein "Datenblatt" gefunden https://www.segor.de/dokumente/l9110.pdf
Dort steht drinnen das die Eingänge TTL/CMOS kompatibel sind. Also Pullup weg (die legt man normalerweise auf die Versorgung vom Controller, also 5V bzw 3,3V,...) und die Controllerpins direkt an den L9110. Damit du keine schwebenden Eingänge am L9110 hast (wenn der uC falsch konfiguriert, in Reset,... ist) kannst du Pulldown Widerstände einbauen. Im PDF oben steht das die Ausgänge low sind wenn beide Eingänge high oder low sind.
Ich würde sowieso nur Bauteile verbauen bei denen man viele Infos findet bzw ein richtiges Datenblatt hat (und leicht verfügbar ist, aber nicht als Modul).
MfG Hannes
Danke für die Info.
Dann plane ich Pullups an 3.3V ein. 2k7 Ohm sollten da passen oder?
Das kannst du machen, ich verwende aber normalerweise 10k Widerstände.
Wenn du SMD Widerstände und die ICs direkt (nicht als Modul) verbaust, dann würde ich die Widerstände auf GND legen. Der Grund ist das GND und die Eingänge direkt nebeneinander sind.
MfG Hannes
Jetzt muss ich weiter ausholen.
Ich habe auf meiner Platine an den Steuerleitungen zwischen STM32 und L9110S auch noch Taster, die GND durchschalten damit ich auch einzelne Motoren auf Tastendruck verfahren kann, falls es mal nötig sein sollte. Da ich ja nach dem weiter oben geposteten Diagramm die 10k Widerstände reingemacht habe, hat das mit den tastern auch gut funktioniert.
Das ist der Grund warum ich Pullups nehmen wollte, weil ich dann nicht die ganze Platine neu Layouten muss
Auf die 2,7k Widerstände bin ich gekommen, da die meist für den I2C Bus auf 3.3V zum hochziehen verwendet werden
Das ist mir jetzt peinlich, aber ja. Soweit habe ich gar nicht gedacht
Um alles Taster an den uC anzuschließen hab ich leider nicht ansatzweise genug Pins übrig...
Ich muss mal die ganze Sache komplett überdenken, vielleicht fällt mir da was ein, ansonsten fliegen die Taster runter.
Aber vielleicht habt ihr noch nen kleinen Tipp für mich.
Der STM32 macht nicht auf allen Pins was er soll. Ich habe mir jetzt mal nen unbenutzen genommen und meinen Code mit einem ST-Link und der Arduino IDE hochgeladen. Dabei habe ich festgestellt, dass z.B. der Pin PB3 nicht macht was er soll.
Daraufhin habe ich testweise das Blink Beispiel aufgespielt das die LED ansteuert die auf Pin PC13 hängt. Das funktionierte ohne Probleme. Dann den Pin im Beispiel auf PB3 geändert und siehe da, es passiert nichts. Der Pin bleibt auf LOW.
Ich weiß nun nicht ob ich einfach eine schlechte Charge aus China erwischt habe, ob die etwas anderes auf der Platine geroutet haben als auf dem PCB steht oder ob es an der Arduino IDE liegt...
Tasten an einem uC Ausgang ist keine gute Idee. Wenn der uC den Ausgang auf high schaltet und du mit dem Taster den Pegel auf low ziehst, hast du einen Kurzschluss.
Besser ist es wenn du die Tasten auf einen uC Eingang gibst und du mit dem Programm den Ausgang steuerst oder du eine Oder-Verknüpfung einbaust (mit Gatter oder Dioden).
MfG Hannes
Lesezeichen