初版「PIC活用ガイドブック」を発刊してから4年半が経ちました。この4年半の間に、マイクロチップテクノロジ社のPICの出荷数量が8ビットマイコンとしては世界一になり、多くの新しいPICシリーズが誕生しました。
特に最近のマイクロチップ社の開発スピードは驚異的で、既にPICの種類は300種類を超えようとしています。最新のPICでは、低消費電力化、高信頼化に開発の力が注がれており、バッテリでの動作にも十分対応できるものとなっています。
これらの新世代のPICを使うには、「PIC活用ガイドブック」の内容は古くなってしまいました。また、より高度な使い方にも対応して欲しいという読者からのご要望もありました。
そこで、現状での最新情報で、ミッドレンジのPIC16Fシリーズの使い方を解説した内容に一新することとしました。 内容については、旧版ではあまり解説していない割り込み関連も追加し、MPLAB IDE、MPASMの解説についても最新版バージョンに差し替えました。
【 目 次 】
第1章 PICの概要
PICとは
PICファミリー
PICの用途
開発環境概要
PICの最小構成
PICの情報源
第2章 PICのアーキテクチャ
2−1 全体アーキテクチャ
−1 ハーバードアーキテクチャ
−2 内部の動作
−3 パイプライン
2−2 命令アーキテクチャ
2−3 メモリアーキテクチャ
−1 プログラムメモリの構造
−2 データメモリの構造
−3 SFR
−4 共通の代表的SFR
2−4 割り込み
−1 割り込み処理の流れ
−2 割り込みの要因と割り込みの許可
−3 コンピュータ状態の退避と復旧
第3章 PICの回路設計法
3−1 電源回路
−1 PICの電源仕様
−2 3端子レギュレータによる電源回路
−3 スイッチングレギュレータの使い方
−4 グランドとパスコン
3−2 リセット
−1 リセットとは
−2 電源とリセット
3−3 ブラウンアウトリセット
3−4 クロック回路
−1 発振モード
−2 外部RC発振モード
−3 水晶/セラミック発振モード
−4 外部発振器モード
−5 内部発振ブロックモード
3−5 入出力ピンの回路
−1 標準入出力回路(標準ポート)の構成
−2 ポートAの回路構成
−3 ポートBの回路構成
−4 ポートCの回路構成
−5 ポートDの回路構成
−6 ポートEの回路構成
−7 入出力回路を使うときの注意
3−6 コンフィギュレーションビット
−1 IDワード
−2 コンフィギュレーションビット
−3 MPLAB IDEでの指定方法
第4章 PICのプログラミング
4−1 アセンブラ言語
4−2 アセンブラ命令の解説
第5章 PICのプログラム開発手順
5−1 プログラム開発手順とMPLAB IDE概要
−1 開発環境として必要なもの
−2 MPLAB IDEの概要
5−2 MPLAB IDEの使い方
−1 MPLAB IDEの入手とインストール
−2 MPLAB IDEの起動
−3 プロジェクトの新規作成
−4 ソースファイルの作成とビルド
5−3 シミュレーションデバッグ
−1 デバッグ用ツール
−2 デバッグの実際の手順
−3 割り込みのシミュレーション
5−4 PICへの書込み
−1 PICSTART Plusの場合
−2 MPLAB ICD2の場合
−3 ICSP
5−5 アセンブラMPASMの使い方
−1 MPASMの概要
−2 プログラム書式
−3 擬似命令の使い方
−4 基本的な擬似命令の使い方
−5 リロケータブルな開発の仕方
第6章 C言語の使い方
6−1 PIC用Cコンパイラの概要
−1 CCS社Cコンパイラの概要
−2 MPLAB IDEと連携した使い方
−3 デバッグ方法
6−2 C言語プログラムの作り方
−1 C言語プログラムの基本構成
−2 プリプロセッサ
−3 データ型の種類と書式
−4 関数と構文
−5 標準関数と組み込み関数
第7章 PICの各機能の使い方
7−1 入出力ピンの使い方
−1 入出力ピンと命令の関係
−2 入出力モードの設定と入出力
−3 入出力ピンの割り込み
−4 キー入力の仕方
−5 パルス入力の仕方
−6 パルス出力の仕方
−7 C言語による入出力
7−2 タイマ0の使い方
−1 タイマ0の構成
−2 タイマ0制御用レジスタ
−3 インターバルタイマとして使う
−4 カウンタとして使う
−5 C言語による使い方
7−3 タイマ1の使い方
−1 タイマ1の構成
−2 タイマ1制御用レジスタ
−3 カウンタ入力種別と動作モード
−4 使用例
−5 C言語による使い方
7−4 タイマ2の使い方
7−5 EEPROMの使い方
−1 EEPROMの構成
−2 関連SFRの使い方
−3 EEPROMの読み書きの手順
−4 C言語による使い方
7−6 A/D変換入力の使い方
−1 A/D変換モジュールの構成
−2 A/D変換の動作と必要な時間
−3 計測できる実際の電圧値
−4 A/D変換用制御レジスタ
−5 A/D変換のプログラミング
−6 C言語による使い方
7−7 割り込みの使い方
−1 割り込み動作の流れ
−2 割り込み処理プログラムの作り方
−3 使用例
−4 C言語による割り込み処理プログラムの作り方
7−8 USARTの使い方
−1 USARTの構成
−2 非同期式通信での制御用レジスタの使い方
−3 使用例
−4 C言語による使い方
7−9 パラレル通信(PSP)
−1 PSPの構成
−2 制御用レジスタ
−3 C言語による使い方
7−10 CCPの使い方
−1 キャプチャモード
−2 コンペアモード
−3 PWMモード
−4 DCモータのPWMによる制御
−5 C言語による使い方
7−11 MSSPの使い方(SPIモード)
−1 SPI通信のしくみ
−2 SPI通信制御用レジスタ
−3 SPI通信タイミング
−4 SPI通信のプログラミング
−5 C言語による使い方
7−12 MSSPの使い方(I2Cモード)
−1 I2C通信のしくみ
−2 MSSPのI2Cモードの構成
−3 通信手順とデータフォーマット
−4 I2C通信制御用レジスタ
−5 I2C通信プログラミング
−6 C言語による使い方
−7 使用例(PIC間通信)
7−13 WDTとスリープ機能の使い方
−1 ウォッチドッグタイマ
−2 SLEEP命令とパワーダウンモード
7−14 コンパレータと電圧リファレンス
−1 アナログコンパレータの構成
−2 コンパレータの使い方
−3 電圧リファレンスの構成
−4 電圧リファレンスの使い方
7−15 プログラムメモリの読み書き
−1 関連SFRレジスタの使い方
−2 プログラムメモリの読み書きの手順
−3 使用例
−4 C言語による使い方
第8章 PICを活用した電子工作
8−1 温度計
−1 温度センサ
−2 セグメント発光ダイオード
−3 ダイナミック点灯制御
−4 温度計の設計
−5 ハードウェア組み立て
−6 プログラム作成
8−2 高精度時計ユニット
−1 時計の仕様
−2 時計の精度
−3 液晶表示器の制御方法
−4 回路と組み立て
−5 プログラム作成
−6 メインプログラム
−7 割り込み処理プログラム
−8 1秒カウントアップサブルーチン
8−3 データロガー
−1 ロガーユニットの仕様
−2 構成と回路
−3 SRAMとの接続
−4 組み立て、外観
−5 プログラムの作成
−6 SRAM制御サブルーチン
8−4 定電圧定電流電源
−1 概要
−2 構成
−3 回路設計
−4 組み立て
−5 プログラム作成
−6 調整
8−5 赤外線リモコン送受信機
−1 赤外線通信
−2 赤外線リモコン用素子
−3 送信機の機能仕様
−4 送信機の構成
−5 送信機の組み立て
−6 送信機プログラム作成
−7 受信機の機能仕様
−8 受信機の構成
−9 受信機の組み立て
−10受信機プログラム作成
8−6 ライントレースロボット
−1 ライントレースロボットの機能仕様
−2 ライントレースの原理
−3 ラインセンサ
−4 ライントレースロボットの構成
−5 ライントレースロボットの組み立て
−6 プログラム作成
付録A 汎用ユニット基板の作り方
−1 概要
−2 全体構成
−3 仕様と回路図
−4 外部インターフェース
−5 使用部品
−6 組み立て方
付録B 部品の入手先
付録C 参考文献
付録 CD-ROM
|