MSP430杂谈--IIC通信

1. IIC描述

MSP430通信资源之IIC通信

上图说明了在IIC总线拓扑中应该含有至少一个微控制器。该控制器通过IIC总线的SCL和SDA线与其他关联设备进行通信。基于传统的串行总线通信机制,IIC总线通信也是通过SDA与SCL配合实现,传输速率包含标注准(100kps)、快速(400kps)、高速(3.4Mbps)三大类。

2. IIC总线时序

MSP430通信资源之IIC通信

启动时序:当SCL为高电平时,SDA下降沿,表示启动。

停止时序:当SCL为高电平时,SDA上升沿,表示停止。

※由此可知,数据的传送应该在SCL为低电平时发生的,不能再高电平期间发生。进一步可知,SDA电平是在SCL为高电平时被读取。

数据帧的内容包括  起止信号、7位或者10位的从机地址,传送方向标志位,数据位(8位),每个字节数据后又一个ACK位(应答信号),之后是终止信号结束数据帧。总的来说就是”启动--地址(7或者10位)--R/W--数据--ACK--数据--ACK--....--停止“

3. I2C电路结构图

MSP430通信资源之IIC通信
数据手册描述,USCI模块在PUC或者手动设置UCSWRST位后,处于复位状态,如果要是其工作在I2C状态选,应将UCMODEx设置为11.在设置后,只要清除UCSWRST位即可让USCI工作起来。 

4. IIC一些主要的配置语句

UCB0CTL1 |= UCSWRST;                                                     //使能软件复位,先关闭USCI_B0模式以便进行初始                                                                                             //化设置

UCB0CTL0 = UCMST + UCMODE_3 +UCSYNC;                 //I2C主机、同步模式

UCB0BR0 = 12;                                                                   //12分频

UCB0BR1 = 0;                                                      

UCB0I2CSA = 0x4e;                                                            //设置从机模式

UCB0CTL1 &= ~UCSWRST;                                              //清除软件复位                  

猜你喜欢

转载自blog.csdn.net/qq_42580947/article/details/88682419