nobcha23の日記

PICマイコンやArduinoを使う電子回路遊びを紹介します

C code of i2c function on PIC16F88

PIC16F88を使用したi2cを使う関数プロ

グラムです。
実験用PIC16F88回路でMainから従来作った
LCD表示ルーチン関数lcd_i2c_func.cを呼
びます。その下に今回試作したi2c.cがあ
ります。#defineでバーチャルに定義して
いるためか、スタックを5つぐらい使いま
す。
http://chitose6thplant.web.fc2.com/exp/i2c/88main_c.pdf 
http://chitose6thplant.web.fc2.com/exp/i2c/lcd_i2c_func_c.pdf
http://chitose6thplant.web.fc2.com/exp/i2c/i2c_c.pdf 

There are C code sets for i2c interfacing
experiment. i2c.c is a primitive driver
for interfacing with I2c LCD.
lcd_i2c_func.c is combined i2c driver on
conventional 1602LCD driving program.
There are rather deeper stack of 5 levels.















PICのプログラムをcで書く時に参考にしている本
です。著者の中尾さんはもともとマイクロチップ
ジャパンのFAEだったようです。
PIC12F675を活用するという趣旨で書かれた本です
が、HI-TECHのCコンパイラ使用を前提に記述されて
いるので、nobchaの電子回路試作では役に立ちます。
別PIC種では予約語レジスタ類はチップ毎のデータ
シートを参照する必要があります。でも、cの用法
を参照したい時などの参考にぴったりです。推薦し
ます。

MPLABV8.73から予約語類の一部が変わりました。
以前のソースを変えずにコンパイルしたい時は
#define __LEGACY_HEADERS
というおまじないをソースファイルの先頭に記
述してください。