|
C言語によるPICプログラミング入門の改定版です。
C言語の入門者用です。
改定にあたり、PIC16ファミリだけだったのをPIC18ファミリも加えました。
CCS社のCコンパイラであるPCMとPCHを使ってPICの内蔵モジュールの
実際の使用例を中心にして詳細にC言語の使い方を解説しました。
C言語の初心者の方でも、PICマイコンが初めての方でも本書により、PIC
が自由に使えるようになります。
【 目 次 】
■第1章 C言語とは
1-1 プログラムとは
1-1-1 コンピュータの構成
1-1-2 プログラムと命令
1-1-3 2進数と16進数
1-2 C言語とは
1-2-1 アセンブリ言語から
1-2-2 C言語の歴史
1-2-3 C言語の特徴
■第2章 PICの概要
2-1 PICとは
2-1-1 PICの概要
2-1-2 PICのアーキテクチャ概要
2-1-3 PICのメモリ構成
2-1-4 命令の構成
2-1-5 特殊レジスタ
2-2 プログラム開発環境
2-2-1 基本環境
2-2-2 MPLAB IDE
2-2-3 PICプログラマ
■第3章 PIC用Cコンパイラ
3-1 PIC用Cコンパイラ
3-2 CCS社Cコンパイラ
3-2-1 CCS社Cコンパイラの構成
3-2-2 CCS社Cコンパイラの概要
3-2-3 制約事項
3-3 PCM/PCH のインストール
3-3-1 PCM/PCHのインストール
3-3-2 MPLABとの統合
3-4 PCM/PCHの使い方
3-4-1 C言語でのプログラム作成の流れ
3-4-2 プロジェクト作成
3-4-3 ソースファイルの作成
3-4-4 コンパイル
3-5 デバッグ方法
3-5-1 MPLAB IDEのシミュレータによるデバッグ
3-5-2 MPLAB ICD2による実機デバッグ
3-5-3 標準入出力関数によるデバッグ
3-6 PICへの書き込み
3-6-1 PICkit2プログラマによる書き込み
3-6-2 MPLAB ICD2による書き込み
■第4章 演習用ハードウェア
4-1 演習用PIC汎用ユニット
4-1-1 概要
4-1-2 機能仕様と回路
4-1-3 インタフェース仕様
4-1-4 外部機器の接続
4-1-5 使用パーツ
4-1-6 組み立て方
■第5章 C言語のプログラムとは
5-1 C言語プログラムの基本構成
5-1-1 プログラムの基本構成
5-1-2 関数と式とデータ
5-2 プログラム書式と記述スタイル
5-2-1 書式の約束
5-2-2 プログラミングスタイル
COLUMN MPLAB IDEのエディタ関連の設定
5-3 main関数
COLUMN アセンブリ言語とC言語
■第6章 まず動かしてみよう
6-1 デバイス指定とコンフィギュレーション
6-1-1 デバイス指定と#include
6-1-2 コンフィギュレーションと#fuses
COLUMN コンフィギュレーションビット
6-2 入出力ピンの制御
6-2-1 PICの入出力ピン
6-2-2 C言語でのプログラミング
COLUMN PICの入出力ピンの回路構成
6-3 標準入出力関数の使い方
6-3-1 RS232Cを使えるようにする
6-3-2 printf文
COLUMN パソコン側はハイパーターミナル
■第7章 プリプロセッサ
7-1 プリプロセッサの分類と一覧
7-2 記号定義とファイルインクルード
7-2-1 記号定義プリプロセッサ
7-2-2 ファイルのインクルード
7-3 条件付きコンパイル
7-3-1 #if文の使い方
7-3-2 #ifdef文の使い方
7-3-3 #error文の使い方
7-4 デバイス特有の制御用プリプロセッサ
7-4-1 ページとプログラムの配置
7-4-2 #inline と#separate
7-4-3 バンクと変数の配置
COLUMN EEPROMデータメモリに初期値を定義する方法
■第8章 プログラム構造とフロー制御関数
8-1 3種類の基本構造
COLUMN 中括弧の使い方
8-2 if文の使い方
8-2-1 if文の書式
8-2-2 if 文のネスト
8-2-3 条件式の記述方法
8-2-4 複合条件式の記述方法
8-3 while文とdo while文
8-3-1 while文
8-3-2 do while文
8-4 for文の使い方
8-5 switch文の使い方
8-6 break文とcontinue文
8-6-1 break文
8-6-2 continue文
COLUMN 構造化プログラミングとは
■第9章 データ型と演算子
9-1 データ型の種類と書式
9-1-1 数値定数の書式
9-1-2 変数とデータ型
9-1-3 変数の宣言書式
9-1-4 文字コードとchar型
9-1-5 文字型データの書式と文字列
9-2 演算子の使い方
9-2-1 算術演算子と自動型変換
9-2-2 関係演算子と論理演算子
9-2-3 インクリメント演算子とデクリメント演算子
9-2-4 ビット演算子とシフト演算子
9-2-5 その他の演算子
9-2-6 演算子の優先順位
■第10章 モジュール化と関数
10-1 プログラムのモジュール化
10-1-1 構造化プログラミング手法
10-1-2 よいプログラムとは
10-2 関数の作り方
10-2-1 関数の基本書式
10-2-2 引数と戻り値
10-2-3 関数のプロトタイプ宣言
10-3 変数の記憶クラスと有効範囲
10-3-1 変数の性質と有効範囲(スコープ)
10-3-2 ローカル変数とグローバル変数
10-3-3 実際の例
■第11章 標準関数と標準入出力関数
11-1 標準関数
11-1-1 標準関数
11-1-2 CCS社独自関数
COLUMN メモリ処理関数は高速
11-2 標準入出力関数
11-2-1 標準入出力関数の一覧
11-2-2 putc関数とgetc関数
11-2-3 printf関数の拡張
11-2-4 puts関数とgets関数
■第12章 配列とポインタ
12-1 配列とは
12-1-1 配列の書式
12-1-2 配列の使い方
12-2 文字列の扱い
12-3 ポインタ
12-3-1 ポインタ変数
12-3-2 配列とポインタ
12-3-3 関数の引数とポインタ
12-3-4 関数の引数と配列
COLUMN ポインタのメカニズム
■第13章 構造体と共用体
13-1 構造体
13-1-1 構造体の定義と宣言
13-1-2 構造体メンバーの参照
13-1-3 ビットフィールド
13-1-4 構造体の配列
13-1-5 構造体へのポインタ
13-2 共用体
13-2-1 共用体の定義書式
13-3 列挙型
■第14章 PIC16F/PIC18F共通組み込み関数
14-1 ディレイ関数
14-1-1 ディレイ関数の概要
14-1-2 ディレイ関数の使い方
14-2 入出力ピンの制御
14-2-1 入出力モード設定
14-2-2 入出力ピン制御用組み込み関数
14-3 ダイナミック点灯制御
14-3-1 セグメント発光ダイオードの概要
14-3-2 点灯制御方法
14-3-3 具体例
14-4 液晶表示器の制御
14-4-1 液晶表示器の概要
14-4-2 インタフェース仕様
14-4-3 初期化手順
14-4-4 液晶表示器制御ライブラリ
14-4-5 ライブラリ使用例
14-5 内蔵EEPROMの使い方
14-5-1 内蔵EEPROMの概要
14-5-2 内蔵EEPROM用組み込み関数
14-5-3 内蔵EEPROMの使用例
14-6 USARTモジュールの使い方
14-6-1 非同期式(調歩同期式)での動作
14-6-2 USART制御レジスタ
14-6-3 アドレスビットの使い方
14-6-4 USART用組み込み関数
14-6-5 USARTの使用例(受信割り込み例)
14-7 MSSPモジュールの使い方(SPI 通信)
14-7-1 SPI通信の概要
14-7-2 SPI組み込み関数
14-7-3 SPI通信の例
14-8 MSSPの使い方(I2C通信)
14-8-1 I2C通信の概要
14-8-2 I2C通信用組み込み関数
14-8-3 I2C通信の例(1)(外付けEEPROM)
14-8-4 I2C通信の例(2)(PIC 間通信)
14-9 CCPモジュールの使い方
14-9-1 制御用レジスタ
14-9-2 キャプチャモード
14-9-3 コンペアモード
14-9-4 単純PWMモード
14-9-5 ECCPのPWM モード
14-9-6 CCPモジュール用組み込み関数
14-9-7 キャプチャモードの使用例
14-9-8 コンペアモードの使用例
14-9-9 単純PWMモードの使用例
14-9-10 ECCPモードのPWMの使用例
■第15章 PIC16Fファミリ専用組み込み関数
15-1 割り込みコントローラ
15-1-1 割り込みの概要
15-1-2 割り込み要因
15-1-3 割り込み用プリプロセッサ
15-1-4 割り込み処理のプログラミング
15-1-5 使用例(1)
15-1-6 レジスタの退避と復旧
15-1-7 使用例(2)
15-1-8 使用例(3)
15-2 タイマ0モジュールの使い方
15-2-1 タイマ0の概要
15-2-2 タイマ0用組み込み関数
15-2-3 インターバルタイマとしての使用例
15-3 タイマ1モジュールの使い方
15-3-1 タイマ1の概要
15-3-2 タイマ1用組み込み関数
15-3-3 割り込みによるインターバルタイマ例
15-4 タイマ2モジュールの使い方
15-4-1 タイマ2の概要
15-4-2 タイマ2用組み込み関数
15-5 A/D変換モジュールの使い方
15-5-1 A/D変換モジュールの概要
15-5-2 A/D変換用組み込み関数
15-5-3 実際の使用例(1)
15-5-4 実際の使用例(2)
15-6 コンパレータと電圧リファレンス
15-6-1 アナログコンパレータの構成
15-6-2 コンパレータの使い方
15-6-3 電圧リファレンスの構成
15-6-4 コンパレータ用組み込み関数
15-6-5 コンパレータの使用例
15-7 省電力化と高信頼化
15-7-1 内部発振ブロック
15-7-2 2速度スタートアップとフェールセーフクロックモニタ機能
15-7-3 スリープモードとウェイクアップ
15-7-4 ウォッチドッグタイマ
15-7-5 省電力、高信頼化用組み込み関数
15-7-6 省電力化の使用例
■第16章 PIC18Fファミリ専用組み込み関数
16-1 PIC18Fファミリの割り込み
16-1-1 PIC18Fファミリの割り込み概要
16-1-2 多重割り込み処理
16-1-3 割り込み用組み込み関数
16-1-4 割り込みの使用例
16-1-5 多重割り込みの使用例
16-2 タイマ
16-2-1 タイマ0
16-2-2 タイマ1
16-2-3 タイマ3
16-2-4 タイマの使用例
16-3 A/Dコンバータモジュールの使い方
16-3-1 概要
16-3-2 A/Dコンバータ用組み込み関数
16-3-3 実際の使用例
16-4 アナログコンパレータと電圧リファレンス
16-4-1 アナログコンパレータの構成
16-4-2 電圧リファレンスの構成
16-4-3 コンパレータ用組み込み関数
16-4-4 コンパレータの使用例
16-5 省電力化と高信頼化
16-5-1 内部発振ブロック
16-5-2 省電力モード
16-5-3 2速度スタートアップとフェールセーフクロックモニタ機能
16-5-4 ウォッチドッグタイマ
16-5-5 低電圧検出モジュール(LVD)
16-5-6 省電力、高信頼化用組み込み関数
16-5-7 省電力化の使用例
16-6 プログラムメモリのアクセス
16-6-1 テーブルアクセスの概要
16-6-2 テーブルリード動作
16-6-3 テーブルライト動作
16-6-4 組み込み関数
16-6-5 プログラムメモリアクセスの使用例
■付録 MPLAB IDEのインストールの仕方
|
|