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 [2017/03/17 17:53] huwaldtuasrt [2019/12/20 14:39] (aktuell) – [Videozusammenfassung] 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 88: Zeile 88:
  
   - Klassendiagramm anlegen und öffnen   - Klassendiagramm anlegen und öffnen
-  - Diagrammvorlage für PEC Applikation auswählen, laden und Treiberpaket für STM32F4 einfügen  - Navigator auf UML Pakete umschalten+  - Diagrammvorlage für PEC Applikation auswählen, laden und Treiberpaket für STM32F4 einfügen 
 +  - Navigator auf UML Pakete umschalten
   - gewünschte Klassen im Explorer/Navigator suchen und ins Diagramm ziehen   - gewünschte Klassen im Explorer/Navigator suchen und ins Diagramm ziehen
   - Klassen aggregieren   - Klassen aggregieren
Zeile 99: Zeile 100:
 Und hier diesen Abschnitt wiederum als Videozusammenfassung. Und hier diesen Abschnitt wiederum als Videozusammenfassung.
  
->>><html><iframe width="600" 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 ======