K60 I2C as slave.when I use function pointer, jump from main to boot, I2C SCL SDA from high change to low

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

K60 I2C as slave.when I use function pointer, jump from main to boot, I2C SCL SDA from high change to low

1,264 次查看
leimao
Contributor II

That's really strange. The master send cmd ask slave mcu,jump from main to boot, the slave mcu got right cmd, and when I use function pointer jump, The I2C

SCL and SDA will lock to low.

标签 (1)
0 项奖励
回复
3 回复数

1,061 次查看
Hui_Ma
NXP TechSupport
NXP TechSupport

Hi Lei,

I have checked TWR-K60N512 board, during the reset phase the I2C related pins are still keeping high voltage (with external pull-up resistor).

Could you provide the K60 I2C related circuit? And when the I2C slave get cmd to re-boot, during the slave in boot phase, what are master board doing? If the I2C related pin affected by master software?

Thank you for the attention.

0 项奖励
回复

1,061 次查看
leimao
Contributor II

Hi Hui:

     Thanks for youe help.

     I use scope to test I2C SDL and SCL. when rst, the master send nothing to slave.In face, when master send rst cmd, the master will silence 5 sec. when master start send cmd to slave, the slave allready in mainApp.

        And for I2C circuit, it works fine. The pull-up resistor we added in my pcb.

        I finally find a way to fix this problem. And I think this is a bug in kinetis. Before I jump from mainApp to Boot. I rst all interrupt, and rst scl SDA pin to orignal state. It finally works.    

0 项奖励
回复

1,061 次查看
Hui_Ma
NXP TechSupport
NXP TechSupport

Hi,

If there exists bootloader similar application with slave MCU K60? If yes, it need to redirect the interrupt vector table for the application and the bootloader. Otherwise, it could cause interrupt service routine error.

Thank you for the attention.

0 项奖励
回复