bejanissim wrote on Sunday, December 14, 2008:
Dear Dave,
First, let me thank you for your quick response.
As for the problem:
-------------------
I know i’m not using the same hardware but the STM32 uController is likley the same (there are minor differences which are not relevant for that matter).
I created a new project which is based on the demo one.
Through debuging the code i noticed the following:
--------------------------------------------------
vPortStartFirstTask() calls SVC to start the first task, but there is no code inside
SVCHandler ISR function. from this point the the system got stucked. No task is being handeled. I no this since i added breakpoint inside each task (basically i have 2 tasks besides the idle tasks).
attached the main function of my project:
int main(void)
{
/* Initialize the JIG */
JIG_SetupHardware();
/* Create the queue used by the LCD task.
Messages for display on the LCD are received via this queue. */
psLCDQueue = xQueueCreate(LCD_QUEUE_SIZE, sizeof(LCD_MESSAGE));
/* Create the queue used by the Menu Managment task.
Messages for Menu Managment are received via this queue. */
psKeyQueue = xQueueCreate(KEY_QUEUE_SIZE, sizeof(u8));
/* Create a new task and add it to the list of tasks that are ready to run. */
xTaskCreate(LCD_Task,"LCD",configMINIMAL_STACK_SIZE,NULL,tskIDLE_PRIORITY,NULL);
xTaskCreate(MENU_MNG_Task,"MENU_MNG",configMINIMAL_STACK_SIZE,NULL,tskIDLE_PRIORITY,NULL);
/* Start the scheduler. */
vTaskStartScheduler();
/* Will only get here if there was not enough heap space to create the idle task. */
return 0;
}
Hope it halped.
Nissim.