Forums: Help (Thread #16416)

H8-3694FでDEF_TEX (2007-10-15 19:51 by Anonymous #32778)

H8-3694FにHOSを載せて検証中しています。

system.cfgに以下の静的APIを定義してビルドをしますとエラーになります。
CRE_TSK(TASK1, {TA_HLNG|TA_ACT, 0x12345678, Task1, 1, 256, NULL});
DEF_TEX(TASK1, {TA_HLNG,Task1_excption});
---
C:\WorkSpace\exc-task\sample\kernel_cfg.c(207) : C2225 (E) Undeclared name "kernel_texcb_rom"
C:\WorkSpace\exc-task\sample\kernel_cfg.c(207) : C2233 (E) Illegal array reference
C:\WorkSpace\exc-task\sample\kernel_cfg.c(207) : C2238 (E) Lvalue or function type required for "&"
C:\WorkSpace\exc-task\sample\kernel_cfg.c(207) : C2222 (E) Type not compatible for "="
----
kernel_cfg.cの207行目は以下のコードが生成されます。
kernel_tcb_ram_tbl[(TASK1) - TMIN_TSKID]->texcb = &kernel_texcb_rom[0];

自動生成されるコードにエラーが出るでので対応が静らいですが何が問題でしょうか?

Reply to #32778×

You can not use Wiki syntax
You are not logged in. To discriminate your posts from the rest, you need to pick a nickname. (The uniqueness of nickname is not reserved. It is possible that someone else could use the exactly same nickname. If you want assurance of your identity, you are recommended to login before posting.) Login

RE: H8-3694FでDEF_TEX (2007-10-15 21:52 by hamayan #32786)

> kernel_tcb_ram_tbl[(TASK1) - TMIN_TSKID]->texcb = &kernel_texcb_rom[0];

これは随分前に問題になったのですが、簡単に言えばHEWでは配列に0を指定できない。gccはできるらしいのですが。

新しいリリース版は判らないのですが、お使いの物はコンフィギュレータのソースをいじるしか無い、、、かも。
Reply to #32778

Reply to #32786×

You can not use Wiki syntax
You are not logged in. To discriminate your posts from the rest, you need to pick a nickname. (The uniqueness of nickname is not reserved. It is possible that someone else could use the exactly same nickname. If you want assurance of your identity, you are recommended to login before posting.) Login