こんちはykです。Applilet EZ PL for RL78でつまづいてます。よろしくお願いします。
Applilet EZ PL for RL78 V1.01JでRL78/G10 R5F10Y16ASP(10ピン版)にPWM信号生成させたく考えます。
リセットとカウント用信号を入力とし、リセットでカウントの初期化、カウント信号のL→Hでカウントがインクリメント。
PWMのデューティ比がカウント信号によるカウントが進むたびに100%→90%→80%→70%→60%→50%→40%→30%→100%・・・とラウンドします。
シミュレーションでは動作するのですが、生成でエラーになります。
マイクロコントローラ設定:
エラーメッセージ:
78K0R Linker W1.51 [ 7 Mar 2011] for RL78,78K0R Microcontroller Copyright(C) 2006-2011 Renesas Electronics Corporation
RA78K0R error F3006: File not found 'obj\opt_byte.rel'Program Aborted.
78K0R Object Converter V1.50 [24 Feb 2011] for RL78,78K0R Microcontroller Copyright(C) 2006-2011 Renesas Electronics Corporation
RA78K0R error F4006: File not found '100-30_pwm.lmf'Program aborted.[2017-04-27 18:47:02] C:\Users\jinden\DOCUME~1\APPLIL~1\Project\100-30~1\makeprj.bat[2017-04-27 18:47:02] 1105:Build processing error.
コンパイルを中断しました。
エラーメッセージ:以上
obj\opt_byte.relがないと言ってます。
よろしくお願いします。
78K0R Linker W1.80 [13 Dec 2013] for RL78,78K0R Microcontroller Copyright (C) 2006, 2013 Renesas Electronics Corporation RA78K0R error E3206: Segment '@@CODEL' can't allocate to memory - ignored
ROM 容量が足りてないですね。
> Applilet EZ PL for RL78 V2.00では2kBに収まるのがApplilet EZ PL for RL78 V1.01Jでコンパイルすると収まらないということでしょうか。
私の確認した範囲では、V1.01J では 3581バイトとなったプロジェクトが V2.00J では 2600バイトとなりました。
http://japan.renesasrulz.com/cafe_rene/f/forum18/4219/applilet-ez-pl-for-rl78-v1-01j-pwm-rl78-g10-r5f10y16asp-10/21787#21787
http://japan.renesasrulz.com/cafe_rene/f/forum18/4219/applilet-ez-pl-for-rl78-v1-01j-pwm-rl78-g10-r5f10y16asp-10/21788#21788
V1.01J ではコンパイラに CA78K0R を使用し、V2.00J では CC-RL を使用したのでその違いだと思います。
ykさん、NoMaYです。(ちょっと外出していました。)obj\opt_byte.relが見つからない件についてです。頂いた情報から考えると以下のようなことだと思います。以下のRenesasの広報にもあるようにRL78/G10が世に出たのは2013年でした。ykさんが「RL78 Webシミュレータ お試しキャンペーン」で当たったRSK for RL78/G13のCD-ROM内のCubeSuite+(およびCA78K0R)は昔の2011年頃のものであり、RL78/G10に対応していなかったもののようです。(そのRSK for RL78/G13の製造年が2011年だったのか、製造年はもっと後でもCD-ROMに焼くマスタデータが2011年から変わっていなかったのか、そこまでは分からないですが。)そして、Applilet EZ PL for RL78 V1.01Jのインストーラ(もしくはApplilet EZ PL for RL78 V1.01Jの最初の起動処理)で、ykさんのノートPCにインストールされていた昔のCubeSuite+(というかCA78K0R)が自動的に検索されてしまい、その場所がApplilet EZ PL for RL78 V1.01Jのコンパイラフォルダに設定されてしまったのではないかと思われます。(あるいは、そんな話があるとは全く思っていなかったykさん自身が設定されたかも知れません。) その結果、コンパイル(正確にはアセンブル)することが出来なかったようです。(なお、アセンブル時にはデバイスファイルとしてApplilet EZ PL for RL78 V1.01Jに含まれていたG10のものが使われていたものの、そもそもアセンブラがG10に対応していなかったのでアセンブル出来なかったようです。)超低消費電力マイコン「RL78ファミリ」の小ピンラインアップを拡充「RL78/G10」を発売~小ピンパッケージ展開と46uA/MHzの動作電流により、基板の実装面積の低減と低消費電力化に貢献~www.renesas.com/.../news20130417.htmlまた、その後の話(CA78K0Rを新しくしても今度はリンク時にエラーになる件)は、fujitaさんが仰っている通りだと思います。[追伸]新しいスレッドのE1エミュレータを使用しての消去に関してですが、私の手元でE1が使える状況では無く、手元にE1がある人だったら正確に回答出来ることを、そういう状況の私があやふやに回答するのも効率が悪いと思いますので、そちらについては、回答が出来なくて、ごめんなさい、です。(誰も確信を持って回答出来ない気がしたJava Runtime Enviromentのスレッドでは、当て推量でも書いておいた方が良いと思って書いたところがありますが。)
ykです。 Applilet EZ PL for RL78 V2.00JによるPWM生成のまとめです。
二つのDutyを信号入力で切り替える5V,25kHzのPWM信号生成ができました。
(実際の対象は山洋電気のPWM制御ファン。Duty100~30%がファン仕様)
V1.01Jでは切替え無しのDuty固定PWM出力でも容量が足りないようです。
(タイトルは「V1.01Jでの」ですが、 V2.00Jならできるというのが結論)
今回、RESET(B)端子とDuty切替のP00端子で内蔵プルアップ抵抗を使用しましたが、
内蔵プルアップ抵抗の設定が
表示―入出力端子一覧
において設定を行います。
「設定」ではなく、「表示」の下の階層で設定を行うのは分かりにくいかも。
また、PWM信号の基本周波数が出力パネルにPWM出力を配置した後では設定できず、
パネルへのPWM出力配置前に
設定ーCPU内蔵機能の設定ーPWM
においてあらかじめ設定しなければなりません。
パネルのプロパティ設定で周波数設定が見れるのにその場で変更ができないのは不便に感じました。
最後に、
電源入ってからクロック出しっ放しなど、論理的なリセットが必要ないなどから
設定ーマイクロコントローラ設定ーリセット動作設定:外部リセット端子の選択
を「使用しない」にすると、以前の私のようにE1エミュレータがない環境ではコードを書き直すのに一旦初期化の手間が必要になります。過去スレッド
必要とするかもしれない「誰か」のために、検索で引っ掛かる確率上がるかもとふるいネタも記述させて頂きました。
repylいただいた皆さまありがとうございました。