はじめに
前の記事でArduino IDEを生かしてSTM32F411の設定、動作確認を行った。今回はST本家のIDE環境であるSTM32CubeIDEでSTM32F411を設定してから、UARTシリアル出力を確かめたい。
環境
・PC Ubuntu 18.04
・STM32F411CEU6 on Weact Black Pill
・USB-TTLモジュール(STM32シリアル送信の確認)
・J-Linkモジュール、4ピン簡易版(STM32へスケッチを書き込む)
結線
・PC USB<-> J-LinkのUSB (J-Linkモジュール) J-Linkの3V3、GND、SWDIO、SWCLK <-> Black Pillの3V3、GND、SWDIO、SWCLK
・PC USB<-> USB-TTLモジュールのUSB (USB-TTLモジュール) USB-TTLケーブルのRx、Tx <-> Black PillのTx、Rx
設定
・STM32CubeIDEを立ち上げる。
・New Projectのtestを作成する。
・test.iocを開いて、システムクロックを100MHz(RCC、HSE、Crystal、25MHz)になるように設定する。
・USART2(A2ピン、A3ピン)をAsyncに設定する。
・sys(J-Link)を設定する。
・test.iocを保存して、BUILDを行う。
・main.cを開いて、下記をwhile(1)ループに追加する。
HAL_UART_Transmit(&huart2, (uint8_t *)"Hello, world!\r\n", 15U, 100U);
・RUNをクリックする。
・ターミナルでsudo gtkterm(以下を参照)。
シリアルモニタ
今回は、Ubuntuターミナルのgtktermを使いたい。
$ls -lrt /dev/serial/by-id/ $sudo apt-get install gtkterm $sudo gtkterm
gtktermを立ち上げて、PortとBaudrateの設定を行って、”Hello, world!”の繰り返すことを確認する。
結果確認
感想
Arduino IDEやPlatform.io等のIDEよりペリフェラルの可視化においては、STM32CubeIDEのほうが優れていると感じたので回路設計や、ファームウェア開発のスピードアップに活用していきたい。