RL78/G11 簡易IICAについて

いつもお世話になります。

とし といいます。

 

現在、秋月電子で購入した評価ボード

「RL78/G11スティック型評価ボード(R5F1058AALA)」を

使用しています。

アバウトな質問で申し訳ないのですが

簡易IICAを使いたいとチョコさんのRL78/G10,G13

簡易IICAサンプル等を参照させてもらいましたが

ビルドすら通りません。

レジスタ名は修正したのですが「#pragmaの構文が不正、識別子がありません」 

等のエラーが出ます。

 

実際、G11のサンプルとしてどのシリーズ(G10,G13等)を

参照すればよいのでしょうか。

 

以上、アバウトで申し訳ありませんが

どなたかわかる方、アドバイスを頂きたく思います。

 

Parents
  • とし さん、こんにちは。NoMaYと申します。

    私もチョコさんのI2Cライブラリを使おうと思って調べていたところですので、としさんの件も調べてみました。

    > (E) E0562142 E0562142:Interrupt table address "0x0" of ".vect" has multiple definition

    チョコさんの以下のサンプルプログラムは、作成時期がCC-RLの出始めの頃に作成されたもので、zipファイル内のソースファイルのタイムスタンプからの推測になりますが、コード生成機能がスタートアップルーチン(r_cg_cstart.asm)を生成していたと思われます。それが変化した時期は分かりませんが、今現在はコード生成機能がスタートアップルーチンを生成することはなくて、プロジェクト作成時のスタートアップルーチン(cstart.asm)を使い続けるようになっています。

    その為、としさんの以下のプロジェクト作成手順では、r_cg_cstart.asmとcstart.asmが重複してしまって、このエラーが出たのだろうと思います。ですので、過去の名残りのr_cg_cstart.asmを削除するのが良いと思います。

    RL78G10簡易IICによるLCD表示器の制御
    japan.renesasrulz.com/cafe_rene/m/sample_program/277

    > 標記の環境でG10の簡易IICAプログラムを
    > プロジェクト作成時に「既存のプロジェクトファイルのファイル構成を流用する」と
    > 「プロジェクト・フォルダ以下の構成ファイルをコピーして流用する」で
    > G11用に変換しました。

    あと、私がチョコさんのサンプルプログラムを調べて分かったのは、今のところ、チョコさんのI2Cライブラリの最新版は以下の通りで、RL78 S3コアというCPUコアを搭載しているRL78/G11では、RL78/G10のものよりRL78/G13のものを流用した方が良いのではないかな、と思うのです。

    チョコさんのI2Cライブラリの最新版 (以下はCC-RL版です)(以下の他にG10でソフトのみでI2C通信を行うタイプがあります)

    S2,S3コア(レジスタバンクあり)向け G13,G14,G12,G11等

    ● IICA使用版マスタモード

    IICマスタ(RL78/G13版)改
    japan.renesasrulz.com/cafe_rene/m/sample_program/293
    * Version      : 2.00
    * Device(s)    : R5F100LE
    * Tool-Chain   : CCRL
    * Description  : This file implements device driver for Serial module.
    * Creation Date: 2015/12/26
    * Modified Date: 2016/06/07
    r_iic_lib.c
    r_iic_lib.h

    ● IICA使用版スレーブモード

    IIC通信のスレーブ(RL78/G13)改
    japan.renesasrulz.com/cafe_rene/m/sample_program/296
    * programed by : チョコ
    * Device(s)    : R5F100LG
    * Tool-Chain   : CC-RL
    * Description  : This file implements device driver for IICA0 slave mode.
    * Creation Date: 2015/11/09
    * Modified Date: 2016/06/10
    r_iica0_lib.c
    r_iica0_lib.h

    ● SAU使用版(簡易I2C)マスタモード (簡易I2Cではスレーブモードはありません)

    IIC通信のマスタ側(RL78/G13の簡易IIC版)改 2C
    japan.renesasrulz.com/cafe_rene/m/sample_program/408
    * Version      : 2.00
    * Device(s)    : R5F100LE
    * Tool-Chain   : CCRL
    * Description  : This file implements IIC control functions.
    * Creation Date: 2015/09/28
    * Modified Date: 2015/10/06 unify inteface
    * Modified Date: 2016/01/06 support read mode
    * Modified Date: 2016/06/06 add retry function and porting to CC-RL
    * Modified Date: 2017/12/18 delete unused POM1 handling from IIC_TM03_init
    r_iic_lib.c
    r_iic_lib.h

    S1コア(レジスタバンクなし)向け G10

    ● IICA使用版マスタモード

    シリアルインターフェイスIICAでデータを取得できません
    japan.renesasrulz.com/cafe_rene/f/002-2095199602/4081/iica/21124#21124
    CC-RLの移行支援機能オプションは不要、かつ、S2,S3コア向けの最新版の移植版です。
    *Version      : 2.00
    * Device(s)    : R5F10Y47
    * Tool-Chain   : CCRL
    * Description  : This file implements IIC control functions.
    * Creation Date: 2015/12/26
    * Modified Date: 2016/06/07
    *              : 2017/04/08(port to RL78/G10)
    r_iic_lib.c
    r_iic_lib.h

    ● IICA使用版スレーブモード

     RL78/G10のIICAスレーブプログラム
    japan.renesasrulz.com/cafe_rene/m/sample_program/283
    CC-RLの移行支援機能オプションが必要、かつ、S2,S3コア向けの方が新しいので移植した方が良いかも知れません。
    *Device(s)    : R5F10267 ← これはG12の品名ですので修正漏れだと思います
    * Tool-Chain   : CC-RL
    * Description  : This file implements device driver for IICA0 slave mode.
    * Creation Date: 2015/11/09
    r_iica0_lib.c
    r_iica0_lib.h

    ● SAU使用版(簡易I2C)マスタモード (簡易I2Cではスレーブモードはありません)

    RL78G10簡易IICによるLCD表示器の制御
    japan.renesasrulz.com/cafe_rene/m/sample_program/277
    CC-RLの移行支援機能オプションが必要、かつ、S2,S3コア向けの方が新しいので移植した方が良いかも知れません。
    *Version      : 1.01
    * program      : チョコ
    * Device(s)    : R5F10Y46
    * Tool-Chain   : CCRL
    * Description  : This file implements IIC control functions.
    * Creation Date: 2015/09/14
    * Modified Date: 2015/10/06 unify inteface
    r_IIC_LIB.c
    r_IIC_LIB.h

    [参考]

    サンプルプログラム等投稿リスト(2018/5/24)
    japan.renesasrulz.com/cafe_rene/m/sample_program/416
     

  • チョコです。

    >あと、私がチョコさんのサンプルプログラムを調べて分かったのは、今のところ、チョコさんのI2Cライブラリの最新版は以下の通りで、RL78 S3コアというCPUコアを搭載しているRL78/G11では、RL78/G10のものよりRL78/G13のものを流用した方が良いのではないかな、と思うのです。

    その通りです。RL78/G10はバスが8bitになり,SFRの名前が微妙に変わっていたり(言語処理では引っかからに場合もあります),レジスタバンクもないし,これからRL78/G11に移植するよりはRL78/G13辺りの最新版を流用してください。

    デバイスによって,兼用機能としてA/D入力がある場合とない場合があり,設定するレジスタが異なる場合があることに注意すれば,ほとんど修正はいらないはずです。

    以上

Reply
  • チョコです。

    >あと、私がチョコさんのサンプルプログラムを調べて分かったのは、今のところ、チョコさんのI2Cライブラリの最新版は以下の通りで、RL78 S3コアというCPUコアを搭載しているRL78/G11では、RL78/G10のものよりRL78/G13のものを流用した方が良いのではないかな、と思うのです。

    その通りです。RL78/G10はバスが8bitになり,SFRの名前が微妙に変わっていたり(言語処理では引っかからに場合もあります),レジスタバンクもないし,これからRL78/G11に移植するよりはRL78/G13辺りの最新版を流用してください。

    デバイスによって,兼用機能としてA/D入力がある場合とない場合があり,設定するレジスタが異なる場合があることに注意すれば,ほとんど修正はいらないはずです。

    以上

Children
  • チョコさん

    いつもお世話になります。
    としです。

    昨日と本日のお礼が遅くなり申し訳ありませんでした。

    NoMaYさんからのアドバイスでもありましたが
    参考としてRL78/G13を見たいと思います。

    また、
    >デバイスによって,兼用機能としてA/D入力がある場合とない場合があり,
      設定するレジスタが異なる場合があることに注意すれば,ほとんど修正はいらないはずです。

    こちらの情報はサンプルを見ないとプログラムが書けない自分にとても大きな情報になりました。

    さっそく作業に取り掛かろうと思います。

    以上、度々のご教示ありがとうございます。