Hi Lukas,
I don't think timeout is an issue. Anyways I tried as you suggested by keeping the value to 3seconds. But it did not help.
I had created the return code for linflexed uart task, just below led task.
I am using S32 Design Studio for power Architecture Version2.1 .
Can you go through the code and tell me what I have missed.
Krishnaja.
Hi,
isn't the timeout value of LINFLEXD_UART_DRV_ReceiveDataBlocking function too short?
What is the return code of this function? I can see you don't check it.
If this doesn't help, what is the version of SDK and S32DS?
Regards,
Lukas
Hi,
sorry for delay, we had Easter holidays here, so some answers are delayed.
Let me repeat this question to move forward - what is the return code from LINFLEXD_UART_DRV_ReceiveDataBlocking?
Regards,
Lukas
Hi,
Let us keep receive Data block aside for time being.
I have attached main of my code. According to high-lighted code, I should get "Hello world!" msg before the scheduler task on terminal. But I am not getting the same.
int main(void)
{
/* Write your local variable definition here */
/*** Processor Expert internal initialization. DON'T REMOVE THIS CODE!!! ***/
#ifdef PEX_RTOS_INIT
PEX_RTOS_INIT(); /* Initialization of the selected RTOS. Macro is defined by the RTOS component. */
#endif
/*** End of Processor Expert internal initialization. ***/
/* Initialize clocks */
CLOCK_SYS_Init(g_clockManConfigsArr, CLOCK_MANAGER_CONFIG_CNT,
g_clockManCallbacksArr, CLOCK_MANAGER_CALLBACK_CNT);
CLOCK_SYS_UpdateConfiguration(0U, CLOCK_MANAGER_POLICY_AGREEMENT);
PINS_DRV_Init(NUM_OF_CONFIGURED_PINS, g_pin_mux_InitConfigArr);
/* Initialize LINFlexD module for UART usage */
LINFLEXD_UART_DRV_Init(INST_LINFLEXD_UART1, &linflexd_uart1_State, &linflexd_uart1_InitConfig0);
/* Send the greeting message to console */
LINFLEXD_UART_DRV_SendData(INST_LINFLEXD_UART1, (uint8_t*)msg, strlen(msg));
#if START_OS_DEMO
/**/
xTaskCreate( vLEDTask, ( const char * const ) "LedTask", configMINIMAL_STACK_SIZE, (void*)4, mainLED_TASK_PRIORITY, NULL );
xTaskCreate( vLEDTask, ( const char * const ) "LedTask", configMINIMAL_STACK_SIZE, (void*)1, mainLED_TASK_PRIORITY+1, NULL );
xTaskCreate( vLEDTask, ( const char * const ) "LedTask", configMINIMAL_STACK_SIZE, (void*)2, mainLED_TASK_PRIORITY+2, NULL );
xTaskCreate( vLEDTask, ( const char * const ) "LedTask", configMINIMAL_STACK_SIZE, (void*)3, mainLED_TASK_PRIORITY+3, NULL );
xTaskCreate( uartTask, ( const char * const ) "UARTTask", configMINIMAL_STACK_SIZE, (void*)0, mainLED_TASK_PRIORITY+4, NULL );
//ptr to entry fn(name of fn),descriptive name of task(debugger),no of words, value passed to create task, priority, optional
/* Start the scheduler. */
vTaskStartScheduler();
#endif
Krishnaja.
Hi,
could you send me whole project? I'm afraid the main is not enough in this case.
Thanks,
Lukas
Hi,
It is mandatory to call init and other functions (if drivers uses OS services) after starting scheduler. Otherwise it won't work.
Regards,
Lukas
Hi,
Tell me how to call init and what other functions should i call and where?
Krishnaja.
Hi,
you can take a look at:
Regards,
Lukas