1、MSP430I2C模块寄存器本文为翻译的MSP430x1xx Family Users Guide家庭用户指南,且只有寄存器的翻译比较准确,其他地方阅读时请自行判断语句的准确性本文为翻译的MSP430x1xx Family Users Guide家庭用户指南,且只有寄存器的翻译比较准确,其他地方阅读时请自行判断语句的准确性本文为翻译的MSP430x1xx Family Users Guide家庭用户指南,且只有寄存器的翻译比较准确,其他地方阅读时请自行判断语句的准确性 USART外围接口,I2C模式通用同步/异步接收/传输(USART)外设接口支持USART0 I2C通信。本章介绍I2C模式。
2、在I2C模式在MSP430x15x和MSP430x16x器件上实现。专题页面15.1 I2C模块简介.15-215.2 I2C模块操作.15-415.3 I2C模块寄存器.15-2015.3 I2C模块寄存器I2C模块寄存器如表15-4。表15-4.I2C寄存器注册 简称 注册类型 地址 初始状态I2C中断使能 I2CIE 读/写 050h I2C中断标志 I2CIFG 读/写 051h I2C数据计数 I2CNDAT 读/写 052h USART控制 U0CTL 读/写 070hI2C传输控制 I2CTCTL 读/写 071hI2C数据控制 I2CDCTL 只读 072hI2C预分频器 I2
3、CPSC 读/写 073hI2C SCL高 I2CSCLH 读/写 074hI2C SCL低 I2CSCLL 读/写 075hI2C数据 I2CDRW/ I2CDRB 读/写 076hI2C自己的地址 I2COA 读/写 0118hI2C从地址 I2CSA 读/写 011AhI2C中断向量 I2CIV 只读 011ChU0CTL,UART0控制寄存器,I2C模式7 6 5 43 2 1 0RXDMAENTXDMAENI2CXALISTENSYNCMSTI2CENrw0 rw0 rw0 rw0 rw0 rw0 rw0 rw1RXDMAEN 第7位 接收DMA能。该位使DMA控制器用于传输数据的I
4、2C模块 后I2C模块接收数据。当RXDMAEN=1,RXRDYIE被忽略。0禁止1启用TXDMAEN 位6 发送DMA能。该位使DMA控制器可以用于提供数据给用于 传输的I2C模块。当TXDMAEN = 1,TXRDYIE, 被忽略。0禁止1启用I2C 位5 I2C模式使能。该位选择I2C或SPI操作时, SYNC = 1。0 SPI模式1 I2C模式XA 位4 扩展寻址0 7位寻址1 10位寻址LISTEN 位3 收听。此位选择回送模式。 当MST = 1和I2CTRX = 1(主 发射器)LISTEN才有效,。0正常模式1 SDA在内部反馈到接收器(回环)。SYNC 2位 同步模式使能0
5、 UART模式1 SPI或I2C模式MST 1位 该位选择主或从模式。当仲裁失败或产生一个STOP信号, MST位自动清零。0从模式1主模式I2CEN 位0 I2C使能。该位允许或禁止I2C模块。初始状态此位被置 位,并为UART或SPI SWRST功能。当I2C和SYNC位在PUC 后被置位,此位为I2CEN功能,且自动清零。0 I2C操作被禁止1 I2C操作已启用I2CTCTL,I2C发送控制寄存器7 6 5 43 2 1 0I2CWORDI2CRMI2CSSELxI2CTRXI2CSTBI2CSTPI2CSTTrw0 rw0 rw0 rw0 rw0 rw0 rw0 rw0I2CWORD
6、第7位 I2C字模式。选择用于I2C数据寄存器字节或字模式。0字节模式1字模式I2CRM 第6位 I2C重复模式0 I2CNDAT限定传输的字节的数目。1发送的字节数由软件控制。 I2CNDAT是未使用的。I2CSSELx 5-4位 I2C时钟源选择。当MST=1和仲裁丢失,外部SCL 信号自动使用。00无时钟 - I2C模块无效01 ACLK10 SMCLK11 SMCLKI2CTRX 第3位 I2C传输。当MST = 1时,该位选择发送或接收功能。当MST = 0时,地址字节的R/W位定义数据的方向。从机模式,I2CTRX 必须复位。0接收模式。SDA引脚上接收数据。1发送模式。SDA引脚
7、上传输的数据。I2CSTB 2位 起始字节。当MST=1,I2CSTT=1启动一个起始字节时,设置 I2CSTB位。起始字节开始后,I2CSTB自动清零。0:无动作1:发送启动条件和起始字节(01H),但没有停止条件。I2CSTP 1位 停止位。此位是用来生成停止条件。在启动STOP信号后, I2CSTP自动清零。0:无动作1:发送停止条件I2CSTT 位0 START位。此位是用来产生一个启动条件。在启动START信 号后之后,I2CSTT自动清零。0:无动作1:发送启动条件I2CDCTL, I2C数据控制寄存器7 6 5 43 2 1 0UnusedUnusedI2CBUSYI2C SCL
8、LOWI2CSBDI2CTXUDFI2CRXOVRI2CBBr0 r0 r0 r0 r0 r0 r0 r0Unused 7-6位 没用过。总是读为0。I2CBUSY 位5 I2C忙0 I2C模块空闲1 I2C模块不闲着I2C SCLLOW 4位 I2C SCL低。该位指示,从机保持SCL线为低,MSP430的是主 机和从机模式下使用。0 SCL没有被保持低1 SCL被保持低电平I2CSBD 位3 I2C单字节数据。该位指示接收寄存器I2CDRW持有一 个字或一个字节。 I2CWORD=1时,I2CSBD才有效0一个完整的字接收1只有在I2CDR的低字节有效I2CTXUDF 2位 I2C发送下溢
9、0未发生溢1发送下溢发生I2CRXOVR 位1 I2C接收溢出0未收到发生溢出1接收器溢出发生I2CBB 位0 I2C总线忙位。 I2C总线忙位。START条件设置I2CBB为1。 I2CBB由STOP条件或当I2CEN=0复位。0 I2C总线不忙1 I2C总线忙I2CDRW, I2CDRB,I2C数据寄存器15 14 13 12 11 10 9 8I2CDRW High Byterw0 rw0 rw0 rw0 rw0 rw0 rw0 rw07 6 5 4 3 2 1 0I2CDW LowByte I2CDRBrw0 rw0 rw0 rw0 rw0 rw0 rw0 rw0I2CDRW/ I2C
10、DRB 15-8位 I2C数据。当I2CWORD=1,登记的名字是 I2CDRW。当I2CWORD=0,名称是I2CDRB。 当I2CWORD=1,任何试图修改一个字节指 令寄存器将失败,寄存器不会被更新。I2CNDAT, I2C传输字节计数寄存器7 6 5 4 3 2 1 0 I2CNDATxrw0 rw0 rw0 rw0 rw0 rw0 rw0 rw0I2C数据位 7-0 字节数I2C。该寄存器支持主模式下自动数据字节计数。 在字模式下,I2C数据必须是偶数值。I2CPSC,I2C时钟预注册76543210I2CPSCxrw0rw0rw0rw0rw0rw0rw0rw0I2CPSCx位 7-
11、0 I2C时钟分频器。 I2C时钟输入I2CIN由输入时钟除以 I2CPSCx值产生内部I2C时钟频率。分频率I2CPSCx+1。 不推荐I2CPSCx值4。的I2CSCLL和I2CSCLH寄存 器应被用于设置将SCL频率。1000H分频12001H分频2:0FFh 分频256I2CSCLH,I2C移位时钟寄存器高I2CSCLHx 位7-0 I2C移位时钟高。这些位定义当I2C控制器处 于主模式时SCL高电平的时间,SCL高电平的时间是(I2CSCLH+2)(I2CPSC+ 1)。000H SCL高周期=5(I2CPSC+1)001H SCL高周期=5(I2CPSC+1)002H SCL高周期
12、=5(I2CPSC+1)003H SCL高周期=5(I2CPSC+1)004H SCL高周期=6(I2CPSC+1)0FFh的SCL高周期=257(I2CPSC+1)I2CSCLL, I2C移位时钟寄存器低I2CSCLLx位 7-0 I2C移位时钟低。这些位定义当I2C控制器处 于主模式时SCL低电平的时间, SCL低电平的时间是(I2CSCLL+2)(I2CPSC+ 1)。000H SCL低周期=5(I2CPSC+1)001H SCL低周期=5(I2CPSC+1)002H SCL低周期=5(I2CPSC+1)003H SCL低周期=5(I2CPSC+1)004H SCL低周期=6(I2CPS
13、C+1):0FFh的SCL低周期=257(I2CPSC+1)I2COA,I2C自己的地址寄存器,7位寻址模式15 14 13 1211 10 9 800000000r0 r0 r0 r0 r0 r0 r0 r07 6 5 43 2 1 00I2COAxr0 rw0 rw0 rw0 rw0 rw0 rw0 rw0只有当I2CEN = 0,修改有效I2COAx 位15-0 I2C自己的地址。该I2COA寄存器包含MSP430 I2C 控制器的本地地址。该I2COA寄存器为右对齐。位6 是MSB。比特15-7总是为0。I2COA,I2C自己的地址寄存器,10位寻址模式15 14 13 1211 10 9 8000000I2COAxr0 r0 r0 r0 r0 r0 rw0 rw076543210I2COAxrw0rw0rw0rw0rw0rw0rw0rw0
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1