1. UART とは

2. RS-232C

3. SPP


演習 2-1 (個人PC): UART を使って PIC と Bluetooth モジュール(RN-42)間を接続し、さらに SPP を使って Bluetooth モジュール(RN-42)と PC 間を接続し、PC から PIC を制御してみましょう。プログラムの仕様は以下の通りです。

仕様:

  1. Bluetooth モジュールとして RN-42 を使用する
  2. RB5 を Tx、RB4 を Rx とする
  3. PIC と RN-42 間の UART によるシリアル通信速度は 115200 baud とする ※正確には111.1k
  4. RN-42 と PC 間の SPP によるシリアル通信速度も 115200 baud とする ※正確には111.1k
  5. PC から PIC に文字 'a' が送られたら LED を点灯して文字列 "ON" をPC側に送信する
  6. PC から PIC に文字 'b' が送られたら LED を消灯して文字列 "OFF" をPC側に送信する

プロジェクト「IO_1_3」を「IO_2_1」にコピーします(プロジェクト名を右クリックして Copy を選択)。
プロジェクト IO_1_3 を閉じます(プロジェクト名を右クリックして Close を選択)。
(もし開きっぱなしになっていたら) 前のプロジェクトで開いていたソースを全て閉じます。
main.c を開いて例5を有効にします。
仕様に従って setup 関数と run 関数を変更します。
回路を作成します。

以下の設定に従って回路を作成して下さい。
(*) が前の演習からの変更箇所です。

ピン配置設定・回路接続方法:

01: VDD(3.3V)
02: RA5
03: RA4
04: MCLR/VPP -- PICKit の 1: NMCLR ※ プルアップ抵抗不要
05: RC5
06: RC4
07: RC3
08: RC6
09: RC7
10: RB7

11: RB6
12: (*)RB5/Tx -- RN-42 の J2-7 : Rx
13: (*)RB4/Rx -- RN-42 の J2-6 : Tx
14: RC2
15: RC1
16: RC0 (GPIO出力) -- LED
17: RA2 (GPIO入力) -- タクトスイッチ ※ プルアップ抵抗不要
18: ICSPCLK(PGC) -- PICKit の 5: PGC
19: ICSPDAT(PGD  -- PICKit の 4: PGD
20: VSS(GND)

※ RN-42 のアンテナ側を上にした時、右側が上から順に J2-1、J2-2、・・・となります

PC と RN-42 をペアリングし、SPP による仮想シリアルポートを PC 上に作成して下さい(方法は PC で使ってる OS による)。
適当な端末ソフトを起動して仮想シリアルポートを開いてください(通信速度 115200 bps、データビット 8 bit、パリティ無し、ストップビット 1 bit、フロー制御無し)。
書き込みボタンを押して正常に動作する事を確認して下さい。
指定場所に「setup関数」と「run関数」を記入してください。