基于I2C总线的MSP430单片机应用系统设计

2019-08-05 16:06发布

串行护展总线技术是新一代单片机技术发展的一个显著特点。其中PHILIPS公司推出的I2C总线最为著名,它包括一个两端接口,通过一个带有缓冲区的接口,数据可以被I2C发送或接收,控制和状态信息则通过一套内存映射寄存器来传送。与并行扩展总线相比,串行扩展总线有突出的优点:电路结构简单,程序编写方便,易于实现用户系统软硬件的模块化、标准化等。本文是把I2C总线应用到MSP430单片机温度控制系统中的一个典型实例。

  I2C总线是用2根双向I/O信号线(串行时钟线SCL和串行数据线SDA)把多种器件连接起来,并实现器件之间的串行通讯。
  MSP430是TI公司一种具有超低功耗的功能强大的16位单片机,MSP430F169是该系列中的一种型号。它内部集成2个16位定时器,1个高速12位A/D转换器,12位或8位的双重D/A转换器,2个通用同步/异步通讯接口和1个I2C模块。我们就是利用其I2C模块来对MSP430F169单片机进行扩展。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
7条回答
i1mcu
2019-08-06 11:59
MSP430F169内部的I2C模块可以运行在主发送、主接收、从发送或从接收方式,本应用系统为单主系统,所以单片机只运行在主发送和主接收方式。MSP430F169单片机中用于管理I2C总线的寄存器有:中断使能寄存器I2CIE,中断标志寄存器I2CIFG,数据量寄存器I2CNDAT,通用串行同步/异步模块寄存器U0CTL,发送控制寄存器I2CTCTL,数据控制寄存器I2CDCTL,分频计数寄存器I2CPSC,时钟高电平寄存器I2CSCLH,时钟低电平寄存器I2CSCLL,数据寄存器I2CDR,主地址寄存器I2COA,从地址寄存器I2CSA,中断向量寄存器I2CIV。在主运行模式中,发送和接收操作主要由I2CRM、I2CSTT、I2CSTP三个位来控制,这三个位都是发送控制寄存器I2CTCTL中的位,其中I2CRM是循环重复模式控制位,其为0表示由I2CNDAT定义发送的字节数,其为1表示发送的字节数由软件控制,I2CNDAT不用。

  I2CSTT是启动发送控制位,其设置为1用来启动数据发送,一旦数据传送开始,这个位自动清零。I2CSTP是停止发送控制位,这个位置1表示停止数据发送,一旦数据发送停止,该位自动清零。在主发送模式中,一旦从地址字节和读写方向位发送之后,通过设置I2CTRX=0即可进入主接收模式。主发送程序流程图如图2所示,主接收程序流程图如图3所示。  

一周热门 更多>