文档介绍:第6章: 数字输入/输出模块(I/O)
数字I/O端口概述
数字I/O端口寄存器
I/O端口应用
数字I/O端口概述
数字I/O脚有专用和复用之分。其功能可通过9个16位控制寄存器来控制。控制寄存器分为两类:
I/O复用控制寄存器(MCRx),用来选择I/O脚是片内外设功能还是通用I/O功能;
数据方向控制寄存器(PxDATDIR):用来控制双向I/O脚的数据传送方向。
注意:上述数字I/O脚是通过控制寄存器(映射在数据存储器空间)来控制的,与器件的I/O空间无任何关系。
LF240x系列DSP多达41只I/O引脚,大部分是复用的。
数字I/O寄存器
I/。由图可看出复用I/O引脚如何来实现引脚功能选择和数据传送方向选择的。
数字I/O寄存器
(P97)列出了与I/O模块有关的寄存器,地址为:7090h-709Fh
注意:
映射到数据存储器空间。
当复用I/O脚无论是被配置为外设功能还是为通用I/O时,引脚的状态都可通过读I/O数据寄存器来获取。
保留位是不可操作的,读出为0,写入对它无影响。
数字I/O寄存器
地址
寄存器
功能
7090h
MCRA
I/O复用控制寄存器A
7092h
MCRB
I/O复用控制寄存器B
7094h
MCRC
I/O复用控制寄存器C
7098h
PADATDIR
I/O端口A数据和方向寄存器
709Ah
PBDATDIR
I/O端口B数据和方向寄存器
709Ch
PCDATDIR
I/O端口C数据和方向寄存器
709Eh
PDDATDIR
I/O端口D数据和方向寄存器
7095h
PEDATDIR
I/O端口E数据和方向寄存器
7096h
PFDATDIR
I/O端口F数据和方向寄存器
数字I/O寄存器
I/O口复用输出寄存器
LF240x/240xA具有3个I/O端口复用控制寄存器:MCRA、MCRB、MCRC。
(1)I/O端口复用控制寄存器A(MCRA),映射地址:7090h,(P97)。
数字I/O寄存器
位
基本功能及描述(=1)
通用I/O(=0)
SCITXD :SCI异步串行口发送数据
IOPA0
SCIRXD: SCI异步串行口接收数据
IOPA1
XINT1:外部用户中断1
IOPA2
CAP1/QEP1:捕捉输入1/正交编码脉冲输入1(EVA)
IOPA3
CAP2/QEP2:捕捉输入2/正交编码脉冲输入2(EVA)
IOPA4
CAP3:捕捉输入3(EVA)
IOPA5
PWM1:比较/PWM输出引脚1(EVA)
IOPA6
PWM2:比较/PWM输出引脚2(EVA)
IOPA7
PWM3:比较/PWM输出引脚3(EVA)
IOPB0
PWM4:比较/PWM输出引脚4(EVA)
IOPB1
PWM5:比较/PWM输出引脚5(EVA)
IOPB2
PWM6:比较/PWM输出引脚6(EVA)
IOPB3
T1PWM/T1CMP:TMR1比较输出(EVA)
IOPB4
T2PWM/T2CMP :TMR2比较输出(EVA)
IOPB5
TDIRA:通用定时器计数方向选择(EVA);1=加计数;0=减计数
IOPB6
TCLKINA:通用定时器(EVA)的外部时钟输入
IOPB7
数字I/O寄存器
(2)I/O端口复用控制寄存器B,映射地址:7092h,(P98)。
注意:-,其为系统的专用引脚,用作与硬件仿真器接口(JTAG)相连,实现DSP的在线仿真功能。对其写0会引起不可预测的结果。
数字I/O寄存器
位
基本功能及描述(=1)
通用I/O(=0)
W/R:写/读选定;0=读;1=写
IOPC0
BIO:分支控制输入;0=执行分支程序
IOPC1
SPISIMO:SPI从动输入、主动输出
IOPC2
SPISOMI: SPI从动输出、主动输入
IOPC3