16F88 XC8開発例 - 調歩同期式シリアル通信(AUSARTモジュール)

はじめに

本ページでは,PIC16F88とMPLAB XC8 C Compilerを使用した開発例として,調歩同期式シリアル通信を行う方法を紹介します. 調歩同期式シリアル通信には,PIC16F88に搭載されているAUSARTモジュールを使用しています. 今回はPIC16F88を使用していますが,同様のAUSARTモジュールやUSARTモジュールが搭載されている,PIC12FおよびPIC16Fシリーズでも下記のプログラムを応用可能です.

下記の環境で動作を確認しておりますが,動作を保証するものではありません. 掲載情報は自己責任の上でご利用ください.

PIC 16F88-I/P
MPLAB X IDE MPLAB X IDE v2.26
MPLAB XC8 MPLAB XC8 C Compiler v1.32
PICkit 2 MPLAB X IDEを使用して書込み

通信仕様

通信仕様は下表のとおりです. ターミナルソフトウェアの設定変更を忘れないようにしてください.

ボーレート 9,600 bps
データビット 8 bit
パリティビット なし
ストップビット 1 bit
フロー制御 なし

回路

回路図

今回はブレッドボード上に回路を組むことにしました. PICkit 2によるICSP (In Circuit Serial Programming)と電源供給を行うことし,回路部品数を必要最低限に抑えています.

USBシリアル変換モジュールを用いて,PICとパソコンとの間で調歩同期式シリアル通信を行います. 事前に,USBシリアル変換モジュールのドライバや,Tera Termなどのターミナルソフトウェアのインストールを完了しておきましょう.

回路部品

上記の回路図中で使用している回路部品のリストです. 参考単価は,特に記載がない限り,秋月電子通商で購入した場合のものです.

使用部品表
番号 部品名 型番 数量 参考単価
U1 PICマイコン Microchip 16F88-I/P 1 200円
U2 USBシリアル変換
モジュールキット
秋月電子通商 AE-UM232R 1 800円
X1 セラロック 村田製作所 20MHz 1 30円
LED1 LED 各社 各色 1 10円
R1 炭素皮膜抵抗 各社 1/4W 10kΩ 1 1円
R2 炭素皮膜抵抗 各社 1/4W 330Ω 1 1円
その他 リード線など 適量

プログラム

概要

このプログラムはMPLAB XC8 C Compiler向けです.Cコンパイラの種類にご注意ください. プログラムの作成にあたり,下記のWebページを参考にしました.

回路の電源を投入すると,パソコンのターミナルソフトウェア上に,PICから受信した「Press a key:」という文字列が表示されます. パソコンのキーボードの英数字キーを押下すると,ターミナルソフトウェア上に「Echo: 」に続いて1文字ずつ文字が表示されます. また,文字のキャラクタコードの最下位bitに応じて,回路のLEDが点滅します.

main.c

下記はソースファイル「main.c」です.

uart.h

下記はヘッダファイル「uart.h」です.

uart.c

下記はソースファイル「uart.c」です.

スポンサードリンク

スポンサードリンク(Amazon.co.jp)
FT232RL搭載小型USB-シリアルアダプタ 5V
スイッチサイエンス
売り上げランキング: 114,987

更新履歴

2014/11/30 公開開始