Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
uasrt [2019/02/04 14:10]
127.0.0.1 Externe Bearbeitung
uasrt [2019/07/25 21:46] (aktuell)
huwi
Zeile 5: Zeile 5:
 Die Aufgabe soll darin bestehen, die Zeichenkette //"​Hallo mySTM32!"//​ per UART an den PC zu senden. Dort werden die empfangenen Daten in einem Terminal-Programm angezeigt. ​ Die Aufgabe soll darin bestehen, die Zeichenkette //"​Hallo mySTM32!"//​ per UART an den PC zu senden. Dort werden die empfangenen Daten in einem Terminal-Programm angezeigt. ​
  
->>>​{{:​hallopc.jpg?​600|}}+>​{{:​hallopc.jpg?​600|}}
  
 ===== Vorbereitung ===== ===== Vorbereitung =====
Zeile 16: Zeile 16:
 Da heutige Rechner kaum noch über eine klassische [[http://​de.wikipedia.org/​wiki/​RS-232|RS232-Schnittstelle (COM)]] verfügen, benutzen wir eine [[http://​shop.myavr.de/​Programmer%20und%20Bridges/​myUSBtoUART.htm?​sp=article.sp.php&​artID=200024|USB-UART-Bridge]]. Auf dem [[http://​shop.myavr.de/​ARM-Produktlinie/​mySTM32-Board-F4D,​%20Bausatz.htm?​sp=article.sp.php&​artID=200075|Zusatzboard]] für das STM32F4-Discovery existiert dafür ein entsprechendes Modul, die USB-UART-Bridge //​myUSBtoUART//​. Da heutige Rechner kaum noch über eine klassische [[http://​de.wikipedia.org/​wiki/​RS-232|RS232-Schnittstelle (COM)]] verfügen, benutzen wir eine [[http://​shop.myavr.de/​Programmer%20und%20Bridges/​myUSBtoUART.htm?​sp=article.sp.php&​artID=200024|USB-UART-Bridge]]. Auf dem [[http://​shop.myavr.de/​ARM-Produktlinie/​mySTM32-Board-F4D,​%20Bausatz.htm?​sp=article.sp.php&​artID=200075|Zusatzboard]] für das STM32F4-Discovery existiert dafür ein entsprechendes Modul, die USB-UART-Bridge //​myUSBtoUART//​.
  
->>>​{{:​addonmitdiscovery.jpg?​400|}}+>​{{:​addonmitdiscovery.jpg?​400|}}
  
 Studieren wir das [[http://​www.st.com/​internet/​com/​TECHNICAL_RESOURCES/​TECHNICAL_LITERATURE/​DATASHEET/​DM00037051.pdf|Datenblatt]] stellen wir fest, dass sich die Sendeleitung TxD (transmit data) und die Empfangsleitung RxD (receive data) der USART3 als Alternativfunktionen über die Busmatrix auf verschiedene GPIO-Pins legen lassen. Wir wollen die USART3 am Port D verwenden. Damit lautet unsere Konfiguration:​ GPIO-Pin D8 ist die Sendeleitung TxD und GPIO-Pin D9 ist die Empfangsleitung RxD. Diese Pins liegen am Nächsten an unserer USB-UART-Bridge. Die Geschwindigkeit für die Datenübertragung legen wir mit 9600 Baud fest. Studieren wir das [[http://​www.st.com/​internet/​com/​TECHNICAL_RESOURCES/​TECHNICAL_LITERATURE/​DATASHEET/​DM00037051.pdf|Datenblatt]] stellen wir fest, dass sich die Sendeleitung TxD (transmit data) und die Empfangsleitung RxD (receive data) der USART3 als Alternativfunktionen über die Busmatrix auf verschiedene GPIO-Pins legen lassen. Wir wollen die USART3 am Port D verwenden. Damit lautet unsere Konfiguration:​ GPIO-Pin D8 ist die Sendeleitung TxD und GPIO-Pin D9 ist die Empfangsleitung RxD. Diese Pins liegen am Nächsten an unserer USB-UART-Bridge. Die Geschwindigkeit für die Datenübertragung legen wir mit 9600 Baud fest.
  
->>>​{{:​blockbilduart.jpg?​750|}}+>​{{:​blockbilduart.jpg?​750|}}
  
 Verbinden Sie die Pins RxD und TxD der USB-UART-Bridge auf dem [[http://​shop.myavr.de/​ARM-Produktlinie/​mySTM32-Board-F4D,​%20Bausatz.htm?​sp=article.sp.php&​artID=200075|Zusatzboard]] mit den Pins PD8 (RxD3) und PD9 (TxD3). Benutzen Sie dazu geeignete Patchkabel. Beachten Sie, dass die RxD jeweils mit TxD über Kreuz verbunden sein muß. (TxD3 - > RxD, RxD3 - > TxD).  Verbinden Sie die Pins RxD und TxD der USB-UART-Bridge auf dem [[http://​shop.myavr.de/​ARM-Produktlinie/​mySTM32-Board-F4D,​%20Bausatz.htm?​sp=article.sp.php&​artID=200075|Zusatzboard]] mit den Pins PD8 (RxD3) und PD9 (TxD3). Benutzen Sie dazu geeignete Patchkabel. Beachten Sie, dass die RxD jeweils mit TxD über Kreuz verbunden sein muß. (TxD3 - > RxD, RxD3 - > TxD). 
  
->>>​{{:​uart3verbunden.png?​450|}}+>​{{:​uart3verbunden.png?​450|}}
  
 Zusätzlich ist die USB-UART-Bridge mit dem PC zu verbinden. Dazu benötigen Sie ein zweites Mini-USB-Kabel. Über die USB-Verbindung zum integrierten ST-LINK/V2 wird der Controller programmiert und das System mit Spannung versorgt. Zusätzlich ist die USB-UART-Bridge mit dem PC zu verbinden. Dazu benötigen Sie ein zweites Mini-USB-Kabel. Über die USB-Verbindung zum integrierten ST-LINK/V2 wird der Controller programmiert und das System mit Spannung versorgt.
Zeile 42: Zeile 42:
  
 //​**Controller::​onWork:​**//​ //​**Controller::​onWork:​**//​
->>><​code cpp>+><​code cpp>
 terminal.writeString("​Hallo mySTM32!\n"​);​ terminal.writeString("​Hallo mySTM32!\n"​);​
 waitMs(1000);​ waitMs(1000);​
 </​code>​ </​code>​
  
->>>​{{:​uartseq1.png|}}+>​{{:​uartseq1.png|}}
  
 ===== Test ===== ===== Test =====
Zeile 68: Zeile 68:
  
 //​**Controller::​onWork:​**//​ //​**Controller::​onWork:​**//​
->>><​code cpp>+><​code cpp>
 while (terminal.dataAvailable()) while (terminal.dataAvailable())
 { {
Zeile 77: Zeile 77:
 </​code>​ </​code>​
  
->>>​{{:​uartseq2.png|}}+>​{{:​uartseq2.png|}}
  
 Tragen Sie im ControlCenter den zu sendenden Text ein und aktivieren Sie //Senden//. Tragen Sie im ControlCenter den zu sendenden Text ein und aktivieren Sie //Senden//.
Zeile 99: Zeile 99:
 Und hier diesen Abschnitt wiederum als Videozusammenfassung. Und hier diesen Abschnitt wiederum als Videozusammenfassung.
  
->>><​html><​iframe width="​640"​ height="​400"​ src="​https://​www.youtube.com/​embed/​d_MV0dplWgI"​ frameborder="​0"​ allowfullscreen></​iframe></​html>​+><​html><​iframe width="​640"​ height="​400"​ src="​https://​www.youtube.com/​embed/​d_MV0dplWgI"​ frameborder="​0"​ allowfullscreen></​iframe></​html>​
  
 ====== Übung ====== ====== Übung ======