Last Update 2022/11/21

PICとH8で具体的な1-Wire,SPI,I2Cプログラミングを行う
マイコンの1線 2線 3線インターフェース活用入門

中尾 司 著
B5変型判 328ページ
定価2,860円(税込)
JAN9784789842082
2007年6月15日発行
[品切れ重版未定2022.11.20] マイコンの1線 2線 3線インターフェース活用入門

 自動車や家電の中には,目に見えない形で多くの通信機器が内蔵されています.現在ではシリアル・インターフェースが主流になっていますが,本書では,マイコンとペリフェラル間というような比較的近距離で使われるI2C,SPI,1-Wireの3種類のシリアル・インターフェースに関して,PICとH8の両マイコンを使った実際の使用方法やプログラミングについて解説しています.それぞれについて,CPU内蔵のハードウェアで制御するプログラムと,ハードウェアを使わずにソフトウェアで機能を代替するプログラムを作成しました.また,SPIディジタルI/Oボードや7セグメントLEDの制御などのハードも作ります.

 1、2、3線シリアル・インターフェースとは
目次

はじめに

 各インターフェースの用語や動作原理を理解する
第1章 1,2,3線シリアル・インターフェースの基本
 1-1 2線でつなぐI2C(Inter-Integrated Circuit)
 1-2 3線でつなぐSPI(Serial Peripheral Interface)
 1-3 1線でつなぐ1-Wire(Dallas One Wire)

 実験環境や製作するボード,ツールについて説明
第2章 I2C/SPI/1-Wireの各実験環境の準備
 2-1 I2C/SPI/1-Wireの実験環境
 2-2 実験に使用するツール
 Column…2-1 I2C関係の用語

 LCDの表示やスイッチ入力など基本的なプログラムも作り込む
第3章 実験で使用するPICを搭載したマイコン・ボードの製作
 3-1 PICボードのハードウェアの製作
 3-2 テスト・プログラム
 3-3 基本ソフトウェア(ドライバ/共通サブルーチン)
 Column…3-1 PICアセンブラ・プログラムについて
 Column…3-2 PICのキャリ・フラグ
 Column…3-3 PICのアセンブラ
 Column…3-4 MPLABプロジェクトの新規作成
 Column…3-5 MPLABアセンブル,リンク,PICの書き込み

 基本プログラムを作成し動作をチェックする
第4章 実験で使用するH8を搭載したマイコン・ボードの製作
 4-1 H8ボードのハードウェアの製作
 4-2 テスト・プログラム
 4-3 基本ソフトウェア(ドライバ/共通サブルーチン)
 Column…4-1 環境変数Pathの追加
 Column…4-2 アセンブル,リンク,プログラムの書き込み
 Column…4-3 コマンドプロンプトの操作
 Column…4-4 H8に関する注意(1)
 Column…4-5 H8に関する注意(2)
 Column…4-6 I/Oポートの初期化
 Column…4-7 UNIXツール“make”

 専用ハードウェアを使わずにI2CのEEPROMにアクセスする
第5章 ソフトウェア制御によるI2Cマスタ(PIC/H8)
 5-1 ソフトウェアによるI2Cマスタ
 5-2 実験機のアプリケーション(PIC/H8)
 5-3 実験手順と動作の確認
 Column…5-1 24LC64のページ・ライト,シーケンシャル・リード
 Column…5-2 24LC64のI2Cスレーブ・アドレス
 Column…5-3 I2C用の入出力ポート
 Column…5-4 フラット・パッケージのはんだ付け

 PIC内蔵のI2C制御ハードウェア(MSSP)を使用したI2Cマスタ制御プログラムの作成
第6章 ハードウェア制御による I2Cマスタ(PIC)
 6-1 ハードウェア(MSSP)によるI2Cマスタ
 6-2 EEPROMの制御
 Column…6-1 CCS-C PCMとFED WIZ-C

 PIC内蔵のI2C制御ハードウェア(MSSP)を使用したI2Cスレーブ制御プログラムの作成
第7章 ハードウェア制御によるI2Cスレーブ(PIC)
 7-1 ハードウェア(MSSP)によるI2Cスレーブ
 7-2 実験機のアプリケーション(PIC/H8)
 7-3 複数スレ-ブとの通信実験(PIC/H8)
 Column…7-1 イベント・ハンドラ・ルーチン
 Column…7-2 MSSPスレーブ・モードでの初期化時の注意
 Column…7-3 10ビット・アドレス・モード

 専用ハードウェアを使用しないI2Cスレーブ・プログラムの試作
第8章 ソフトウェア制御によるI2Cスレーブ(PIC/H8)
 8-1 実験機の準備
 8-2 ソフトウェア駆動のI2Cスレーブ
 8-3 通信の実験

 H8/3664内蔵のI2Cインターフェース・モジュールを使用したI2Cマスタ制御プログラムの作成
第9章 ハードウェア制御によるI2Cマスタ(H8)
 9-1 開発の手順
 9-2 マスタ送信処理
 9-3 マスタ受信処理
 9-4 I2Cマスタ・ドライバ
 9-5 EEPROMのアクセス
 Column…9-1 1-Wireの用語

 H8/3664内蔵のI2Cインターフェース・モジュールを使用したI2Cスレーブ制御プログラムの作成
第10章 ハードウェア制御によるI2Cスレーブ(H8)
 10-1 ハードウェアによるI2Cスレーブ
 10-2 実験機のアプリケーション
 10-3 複数スレーブとの通信実験5
 Column…10-1 ブート・ローダ

 二つのPICボードをMSSP使用のSPIインターフェースで接続して通信の実験を行う
第11章 ハードウェア制御によるSPIマスタ/スレーブ(PIC)
 11-1 ハードウェア(MSSP)によるSPIマスタ
 11-2 ハードウェア(MSSP)によるSPIスレーブ
 11-3 マスタ,スレーブの通信実験

 ソフトウェアで制御するSPIマスタ/SPIスレーブ・プログラムの作成
第12章 ソフトウェア制御によるSPIマスタ/スレーブ(PIC/H8)
 12-1 ソフトウェア制御のSPIマスタ
 12-2 ソフトウェア制御のSPIスレーブ
 12-3 マスタ,スレーブの通信実験

 1-Wireマスタ制御プログラムを作成して温度センサDS18S20を制御する
第13章 ソフトウェア制御による1-Wireマスタ(PIC/H8)
 13-1 実験機の準備
 13-2 開発,実験の手順
 13-3 1-Wireの基本動作
 13-4 CRC計算
 13-5 温度センサDS18S20の機能コマンドを使ってみる
 13-6 ROMコードの検索
 13-7 1-Wireマルチ・スレーブの実験

 PICのCコンパイラを使ってドライバを作成し,応用プログラムに利用する
第14章 PIC C言語による制御
 14-1 PICアセンブラとCコンパイラ
 14-2 I2Cハードウェア制御マスタ・ドライバ
 14-3 I2Cハードウェア制御スレーブ・ドライバ
 14-4 SPIハードウェア制御マスタ/スレーブ・ドライバ
 14-5 SPIソフトウェア制御マスタ/スレーブ・ドライバ
 14-6 1-Wireソフトウェア制御マスタ・ドライバ
 Column…14-1 CCS-Cプロジェクト・フォルダのリネーム,移動
 Column…14-2 ライブラリ関数sprintf
 Column…14-3 C言語変数のビット幅
 Column…14-4 C言語プログラムで使用している共通関数

 C言語プログラムで制御するI2C/SPIの応用例
第15章 I2C/SPIによる 7セグメントLED数値表示器
 15-1 ハードウェアの仕様と動作のしくみ
 15-2 ハードウェアの製作
 15-3 制御仕様
 15-4 制御ソフトウェア
 15-5 プログラムの説明

 SPIインターフェースの応用例
第16章 ディスクリート・パーツでディジタルI/Oボード(SPI-DIO)を製作
 16-1 高いスルーレートが得られるSPIインターフェース
 16-2 SPI I/Oボードの仕様と動作のしくみ
 16-3 製作 248
 16-4 使用方法(PICマスタ側プログラム)

 2か所の温度が測れるI2Cインターフェースの応用例
第17章 I2Cデバイスを応用した温度ロガーの製作
 17-1 ハードウェアの仕様と動作のしくみ
 17-2 ハードウェアの製作
 17-3 制御仕様
 17-4 制御ソフトウェア
 17-5 プログラムの説明
 Column…17-1 I2Cディジタル温度センサLM75
 Column…17-2 CCS-Cでライブラリ関数“printf()”の使用上の注意
 Column…17-3 CCS-C,WIZ-C,ピカントCの割り込み処理の違い

 PIC+1-Wireデバイスの応用
第18章 DS2751を使った評価用バッテリ・モニタと充/放電器の製作
 18-1 ハードウェアの仕様と動作のしくみ
 18-2 DS2751の1-Wire通信,コマンド仕様
 18-3 ハードウェアの製作
 18-4 制御ソフトウェア
 18-5 プログラムの説明
 18-6 実験,評価
 Column…18-1 シャドーRAM
 Column…18-2 充・放電率:C
 Column…18-3 -ΔV充電

Appendix A ドライバ/共通ルーチン(PIC)
Appendix B ドライバ/共通ルーチン(H8)
Appendix C 通信関係のドライバ/共通ルーチン(PIC)
Appendix D 通信関係のドライバ/共通ルーチン(H8)

部品入手先/ドキュメント入手先/著者ホームページ/サポート・ページ