フィルターのクリア

HOW TO place INTERRUPT SERVICE ROUTINE into "code_ramfuncs" section

2 ビュー (過去 30 日間)
BD
BD 2017 年 12 月 3 日
コメント済み: BD 2017 年 12 月 4 日
HOW TO place INTERRUPT SERVICE ROUTINE generated by embedded coder for TMS320c28x processor into "code_ramfuncs" section

採用された回答

zhichuan wang
zhichuan wang 2017 年 12 月 4 日
編集済み: zhichuan wang 2017 年 12 月 4 日
In my opinion, you can set the Configuration sets to do you want.
1.you can place the folloing statements in the Code Generation->Custom Code->insert custom C code in generated->Source file
#pragma CODE_SECTION(ISR_Function, "ramfuncs")
Then, this statement will be inserted to you model.c code.
2.Next,choose "Boot From Flash(stand alone execution)"in the Hardware Implementation Panel.This will make all of the genearted code run in flash. you can check the Simulink's c28335.cmd with the "Edit..", like this:
% #if BOOT_FROM_FLASH
SECTIONS
{
.vectors: load = 0x000000000
.text: > FLASH, PAGE = 0
.switch: > FLASH, PAGE = 0
……
codestart: > BEGINFLASH, PAGE = 0
csmpasswds: > CSM_PWL, PAGE = 0
ramfuncs: LOAD = FLASH,
RUN = RAML4L7,
LOAD_START(_RamfuncsLoadStart),
LOAD_END(_RamfuncsLoadEnd),
RUN_START(_RamfuncsRunStart),
PAGE = 0
} #else
SECTIONS
{
.vectors: load = 0x000000000
.text: > RAML4L7, PAGE = 0
.switch: > RAML4L7, PAGE = 0
……
codestart: > BEGINRAM, PAGE = 0
csmpasswds: > CSM_PWL, PAGE = 0
csm_rsvd: > RAMM0, PAGE = 0
ramfuncs: > RAML4L7, PAGE = 0
}
#endif
Hope this will be helpful.
  1 件のコメント
BD
BD 2017 年 12 月 4 日
Thanks zhichuan wang.... that works perfectly

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeEmbedded Coder についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by