Hello everyone,
I have this problem in a project on MCF52259.
Using pit0 and pit1 interrupts for the timer and the AD conversion at intervals of 10milliseconds.
use Eport 1 as input interrupt for the management of a keyboard
use Eport 3, 5 and Eport Eport 7 to handle 3 incoming signals required to determine the behavior of my project.
In addition use the devices I2C, QSPI, and all the uart interrupt mode with the relative levels of priority as default.
my unexpected interrupt problem occurs when on Eport 7 a variation occurs but not all times.
Depending on the expected error in this case occurs on a different task each time.
the chart of tasks is as follows:
TASK_TEMPLATE_STRUCT MQX_template_list[] ={ // "PARAMETER" "TIME SLICE "{INIT_MICRO_TASK, init_task, 1500, 9,"initialization", MQX_AUTO_START_TASK, 0, 0}, {TASK_CREATE_STRUCT, task_struct, 1500, 10, "create_struct", MQX_AUTO_START_TASK,0, 0}, {TASK_CREATE_QUEUE, task_queue, 1500 , 12, "TASK_CREATE", MQX_AUTO_START_TASK, 0, 0}, {TASK_MANAGEMENT, tk_Management, 1500 , 12, "TASK_MANAGEMENT",0 , 0, 0}, {TASK_MENU_ON_RUN, tk_Menu_On_Run, 2500 , 12, "TASK_MENU_ONRUN", 0, 0, 0}, {TASK_INQUIRY_DIG_HARWARE,tk_InquiryDigHardware, 1500, 12, "TASK_INQUIRY_HARDWARE", 0 , 0, 0}, {TASK_EXTERNAL_INQUIRY,tk_Inquiry_External_Hardware, 1500,12, "TASK_EXTERNAL_INQUIRY", 0 , 0, 0}, {TASK_UART0_232, tk_uart_0, 1500 , 12, "TASK_RS232", 0 , 0, 0}, {TASK_UART1_485,tk_uart_1, 1000 , 12, "TASK_RS485", 0 , 0, 0}, {TASK_UART2_INT,tk_uart_2, 1000 , 12, "TASK_INTCOM", 0 , 0, 0}, {TASK_SERVICE_BUTTON, tk_button_block, 2000,12, "TASK_BUTTON_SERVICE", 0 ,0, 0},#ifdef USB_TOOL { USB_TASK , USB_task, 2500L, 11, "USB" , MQX_AUTO_START_TASK},#endif #ifdef CAN_BUS { TX_TASK, Tx_Task, 1000L, 7L, "TX task", 0, 0, 0}, { RX_TASK, Rx_Task, 1000L, 7L, "RX task", 0, 0, 0},#endif {0, 0, 0, 0, 0, 0, 0, 0} My feeling is that of being Eport 7 level 7 interrupts and an interrupt occurring while a uart or QSPI has LEVEL lower MQX it can no longer to go back after has been correctly its interrupt to Eport 7.
Can I change the interrupt level related to Eport 7?
Why?