Project

General

Profile

UsingUart » History » Version 2

mole lord, 09/22/2020 02:06 PM

1 1 mole lord
# UsingUart
2
3
{{>toc}}
4
5
NUCLEOボードでは、STM32に搭載されたU(S)ARTのうちひとつが、ST-Link部分経由でPCから仮想UARTとして見えるようになっています。
6
STM32側のソフトで、それを使用できるようにします。
7
8
## まずSTM32CubeMX上でピン設定する
9
10
NUCLEO-F429ZIでST-Linkに接続されているのはUSART3です。
11
どのUSARTなのか特定するためにはマニュアルで調べるのが正しいやり方ですが、STM32CubeMXの画面上でSTLK_TX,STLK_RXのピンをマウスオーバーすればわかるので、それでもよいでしょう。
12
13
CubeMX画面上で以下の設定を行います。
14
15
* Connectivity - USART3 に関して
16
 * Modeを Disable→Asynchonous
17
 * Baud Rate を 9600bps
18
 * NVIC Settings の USART3 global interrupt をチェック
19
 * GPIO Settings の USART3_TXピン のMaximum output speedを Very High→Low
20
* System Core - NVIC に関して
21
 * USART3 global interrupt の Preemption Priority を 0→2
22
 * Time base: TIM6 ~ の Preemption Priority を 0→1
23
* Project Managerタブ に関して
24
 * Advanced Settingsを選択し、USART3を HAL→LL(Low Layer)
25
26
補足
27
USART3_TXはクロス接続なのでSTLK_RXに結線されています。
28
USARTのドライバをHALからLLに直すのは、HALドライバだといちいち割り込みを許可/禁止する不自然なプログラムになるためです。
29 2 mole lord
30
ソースの変更点は SHA-1: 42f35a0a65c1a88598b14784d0344eb926ac5579 から SHA-1: a6138a8276d80bd015fa06d27301f9e678e70660 までの差分を見るとわかります。