请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:MSP430G2553
int main (void) { GRACE 初始化(); //激活 Grace 生成的配置 UCB0I2CSA = 0x40; //配置加载设备 TxData[0]= 0x00; //写入 IODIRA 寄存器 TxData[1]= 0x00; //将端口 A 中的所有引脚设置为输出 TxData[2]= 0x01; //写入 IODIAB 寄存器 TxData[3]= 0x00; //将端口 B 中的所有引脚设置为输出 TxData[4]= 0x0C; //写入 GPPUA 寄存器 TxData[5]= 0xFF; //在端口 A 中的所有引脚上启用上拉电阻器 TxData[6]= 0x0D; //写入 GPPUB 寄存器 TxData[7]= 0xFF; //在端口 B 的所有引脚上启用上拉电阻器 PTxData =(unsigned char *) TxData; TXByteCtr = TxData 的大小; UCB0CTL1 |= UCTR + UCTXSTT;// I2C TX、开始条件 } #pragma vector=USCIAB0TX_vector __interrupt void USCI0TX_ISR_Hook (void) { if (TXByteCtr)//检查 TX 字节字节字节计数器 { UCB0TXBUF =* PTxData++;//加载 TX 缓冲器 TXByteCtr --; //减量 TX 字节计数 器} 其他 { UCB0CTL1 |= UCTXSTP;// I2C 停止条件 IFG2 &=~UCTXSTP; //清除 USCI_B0 TX int 标志 __BIC_SR_REGISTER_ON_EXIT (LPM0_Bits);//如果所有数据都被发送则退出 LPM } }