いつもお世話になります。
とし といいます。
現在、秋月電子で購入した評価ボード
「RL78/G11スティック型評価ボード(R5F1058AALA)」を
使用しています。
アバウトな質問で申し訳ないのですが
簡易IICAを使いたいとチョコさんのRL78/G10,G13
簡易IICAサンプル等を参照させてもらいましたが
ビルドすら通りません。
レジスタ名は修正したのですが「#pragmaの構文が不正、識別子がありません」
等のエラーが出ます。
実際、G11のサンプルとしてどのシリーズ(G10,G13等)を
参照すればよいのでしょうか。
以上、アバウトで申し訳ありませんが
どなたかわかる方、アドバイスを頂きたく思います。
> レジスタ名は修正したのですが「#pragmaの構文が不正、識別子がありません」> 等のエラーが出ます。
このへん見てみてhttps://www.google.com/search?q=%23pragma+CA78K0R+CC-RL
とし さん、こんにちは。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/07r_iic_lib.cr_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/10r_iica0_lib.cr_iica0_lib.h● SAU使用版(簡易I2C)マスタモード (簡易I2Cではスレーブモードはありません)IIC通信のマスタ側(RL78/G13の簡易IIC版)改 2Cjapan.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_initr_iic_lib.cr_iic_lib.hS1コア(レジスタバンクなし)向け G10● IICA使用版マスタモードシリアルインターフェイスIICAでデータを取得できませんjapan.renesasrulz.com/cafe_rene/f/002-2095199602/4081/iica/21124#21124CC-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.cr_iic_lib.h● IICA使用版スレーブモード RL78/G10のIICAスレーブプログラムjapan.renesasrulz.com/cafe_rene/m/sample_program/283CC-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/09r_iica0_lib.cr_iica0_lib.h● SAU使用版(簡易I2C)マスタモード (簡易I2Cではスレーブモードはありません)RL78G10簡易IICによるLCD表示器の制御japan.renesasrulz.com/cafe_rene/m/sample_program/277CC-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 intefacer_IIC_LIB.cr_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入力がある場合とない場合があり,設定するレジスタが異なる場合があることに注意すれば,ほとんど修正はいらないはずです。
以上