1. ADC とは


演習 3-1 (個人PC): ADC を使ってみましょう。プログラムの仕様は以下の通りです。

仕様:

  1. AN1(= RA1, 18ピン) をアナログ入力にする
  2. AN1 に可変抵抗を接続する
  3. 1000ミリ秒ごとにA/D変換を繰り返す

プロジェクト「IO_2_1」を「IO_3_1」にコピーします(プロジェクト名を右クリックして Copy を選択)。
プロジェクト IO_2_1 を閉じます(プロジェクト名を右クリックして Close を選択)。
(もし開きっぱなしになっていたら) 前のプロジェクトで開いていたソースを全て閉じます。
(IDEのバージョンによっては) プロジェクトのプロパティを開き、そのまま「Apply」ボタンを押して設定ファイルを更新します。※ 通常は自動で設定ファイルが更新されますが、バージョンによってはバグのため自動更新されないようです
setting.h を開き、一旦全ての機能をオフにします。
シリアル通信(USE_UART)、ADC機能(USE_ADC) のコメントアウトを解除します。
Modules/adc.c を開いてコメントに従って設定します。
main.c を開き、ファイルの中身をテンプレートの内容に置き換えて下さい。
穴埋め問題になっていますので、プログラム内のコメントを参考に?のところを正しい内容に修正してください。
回路を作成します。

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

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

1: RA2
2: RA3
3: RA4
4: MCLR/VPP -- PICkit の 1: NMCLR
5: VSS -- GND
6: RB0 (GPIO入力) -- タクトスイッチ
7: RB1
8: Rx (UART) -- RN-42 の J2-6 : TX (UART)
9: RB3

10: RB4
11: Tx (UART) -- RN-42 の J2-7 : RX (UART)
12: ICSPCLK -- PICkit の 5: PGC
13: ICSPDAT -- PICkit の 4: PGD
14: VDD -- 3.3V
15: RA6
16: RA7
17: RA0 (GPIO出力) -- LED
(*)18: AN1 (ADC) -- 可変抵抗の中央ピン

書き込みボタンを押して正常に動作する事を確認して下さい。
指定場所に「adc.c」と「main.c」を記入し、テスターで測定して以下の「AD変換対応表」を完成させて下さい。


入力電圧AD変換結果
0V ?
1V ?
2V ?
3.3V ?