2010年11月07日

ルネサスV850ES/JG2・I2C初期化

V850

Interface (インターフェース) 2007年5月号の、Renesas(旧NEC)マイコンV850(V850ES/JG2)を使用して、I2C通信を実装した際のメモ書きです。

I2C通信を実装する際に、メーカのアプリケーションノートを参考にしましたが、V850はシリーズがいろいろあるので、今回の品種については、そのままコピーして使用できるコードはありませんでした。
レジスタ名が異なったり、レジスタそのものがなかったり、などなどです。

V850ES/JG2のユーザーズマニュアルのI2C通信の項目を見なおして、ポイントになる部分がありました。
I2C(0ポート)の初期化は下記のようなコードになりました。

初期化後の通信手順はメーカ提供のアプリケーションノートを参考にすれば問題ないと思います。

---------------------------------------------------


  PF3 |= 0x0300;      /* N-ch OD ポートニ設定 */

  PM3 |= 0x0200;
  P3 &= ~0x0200;      /* ポートヲ入力ニ設定 出力ラッチニ '0' ヲ書キ込ミ */

  PM3 |= 0x0100;
  P3 &= ~0x0100;      /* ポートヲ入力ニ設定 出力ラッチニ '0' ヲ書キ込ミ */

  PMC3 |= 0x0300;     /* ポートヲ IIC モードニ設定 */
  PFC3 |= 0x0300;     /* ポートヲ IIC モードニ設定 */

  IICC0 = 0x00;       /* IIC動作禁止ナド */
  IICCL0 = 0x00;
  WTIM0 = 1;          /* 9bit目デ割リ込ミ */
  IICF0 = 0x01;       /* 通信予約禁止 */

  OCKS0 = 0x13;      /* クロック動作許可 fxx/5 */
  SVA0 = 0x50;        /* 自局アドレス */

  IICMK0 = 0;         /* 割リ込ミマスク許可 */
  IICIF0 = 0;         /* IICA割リ込ミ要求クリア */

  IICE0 = 1;          /* IIC動作許可 */

  SPT0 = 1;           /* ストップコンディション */
  if( !IICBSY0 )      /* バス解放状態 ? */
  {
    SPT0 = 1;         /* ストップコンディション */
    while( !STD0 );   /* ストップ・コンディション検出待チ  */
  }
  IICIF0 = 0;         /* IICA割リ込ミ要求クリア */




タグ :I2CV850

同じカテゴリー(マイコン開発)の記事
Fusion PCBでエレキー
Fusion PCBでエレキー(2020-04-01 19:00)


上の画像に書かれている文字を入力して下さい
 
<ご注意>
書き込まれた内容は公開され、ブログの持ち主だけが削除できます。

削除
ルネサスV850ES/JG2・I2C初期化
    コメント(0)