お世話になります。
ルネサスさんの 最新マイコン RZ/T2M を使用・評価しています。
開発ツール には e2Studio (Ver2022-10 )for ARM GCC RZです。
評価ボードには AP-RX72M-0A を使用します。
CS3 に拡張 SDRAMがあります。
script ファイル fsp_rom_execution.ld には 下記のように
記載があります。
MEMORY{ ATCM : ORIGIN = 0x00000000, LENGTH = 0x00080000 BTCM : ORIGIN = 0x00100000, LENGTH = 0x00010000 SYSTEM_RAM : ORIGIN = 0x10000000, LENGTH = 0x00180000 SYSTEM_RAM_MIRROR : ORIGIN = 0x30000000, LENGTH = 0x00180000 xSPI0_CS0_SPACE_MIRROR : ORIGIN = 0x40000000, LENGTH = 0x00400000 CS3_SPACE_MIRROR : ORIGIN = 0x58000000, LENGTH = 0x01000000 xSPI0_CS0_SPACE : ORIGIN = 0x60000000, LENGTH = 0x00400000 CS3_SPACE : ORIGIN = 0x78000000, LENGTH = 0x01000000}
CS3に配置している SDRAM には ソース上で 下記の [section exram] のように ある変数は このSDRAMに配置したいです。
#pragma section exram// struct ETHER_SEND_DATA{ int savePoint; int readPoint; int size[ETHER_SEND_SAVE_BUFFS] ; char data[ETHER_SEND_SAVE_BUFFS][ETHER_SEND_SAVE_BUFF_SIZE];//#pragma section
script ファイル には どのように追加したら、いいでしょうか?
是非 教えてください
宜しくお願いいたします。
RZFanさん、こんにちは。NoMaYです。#お久しぶりです。質問されているフォーラム、および、質問されている内容から察するところ、以下の評価ボード名は間違いですよね?> 評価ボードには AP-RX72M-0A を使用します。GCCでは以下の#pragmaは使えませんので__attribute__((section("セクション名")))で変数属性を指定するようにして下さい。(なお、一般的には、ということですけれども。)以下の書き方はCC-RX向けソースの場合です。
#pragma section exram#pragma section
GCC向けのソースでは以下のように書きます。(なお、一般的には、ということですけれども。)
変数型 変数名 __attribute__((section("セクション名")));
他方、GCCのリンカスクリプトの書き方は、CC-RX⇒GCCの置き換え案件なら、以下のスレッドは参考になりませんでしょうか?(なお、以下のスレッド自体は、GCC for Renesas RX向けのものですけれども。)GCCプロジェクトで変数や関数を指定のセクションに配置する方法community-ja.renesas.com/cafe_rene/forums-groups/mcu-mpu/rx/f/forum5/7937/gcc
NoMaYさん
いつもお世話になります。
ご指導、ありがとございます。
評価ボードは AP-RZT2-0Aを使用しています。
以前の”GCCプロジェクトで変数や関数を指定のセクションに配置する方法”のフォーラムを参考して、
チャレンジしてみます。
今後もよろしくお願いいたします。
Memory Region (MEMORY{ ... }) とセクションの関係についてはこのFAQも参考にすると良いです。FAQ - GCCプロジェクトでセクションの配置を定義する方法https://ja-support.renesas.com/knowledgeBase/19549765#pragmaはコンパイラの独自仕様を実装するための仕組みなので、当然ながらコンパイラが違えば#pragmaの記述方法も効果も違います。GCCの使い方についてはStackOverflow.comなど、他のユーザコミュニティの記事も参考にしてみてください。https://www.google.com/search?q=site%3Astackoverflow.com+gcc+%22linker+script%22+%22memory+region%22