CEPT是什么意思T在线翻译读音例句-electric是什么意思


2023年4月2日发(作者:121306)

本文为翻译的MSP430x1xxFamilyUser\'sGuide家庭用户指南,

且只有寄存器的翻译比较准确,其他地方阅读时请自行判断语句的准确

本文为翻译的MSP430x1xxFamilyUser\'sGuide家庭用户指南,

且只有寄存器的翻译比较准确,其他地方阅读时请自行判断语句的准确

本文为翻译的MSP430x1xxFamilyUser\'sGuide家庭用户指南,

且只有寄存器的翻译比较准确,其他地方阅读时请自行判断语句的准确

USART外围接口,I2C模式

通用同步/异步接收/传输(USART)外设接口支持USART0I2C通信。本章介绍I2C模式。

在I2C模式在MSP430x15x和MSP430x16x器件上实现。

专题页面

15.1I2C模块简介..............................................15-2

15.2I2C模块操作..............................................15-4

15.3I2C模块寄存器............................................15-20

15.3I2C模块寄存器

I2C模块寄存器如表15-4。

表15-4.I2C寄存器

注册简称注册类型地址初始状态

I2C中断使能I2CIE读/写050h

I2C中断标志I2CIFG读/写051h

I2C数据计数I2CNDAT读/写052h

USART控制U0CTL读/写070h

I2C传输控制I2CTCTL读/写071h

I2C数据控制I2CDCTL只读072h

I2C预分频器I2CPSC读/写073h

I2CSCL高I2CSCLH读/写074h

I2CSCL低I2CSCLL读/写075h

I2C数据I2CDRW/I2CDRB读/写076h

I2C自己的地址I2COA读/写0118h

I2C从地址I2CSA读/写011Ah

I2C中断向量I2CIV只读011Ch

U0CTL,UART0控制寄存器,I2C模式

76543210

RXDMAENTXDMAENI2CXALISTENSYNCMSTI2CEN

rw−0rw−0rw−0rw−0rw−0rw−0rw−0rw−1

RXDMAEN第7位接收DMA能。该位使DMA控制器用于传输数据的I2C模块

后I2C模块接收数据。当RXDMAEN=1,RXRDYIE被忽略。

0禁止

1启用

TXDMAEN位6发送DMA能。该位使DMA控制器可以用于提供数据给用于

传输的I2C模块。当TXDMAEN=1,TXRDYIE,

被忽略。

0禁止

1启用

I2C位5I2C模式使能。该位选择I2C或SPI操作时,

SYNC=1。

0SPI模式

1I2C模式

XA位4扩展寻址

07位寻址

110位寻址

LISTEN位3收听。此位选择回送模式。当MST=1和I2CTRX=1(主

发射器)LISTEN才有效,。

0正常模式

1SDA在内部反馈到接收器(回环)。

SYNC2位同步模式使能

0UART模式

1SPI或I2C模式

MST1位该位选择主或从模式。当仲裁失败或产生一个STOP信号,

MST位自动清零。

0从模式

1主模式

I2CEN位0I2C使能。该位允许或禁止I2C模块。初始状态此位被置

位,并为UART或SPISWRST功能。当I2C和SYNC位在PUC

后被置位,此位为I2CEN功能,且自动清零。

0I2C操作被禁止

1I2C操作已启用

I2CTCTL,I2C发送控制寄存器

76543210

I2CWORDI2CRMI2CSSELxI2CTRXI2CSTBI2CSTPI2CSTT

rw−0rw−0rw−0rw−0rw−0rw−0rw−0rw−0

I2CWORD第7位I2C字模式。选择用于I2C数据寄存器字节或字模式。

0字节模式

1字模式

I2CRM第6位I2C重复模式

0I2CNDAT限定传输的字节的数目。

1发送的字节数由软件控制。I2CNDAT是未使用的。

I2CSSELx5-4位I2C时钟源选择。当MST=1和仲裁丢失,外部SCL

信号自动使用。

00无时钟-I2C模块无效

01ACLK

10SMCLK

11SMCLK

I2CTRX第3位I2C传输。当MST=1时,该位选择发送或接收功能。当MST

=0时,地址字节的R/W位定义数据的方向。从机模式,I2CTRX

必须复位。

0接收模式。SDA引脚上接收数据。

1发送模式。SDA引脚上传输的数据。

I2CSTB2位起始字节。当MST=1,I2CSTT=1启动一个起始字节时,设置

I2CSTB位。起始字节开始后,I2CSTB自动清零。

0:无动作

1:发送启动条件和起始字节(01H),但没有停止条

件。

I2CSTP1位停止位。此位是用来生成停止条件。在启动STOP信号后,

I2CSTP自动清零。

0:无动作

1:发送停止条件

I2CSTT位0START位。此位是用来产生一个启动条件。在启动START信

号后之后,I2CSTT自动清零。

0:无动作

1:发送启动条件

I2CDCTL,I2C数据控制寄存器

76543210

UnusedUnusedI2CBUSY

I2C

SCLLOW

I2CSBDI2CTXUDFI2CRXOVRI2CBB

r0r0r−0r−0r−0r−0r−0r−0

Unused7-6位没用过。总是读为0。

I2CBUSY位5I2C忙

0I2C模块空闲

1I2C模块不闲着

I2CSCLLOW4位I2CSCL低。该位指示,从机保持SCL线为低,MSP430的是主

机和从机模式下使用。。

0SCL没有被保持低

1SCL被保持低电平

I2CSBD位3I2C单字节数据。该位指示接收寄存器I2CDRW持有一

个字或一个字节。I2CWORD=1时,I2CSBD才有效

0一个完整的字接收

1只有在I2CDR的低字节有效

I2CTXUDF2位I2C发送下溢

0未发生溢

1发送下溢发生

I2CRXOVR位1I2C接收溢出

0未收到发生溢出

1接收器溢出发生

I2CBB位0I2C总线忙位。I2C总线忙位。START条件设置I2CBB为1。

I2CBB由STOP条件或当I2CEN=0复位。

0I2C总线不忙

1I2C总线忙

I2CDRW,I2CDRB,I2C数据寄存器

098

I2CDRWHighByte

rw−0rw−0rw−0rw−0rw−0rw−0rw−0rw−0

76543210

I2CDWLowByte

I2CDRB

rw−0rw−0rw−0rw−0rw−0rw−0rw−0rw−0

I2CDRW/I2CDRB15-8位I2C数据。当I2CWORD=1,登记的名字是

I2CDRW。当I2CWORD=0,名称是I2CDRB。

当I2CWORD=1,任何试图修改一个字节指

令寄存器将失败,寄存器不会被更新。

I2CNDAT,I2C传输字节计数寄存器

76543210

I2CNDATx

rw−0rw−0rw−0rw−0rw−0rw−0rw−0rw−0

I2C数据位7-0字节数I2C。该寄存器支持主模式下自动数据字节计数。

在字模式下,I2C数据必须是偶数值。

I2CPSC,I2C时钟预注册

76543210

I2CPSCx

rw−0rw−0rw−0rw−0rw−0rw−0rw−0rw−0

I2CPSCx位7-0I2C时钟分频器。I2C时钟输入I2CIN由输入时钟除以

I2CPSCx值产生内部I2C时钟频率。分频率I2CPSCx+1。

不推荐I2CPSCx值>4。的I2CSCLL和I2CSCLH寄存

器应被用于设置将SCL频率。

1000H分频1

2001H分频2

0FFh分频256

I2CSCLH,I2C移位时钟寄存器高

I2CSCLHx位7-0I2C移位时钟高。这些位定义当I2C控制器处

于主模式时SCL高电平的时间,

SCL高电平的时间是(I2CSCLH+2)(I2CPSC+1)。

000HSCL高周期=5(I2CPSC+1)

001HSCL高周期=5(I2CPSC+1)

002HSCL高周期=5(I2CPSC+1)

003HSCL高周期=5(I2CPSC+1)

004HSCL高周期=6(I2CPSC+1)

0FFh的SCL高周期=257(I2CPSC+1)

I2CSCLL,I2C移位时钟寄存器低

I2CSCLLx位7-0I2C移位时钟低。这些位定义当I2C控制器处

于主模式时SCL低电平的时间,

SCL低电平的时间是(I2CSCLL+2)(I2CPSC+1)。

000HSCL低周期=5(I2CPSC+1)

001HSCL低周期=5(I2CPSC+1)

002HSCL低周期=5(I2CPSC+1)

003HSCL低周期=5(I2CPSC+1)

004HSCL低周期=6(I2CPSC+1)

0FFh的SCL低周期=257(I2CPSC+1)

I2COA,I2C自己的地址寄存器,7位寻址模式

098

00000000

r0r0r0r0r0r0r0r0

76543210

0I2COAx

r0rw−0rw−0rw−0rw−0rw−0rw−0rw−0

只有当I2CEN=0,修改有效

I2COAx位15-0I2C自己的地址。该I2COA寄存器包含MSP430I2C

控制器的本地地址。该I2COA寄存器为右对齐。位6

是MSB。比特15-7总是为0。

I2COA,I2C自己的地址寄存器,10位寻址模式

098

000000I2COAx

r0r0r0r0r0r0rw−0rw−0

76543210

I2COAx

rw−0rw−0rw−0rw−0rw−0rw−0rw−0rw−0

只有当I2CEN=0,修改有效

I2COAx位15-0I2C自己的地址。该I2COA寄存器包含MSP430I2C控

制器的本地地址。该I2COA寄存器为右对齐。位9是

MSB。15-10位始终为0。

I2CSA,I2C从地址寄存器,7位寻址模式

098

00000000

r0r0r0r0r0r0r0r0

76543210

0I2CSAx

r0rw−0rw−0rw−0rw−0rw−0rw−0rw−0

I2CSAx15-0位I2C从地址。该I2CSA寄存器包含外部设备的从地

址由MSP430来解决。它仅在主模式下使用。该

I2CSA寄存器为右对齐。位9是MSB。15-7位始

终为0。

I2CSA,I2C从地址寄存器,10位寻址模式

098

000000I2CSAx

r0r0r0r0r0r0rw−0rw−0

76543210

I2CSAx

rw−0rw−0rw−0rw−0rw−0rw−0rw−0rw−0

I2CSAx15-0位I2C从地址。该I2CSA寄存器包含外部设备的从地

址由MSP430来解决。它仅在主模式下使用。该

I2CSA寄存器为右对齐。位9是MSB。15-10位始

终为0。

I2CIE,I2C中断使能寄存器

76543210

STTIEGCIETXRDYIERXRDYIEARDYIEOAIENACKIEALIE

rw−0rw−0rw−0rw−0rw−0rw−0rw−0rw−0

STTIE位7START检测中断使能

0中断禁止

1允许中断

GCIE第6位广播呼叫中断使能

0中断禁止

1允许中断

TXRDYIE第5位发送就绪中断使能。当TXDMAEN=1,TXRDYIE

被忽略,TXRDYIFG不会产生中断。

0中断禁止

1允许中断

RXRDYIE位4接收就绪中断使能。当RXDMAEN=1,RXRDYIE

被忽略,RXRDYIFG不会产生中断。

0中断禁止

1允许中断

ARDYIE第3位访问就绪中断使能

0中断禁止

1允许中断

OAIE2位自己的地址,中断使能

0中断禁止

1允许中断

NACKIE位1不应答中断使能

0中断禁止

1允许中断

ALIE位0仲裁丢失中断使能

0中断禁止

1允许中断

I2CIFG,I2C中断标志寄存器

76543210

STTIFGGCIFGTXRDYIFGRXRDYIFGARDYIFGOAIFGNACKIFGALIFG

rw−0rw−0rw−0rw−0rw−0rw−0rw−0rw−0

STTIFG第7位开始检测中断标志

0无中断

1待处理的中断

GCIFG第6位广播呼叫中断标志

0无中断

1待处理的中断

TXRDYIFG第5位发送就绪中断标志

0无中断

1待处理的中断

RXRDYIFG位4接收就绪中断标志

0无中断

1待处理的中断

ARDYIFG第3位访问准备好中断标志

0无中断

1待处理的中断

OAIFG2位自己的地址,中断标志

0无中断

1待处理的中断

NACKIFG位1无应答中断标志

0无中断

1待处理的中断

ALIFG位0仲裁丢失中断标志

0无中断

1待处理的中断

I2CIV,I2C中断向量寄存器

098

00000000

r0r0r0r0r0r0r0

r0

76三人行的下一句是什么 543210

000I2CIVx0

r0r0r0r−0r−0r−0r−0

r0

I2CIVx位15-0I2C中断矢量值

I2CIV内容中断源中断标志打断优先

000H没有中断-

002H仲裁丢失ALIFG最高

004H没有确认NACKIFG

006H自己的地址OAIFG

008H寄存器访问准备ARDYIFG

00Ah接收数据就绪RXRDYIFG

00CH发送数据准备TXRDYIFG

00Eh通用调用GCIFG

010HSTART条件接关于端午节的诗句古诗小学 收STTIFG最低

15.1I2C模块简介

的互连芯片的控制(I2C)模块提供了由两线I2C串行总线连接的MSP430与I2C

兼容设备之间的接口。连接到I2C总线的外部组件串行发送和/或从USART通过

2线I2C接口接收串行数据。

I2C模块具有以下特点:

符合飞利浦半导体I2C规范V2.1

□字节/字格式转换

□7位和10位器件寻址模式

□一般通话

□启动/重新启动/停止

□多主机发送/从机接收模式

□多主机接收/从机发送模式

□联合主发送/接收和接收/发送模式

□标准模式下可达至100kbps和快速模式下可达400kbps的支持

内置FIFO为缓冲读写

可编程时钟发生器

16位宽的数据的访问以最大化总线吞吐量

自动数据字节计数

专为低功耗

从接收器开始检测从LPMx模式自动唤醒

广泛的中断功能

上实现仅USART0

I2C模块框图如图15-1所示。

15.2I2C模块操作

I2C模块支持任何从属或主I2C兼容设备。图15-2示出了I2C总线的一个例子。

每个I2C器件都通过一个唯一的地址识别,可以作为发射机或接收机操作。连接

到I2C总线上的设备可以进行数据传输时被认为是船长或奴隶。主机启动数据传

输,并首先产生一个时钟信号SCL。主机寻址的任何设备被认为是一个奴隶。

I2C数据使用串行数据引脚(SDA)和串行时钟引脚(SCL)连通。SDA和SCL

是双向的,并且必须被连接到使用上拉电阻器的正电源电压。

注:SDA和SCL等级

MSP430的SDA和SCL引脚不得在上述MSP430拉起

VCC的变化。

15.2.1I2C模块初始化

I2C模块是USART外设的一部分。在I2C模式下使用时,USART0个别位的定义是

从,在SPI或UART模式不同。为U0CTL寄存器的缺省值是UART模式。要选择

I2C操作SYNC和I2C位必须进行设置。模块初始化后,I2C模块即可发送或接收

操作。设置I2CEN释放操作I2C模块。

配置和重新配置I2C模块必须完成时I2CEN=

0,以避免不可预知的行为。设置I2CEN=0具有以下效果:

I2C通信站

SDA和SCL为高阻抗

I2CTCTL,位3-0被清零,位7-4不变

I2CDCTL和I2CDR寄存器清零

个发射和接收移位寄存器清零

U0CTL,I2CNDAT,I2CPSC,I2CSCLL,I2CSCLH寄存器的内容不变

I2COA,I2CSA,I2CIE,I2CIFG和I2CIV寄存器的内容不变

当重新配置I2C从模式,UART或SPI模式下I2C,SYNC和I2CEN位必须先清除,

则SWRST必须设置与UART或SPI初始化程序的USART必须遵守。不按照此

过程可以导致不可预知的操作。

注:配置USART模块用于I2C操作复位后

所需的I2C配置过程:

1)用SWRST=1(BIS.B#I2C+同步,与U0CTL选择I2C模式)

2)禁止I2C模块(BIC.B#I2CEN,与U0CTL)

3)I2CEN=0配置I2C模块

4)通过软件设定I2CEN(BIS.B#I2CEN,与U0CTL)

如果不遵循这一过程可能会导致不可预测的USART行为。

注:重新配置USART模块的UART和SPI操作

当重新配置从I2CUART或SPI操作USART模块

操作时,所要求的工艺过程是:

1)清除I2C,SYNC和I2CEN(CLR.B&U0CTL)

2)设置SWRST(MOV.B#SWRST,与U0CTL)

3)UART或SPI初始化程序继续。

如果不遵循这一过程可能会导致不可预测的USART行为。

15.2.2I2C串行数据

一个时钟脉冲由主装置产生的每一个数据位传送。I2C模块用字节数据进行操

作。数据传输时最显著位,如图15-3。

启动条件后的第一个字节由7位从机地址和R/W位。当R/W=0,主到从传

输数据。当R/W=1,主从机接收数据。ACK位从接收第9个SCL时钟每个字

节后发送。

图15-3。I2C模块数据传输

START和STOP条件由主机产生,并在图15-3所示。START条件是SDA线上高到

低的过渡而SCL为高。STOP条件是SDA线上低到高的转变,而SCL为高。繁忙

位,I2CBB,是START之后设置和停止后清零。

SDA上的数据必须在SCL的高电平期间保持稳定,如图15-4所示。SCL为低电

平时SDA的高和低状态才能改变,否则启动或停止将生成的条件。

图15-4。在I2C总线位传输

15.2.3I2C寻址模式

I2C模块支持7位和10位寻址模式。

7位寻址

在7位寻址格式,如图15-5所示,第一个字节为7位从地址和R/W位。ACK

位从接收机每个后发送

字节。

图15-5。I2C模块7位寻址格式

171181811

S从机地址R/WACK数据ACK数据ACKP

10位寻址

在10位寻址格式,如图15-6所示,第一个字节由11110b加10位从机地址的两

个MSB和R/W位。ACK位是从每个字节后接收发送。下一个字节是10位从地

址的其余8位,其次是ACK位,

8位数据。

图15-6。I2C模块10位寻址格式

171181811

S从机地址第一个字节R/WACK从机地址第二个字节ACK数据ACKP

11110XX

重复启动条件

SDA上的数据流的方向可以由主变了,不先停止传输,通过发出一个重复起始条

件不禁撩 。这就是所谓的重新启动。一个RESTAR蹶怎么读 T发出后,从机地址再次由R/W位指

定的新数据方向发送出去。重新启动状态示于图15-7。

图15-7。与重复启动条件I2C模块地址格式

11

S从机地址R/WAC曲径通幽处禅房花木深翻译 K数据ACKS从机地址R/WACK数据ACKP

1所有数1任意数量

15.2.315.2.4I2C模块操作模式

I2C模块在主发送器,主接收器,从发送器或从机接收模式。

主模式

在主控模式下,发射和接收操作与控制,如表15-1中描述的I2CRM,I2CSTT和

I2CSTP位。主发送器和主接收器模式如图15-8和图15-9。SCL是当一个字节

的发送或接收后需要CPU的干预保持为低电平。

表操作

I2CRMI2CSTPI2CSTT条件或总线活动

X00I2C模块在主模式,但处于闲置状态。没

有启动或生成停止条件。

001设置I2CSTT发起的活动。I2CNDAT用

于确定传输的长度。STOP条件是不

I2CNDAT后自动生成字节数已被转移。

软件必须设置I2CSTP产生在最后一个

停止条件的传输。这是用于重起条件。

011I2CNDAT用于确定传输的长度。设置

I2CSTT发起的活动。STOP条件是后

I2CNDAT数量自动生成字节已被转移。

101I2CNDAT不用于确定的长度传输。软件

必须控制的长度传输。设置I2CSTT位

发起的活动。软件必须设置I2CSTP位

发起STOP条件和停止活动。这种模式

是有用的,如果>255字节要传送。这

种模式可能并不需要重新启动时使用。

I2CRM必须重置产生重启条件。

010设置I2CSTP位上产生一个停止条件之

后的字节数I2CNDAT总线已送出,或

者,

如果立即字节I2CNDAT数有已经被发

送。

110设置I2CSTP位上产生一个停止条件总

线之后当前的传输完成后,或者如果没

有立即传输是目前活跃,一个停止尚未

生成。设置一个停止后I2CSTP已经生

成会不会导致另一个STOP条件。

111保留,没有总线活动。

15图15-8。主机发送模式

*当I2RM=1,I2CSTP必须是最后一个I2CDR值之前

设置写入。否则,将不会发生正确停止发电。

图15-9。主接收器模式

仲裁

如果两个或多个主发射器同时在总线上开始传输,仲裁程序被调用。图15-10说

明了两行路难三首全诗 个设备之间的仲裁程序。仲裁过程使用的发射机竞争SDA上显示的数据。

产生逻辑高电平的第一个主发射器由相对主产生一个逻辑低驳回。仲裁程序优先

于发送具有最低二进制值的串行数据流的设备。失去仲裁的主发送切换到从机接

收模式,并且设置仲裁丢失标志ALIFG。如果两个或多个设备发送相同的第一字

节,

仲裁继续对后续字节。

图15-10。仲裁程序之间有两个主变送器

如果在SDA上传输重复起始条件或停止条件的仲裁程序正在进行中,参与仲裁的

主发射器必须在格式帧中的相同位置发送重复起始条件或停止条件。仲裁是不允

许的:

重复启动条件和数据位

一个STOP状态与一个数据位

重复START和STOP条件

自动数据字节计数

自动数据字节计数在主机模式与I2CNDAT寄存器支持。当I2CRM=0,要被接收

或发送的写入I2CNDAT字节数。STOP条件后自动生成

字节数I2CNDAT已转移时I2CSTP=1。

注:I2CNDAT注册

设置I2CSTT后的字节数I2CNDAT已发送之前,请勿更改I2CNDAT寄存器。否则,

可能会出现无法预料的后果。如果I2CNDAT内容必须为RESTART更新,等待

ARDYIFG成为修改I2CNDAT的内容之前设置。

从模式

在从模式,发送和接收操作由I2C模块自动控制。从机发送和从接收器模式如图

15-11和图15-12。

在从机接收模式,在SDA接收串行数据位与由主设备产生的时钟脉冲移入。从设

备不产生时钟,但如果一个字节已经收到后需要CPU的干预,它可以保持SCL为

低电平。在从机接收模式,收到的每个字节将被确认。有没有办法为奴隶产生接

收数据的NACK条件。

当主机发送从机地址字节是一样的它自己的地址和一组R/W位已发送指示将数

据发送到主机的请求进入从机发送模式。从机发送与由主设备产生的时钟脉冲移

位串行数据出来SDA。从设备不产生时钟,但在一个字节后需要CPU的干预,它

会保持SCL为低电平

已经被发送。

注:I2CTRX位在从模式

该I2CTRX位必须正确从属模式操作被清除。

图变送器

图15-12。从接收器

15.2.5在I2C数据寄存器I2CDR

该I2CDR寄存器可以由I2CWORD位选择8位或16位寄存器来访问。如表15-2中

描述的I2CDR寄存器的功能。当I2CWORD=1,任何试图修改一个字节指令寄存

器将失败,寄存器不会被修改。

表15-2.I2CDR寄存器功能

I2CWORDI2CTRXI2CDR功能

01字节模式发送:仅低字节。字节为双缓冲。

如果一个新的字节之前事先书面字节已经

发送,则新的字节是在保持被锁存到I2CDR

低前临时缓冲区字节。当I2CDR准备访问

TXRDYIFG设置。I2CSTT设置I2CDR后应写。

00字节模式接收:仅低字节。字节为双缓冲。

如果一个新的字节前,之前接收字节已被读

出,新的字节在临时缓冲器明月寄相思的古诗 中保持之前被锁

存到I2CDR低字节。RXRDYIFG是当I2CDR

是准备好被读取设置。

10字模式发射:字的低字节首先发送,然后是

高字节。寄存器为双缓冲。如果新的字是写

上一个字以前一直传播,新的字是在临时缓

冲区之前举行被闩锁到I2CDR寄存器。

TXRDYIFG设置当I2CDR准备进行访问。

I2CDR应I2CSTT设置之后写的。

10字模式得到:字的低字节是第一次收到,然

后高字节。寄存器为双缓冲。如果一个收到

新词前面的词已经前读,新词在临时缓冲区

是之前举行锁存到I2CDR寄存器。

RXRDYIFG时设置I2CDR已准备好进行访问。

发送下溢

在主控模式下,当发送移位寄存器并且发送缓冲区为空时发生下溢。在从模式下,

当发送移位寄存器和发送缓冲器是空的,在外部I2C主仍请求数据时发生下溢。

当发送下溢发生时,I2CTXUDF位被设置。

写数据到I2CDR寄存器或重置I2CEN位复位I2CTXUDF。

I2CTXUDF在仅发送模式使用。

接收溢出

当接收接收移位寄存器满和接收缓冲区已满发生溢出。该I2CRXOVR位被设置时

收到溢出发生。因为SCL在这种状态下,停止进一步的总线活动保持低不丢失数

据。读取I2CDR寄存器或重置I2CEN重置I2CRXOVR。该I2CRXOVR位只用在接收

模式。

15.2.6I2C时钟发生器和同步

I2C模块是由I2CSSELx位选择的时钟源工作。预分频器,I2CPSC和I2CSCLH和

I2CSCLL寄存器确定主SCL时钟信号的频率和占空比

模式在图15-13所示。

注:I2CCLK最大频率

I2CIN必须至少10倍的SCL频率乘以两个主从模式的I2CPSC分率。例如,对于

02H的I2CPSC值,I2CIN必须>3千赫310,或>90千赫的3千赫SCL

注:I2CPSC值

当I2CPSC>4,可能导致无法预料的后果。该I2CSCLL和

I2CSCLH寄存器应被用于设置将SCL频率。

图15-13。I2C模块SCL代

在仲裁过程从不同主人的时钟必须同步。首先在SCL低周期的设备否决其他设备

迫使他们开始自己的小周期。SCL然后由该设备具有最长低周期保持低电平。

其它设备必须等待SCL开始他们的高周期之前被释放。图15-14所示的时钟同步。

这使得从缓慢到快速掌握放缓。

图15-14。两个I2C时钟发生器同步仲裁事项

15.2.7使用低功耗模式I2C模块

I2C模块可与MSP430低功耗模式下使用。当I2C模块内部时钟源存在,模块通

常不管MSP430操作模式运行。当I2C模块内部时钟源不存在,提供了自动时钟

激活。当I2李白赞美荷花的诗句 C模块处于空闲状态时,I2CBUSY=0,I2C时钟源I2CIN从I2C模

块状态机断开,省电。

当I2C时钟源是无效的,需要的时候I2C模块会自动激活所选的时钟源,不管时

钟源控制位的设置。直到I2C模块返回到空闲状态的时钟源仍然有效。I2C模

块返回空闲状态后,时钟源的控制回复到其控制位的设置。

发生自动I2C时钟激活时:

TH均主控模式下,当I2CSTT=1,直到传输完成和I2C模块返回到空闲状态保

持有效的时钟发生激活。

TH均从模式,当检测到启动条件时,会出现时钟激活,直到传输完成和I2C模

块返回到空闲状态保持有效。检测到启动条件之后,STTIFG标志设置,模块保

持SCL线为低直到时钟源变得活跃。一旦源处于活动状态,I2C模块释放SCL线

到主。

当I2C模块激活非活动的时钟源,时钟源对于整个设备被激活,任何外围配置为

使用的时钟源可能会受到影响。例如,使用SMCLK定时器将增加而I2C模块力

SMCLK活性。

15.2.8I2C中断

I2C模块具有表所列八个中断标志一个中断向量15-3。每个中断标志都有自己的

中断使能位。当中断使能,且GIE位时,中断标志将产生一个中断请求。

表15-3.I2C中断

打断中断条件

ALIFG仲裁-丢失。当两个或多个发射机同时开始发送仲裁可

能会丢失,或者当软件试图而当仲裁已经丢失I2CBB=

1ALIFG标志设置为发起I2C传送。当ALIFG设置的

MST和I2CSTP位被清零,I2C控制器变为从接收器。

NACKIFG无应答中断。预计确认信号,而是在主模式没有收到

时,此标志置位。NACKIFG是仅在主控模式下使用。

OAIFG自己的地址中断。当有另外一个主机寻址的I2C模块,

设置该标志。OAIFG是唯一的从模式下使用。

ARDYIFG注册访问就绪中断。该标记被作为用于以下的条件描

述设置。

主发送器,I2CRM=0:所有数据发送

主发送器,I2CRM=1:所有的数据发送和I2CSTP集

主接收器,I2CRM=0:从I2CDR读取接收的字节数

I2CNDAT和所有数据

主接收器,I2CRM=1:接收到的数据,I2CSTP集的

最后一个字节,

从I2CDR读取所有数据

从发送:停止条件检测

从接收器:停止条件检测和读取所有数据

I2CDR

RXRDYIFG接收准备好中断/状态。当I2C模块接收到新数据,设

置该标志。当I2CDR被读取和接收缓冲区为空

RXRDYIFG自动清零。如果位I2CRXOVR=1RXRDYIFG

只用在接收模式接收器溢出指示。

TXRDYIFG发送准备好中断/状态。当I2C模块等待新的发送数据

(主发送模式),或者当另一个主请求数据(从机发送

模式),设置该标志。当I2CDR并发送缓冲区满

TXRDYIFG自动清零。如果I2CTXUDF=1,未使用的接

收模式了发送下溢表示。

GCIFG广播中断。当I2C模块接收通用调用地址(00H),设

置该标志。GCIFG只用在接收模式。

STTIFG起始条件检测中断。当I2C模块检测到启动条件,而

在从模式会设置该标志。这使MSP430是在与I2C时钟

源未激活低功耗模式,直到主机发起I2C通信。

STTIFG是唯一的从模式下使用。

I2CIV,中断向量发生器

该I2C中断标志位优先级和结合到源的单一中断向量。中断向量寄存器I2CIV用

于确定哪些标志中断请求。最高优先级的中断使能生成可评估或添加到程序计数

器自动进入适当的软件例程的I2CIV寄存器号码。禁用的I2C中断不会影响I2CIV

值。当RXDMAEN=1,RXRDYIFG会

不影响I2CIV值,当TXDMAEN=1,TXRDYIFG不会影响I2CIV值,无论RXRDYIE

或TXRDYIE的状态。

任何访问,读取或写入的I2CIV自动注册复位最高未决中断标志,除了TXRDYIFG

和RXRDYIFG。如表15-3中描述的那些标志复位。如果另一个中断标志置位,服

务初始中断后,立即产生另一个中断。

I2CIV软件示例

下面的软件示例显示了推荐的使用I2CIV的。该

I2CIV值被添加到PC自动跳转到相应的程序。

更多推荐

drw是什么意思在线翻译读音例句