マイコンに内蔵されているシリアル通信の仕様は、製品ごとに異なります。ここでは、STマイクロエレクトロニクス(以下、ST)の汎用32ビットマイコン「STM32H5シリーズ」*1)に内蔵されているUSARTを例にして解説します。
*1)STM32H5シリーズ
実際のマイコンに搭載されているUSARTは、通信効率を高め、かつ使いやすいようにさまざまな機能が組み込まれています。かなり高機能な仕様も含まれていますが、本記事は初心者向けなので、基本的な機能だけを解説します。高機能については、各製品のマニュアルを参照してください。
図5に、STM32H5シリーズのUSARTのブロック図を示します。
右上にあるCKは、同期式シリアル通信用の同期用クロックの端子です。同期式シリアル通信として使う場合のみ使用します。その下のハードウェアフロー制御端子は、少し高級な機能です。通信中に受信側の処理が追い付かずにデータを取りこぼすのを防ぐため、通信状況に応じて送信停止や速度制限などの調整をハードウェアで行う機能です。TXは送信データ用端子、RXは受信データ用端子で、TXとRXは入れ替え可能です。Baudrate generator & oversamplingは高機能なクロック生成機能です。周波数を自在に設定でき、通信速度を調整できる機能を持っています。
左上には割り込み信号が出ています。通信状態(通信完了、エラー発生、途中経過報告など)に応じてCPUに割り込み*2)を発生させるための信号です。その下はDMA用信号です*3)。送信データや受信データの処理をDMAで行うための信号です。通信の仕様と動作は制御用レジスタで行います。その下は送信用データレジスタと受信用データレジスタです。左側の一番下は、クロック源です。制御レジスタを操作するためのシステムクロックと、通信用クロックの源になります。
*2)参考:割り込みハンドラとは?Q&Aで学ぶマイコン講座(27)
*3)参考:DMAのメリットって何?Q&Aで学ぶマイコン講座(29)
Copyright © ITmedia, Inc. All Rights Reserved.