TI达人:
我使用TIDA-01585的代码,在此基础上修改IIC的管脚配置,为什么IIC模块初始化后UCBBUSY一直处于忙状态,未初始化之前看到寄存器是0,只要将复位清零后,UCBBUSY一直处于忙状态。这个是什么原因?除了将SYSCFG2的USCIBRMP置1外还需要操作什么?
执行最后一行代码后,就出现问题。
P2SEL0 |= BIT4 | BIT5; // I2C pin setup P2.4 & P2.5
UCB0CTLW0 |= UCSWRST; // Reset I2C, stop I2C data, clear IFG & IE.
UCB0CTLW0 |= UCMODE_3 | UCMST | UCSYNC | UCSSEL_3; // I2C mode, Master Mode, SMCLK(16MHz).
UCB0CTLW1 |= UCASTP_2; // Auto stop genaration.
UCB0BRW = 38; // Baud Rate = 16M/40 = 400KHz
UCB0TBCNT = 255; //
UCB0CTL1 &= ~UCSWRST; // Released I2C for operation