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

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

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

734 Views
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.

Labels (1)
0 Kudos
3 Replies

531 Views
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 Kudos

531 Views
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 Kudos

531 Views
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 Kudos