AtMega328pでUSARTを割り込みを使用した送受信
USARTの覚え書き
AVRのUSARTの機能にある、受信割り込みと、送信バッファエンプティ割り込みを使用した送受信です。
本プロジェクトでは、通信速度9600ボー、8bit、ストップビット1、パリティ無しでの非同期通信を実現しています。
AVRのTX,RXを、FT232RL等に接続することで、ハイパーターミナル等のターミナルソフトを用いて動作確認を行うことができます。
ターミナルからデータを受信すると、同じデータをターミナルへ返します。(ただのエコーです)
FIFOバッファも用いて応用が利くような最小限の関数で構成されています。
複数のUSARTを持つAVRでも簡単にポートを変更できる様なソースとなっております。
また、ソースの先頭付近のパラメータを変更することで、FIFOバッファサイズ、通信速度を簡単に変更できます。
|