RL78/G23 Fast Prototyping Boardを買いました

こんにちは。NoMaYです。

別スレッドでRL78 nextに関して長期に書いていたわけですし、買ったなら黙っているのもアレかな、と思いましたので投稿します。

RenesasさんからStrategy Updateが発表されましたね
japan.renesasrulz.com/cafe_rene/f/forum13/6192/renesas-strategy-update/37890#37890

ボードの形状は、まるっきりArduino、ですね。また、ボードのUMに書かれていたのですが、将来、Arduino IDEでもボードをサポートする予定らしいです。また、RL78/G13,14,11,10,12のようにCS+でシミュレータGUIが起動しましたね。まだ、空のコードしか作ってないのと、あと、CS+をインストールしてもRL78/G23シミュレータのリリースノートが含まれていなかったので、ちょっと五分五分の可能性?、というところですが、内蔵周辺機能のシミュレーションが出来るかも知れません。また、上のスレッドでもFujitaさんが書かれていましたが、従来のRX231によるオンボードエミュレータではなくて、USB−シリアル変換チップ(FT232RQ)によるオンボードエミュレータに変更されてました。これで、RFPでのプログラミングと、CS+/e2 studioでのデバッグと、ターミナルソフト(TeraTermなど)によるUART通信と、これら3つのことが出来るみたいです。(きっと、これらは排他使用かな、と思います。)

  • こんにちは。NoMaYです。

    書き忘れていましたが、RFPの通信速度設定のドロップダウンボックスには 115200 bpsしか選択肢が表示されませんが、手入力により 1000000 bpsも入力出来ました。(以下画面コピー参照)



     

  • こんにちは。NoMaYです。

    マルツさんでプレゼントキャンペーンが始まってますね。台数は10台だそうです。(ど~んと100台規模でやっちゃえばいいのに、とも思いました、、、新世代RL78の景気づけに、、、)

    RL78/G23-64p Fast Prototyping Board お試しキャンペーン - マルツ
    www.marutsu.co.jp/sv/enquete/?id=60

    [追記]

    マルツさんの告知ページでも、Arduino IDEに対応、となっていますけど、まだ出ていないですよね??プレゼントが当選者に発送される7月中旬?ごろには出るのかな?

  • チョコです。

    やっと、ボードを入手して、環境を構築しました。

    コード生成に慣れていたので、SCは慣れるまで少しかかりそうです。

    SCでは、コード生成ではできなかった割り込みで使用するレジスタバンクを設定できるようです。

    最低限のプログラムでLチカを作ってみました。

    タイマを2本使って、250msと500msのインターバル・タイマを設定し、そこでLEDを反転させるだけです。

    main関数も初期化後は、whileループの中のHALT()で割り込み待ちをやっているだけです。タイマの起動は、従来のように、R_MAIN_UserInit関数を作って、main関数の頭で呼び出しています。

    また、コード生成では周辺機能用のヘッダファイルがインクルードされていましたが、SCでは自分でインクルードする必要があります。main.cの主な部分を下に示します。

    一応、プロジェクトのzipファイルを添付しています。

    RL78G23_TEST.zip

  • こんにちは。NoMaYです。

    DesignSparkRSさんがRenesas RL78/G23 Fast Prototyping Boardの動画を投稿してましたね。

    Renesas RL78/G23 Fast Prototyping Board - DesignSpark Unboxing
    www.youtube.com/watch?v=JLlExrnTPu8
     

  • チョコです。

    きちんとした(?)プログラムを作成して、「サンプルプログラム等」にアップしておきました。

    スマート・コンフィグレータを使ってコード生成して、COM Portを介してデバッグしています。

    全てオンボードのリソースを使用しているので、ボードを持っている人はすぐに動作確認できるかと思います。

    これからは別にスレッドを立てる予定です。

  • こんにちは。NoMaYです。

    COMPort通信デバッグのアプリケーションノートが出ていました。(記載内容からするとRL78/G23に限定してないような、、、)

    シリアルポートを使用したRL78 デバッグ機能
    www.renesas.com/jp/ja/document/apn/rl78-debugging-functions-using-serial-port-application-note


  • こんにちは、NoMaYです。

    COMPort通信デバッグのアプリケーションノートの記載内容がRL78/G23に限定されていないような気がして、RL78/G23以外でも出来るようになったのかなと思ったのですが、CS+ V8.06の画面を見たところ、そうでは無かったです、、、

    以下、CS+の画面コピーです。


     

  • こんにちは。NoMaYです。

    こんなArduinoセンサーキットシールド(¥2,480)があるのですね。買ってみようかなと思いました。(ちなみに、結局、Arduino IDE対応はどうなったのかなぁ、、、)

    Arduino Sensor Kit - Base
    akizukidenshi.com/catalog/g/gK-15956/

    [追記]

    こちらの追加パックはちょっとお高め?(¥4,480)

    Grove Beginner Kit for Arduino Educaton Add-on Pack
    akizukidenshi.com/catalog/g/gK-16134/

  • こんにちは。NoMaYです。

    RL78/G23ではシリアルプログラミングの書き込みインターフェイスがプロトコルCというものに変わっていたのですね。そのせいか、簡易書き込みソフト兼簡易ターミナルソフトとして使えるかな、と思っていたrl78flashというツールが以下の画面コピーのように動いてくれませんでしたね。(ちょっとまだ原因を突き止めたわけではないので他の理由の可能性もありますけれど。) rl78flashはソースがMITライセンスで公開されていますので、デバッグして理由を調べて対処すれば良いわけですけれど、オシロスコープが使えないとちょっとすぐには出来なさそうです。とりあえず、短期的には他の手を考えた方が良いかなぁ?、ですかね、、、

    RL78マイクロコントローラ(RL78プロトコルC)シリアルプログラミング編
    www.renesas.com/jp/ja/document/apn/rl78-microcontroller-rl78-protocol-c-serial-programming-guide

    rl78flash
    github.com/msalau/rl78flash/releases/tag/v0.6.1

    画面コピー(3枚)




    [関連リンク]

    RL78マイクロコントローラ(RL78プロトコルA)プログラマ編
    www.renesas.com/jp/ja/document/apn/rl78-microcontrollers-rl78-protocol-programmer-edition-application-note

    RL78/G10の外部UARTによる書き込み
    japan.renesasrulz.com/cafe_rene/f/forum18/2163/rl78-g10-uart

    RL78/G10のフラッシュプログラミング
    japan.renesasrulz.com/cafe_rene/f/forum18/2192/rl78-g10

    RL78/G23 ユーザーズマニュアル ハードウェア編
    www.renesas.com/jp/ja/document/man/rl78g23-users-manual-hardware
     

  • こんにちは。NoMaYです。

    前回の投稿の続きで、順当に考えるならば、Renesas Flash Programmer (RFP)のコマンドライン版を使ってRL78/G23 64p Fast Prototyping Boardへダウンロードすることになりますね。(天邪鬼的には、rl78-elf-gdb&e2-server-gdb、もしくはCS+のコマンドライン版&Python Console、とかでダウンロードだけさせる手も考えられますけども、、、)

    Renesas Flash Programmer V3.08 フラッシュ書き込みソフトウェア ユーザーズマニュアル
    www.renesas.com/jp/ja/document/mat/renesas-flash-programmer-v308-flash-memory-programming-software-users-manual

    画面コピー(1枚)


    [関連リンク]

    最近はLinux版(x64, ARM32, ARM64)もあるようなのですね、、、

    Renesas Flash Programmer (Programming GUI) 製品ページ
    www.renesas.com/jp/ja/software-tool/renesas-flash-programmer-programming-gui
     

  • こんにちは。NoMaYです。

    今のRenesas Flash Programmer (RFP)にはLinux上で動作するコマンドライン版RFPと同仕様のWindows10上で動作するもう1種類のコマンドライン版RFPが同梱されているのですけど、そちらでもRL78/G23 64p Fast Prototyping Boardへダウンロード出来ました。(最初、ドキュメントを見た時に、libusbが必要と書かれている箇所以降は読んでいませんでした、、、)

    [追記]

    あぁっ、libusbが必要だったのはLinuxでのことであって、Windows10ではもともと不要だったのかも知れません、、、

    画面コピー(3枚)



     

  • こんにちは。NoMaYです。

    e2 studio上から簡単な操作でコマンドライン版RFPを起動するやり方が何か無いものかと試していたところ、とんち的ではありますけれど、まあまあ楽ちんなやり方があったことに気付きました。e2 studio上で作成したプログラムをデバッグする時に通常Debug Configurationでデバッガを起動してプログラムを書き込みますけれど(そしてそのままデバッグ作業に入りますけれど)、以下の画面コピーのようにRun Configurationの1つとして本来はWindows/Linux/MacOS等でネイティブアプリケーションを開発する為に用意されている機能をコマンドライン版RFPを起動する目的で使うというやり方です。

    楽ちんな点は以下の点です。

    (1) ランチバーの右向き三角ボタンからコマンドライン版RFPを起動してプログラムを書き込むことが出来る
    (2) コマンドライン版RFPの起動前に自動的にビルドが実行される
    (3) コマンドライン版RFPの起動後に自動的に書き込んだプログラムが実行される

    それでもなお面倒くさい点は以下の点です。(といってもRL78/G23 64p FPBのFT232RQでシリアル通信する場合のことですけれど)

    (A) e2 studioのTerminal viewとは連携しないので書き込み前後でTerminal viewの切断/接続のボタン操作が毎回必要になる

    [追記]

    ビルドがエラーになっていてもコマンドライン版RFPを起動しようとしてしまいますね、、、

    [ここまで追記]

    以下、e2 studioの画面コピーです。(プロジェクトのファイル一式をGitHub上の私のリポジトリに後日置きます。)

    Run Cofigurationでコマンドライン版RFPを起動するやり方の設定例





    ランチバーの右向き三角ボタンを押すとビルド→書き込み→実行の一連の処理が行われる


    RL78/G23 64p FPBのFT232RQでシリアル通信する場合のe2 studioのTerminal viewの接続時の設定例

     

  • こんにちは。NoMaYです。

    ルネサスさんが最近リリースした「クイックコネクトIoT」について調べていたら、以下のミドルウェアに辿り着きました。RXとRAではFreeRTOS版とNon-OS版があったものの、残念ながらRL78ではNon-OS版だけだったのとRL78/G14のコード生成機能対応版(つまりRL78/G23のスマートコンフィグレータ対応版では無い(でも別途どこかにあるかも?))だったのですけども、マイコンの種類&ソフトウェア開発プラットフォームをまたいでのI2C通信ミドルウェアAPIが以下の様に定義されているようでした。

    センサソフトウェア ミドルウェア 製品ページ
    www.renesas.com/jp/ja/software-tool/sensor-software

    本ソフトウェアは、ルネサスセンサ製品の制御及び計測データ取得を行います。

    本ソフトウェアは、センサミドルウェアレイヤーとI2Cコミュニケーションミドルウェアレイヤーで構成されます。

    ● センサミドルウェア :センサを制御するAPI関数を提供
    ● I2Cコミュニケーションミドルウェア:マイコンに依存するI2C通信インタフェース仕様の差異を吸収

    この二つのレイヤーを組み合わせて使用することで、マイコンの種類やI2C通信インタフェースの制御方法を意識することなく、簡単かつ短期間にルネサスセンサの応用製品を開発することが可能になります。


    RAファミリ、RXファミリ、RL78ファミリ HS300xサンプルソフトウェアマニュアル アプリケーションノート
    R01AN5897JJ0101 Rev.1.01 August 16.21
    www.renesas.com/jp/ja/document/apn/hs300x-sample-application
    Page 1 of 76

    要旨
    本アプリケーションノートでは、RA ファミリ、RX ファミリ、RL78 ファミリで動作するHS300x 湿度・温度センサーのサンプルソフトウェアについて説明します。

    動作確認デバイス
    RA6M4 グループ
    RX65N グループ
    RL78/G14 グループ

    商標・他社TM
    FreeRTOSTM とFreeRTOS.orgTM はAmazon Web Serices, Inc.の登録商標です。
    Microsoft® Azure RTOS は米国Microsoft Corporation の米国およびその他の国における登録商標または商標です。


    r01an5897xx0101-hs300x/HS300x_RL78G14_NonOS/src/hs300x/r_comms_i2c_rl/inc/instances/rm_comms_i2c.h
    r01an5897xx0101-hs300x/HS300x_RX65N_NonOS/src/smc_gen/r_comms_i2c_rx/inc/instances/rm_comms_i2c.h

    /**********************************************************************************************************************
     * Public Function Prototypes
     **********************************************************************************************************************/
    fsp_err_t RM_COMMS_I2C_Open(rm_comms_ctrl_t * const p_api_ctrl, rm_comms_cfg_t const * const p_cfg);
    fsp_err_t RM_COMMS_I2C_Close(rm_comms_ctrl_t * const p_api_ctrl);
    fsp_err_t RM_COMMS_I2C_Read(rm_comms_ctrl_t * const p_api_ctrl, uint8_t * const p_dest, uint32_t const bytes);
    fsp_err_t RM_COMMS_I2C_Write(rm_comms_ctrl_t * const p_api_ctrl, uint8_t * const p_src, uint32_t const bytes);
    fsp_err_t RM_COMMS_I2C_WriteRead(rm_comms_ctrl_t * const            p_api_ctrl,
                                     rm_comms_write_read_params_t const write_read_params);

    #if defined(__CCRX__) || defined(__ICCRX__) || defined(__RX__)
    void rm_comms_i2c_callback(rm_comms_ctrl_t const * p_api_ctrl);

    #elif defined(__CCRL__) || defined(__ICCRL__) || defined(__RL78__)
    void rm_comms_i2c_callback(rm_comms_ctrl_t const * p_api_ctrl, bool aborted);

    #else
    void rm_comms_i2c_callback(i2c_master_callback_args_t * p_args);

    /* Common macro for FSP header files. There is also a corresponding FSP_FOOTER macro at the end of this file. */
    FSP_FOOTER
    #endif

     
    [関連リンク]

    クイックコネクトIoT プラットフォーム 製品ページ
    www.renesas.com/jp/ja/solution/technologies/quick-connect-iot

    IoTシステムの迅速な開発、試作を可能にする、モジュール式開発プラットフォーム「クイックコネクトIoT」を発売
    www.renesas.com/jp/ja/about/press-room/renesas-new-modular-iot-development-platform-dramatically-reduces-time-market-and-design-complexity

    「ルネサスは宝の山」、ウイニングコンボの仕掛け人が放つ新たな戦略とは - MONOist
    組み込み開発 インタビュー
    monoist.atmarkit.co.jp/mn/articles/2108/27/news068.html
     

  • こんにちは。NoMaYです。

    ルネサスさんは、また会社が大きくなったようで、今度加わったDialog社にはWiFiとBLEの技術があったのですね。(中身はRAマイコンと同様にCortex-Mコアのマイコンですね。)

    ルネサスとDialog社製品を組み合わせた35種類以上の「ウィニング・コンビネーション」を発表
    ~Dialog社の買収完了により、IoT、産業、自動車など多岐にわたるアプリケーション向けに、ユーザが直ちに利用できる包括的なソリューションを提供~
    www.renesas.com/jp/ja/about/press-room/renesas-announces-more-35-winning-combinations-featuring-both-dialog-and-renesas-products

    今回クイックコネクトIoT用に、Dialog社の超低電力のBluetooth® Low Energy (LE) (DA14531) モジュールとWi-Fi (DA16200) モジュールをそれぞれ搭載したPmodTM タイプ6A規格のボードと、ソフトウェアを用意しました。これにより、モバイルアプリケーションやクラウドに対し、ルネサスのセンサとマイコンからシームレスにデータ送信が可能になります。


    クイックコネクトIoT プラットフォーム 製品ページ
    www.renesas.com/jp/ja/solution/technologies/quick-connect-iot
    これかな?

    Quick-Connect IoT BLE Environmental Sensor Hub Quick Start Guide クイックスタートガイド PDF 854 KB 2021年8月30日


    Quick Connect IoT BLE Environmental Sensor Hub Sample Code サンプルコード ZIP 9.22 MB 2021年8月24日
    Wi-Fi Enabled Cloud IoT Solution Kit Sample Code サンプルコード ZIP 83.97 MB 2021年8月24日


    [関連リンク]

    SmartBond DA14530 and DA14531
    The world’s smallest and lowest power Bluetooth 5.1 System-on-Chip
    www.dialog-semiconductor.com/products/bluetooth-low-energy/da14530-and-da14531

    DA16200
    Ultra Low Power Wi-Fi SoC for battery powered IoT devices
    www.dialog-semiconductor.com/products/wi-fi/da16200
     

  • こんにちは。NoMaYです。

    そろそろ、LLVM-RL78&C++&RL78スマートコンフィグレータ&FreeRTOSという組み合わせのサンプルプログラムを投稿して行こうかな、と思っているのですが、RL78/G23 64p FPBのFT232RQのUSBシリアル変換COMポートでは、COMポート番号が、デバッグするにせよシリアル通信するにせよ、サンプルプログラムを動かすPCによって人それぞれ異なっていて(もちろん私のPCでのCOMポート番号とも異なっていて)、試す人は動かす前に各サンプルプログラムの*.launch設定のCOMポート番号を試す人のPCに合わせて変更する必要があります。サンプルプログラムが幾つかあると、ちょっと面倒かな、と思っていたのですが、いっそサンプルプログラム側ではCOM9とかにCOMポート番号を固定したままにして、PC側でCOMポート番号をCOM9へ変更するという手もありかな、という考えが思い浮かびました。

    以下、Windows10のデバイスマネージャのCOMポートのプロパティ設定画面での変更手順の画面コピーです。





    これで、以下の画面コピーのように、COMポート番号を変更することが出来ました。

    変更前


    変更後