msp430F5438a的iic硬件模块

2019-03-24 12:14发布

小弟前几天用软件模拟的iic成功的读取了mpu6050的数据,这几天准备用f5438a的硬件模块实现,但是出问题了,在发送从机地址后收不到应答位。求各位大大帮忙 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
2条回答
clarkpaul
2019-03-24 21:28
< :TI_MSP430_内容页_SA7 --> void Init_IIC()
{
        P3SEL |= BIT1 + BIT2;                        //开启管脚的第二功能
        UCB0CTL1 |= UCSWRST;                         //置位UCSWRST,进行后续设置
        UCB0CTL0 |= UCMST + UCMODE_3 + UCSYNC;       //7位地址,IIC模式,主机模式
        UCB0CTL1 |= UCSSEL__SMCLK;                   //设置时钟为SMCLK  2.5MHz
        UCB0BR0 = 25;
        UCB0CTL1 &=~UCSWRST;                         //清除UCSWRST
}
//发送模式下的开始信号
void IIC_TRANS_Start()
{
        UCB0CTL1 |= UCTXSTT + UCTR;
}
//接收模式下的开始信号
void IIC_RECEI_Start()
{
        UCB0CTL1 &=~UCTR;
        UCB0CTL1 |= UCTXSTT;
}
void IIC_Stop()
{
        UCB0CTL1 |= UCTXSTP;
}
就是这样,在发送地址后第九位就收不到从机的ACK

一周热门 更多>

相关问题

    相关文章