Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung |
uasrt [2017/03/17 17:54] – huwaldt | uasrt [2019/12/20 14:39] (aktuell) – [Videozusammenfassung] huwi |
---|
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 ===== |
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. |
| |
//**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 ===== |
| |
//**Controller::onWork:**// | //**Controller::onWork:**// |
>>><code cpp> | ><code cpp> |
while (terminal.dataAvailable()) | while (terminal.dataAvailable()) |
{ | { |
</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//. |
| |
- 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 |
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 ====== |