ZHCU032K December 2004 – August 2022 MSP430AFE221 , MSP430AFE222 , MSP430AFE223 , MSP430AFE231 , MSP430AFE232 , MSP430AFE233 , MSP430AFE251 , MSP430AFE252 , MSP430AFE253 , MSP430F2001 , MSP430F2002 , MSP430F2003 , MSP430F2011 , MSP430F2012 , MSP430F2013 , MSP430F2101 , MSP430F2111 , MSP430F2112 , MSP430F2121 , MSP430F2122 , MSP430F2131 , MSP430F2132 , MSP430F2132-EP , MSP430F2232 , MSP430F2234 , MSP430F2252 , MSP430F2252-Q1 , MSP430F2254 , MSP430F2272 , MSP430F2272-Q1 , MSP430F2274 , MSP430F2274-EP , MSP430F233 , MSP430F2330 , MSP430F235 , MSP430F2350 , MSP430F2370 , MSP430F2410 , MSP430F2416 , MSP430F2417 , MSP430F2418 , MSP430F2419 , MSP430F247 , MSP430F2471 , MSP430F248 , MSP430F2481 , MSP430F249 , MSP430F2491 , MSP430F2616 , MSP430F2617 , MSP430F2618 , MSP430F2619 , MSP430G2001 , MSP430G2101 , MSP430G2102 , MSP430G2111 , MSP430G2112 , MSP430G2121 , MSP430G2131 , MSP430G2132 , MSP430G2152 , MSP430G2153 , MSP430G2201 , MSP430G2201-Q1 , MSP430G2202 , MSP430G2203 , MSP430G2210 , MSP430G2211 , MSP430G2212 , MSP430G2213 , MSP430G2221 , MSP430G2230 , MSP430G2231 , MSP430G2231-Q1 , MSP430G2232 , MSP430G2233 , MSP430G2252 , MSP430G2253 , MSP430G2302 , MSP430G2303 , MSP430G2312 , MSP430G2313 , MSP430G2332 , MSP430G2333 , MSP430G2352 , MSP430G2353 , MSP430G2402 , MSP430G2403 , MSP430G2412 , MSP430G2413 , MSP430G2432 , MSP430G2433 , MSP430G2444 , MSP430G2452 , MSP430G2453 , MSP430G2513 , MSP430G2533 , MSP430G2544 , MSP430G2553 , MSP430G2744 , MSP430G2755 , MSP430G2855 , MSP430G2955 , MSP430TCH5E
表 17-2 列出了 I2C 模式下 USCI_Bx 的存储器映射寄存器。
地址 | 首字母缩写 | 寄存器名称 | 类型 | 复位 | 部分 |
---|---|---|---|---|---|
68h | UCB0CTL0 | USCI_B0 控制 0 | 读取/写入 | PUC 后为 01h | Topic Link Label17.5.1 |
69h | UCB0CTL1 | USCI_B0 控制 1 | 读取/写入 | PUC 后为 01h | Topic Link Label17.5.2 |
6Ah | UCB0BR0 | USCI_B0 位速率控制 0 | 读取/写入 | PUC 后为 00h | Topic Link Label17.5.3 |
6Bh | UCB0BR1 | USCI_B0 位速率控制 1 | 读取/写入 | PUC 后为 00h | Topic Link Label17.5.3 |
6Ch | UCB0I2CIE | USCI_B0 I2C 中断使能 | 读取/写入 | PUC 后为 00h | Topic Link Label17.5.10 |
6Dh | UCB0STAT | USCI_B0 状态 | 读取/写入 | PUC 后为 00h | Topic Link Label17.5.5 |
6Eh | UCB0RXBUF | USCI_B0 接收缓冲器 | 读取 | PUC 后为 00h | Topic Link Label17.5.6 |
6Fh | UCB0TXBUF | USCI_B0 发送缓冲器 | 读取/写入 | PUC 后为 00h | Topic Link Label17.5.7 |
118h | UCB0I2COA | USCI_B0 I2C 自身的地址 | 读取/写入 | PUC 后为 00h | Topic Link Label17.5.8 |
11Ah | UCB0I2CSA | USCI_B0 I2C 从器件地址 | 读取/写入 | PUC 后为 00h | Topic Link Label17.5.9 |
1h | IE2 | SFR 中断使能 2 | 读取/写入 | PUC 后为 00h | Topic Link Label17.5.11 |
3h | IFG2 | SFR 中断标志 2 | 读取/写入 | PUC 后为 0Ah | Topic Link Label17.5.12 |
0D8h | UCB1CTL0 | USCI_B1 控制 0 | 读取/写入 | PUC 后为 01h | Topic Link Label17.5.1 |
0D9h | UCB1CTL1 | USCI_B1 控制 1 | 读取/写入 | PUC 后为 01h | Topic Link Label17.5.1 |
0DAh | UCB1BR0 | USCI_B1 比特率控制 0 | 读取/写入 | PUC 后为 00h | Topic Link Label17.5.3 |
0DBh | UCB1BR1 | USCI_B1 比特率控制 1 | 读取/写入 | PUC 后为 00h | Topic Link Label17.5.3 |
0DCh | UCB1I2CIE | USCI_B1 I2C 中断使能 | 读取/写入 | PUC 后为 00h | Topic Link Label17.5.10 |
0DDh | UCB1STAT | USCI_B1 状态 | 读取/写入 | PUC 后为 00h | Topic Link Label17.5.5 |
0DEh | UCB1RXBUF | USCI_B1 接收缓冲器 | 读取 | PUC 后为 00h | Topic Link Label17.5.6 |
0DFh | UCB1TXBUF | USCI_B1 发送缓冲器 | 读取/写入 | PUC 后为 00h | Topic Link Label17.5.7 |
17Ch | UCB1I2COA | USCI_B1 I2C 自身的地址 | 读取/写入 | PUC 后为 00h | Topic Link Label17.5.8 |
17Eh | UCB1I2CSA | USCI_B1 I2C 从器件地址 | 读取/写入 | PUC 后为 00h | Topic Link Label17.5.9 |
6h | UC1IE | USCI_A1/B1 中断启用 | 读取/写入 | PUC 后为 00h | Topic Link Label17.5.13 |
7h | UC1IFG | USCI_A1/B1 中断标志 | 读取/写入 | PUC 后为 0Ah | Topic Link Label17.5.14 |
修改 SFR 位
为了避免修改其他模块的控制位,TI 建议使用 BIS.B 或 BIC.B 指令(而非 MOV.B 或 CLR.B 指令)来设置或清除 IEx 和 IFGx 位。
USCI_Bx 控制 0 寄存器
图 17-17 展示了 UCBxCTL0,表 17-3 中对此进行了介绍。
返回表 17-2。
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0Ω |
UCA10 | UCSLA10 | UCMM | 未使用 | UCMST | UCMODEx=11 | UCSYNC=1 | |
rw - 0 | rw - 0 | rw - 0 | rw - 0 | rw - 0 | rw - 0 | rw - 0 | r-1 |
位 | 字段 | 类型 | 复位 | 说明 |
---|---|---|---|---|
7 | UCA10 | R/W | 0h | 自身寻址模式选择 0b = 自身的地址是一个 7 位地址 1b = 自身的地址是一个 10 位地址 |
6 | UCSLA10 | R/W | 0h | 从器件寻址模式选择 0b = 使用 7 位地址对从器件进行寻址 1b = 寻址具有 10 位地址的从器件 |
5 | UCMM | R/W | 0h | 多主器件环境选择 0b = 单一主器件环境。该系统内没有别的主器件。地址比较单元被禁用。 1b = 多主器件环境 |
4 | 未使用 | R/W | 0h | 未使用 |
3 | UCMST | R/W | 0h | 主模式选择。当一个主器件在一个多主器件环境下 (UCMM = 1) 丢失仲裁时,UCMST 位就会自动清零,且该模块被视作从器件。 0b = 从模式 1b = 主器件模式 |
2-1 | UCMODEx | R/W | 0h | USCI 模式。当 UCSYNC=1 时,UCMODEx 位选择同步模式。 00b = 3 引脚 SPI 01b = 4 引脚 SPI(如果 STE= 1,主器件/从器件被启用) 10b = 4 引脚 SPI(如果 STE= 0,主器件/从器件被启用) 11b = I2C 模式 |
0 | UCSYNC | R | 1h | 同步模式使能 0b = 异步模式 1b = 同步模式 |
USCI_Bx 控制 1 寄存器
图 17-18 展示了 UCBxCTL1,表 17-4 中对此进行了介绍。
返回表 17-2。
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0Ω |
UCSSELx | 未使用 | UCTR | UCTXNACK | UCTXSTP | UCTXSTT | UCSWRST | |
rw - 0 | rw - 0 | r0 | rw - 0 | rw - 0 | rw - 0 | rw - 0 | rw - 1 |
位 | 字段 | 类型 | 复位 | 说明 |
---|---|---|---|---|
7-6 | UCSSELx | R/W | 0h | USCI 时钟源选择。这些位选择 BRCLK 时钟源。 00b = UCLKI 01b = ACLK 10b = SMCLK 11b = SMCLK |
5 | 未使用 | R | 0h | 未使用 |
4 | UCTR | R/W | 0h | 发送器或接收器。 0b = 接收器 1b = 发送器 |
3 | UCTXNACK | R/W | 0h | 发送一个 NACK。在一个 NACK 发送完毕后,UCTXNACK 自动复位。 0b = 正常确认 1b = 生成 NACK |
2 | UCTXSTP | R/W | 0h | 在主模式下发送停止条件。在从模式下忽略。在主接收器模式下,一个 NACK 位于停止条件之前。在停止生成后,UCTXSTP 被自动清零。 0b = 无停止生成 1b = 生成停止 |
1 | UCTXSTT | R/W | 0h | 在主模式下发送起始条件。在从模式下忽略。在主控接收器模式下,一个 NACK 位于一个重复起始条件之前。在起始条件和地址信息被发送后,UCTXSTT 自动清零。在从模式下忽略。 0b = 不生成 START 条件 1b = 生成起始条件 |
0 | UCSWRST | R/W | 1h | 软件复位使能 0b = 禁用。释放 USCI 复位以便进行操作。 1b = 启用。在复位状态中 USCI 逻辑状态被保持。 |
USCI_Bx 比特率控制 0 寄存器
图 17-19 展示了 UCBxBR0,表 17-5 中对此进行了介绍。
返回表 17-2。
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0Ω |
UCBRx(低字节) | |||||||
rw | rw | rw | rw | rw | rw | rw | rw |
位 | 字段 | 类型 | 复位 | 说明 |
---|---|---|---|---|
7-0 | UCBRx | R/W | 0h | 位时钟预分频器设置。(UCBxBR0+ UCBxBR1×256) 的 16 位值构成预分频值。 |
USCI_Bx 比特率控制 1 寄存器
图 17-20 展示了 UCBxBR1,表 17-6 中对此进行了介绍。
返回表 17-2。
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0Ω |
UCBRx(高字节) | |||||||
rw | rw | rw | rw | rw | rw | rw | rw |
位 | 字段 | 类型 | 复位 | 说明 |
---|---|---|---|---|
7-0 | UCBRx | R/W | 0h | 位时钟预分频器设置。(UCBxBR0+ UCBxBR1×256) 的 16 位值构成预分频值。 |
USCI_Bx 状态寄存器
图 17-21 展示了 UCBxSTAT,表 17-7 中对此进行了介绍。
返回表 17-2。
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0Ω |
未使用 | UCSCLLOW | UCGC | UCBBUSY | UCNACKIFG | UCSTPIFG | UCSTTIFG | UCALIFG |
rw-0 | r-0 | rw-0 | r-0 | rw - 0 | rw - 0 | rw - 0 | rw - 0 |
位 | 字段 | 类型 | 复位 | 说明 |
---|---|---|---|---|
7 | 未使用 | R/W | 0h | 未使用 |
6 | UCSCLLOW | R | 0h | SCL 低电平 0b = SCL 未保持低电平 1b = SCL 被保持在低电平 |
5 | UCGC | R/W | 0h | 接收到常规调用地址。当接收到一个起始条件时,UCGC 被自动清零。 0b = 未接收到常规调用地址 1b = 接收到常规调用地址 |
4 | UCBBUSY | R | 0h | 总线忙 0b = 总线处于无效状态 1b = 总线忙 |
3 | UCNACKIFG | R/W | 0h | 不应答接收到的中断标志。当接收到一个起始条件时,UCNACKIFG 被自动清零。 0b = 无中断挂起 1b = 中断挂起 |
2 | UCSTPIFG | R/W | 0h | 停止条件中断标志。当接收到一个起始条件时,UCSTPIFG 被自动清零。 0b = 无中断挂起 1b = 中断挂起 |
1 | UCSTTIFG | R/W | 0h | 起始条件中断标志。当接收到一个停止条件时,UCSTTIFG 被自动清零。 0b = 无中断挂起 1b = 中断挂起 |
0 | UCALIFG | R/W | 0h | 仲裁丢失中断标志 0b = 无中断挂起 1b = 中断挂起 |
USCI_Bx 接收缓冲寄存器
图 17-22 展示了 UCBxRXBUF,表 17-8 中对此进行了介绍。
返回表 17-2。
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0Ω |
UCRXBUFx | |||||||
r-0 | r-0 | r-0 | r-0 | r-0 | r-0 | r-0 | r-0 |
位 | 字段 | 类型 | 复位 | 说明 |
---|---|---|---|---|
7-0 | UCRXBUFx | R | 0h | 接收数据缓冲是用户可以访问的,并包含从接收移位寄存器那里最后接收到的字符。读取 UCBxRXBUF 将复位 UCBxRXIFG。 |
USCI_Bx 发送缓冲寄存器
图 17-23 展示了 UCBxTXBUF,表 17-9 中对此进行了介绍。
返回表 17-2。
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0Ω |
UCTXBUFx | |||||||
rw - 0 | rw - 0 | rw - 0 | rw - 0 | rw - 0 | rw - 0 | rw - 0 | rw - 0 |
位 | 字段 | 类型 | 复位 | 说明 |
---|---|---|---|---|
7-0 | UCTXBUFx | R/W | 0h | 发送数据缓冲是用户可以访问的,并包含等待被移入发送移位寄存器以及已经发出的数据。写入发送数据缓冲将会清除 UCBxTXIFG。 |
USCI_Bx I2C 自身的地址寄存器
图 17-24 展示了 UCBxI2COA,表 17-10 中对此进行了介绍。
返回表 17-2。
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
UCGCEN | 保留 | I2COAx | |||||
rw-0 | r-0 | r-0 | r-0 | r-0 | r-0 | rw - 0 | rw - 0 |
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0Ω |
I2COAx | |||||||
rw - 0 | rw - 0 | rw - 0 | rw - 0 | rw - 0 | rw - 0 | rw - 0 | rw - 0 |
位 | 字段 | 类型 | 复位 | 说明 |
---|---|---|---|---|
15 | UCGCEN | R/W | 0h | 通用常规地址使能 0b = 不响应一个常规调用 1b = 响应一个常规调用 |
14-10 | 保留 | R | 0h | |
9-0 | I2COAx | R/W | 0h | I2C 自身的地址。I2COAx 位包含 USCI_Bx I2C 控制器的本地地址。该地址是右对齐的。在 7 位寻址模式中,位 6 是 MSB,位 9-7 被忽略。在 10 位寻址模式中,位 9 是 MSB。 |
USCI_Bx I2C 从器件地址寄存器
图 17-25 展示了 UCBxI2CSA,表 17-11 中对此进行了介绍。
返回表 17-2。
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
保留 | I2CSAx | ||||||
r-0 | r-0 | r-0 | r-0 | r-0 | r-0 | rw - 0 | rw - 0 |
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0Ω |
I2CSAx | |||||||
rw - 0 | rw - 0 | rw - 0 | rw - 0 | rw - 0 | rw - 0 | rw - 0 | rw - 0 |
位 | 字段 | 类型 | 复位 | 说明 |
---|---|---|---|---|
15-10 | 保留 | R | 0h | |
9-0 | I2CSAx | R/W | 0h | I2C 从器件地址。I2CSAx 位包含了由 USCI_Bx 模块寻址的外部器件的从器件地址。它仅用于主控模式。该地址是右对齐的。在 7 位从器件寻址模式中,位 6 是 MSB,位 9-7 被忽略。在 10 位从器件寻址模式中,位 9 是 MSB。 |
USCI_Bx I2C 中断使能寄存器
图 17-26 展示了 UCBxI2CIE,表 17-12 中对此进行了介绍。
返回表 17-2。
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
保留 | UCNACKIE | UCSTPIE | UCSTTIE | UCALIE | |||
rw - 0 | rw - 0 | rw - 0 | rw - 0 | rw - 0 | rw - 0 | rw - 0 | rw - 0 |
位 | 字段 | 类型 | 复位 | 说明 |
---|---|---|---|---|
7-4 | 保留 | R/W | 0h | |
3 | UCNACKIE | R/W | 0h | 不确认中断使能。 0b = 禁用中断 1b = 中断被启用 |
2 | UCSTPIE | R/W | 0h | 停止条件中断使能 0b = 禁用中断 1b = 中断被启用 |
1 | UCSTTIE | R/W | 0h | 起始条件中断使能 0b = 禁用中断 1b = 中断被启用 |
0 | UCALIE | R/W | 0h | 仲裁丢失中断使能 0b = 禁用中断 1b = 中断被使能 |
SFR 中断使能 2 寄存器
图 17-27 展示了 IE2,表 17-13 中对此进行了介绍。
返回表 17-2。
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0Ω |
UCB0TXIE | UCB0RXIE | ||||||
rw - 0 | rw - 0 |
位 | 字段 | 类型 | 复位 | 说明 |
---|---|---|---|---|
7-4 | 这些位可以用于其他模块(请参阅器件专用数据表)。 | |||
3 | UCB0TXIE | R/W | 0h | USCI_B0 发送中断使能 0b = 禁用中断 1b = 中断被启用 |
2 | UCB0RXIE | R/W | 0h | USCI_B0 接收中断使能 0b = 禁用中断 1b = 中断被使能 |
1-0 | 这些位可以用于其他模块(请参阅器件专用数据表)。 |
SFR 中断标志 2 寄存器
图 17-28 展示了 IFG2,表 17-14 中对此进行了介绍。
返回表 17-2。
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0Ω |
UCB0TXIFG | UCB0RXIFG | ||||||
rw - 1 | rw - 0 |
位 | 字段 | 类型 | 复位 | 说明 |
---|---|---|---|---|
7-4 | 这些位可以用于其他模块(请参阅器件专用数据表)。 | |||
3 | UCB0TXIFG | R/W | 1h | USCI_B0 发送中断标志。当 UCB0TXBUF 为空时,UCB0TXIFG 被置位。 0b = 无中断挂起 1b = 中断挂起 |
2 | UCB0RXIFG | R/W | 0h | USCI_B0 接收中断标志。当 UCB0RXBUF 收到一个完整字符时,UCB0RXIFG 被置位。 0b = 无中断挂起 1b = 中断挂起 |
1-0 | 这些位可以用于其他模块(请参阅器件专用数据表)。 |
USCI_A1/B1 中断使能寄存器
图 17-29 展示了 UC1IE,表 17-15 中对此进行了介绍。
返回表 17-2。
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0Ω |
未使用 | UCB1TXIE | UCB1RXIE | |||||
rw - 0 | rw - 0 | rw - 0 | rw - 0 | rw - 0 | rw - 0 |
位 | 字段 | 类型 | 复位 | 说明 |
---|---|---|---|---|
7-4 | 未使用 | R/W | 0h | 未使用 |
3 | UCB1TXIE | R/W | 0h | USCI_B1 发送中断启用 0b = 禁用中断 1b = 中断被启用 |
2 | UCB1RXIE | R/W | 0h | USCI_B1 接收中断使能 0b = 禁用中断 1b = 中断被使能 |
1-0 | 这些位可以被其他的 USCI 模块使用(请参阅器件专用数据表)。 |
USCI_A1/B1 中断标志寄存器
图 17-30 展示了 UC1IFG,表 17-16 中对此进行了介绍。
返回表 17-2。
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0Ω |
未使用 | UCB1TXIFG | UCB1RXIFG | |||||
rw - 0 | rw - 0 | rw - 0 | rw - 0 | rw - 1 | rw - 0 |
位 | 字段 | 类型 | 复位 | 说明 |
---|---|---|---|---|
7-4 | 未使用 | R/W | 0h | 未使用 |
3 | UCB1TXIFG | R/W | 0h | USCI_B1 发送中断标志.当 UCB1TXBUF 为空时,UCB1TXIFG 被置位。 0b = 无中断挂起 1b = 中断挂起 |
2 | UCB1RXIFG | R/W | 0h | USCI_B1 接收中断标志。当 UCB1RXBUF 收到一个完整字符时,UCB1RXIFG 被置位。 0b = 无中断挂起 1b = 中断挂起 |
1-0 | 这些位可以被其他的 USCI 模块使用(请参阅器件专用数据表)。 |