こんにちは。NoMaYです。過去にも同じようなスレッドを立てていましたが、CC-RXとGNURXで2つ立てていて、スレッドを使い分けるのも少し不便な気がしましたので、両者を区別せず投稿するスレッドを立ててみました。(e2 studioのプラグイン版もCS+の単体版もいっしょくたです。)CS+でTB-RX140を使おうとして、単体RXスマートコンフィグレータ V2.10.0では未対応だったことに気付き、アップデートマネージャを起動してみたところ、V2.11.0がリリースされていましたのでアップデートしました。V2.11.0を触っていて気付いたのですが、CGコンポーネントのコードを再生成させた時、変更の無いソースファイルは再生成されなくなり、ファイルのタイムスタンプが変わらないようになっていました。この挙動が設計意図なのか何かの拍子にそうなってしまっただけなのかは分からないのですが、再コンパイルする時間の短縮になるかも!と思ったのも束の間、以下の2つのファイルが変更が無くても毎回再生成されるので、思惑通りにはならないことに気付きました、、、以下の2つのファイルに関しても同様に変更の無い場合にはファイルを再生成しないように出来ないものでしょうか、、、(1) platform.h (実は何故このファイルがコード再生成時に毎回タイプスタンプが更新されるのか不思議です)(2) r_bsp_config.h (RX140の場合このファイルだけですがRX671とかの場合はr_bsp_interrupt_config.hもかもです)[余談]以下のニュース記事を読んでいて以下の解説に気付きました。ルネサスさんの取締役の人たちはソフトウェア開発ツールも含んで話をされていたのかな、、、まあ、過去形では無くて永遠に現在進行形であるべきテーマですね。(もっとも、Automotive部門の人の話だったようですけれども、、、)新しい方向性を見出して走り出したルネサス、Progress Updateから見えたもの2021/10/01 16:37 著者:大原雄介news.mynavi.jp/article/20211001-1988188/「さてそのIIBUの大きな柱がMCUであることは論を待たないが、2025年までに大幅にシェアを引き上げる、としている(Photo19)。。。。これについては、後のAutomotive向けの質疑応答の中で出てきた話ではあるのだが、そもそもルネサスのMCUが使われなかったのは、1つは「良いかもしれないけど使いにくい」という部分があり、こうした部分を徹底的に改善した事で顧客に使って貰いやすくなったという回答があり、これはIIBUにもおそらく共通する話であろうかと思う。」
こんにちは。NoMaYです。また少し脱線するのですけれども、最近のFITのPCDCモジュールでは仮想COMポートを2つ作れるようになったのかな、、、以下、画面コピーです。
こんにちは。NoMaYです。FITのPCDCモジュールのデモプログラムをe2 studioのSmart Browserでインポートしようとしたら、ダウンロードするのに1時間半も掛かった挙句、scfgファイルを開いてみれば、r_bsp v6.10がGitHubにありません、とかエラーになってしまい、なんだかなぁ、、、(片方だけなら、とも思うけれども、ダブルパンチだと、ウッキー&トホホ、となります、、、)以下、画面コピーです。ダウンロードするのに1時間半も掛かったr_bsp v6.10がGitHubにありません、とかエラーになるし、、、
こんにちは。NoMaYです。昨日から以下のスレッドに関心を持ってゴソゴソやっていたのですが、e2 studioで生成するFreeRTOS with IoT librariesプロジェクト最新版でも以下のソースのProcessing_Before_Start_Kernel()がRXスマートコンフィグレータにRTOS Objectコンポーネントのサポートが追加される以前のソースのまま(3年放置?)になっていて良くないと思うのです。FreeRTOS kernel onlyプロジェクトの同名ソースのProcessing_Before_Start_Kernel()と内容を同期させないとマズイと思います。(他にもUSB関連の部分もそうです。)freeRTOS otaサンプルコードにユーザーアプリケーションを組み込む方法についてjapan.renesasrulz.com/cafe_rene/f/forum5/8156/freertos-otaFreeRTOS with IoT librariesプロジェクトのvendors/renesas/amazon_freertos_common/freertos_start.cのProcessing_Before_Start_Kernel()
void Processing_Before_Start_Kernel(void){ BaseType_t ret; /************** task creation ****************************/ /* Main task. */ ret = xTaskCreate(main, "MAIN_TASK", 512, NULL, 3, NULL); if (pdPASS != ret) { while(1) { /* Failed! Task can not be created. */ } }} /* End of function Processing_Before_Start_Kernel() */
FreeRTOS kernel onlyプロジェクトのsrc/frtos_startup/freertos_start.cのProcessing_Before_Start_Kernel()
void Processing_Before_Start_Kernel(void){ BaseType_t ret; 略 /** USB RTOS Configuration **/#if (RTOS_USB_SUPPORT == 1) usb_rtos_err_t err = usb_rtos_configuration(); if (UsbRtos_Success != err) { while(1) { /** Failure of UsbRtos Configuration **/ } }#endif Kernel_Object_init(); /************** task creation ****************************/ /* Main task. */ ret = xTaskCreate(main_task, "MAIN_TASK", 512, NULL, 3, NULL); if (pdPASS != ret) { while(1) { /* Failed! Task can not be created. */ } }} /* End of function Processing_Before_Start_Kernel() */
[関連リンク]e2 studio v7.5.0でFreeRTOS+SCFGプロジェクトではRTOS Objectコンポーネントというものは使えないのかなjapan.renesasrulz.com/cafe_rene/f/forum21/5940/e2-studio-v7-5-0-freertos-scfg-rtos-object[追記]確認したFreeRTOS with IoT librariesプロジェクト最新版というのは以下の画面コピー上の一番上のものです。[追記その2]ビルドしようとしたら以下の画面コピーのコンパイルエラーが発生してしまいましたね。(私の環境のせいでは無いと思うのです。この2つのファイルがピンポイントで、ダウンロードされない? or ソース生成されない? なんてのは、、、)[追記その3]これは、たぶん、SCFGファイルを更新せずにBSPモジュールのファイルのみ手作業でアップデートしていることにより、整合性が失われていて、この2つのファイルがソースを再生成すると削除されてしまうせいですかね。(以下の画面コピーでは念のためe2 studioのバージョンを1つ戻して試しました。) なにか、以前にどなたかの投稿で見掛けたような記憶も有るような無いような、そんな気もしてきているのですけれども。
こんにちは SAM です。フラッシュメモリデータ管理モジュールのデーター長の範囲config ファイルのコメントには from 0 to 65535 と記述されているがコンフィグレータ―は from 0 to 1024 となっていて 1024 バイト以上の入力ができない。RX SmartConfigurator に設定ファイルがあって from 0 to 1024 の設定があるなら修正したい。
SAMさん、こんにちは。NoMaYです。少し調べてみましたが、まず、APIドキュメントの記載とソースのコメントのどちらが正しいのか?というのが先にあるように思いました。(以下の画面コピーを参照して下さい。)
APIドキュメントの記載: Type2,3,4 は 1 ~ 1024ソースのコメント: Type2,3,4 は 0 ~ 65535 (← 恐らく 1 ~ 65536 のtypoと思われる、なぜなら 0 に意味は無いでしょうから)関連情報:
NoMaYさん
シェルティです、こんにちは。
こんにちは。本件社内の要件管理ツールに入れて開発チームに連絡しておきました。進展がありましたらまた書き込みます。
[追記] 本件=FreeRTOS with IoT librariesプロジェクトのvendors/renesas/amazon_freertos_common/freertos_start.cのProcessing_Before_Start_Kernel()の件です。
以上です
フラッシュFITモジュールのデータサイズ1~1024 or 0~65535の件も、本件社内の要件管理ツールに入れて開発チームに連絡しておきました。進展がありましたらまた書き込みます。
データサイズ1~1024 or 0~65535の件開発チームから見解入手しました。
----
ご指摘いただきありがとうございます。 本件、コンフィグレーションファイルのコメントの誤記となります。 ドキュメントに記載の範囲(1~1024)でご使用ください。 誤記は次期バージョンで修正いたします。以上です
シェルティさん、NoMaYさん
ありがとうございます。これからもよろしくお願いいたします。
こんにちは。NoMaYです。先日投稿したFreeRTOS with IoT librariesプロジェクトのProcessing_Before_Start_Kernel()の件で、もうひとつ気になるのは、些細なことですが、かつ、RXスマートコンフィグレータからは完全に脱線しますが、ソースコードの以下のwhileループは、くだけた表現をすれが、これはちょっとないわ~、みたいな気がするのです。歴史的事情、もしくは、うっかり適切な終了APIを呼ばずにタスクからリターンしてしまった場合へのフールプルーフかも知れませんけれども、whileループでタスクを無限回実行するのは、かなり気持ち悪い、と思うのです。(でも、個人の感想、ではありますが。)現状:aws_202107_101_e2v202204\application_code\main.c (トップのフォルダ名は当方のプロジェクトフォルダ)
/** * @brief The application entry point from a power on reset is PowerON_Reset_PC() ← このコメントも間違ってますよね? * in resetprg.c. */void main( void ){ while(1) { //vTaskDelay(10000); main_task(); }}
(参考) aws_202107_101_e2v202204\application_code\renesas_code\main_task.c (トップのフォルダ名は当方のプロジェクトフォルダ)
void main_task(void){ uint32_t bank_info; /* enable MCU pins */ R_Pins_Create(); /* flash initialization */ R_FLASH_Open();// R_FLASH_Control(FLASH_CMD_BANK_GET, &bank_info); R_SFD_Open(); /* flash access semaphore creation */ xSemaphoreFlashAccess = xSemaphoreCreateMutex(); xSemaphoreGive(xSemaphoreFlashAccess);// task_info.main_task_handle = xTaskGetCurrentTaskHandle(); /* main loop */ while(1) { vTaskDelay(10000); }}
自然なのは以下なのではないかなぁと思うのですけれども:
void main( void ){ main_task(); while(1) { vTaskDelay(10000); //This is a fool-proof loop for returing from main_task() accidentaly. }}