MSP430FR2355 数字 I/O 系统编程指南
1. 数字 I/O 系统基础
数字 I/O 赋予了微控制器(MCU)读取和写入逻辑电平到设备引脚的能力,具有高度的通用性,可用于几乎任何应用。以 MSP430FR2355 为例,它有六个数字 I/O 端口,分别是 8 位的 P1、P2、P3、P4,5 位的 P5 和 7 位的 P6,所有 44 个 I/O 都连接到 MCU 封装的引脚。还可以通过 PA(P1:P2)、PB(P3:P4)和 PC(P5:P6)进行 16 位端口访问。
MSP430 每个端口有六个寄存器来配置端口操作,具体如下:
| 寄存器 | 功能 | 逻辑 |
| ---- | ---- | ---- |
| PxDIR | 配置端口内每个位为输入或输出 | 0 为输入(默认);1 为输出 |
| PxIN | 包含配置为输入的端口每个引脚的逻辑值 | - |
| PxOUT | 主要用于设置配置为输出的信号的逻辑值;当端口位配置为输入并使用上拉/下拉电阻时,控制电阻的极性 | - |
| PxREN | 控制是否为配置为输入的引脚添加可选的上拉/下拉电阻 | 0 为无电阻(默认);1 为启用电阻 |
| PxSEL1 和 PxSEL0 | 选择每个引脚要使用的功能 | 默认值 PxSEL1:PxSEL0 = 00,选择数字 I/O 功能 |
2. 上拉/下拉电阻配置
PxREN 寄存器决定端口输入是否有上拉/下拉电阻,其内部的位控制 PxIN 中相应的位位置。具体逻辑如下:
- 位为 0:上拉/下拉电阻禁用(默认)。
- 位为 1:上拉/下拉电阻