FreeRTOS IIC_Deinit

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

FreeRTOS IIC_Deinit

535 次查看
fancycang
Contributor I

Hi everyone

When I enable task scheduling and uninitialize the IIC module, an error occurs,becouse of OSIF_SemaDestroy(). why?

0 项奖励
5 回复数

534 次查看
fancycang
Contributor I

I2C_MasterDeinit() and use flexio for iic

0 项奖励

494 次查看
PetrS
NXP TechSupport
NXP TechSupport

Hi

was I2C_MasterInit() called before, which should create osifSema?

BR, Petr

0 项奖励

489 次查看
fancycang
Contributor I

Hi petr

I'm glad to receive your reply. I created a task and started task scheduling.

This is my code

I2C_MasterInit(&flexio_instance, &i2c_pal_flexio_MasterConfig0);
 
/* Initialize Interrupt priority for FlexIO I2C driver as bus master */
INT_SYS_SetPriority( FLEXIO_IRQn, configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY );
 
.........
 
I2C_MasterDeinit(&flexio_instance);
 
After this line of code  "(void)OSIF_SemaDestroy(&(master->idleSemaphore));"
 and the code jump to "portFORCE_INLINE static void vPortRaiseBASEPRI( void )"
I do not know how to receive this problem........
 
Best regards
0 项奖励

439 次查看
PetrS
NXP TechSupport
NXP TechSupport

Hi,

maybe this happens due to the lack of heap and stack of the task, so to avoid this try to increment the task's stack and the Total heap size.

BR, Petr

0 项奖励

434 次查看
fancycang
Contributor I
Hi petr
i think my code heap and stack enough size
i finish this promble ,use function change i2c address
Best regards
0 项奖励