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...
Hi,
an PB3 liegt noch "TRACE SWO", dieses Signal musst du mit "GPIO_RemapConfig(...)" deaktivieren um diesen Pin normal nutzen zu können.
Es gibt auch noch andere, die sich ähnlich verhalten!
Gruß
Chris
Puh, jetzt gehts in die Tiefe.
Hast du zufällig ne Quelle für mich wo ich die genauen Befehle finde?
Und warum lese ich davon nichts in den 100000 Tutorials im Netzt?
Mal ins Datenblatt des Chips schauen. Jeder kann alles, was er so von sich gibt, Tutorial nennen. Am Ende zählt nur das Datenblatt.
MfG Klebwax
Strom fließt auch durch krumme Drähte !
Habe mir garade das ganze Datenblatt angeschaut. Leider bin ich dadurch kein bisschen schlauer geworden.
Ich wühle mich mal weiter durchs Netz nach einer Lösung.
Aber danke bis hier her mal für eure Hilfe.
EDIT:
Jetzt läuft es
Ich hab den STMDuino Bootloader draufgespielt und da scheinen alle Pins "richtig" gemapt zu sein.
Also herzlichen Dank nochmal!
Gruß Scynd
Geändert von Scynd (30.01.2020 um 14:45 Uhr)
Hier (https://www.heise.de/developer/imgs/...6ee90b729a.gif) findet man wie ich finde eine gute Übersicht über die Pins und deren Funktionen.
Überall wo du außen eine "weiße Funktion" hast, musst du aufpassen.
Wie die Befehle in Arduino heißen kann ich dir leider nicht sagen, programmiere in "normalem" C.
so sieht das bei mir aus.Code:GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable, ENABLE);
Lesezeichen