Moin, ich bin gerade dabei mich mit den STM32-Mikrocontrollern anzufreunden. Bisher nur 8-Bit-AVR in Assembler. Nun was neues und C. Ich habe ein NUCLEO-F103RB und mit der STM32CubeMX IDE habe ich die ersten Schritte gewagt. Blinkende LED, Interrupt-Auswertung des blauen Tasters und ein 16x2 LCD mit Huckepack I2C-Controller waren meine ersten kleineren Einstiegsprojekte. Nun soll es mit der Datenübertragung via USB weitergehen. Wenn ich das NUCLEO-Board anstecke, dann wird auch ein virtueller COM-Port angelegt. So wie ich das bisher sehe, ist dieser aber nicht vom Mikrocontroller aus ansprechbar, sondern wird vom ST-Link-Boardabschnitt bereit gestellt. Wozu auch immer? Ich habe dieses Turotial https://controllerstech.com/send-and-receive-data-to-pc-without-uart-stm32-usb-com/ verwendet, um erst einmal nur Daten zu senden. Aber über die bisherige virtuelle Schnittstelle kommt nichts. Laut Datenblatt sind die Anschlüsse PA11 und PA12. Kann ich da einfach ein USB-Kabel anschließen? Und muss dann auf dem Board noch X3 bestückt werden. Gruß Holger
>Kann ich da einfach ein USB-Kabel anschließen? nein. DP braucht noch einen 1,5kOhm nach 3,3V >noch X3 bestückt ich bin grad etwas faul, das für dein nucleo rauszusuchen. Orientiere dich an der CUBE_MX Takte-Unterseite.
Moin, vielen Dank für die Info. Mit dem Hinweis habe ich etwas gesucht und habe nun die korrekten Verbindungen. Quarz X3 braucht man in diesem Fall nicht. Ich habe ein USB-Verlängerung abgeschnitten und zum Glück durchgemessen. Die Farben sind rot/schwarz/weiß/blau für + 5 V/D+/D-/GND. Die D+ und D- habe ich jeweils über 22 Ohm an PA12 und PA11 angeschlossen. Dann D+ über 1,5 KOhm an +3,3 V. GND auf GND. Die +5 V vom PC über eine Diode an +5 V wird nur bei externer Spannungsversorgung des NUCLEO-Bords benötigt. Ich nehme die 5 V aus dem ST-LINK. Also die 5 V vom PC-seitigen USB-Kabel sind in meinem Fall jetzt nirgends angeschlossen. Gruß Holger
Der USB-UART Adapter des ST-Link ist mit USART2 vom Mikrocontroller verbunden. Siehe http://stefanfrings.de/stm32/stm32f1.html#usart Infos zum USB Port kommen etwas weiter unten auf der selben Webseite.
Stefan ⛄ F. schrieb: > Der USB-UART Adapter des ST-Link ist mit USART2 vom Mikrocontroller > verbunden. Siehe http://stefanfrings.de/stm32/stm32f1.html#usart Aha. Dann werde ich mich mal daran machen, die Daten von einem Port auf den anderen zu schaufeln und umgekehrt (Übung). Momentan klappt über PA12/PA11 die Eingabe und die 1:1 Ausgabe. Mein Ziel ist es, drei Schnittstellen miteinenader zu verknüpfen. Das was über eine Schnittstelle reinkommt, soll 1:1 dann an die beiden anderen ausgegeben werden. Input 1: Output 2/3 Input 2: Output 1/3 Input 3: Output 1/2 Wie funktioniert das eigentlich mit den Baud-Einstellungen? Momentan sieht das so aus, als ob der STM32 alles automatisch erkennt.
Holger D. schrieb: > Wie funktioniert das eigentlich mit den Baud-Einstellungen? Momentan > sieht das so aus, als ob der STM32 alles automatisch erkennt. Du meinst vermutlich den virtuellen COM Port von USB CDC, der hat tatsächlich keine Baudrate. Die Übertragungsgeschwindigkeit wird vom USB bestimmt. Was du hierbei im Terminalprogramm einstellst, spielt keine Rolle. Bei USART <--> USB-UART Adapter hast du natürlich eine bestimmte Baudrate auf der "echten" seriellen Schnittstelle. Die wird nicht automatisch erkannt.
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.