IIC通信のマスタ側(RL78/G13の簡易IIC版)改

チョコです。

以前、CC-RLのCA78K0R移行モードで作成していた「IIC通信のマスタ側(RL78/G13の簡易IIC版)」
http://japan.renesasrulz.com/cafe_rene/m/sample_program/288.aspx
をCC-RLのネイティブ用に書き換えました。
これで、いろんな環境にもっていきやすくなるかと思います。
ついでに、エラー処理を強化して、スレーブ選択時にACK応答がなかった場合にリトライするように
しました(データ送信でのエラーはリトライしていません)。

細かな処理では、以下も変更しています。
・(リトライ後の)エラー検出で、P63に接続されたLED2を点灯
・A/D変換結果の受信を1組(8バイト)から16組に変更

CC-RL対応では、割り込みの宣言部分の変更とポートのビット参照時の表記の変更です。参考として
どのように変更したかの例を示します。

・割り込みの変更
#pragma interrupt INTIIC00 r_iic00_interrupt rb1

__interrupt static void r_iic00_interrupt(void)
{

         ↓

#pragma interrupt r_iic00_interrupt(vect=INTIIC00,bank=RB1)

static void r_iic00_interrupt(void)
{

・ポートのビット表記の変更
        while ( TRUTH == P13.7 )

         ↓

        while ( TRUTH == P13_bit.no7 )


以上

Anonymous