您好,
我的问题是,一旦PWM TIMER_A2_BASE启动,EUSCI_B3_BASE上的I2C通信就会停止。
相同的PWM与 EUSCI_B2_BASE或EUSCI_B1_BASE一起工作。
I2C代码在 EUSCI_B1_BASE = EUSCI_B2_BASE = EUSCI_B3_BASE上完全相同
该问题是 由于EUSCI_B3_BASE与 TIMER_A2_BASE一起工作的触发器造成的。
当两者不能同时工作时,它们都能正常工作。
也许是优先事项?
我的I2C初始化:
/*初始化USI_B3和I2C主设备以与从属设备进行通信*/
MAP_I2C_INITMaster (EUSCI_B3_BASE,&i2cConfig3);
MAP_I2C_setMode (EUSCI_B3_BASE,EUSCI_B_I2C_Transmit_MODE);
/*启用I2C模块以启动操作*/
MAP_I2C_enableModule (EUSI_B3_BASE);
/*启用并清除中断标志*/
MAP_I2C_ClearInterruptFlag (EUSCI_B3_BASE,EUSCI_B_I2C_Transmit_INTERRUPT0 + EUSCI_B_I2C_NAK_interrupt);
/*启用主传输中断*/
MAP_I2C_enableInterrupt (EUSCI_B3_BASE,EUSCI_B_I2C_Transmit_INTERRUPT0 + EUSCI_B_I2C_NAK_interrupt);
MAP_Interrupt_enableInterrupt (INT_EUSCIB3);
以下是我的PWM初始化:
Timer_a_PWMConfig pwmConfig =
{
Timer_A_CLOCKSOURCE_SMCLK,
Timer_a_CLOCKSOURCE_diver_1,
1920年
Timer_a_CAPTURECOMPare_register_3,
Timer_a_OUTPUTMODE_RESET_SET,
960
};
MAP_Timer_a_generatePWM (TIMER_A2_BASE,&pwmConfig);








