CSplusでFreeRTOSプロジェクトもどきSample Programを作ってRenesas RX Simulator/TB-RX65Nで試せるようにしてみた

こんにちは。NoMaYです。

別スレッド『e2 studio v7.5.0のFreeRTOS ProjectでVisual Expression+Renesas RX Simulator/TB-RX65Nで試せるSample Programを作ってみた』のサンプルプログラムをCS+で試せるようにしてみました。(ちなみに、今のところ(?)、CS+から起動する単体のRXスマートコンフィグレータにはFreeRTOS KernelコンポーネントやFreeRTOS Objectコンポーネントを設定する機能がありませんので、手作業でソースファイルを編集することになります。)

TB-RX65N用 (以下はe2 studioの時と同じです)

(1) TBボードのLED0を500ms毎にOn/Offする(FreeRTOS APIのvTaskDelay()を使用)
(2) TBボードのSW1押下毎にLED1をOn/Offする(タスクでセマフォ待ちして割り込みでセマフォ待ち解除)
(3) TBボードのSCI1で3文字受信毎に3文字エコーバックする(タスクでセマフォ待ちして割り込みで3文字毎にセマフォ待ち解除)

Renesas RX Simulator用 (以下はVisual Expression→Pythonコンソールで作ったFormとなる点以外はe2 studioの時と同じです)

(1') Pythonコンソールで作ったFormのLED1を50ms(但しシミュレーション上の時間)毎にOn/Offする(上の(1)の括弧内と同様)
(2') Pythonコンソールで作ったFormのSW1押下毎にFormのLED2をOn/Offする(上の(2)の括弧内と同様)
(3') デバッグコンソール⇔SCI1で3文字受信毎に3文字エコーバックする(上の(3)の括弧内と同様)

プロジェクトのファイル一式 (CS+ for CC V8.02+CC-RX V2.03でビルド)
sim_rx65n_scfg_freertos_fit_ccrx_c_csplus_20190929.zip    745KB
sim_rx65n_scfg_freertos_fit_ccrx_c_csplus_20191019.zip    757KB (主にGNURX版との合わせ込みです)

含まれるプロジェクト
sim_rx65n_scfg_freertos_fit.mtpj ← Renesas RX Simulator用(TB-RX65Nでも動作可(*1,*2))
tb_rx65n_scfg_freertos_fit.mtpj ← TB-RX65N用(*1,*2)

含まれるPythonコンソールスクリプト
sim_rx65n_LED0_LED1_SW1_form.py ← Renesas RX Simulator用(プロジェクトに登録されているので右ボタンメニューから実行)
sim_rx65n_scfg_freertos_fit.py ← Renesas RX Simulator用(プロジェクト読み込み時にCS+により自動的に実行)

*1:以前に別スレッド『RenesasさんからRXマイコンの低価格Target Boardが出たのでサンプルプログラムをCSplus projectへ変換してみようと思います』に投稿したプロジェクトと同じIDコードを設定しています。

*2:実機用のデバッグツールのプロパティは当方特有の事情でオンボードエミュレータが使えない為に未確認です。

追加の説明は以下のスレッドに書きました。

CSplusでFreeRTOSプロジェクトもどきSample Programを作ってRenesas RX Simulator/TB-RX65Nで試せるようにしてみた
japan.renesasrulz.com/cafe_rene/f/forum21/5980/csplus-freertos-sample-program-renesas-rx-simulator-tb-rx65n

以下、画面コピーと写真です。 (写真はe2 studioの時のものと同じです)

Renesas RX Simulatorで実行



TB-RX65Nで実行



[履歴]

sim_rx65n_scfg_freertos_fit_ccrx_c_csplus_20190929.zip
・初版

sim_rx65n_scfg_freertos_fit_ccrx_c_csplus_20191019.zip
・MOTファイルは変わりません
・VOLATILEマクロ追加(GNURX版との合わせ込み)
 変更ファイル: src/smc_gen/r_config/r_bsp_config.h, src/sim_rx65n_int_emulation.c
・machine.hファイル追加(CC-RX版では未使用)(GNURX版との合わせ込み)
 追加ファイル: src/r_bsp_modified/GNURX_support/machine.h
 変更ファイル: src/smc_gen/r_config/r_bsp_config.h
・GNURX版でのワーニング対処の反映(GNURX版との合わせ込み)
 変更ファイル: src/smc_gen/r_pincfg/Pin.c
・実機用のデバッグツールのプロパティを設定(当方特有の事情でオンボードエミュレータが使えない為に未確認です)
 変更ファイル: sim_rx65n_scfg_freertos_fit.mtpj