RX621で使用したプログラムをRX651に移植する為CS+でビルドしたらエラー出まくり

RX621で動いていたプログラムを、メモリの関係でRX651に移植することになりました。

プログラム上でポート変更してCS+でRX651設定でビルドすると、RX621で出ていなかったエラーが出ました。

RX621は秋月で購入したモジュールで、

LCDとかSDcardの設定部分でエラーが頻発しているような気がします。

どなたか、こういった事象で、ご存知の方がいればお教えください。

  • > お教えください。

    問題の原因? 解決方法? 必要とされている情報は何でしょうか?

    > LCDとかSDcardの設定部分でエラーが頻発しているような気がします。

    まずは問題の当事者として現状把握に努め、他人に相談されたいのであればそれを説明すべきではないですか。
  • RX621ですと、IOの入出力レジスタ名がPDRしかありませんが、新しいマイコンでは、入力がPIDRで、出力がPODRと分かれています。
    PORT5.PDR.BIT.B0 = 0; などの表記の部分で構造体のメンバ名が存在しないといったようなエラーが出ると思いますで分かると思いますが。
    どのようなエラーか分からないので、参考までに。

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

    Arduinoとかmbed/mbed OSとか、マイコン間の違いを隠蔽することも主たる目的の1つとしているような、そういったソフトウェアライブラリ(ソフトウェアフレームワーク)を使わないマイコンプログラム開発では、マイコンを変更した時に多量のエラーが発生するのは、一般的なこと/良くあること、ですよ。(多分、誰しも人生で初めて遭遇した時は面食らっていると思います、、、) そういう時は、ひたすら、マイコンのハードウェアマニュアルを見比べつつ、プログラムを変更してはデバッグして、またプログラムを変更してはデバッグして、を延々と繰り返すのみです。

    とはいえ、発生しているエラーがそういうタイプのエラーでは無いという可能性もありますので、ビルド中に出力されたメッセージを全てテキストファイルにコピペし、zipファイルに固めて添付して投稿していただけると、もっと確実なことが分かってアドバイスを返し易いですので、(もし業務であって業務上それを開示出来ないということが無ければ、)そうして欲しいです。

  • 各皆様返信ありがとうございます。まずはお礼まで。
    >fujita nozomu様
    説明足りず申しわけございません。
    あまりに多くのエラーが出た為に、もしかしたらこういった事象は単純な設定の問題で、
    ピンと来るヒトにはピンと来るのでは、という思いで投稿しました。
    嫌な思いをさせるとは思わず、すみませんでした。
    >HiRoSan様
    >NoMaY様
    良いヒントになりました。ありがとうございました。
    RX621とRX651の違いでレジスタの設定等がこんなに違うのか、と、
    改めてハードウェアマニュアルを見て愕然としております。
    少しづつ、IOレジスタ設定のところからエラーを削っています。
    しかし、
    例えばRX621では入力バッファコントロールレジスタの設定があるのに、
    RX651ではマニュアル見ても対応するところが載っていない、等。
    まだまだ課題は山積み。ため息しかでません。
    ネット等でRX651でプログラム例が転がっていると参考になるのですが、これまたなかなかない。
    私の会社ではマイコン書かれる方がほとんどいない為、
    またご意見いただけると幸いです。
    ありがとうございました。
  • マイコンの変更について

    > まだまだ課題は山積み。ため息しかでません。

    ということであればそもそもの話として

    > RX621で動いていたプログラムを、メモリの関係でRX651に移植することになりました。

    が判断として適切かを再検討するもの良いと思います。
    ROM と RAM のどちらかが足りなくなったということだと思いますが、マイコンはRX621のまゝで、ROM であれば
    ・データの圧縮
    ・SDカード等外部メモリの使用
    RAM であれば
    ・作業領域の見直し
    ・SDRAMの外付け
    くらいの方法は検討しても良いのでは。

  • Heroさん
    たいへんですね、一つの方法は「移植する」じゃなくて
    RX621で動いていたプログラムを参考にしてRX651のプログラムを最初から作るというというのではだめですか?
    RX651の新しい性能について研究する機会にもなり、ソースコードの改善にもなるかもしれませんよ。
  • こんばんは。尭と申します。

    他の方がアドバイスされていますがMCUはRX621のままで拡張するアプローチが無難かと思います。

    RX621→RX651ですとペリフェラル以外にも
    ・CPUのコアがRXv1→RXv2
    ・フラッシュメモリがノーウェイト→<50MHzで1ウェイト、<100MHzで2ウェイト(ただしキャッシュヒット時はノーウェイト)
    と基幹部分も少なからず変わっています。タイミングにシビアなアプリケーションだった場合、解決の難しい問題が出てくる可能性が考えられます。