RL78 Fast Prototyping Board+LLVMRL78+Cplusplus sample program

こんにちは。NoMaYです。

RL78/G23-64p Fast Prototyping Board の LLVM-RL78 & C++ & RL78スマートコンフィグレータ & FreeRTOS という組み合わせのサンプルプログラム(e2 studioプロジェクト)です。(サンプルプログラム置き場とGitHubにも置いています。) 現在、以下のものがあります。なお、C++と言っても、以前に投稿したTB-RX65N/RX130/RX231(とRX72N Envision Kit)でのCS+のサンプルプログラムのCソースコードと内容は殆ど同じだったり、また、FreeRTOSと言っても、メインタスクを1つ作っているだけだったり、というものです。(今回、FreeRTOSのLLVM-RL78ポートレイヤは独自対応版(野良犬ならぬ野良ポートレイヤです)、FreeRTOSのカーネルソースはV10.4.4、となっています。)

サンプルプログラム置き場
japan.renesasrulz.com/cafe_rene/m/sample_program/467

GitHubのリポジトリ
github.com/NoMaY-jp/RL78_SmartConfigurator_examples_RL78FPB_LLVMRL78/tree/cafe_rene

シミュレータデバッガコンソール出力
シリアルコンソール出力
シリアルコンソール入力
シリアルコンソール入力確認

シリアルコンソールのサンプルプログラムはボード上のFT232RQに接続されたUART0になっていますが、同じくボード上のFT232RQを使用するCOMPort通信デバッグ機能とは競合しますので、シリアルコンソールのサンプルプログラムではCOMPort通信デバッグは出来ません。

ボード上のFT232RQに関しては、以下のスレッドに投稿したように設定を変更することで、動作を速くしたり面倒を減らしたり、ということが出来ます。

RL78/G23 Fast Prototyping Boardを買いました
japan.renesasrulz.com/cafe_rene/f/forum18/7087/rl78-g23-fast-prototyping-board/38050#38050
japan.renesasrulz.com/cafe_rene/f/forum18/7087/rl78-g23-fast-prototyping-board/39403#39403

以下、サンプルプログラムの例です。

シミュレータデバッガコンソール出力
シリアルコンソール出力

00_SimDebuggerConsole_printf/
10_SerialConsole_printf/

void main_task(void *pvParameters)
{
    INTERNAL_NOT_USED(pvParameters);

    LED0 = LED_ON;

    for (;;)
    {
        printf( "Hello World\r\n" );

        vTaskDelay( pdMS_TO_TICKS( 1000 ) );
        LED0 = ~LED0;

        vTaskDelay( pdMS_TO_TICKS( 1000 ) );
        LED0 = ~LED0;
    }

    /* vTaskDelete(NULL); */
}

 
実行例:



 

Parents
  • こんにちは。NoMaYです。

    あぁっ、GNURL78は以下の上の記述でも大丈夫だったけれども、LLVM-RL78は横着をせずにちゃんと以下の下の記述にしないとマズイということだったのですね。(@progbitは省略出来るようですけれども。)

    修正前:

        .section   .lowtext

     
    修正後:

        .section   .lowtext, "ax", @progbits

     
    以下、e2 studioの画面コピーです。

    LLVM for Renesas RL78 10.0.0.202301 → アセンブラソース修正後にOK

     

Reply
  • こんにちは。NoMaYです。

    あぁっ、GNURL78は以下の上の記述でも大丈夫だったけれども、LLVM-RL78は横着をせずにちゃんと以下の下の記述にしないとマズイということだったのですね。(@progbitは省略出来るようですけれども。)

    修正前:

        .section   .lowtext

     
    修正後:

        .section   .lowtext, "ax", @progbits

     
    以下、e2 studioの画面コピーです。

    LLVM for Renesas RL78 10.0.0.202301 → アセンブラソース修正後にOK

     

Children
No Data