FreeRTOS IIC_Deinit

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

FreeRTOS IIC_Deinit

563件の閲覧回数
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 返答(返信)

562件の閲覧回数
fancycang
Contributor I

I2C_MasterDeinit() and use flexio for iic

0 件の賞賛

522件の閲覧回数
PetrS
NXP TechSupport
NXP TechSupport

Hi

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

BR, Petr

0 件の賞賛

517件の閲覧回数
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 件の賞賛

467件の閲覧回数
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 件の賞賛

462件の閲覧回数
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 件の賞賛