搜狐首页 科技 无心法师2

手机搜狐

SOHU.COM

MSP430输入输出I/O口详解

广告

IO口是处理器系统对外沟通的最基本部件,从基本的键盘、LED到复杂的外设芯片等,都是通过IO口的输入、输出操作来进行读取或控制的。

MSP430系列中,不同单片机的IO口数量不同。体积最小的MSP430F20xx系列只有10 个IO,适合在超小型设备中应用;功能最丰富的MSP430FG46xx系列多达80 个IO 口,足够应付外部设备繁多的复杂应用。在MSP430FE425 单片机中,共有14 个IO 口,属于IO 口较少的系列。但由于需要大量引脚的设备,如LCD、多通道模拟量输入等都有专用引脚,不占用IO 口。因此在大部分设计中IO 数量还是够用的。

l IO 口寄存器

和大部分单片机类似,MSP430 单片机也将8 个IO 口编为一组。例如P1.0~P1.7都属于P1 口。每组IO 口都有4 个控制寄存器,其中P1 和P2 口还额外具有3 个中断寄存器。

表2.1.1 IO 口寄存器列表。

寄存器名 寄存器功能 读写类型 复位初始值

PxIN Px 口输入寄存器 只读 无

PxOUT Px 口输出寄存器 可读可写 保持不变

PxDIR Px 口方向寄存器 可读可写 0(全部输入)

PxSEL Px 口第二功能选择 可读可写 0(全部为IO 口)

PxIE Px口中断允许 可读可写 0(全部不允许中断)

PxIES Px口中断沿选择 可读可写 保持不变

PxIFG Px口中断标志位 可读可写 0(全部未发生中断)

这是本书第一次出现寄存器列表,有必要说明一下MSP430单片机的寄存器以及标志位全部是大写的。若出现的小写的“x”,表示该设备不止一个,因此寄存器也不止一个。为了缩短列表长度,不用全部列出,用字母x 表示序号。例如对于表中的PxOUT,当x取1、2、3 时,就变成了P1OUT、P2OUT、P3OUT。

n PxDIR寄存器用于设置每一位IO口方向: 0=输入 1=输出MSP430 单片机的IO 口属于双向IO 口,因此在使用IO 口时首先要用方向选择寄存器来设置每个IO 口的方向。例如P1.5、P1.6、P1.7 接有按键,P1.1、P1.3、P1.4接有LED,那么P1.5、P1.6、P1.7 要设为输入,P1.1、P1.3、P1.4 要设为输出:

P1DIR|=BIT1+BIT3+BIT4; // P1.1、P1.3、P1.4设为输出

精选