tricore, fp kernel isr
Posted: Fri Oct 14, 2016 8:07 am
Hi!
I'm new in the world of ERIKA, and I try to configure the simplest OS (1 task, 1 alarm, 1 interrupt, 1 counter). I tried it with KERNEL_TYPE = FP, because it seems the simplest. When I try to build the OIL file, the following errors appear:
ctc E213: ["D:\tools\EE_RT-~1.0-J\eclipse\plugins\COMEUE~4.N20\ee_files\pkg\cpu\common\inc\ee_irqstub.h" 86/59] arguments given to macro "EE_std_enableIRQ_nested"
ctc E213: ["D:\tools\EE_RT-~1.0-J\eclipse\plugins\COMEUE~4.N20\ee_files\pkg\cpu\common\inc\ee_irqstub.h" 87/60] arguments given to macro "EE_std_disableIRQ_nested"
I cannot figure out the reason. Probably something is wrong with my OIL file. Actually I started with a demo project, with a little modification. Without ISR it's generating fine. Could anyone give me some hint, what should I do? Here is my OIL file:
CPU test_application {
OS EE {
EE_OPT = "EE_DEBUG";
EE_OPT = "__ASSERT__";
EE_OPT = "EE_EXECUTE_FROM_RAM";
//EE_OPT = "EE_SAVE_TEMP_FILES";
STATUS = EXTENDED;
USERESSCHEDULER = FALSE;
MCU_DATA = TRICORE {
MODEL = TC27x;
};
CPU_DATA = TRICORE {
CPU_CLOCK = 200.0;
APP_SRC = "code.c";
COMPILER_TYPE = TASKING;
};
BOARD_DATA = TRIBOARD_TC2X5;
};
/* this is the OIL part for the task displaying the christmas tree */
TASK Task1 {
PRIORITY = 0x01; /* Low priority */
AUTOSTART = FALSE;
STACK = SHARED;
ACTIVATION = 1; /* only one pending activation */
};
/* this is the OIL part for the task activated by the button press */
TASK Task2 {
PRIORITY = 0x02; /* High priority */
SCHEDULE = FULL;
AUTOSTART = TRUE;
STACK = SHARED;
};
COUNTER system_timer {
MINCYCLE = 1;
MAXALLOWEDVALUE = 2147483647;
TICKSPERBASE = 1;
SECONDSPERTICK = 0.001;
};
ALARM Alarm_TASK1_4s {
COUNTER = system_timer;
ACTION = ACTIVATETASK {
TASK = Task1;
};
AUTOSTART = TRUE {
ALARMTIME = 2000;
CYCLETIME = 2000;
};
};
ISR Button_isr2 {
CATEGORY = 2;
LEVEL = "2";
PRIORITY = 2;
HANDLER = "button_handler"; // IRQ handler
};
OS EE { KERNEL_TYPE = FP; };
TASK Task1 { SCHEDULE = FULL; };
TASK Task2 { ACTIVATION = 1; };
};
Thank you for your help!
I'm new in the world of ERIKA, and I try to configure the simplest OS (1 task, 1 alarm, 1 interrupt, 1 counter). I tried it with KERNEL_TYPE = FP, because it seems the simplest. When I try to build the OIL file, the following errors appear:
ctc E213: ["D:\tools\EE_RT-~1.0-J\eclipse\plugins\COMEUE~4.N20\ee_files\pkg\cpu\common\inc\ee_irqstub.h" 86/59] arguments given to macro "EE_std_enableIRQ_nested"
ctc E213: ["D:\tools\EE_RT-~1.0-J\eclipse\plugins\COMEUE~4.N20\ee_files\pkg\cpu\common\inc\ee_irqstub.h" 87/60] arguments given to macro "EE_std_disableIRQ_nested"
I cannot figure out the reason. Probably something is wrong with my OIL file. Actually I started with a demo project, with a little modification. Without ISR it's generating fine. Could anyone give me some hint, what should I do? Here is my OIL file:
CPU test_application {
OS EE {
EE_OPT = "EE_DEBUG";
EE_OPT = "__ASSERT__";
EE_OPT = "EE_EXECUTE_FROM_RAM";
//EE_OPT = "EE_SAVE_TEMP_FILES";
STATUS = EXTENDED;
USERESSCHEDULER = FALSE;
MCU_DATA = TRICORE {
MODEL = TC27x;
};
CPU_DATA = TRICORE {
CPU_CLOCK = 200.0;
APP_SRC = "code.c";
COMPILER_TYPE = TASKING;
};
BOARD_DATA = TRIBOARD_TC2X5;
};
/* this is the OIL part for the task displaying the christmas tree */
TASK Task1 {
PRIORITY = 0x01; /* Low priority */
AUTOSTART = FALSE;
STACK = SHARED;
ACTIVATION = 1; /* only one pending activation */
};
/* this is the OIL part for the task activated by the button press */
TASK Task2 {
PRIORITY = 0x02; /* High priority */
SCHEDULE = FULL;
AUTOSTART = TRUE;
STACK = SHARED;
};
COUNTER system_timer {
MINCYCLE = 1;
MAXALLOWEDVALUE = 2147483647;
TICKSPERBASE = 1;
SECONDSPERTICK = 0.001;
};
ALARM Alarm_TASK1_4s {
COUNTER = system_timer;
ACTION = ACTIVATETASK {
TASK = Task1;
};
AUTOSTART = TRUE {
ALARMTIME = 2000;
CYCLETIME = 2000;
};
};
ISR Button_isr2 {
CATEGORY = 2;
LEVEL = "2";
PRIORITY = 2;
HANDLER = "button_handler"; // IRQ handler
};
OS EE { KERNEL_TYPE = FP; };
TASK Task1 { SCHEDULE = FULL; };
TASK Task2 { ACTIVATION = 1; };
};
Thank you for your help!