第4章数字IO1Word下载.docx

上传人:b****5 文档编号:19003605 上传时间:2023-01-02 格式:DOCX 页数:17 大小:460.02KB
下载 相关 举报
第4章数字IO1Word下载.docx_第1页
第1页 / 共17页
第4章数字IO1Word下载.docx_第2页
第2页 / 共17页
第4章数字IO1Word下载.docx_第3页
第3页 / 共17页
第4章数字IO1Word下载.docx_第4页
第4页 / 共17页
第4章数字IO1Word下载.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

第4章数字IO1Word下载.docx

《第4章数字IO1Word下载.docx》由会员分享,可在线阅读,更多相关《第4章数字IO1Word下载.docx(17页珍藏版)》请在冰豆网上搜索。

第4章数字IO1Word下载.docx

注意:

数字I/O脚是通过映射在数据空间的控制寄存器来控制的,与器件的I/O空间无任何关系。

4.3数字I/O端口控制寄存器

数字输入/输出模块有两类,共9个控制寄存器。

与其他片内外设控制寄存器一样,这些寄存器被映射到数据空间,地址从7090h~709Fh。

对寄存器中所有保留位是不可操作的,读时位0,写对它无影响。

当复用I/O引脚被配置为外设功能或通用I/O(GPIO)输出时,引脚状态可以通过读I/O数据寄存器来获取。

表5-1列出了数字I/O端口模块所用的控制寄存器单元。

表5-1数字I/O端口模块控制器列表

地址

控制寄存器

说明

7090h

MCRA

I/O端口复用控制寄存器A

709Ch

PCDATDIR

I/O端口C数据和方向寄存器

7092h

MCRB

I/O端口复用控制寄存器B

709Eh

PDDATDIR

I/O端口D数据和方向寄存器

7094h

MCRC

I/O端口复用控制寄存器C

7095h

PEDATDIE

I/O端口E数据和方向寄存器

7098h

PADATDIR

I/O端口复A数据和方向寄存器

7096h

PFDATDIR

I/O端口F数据和方向寄存器

709Ah

PBDATDIR

I/O端口B数据和方向寄存器

4.3.1I/O端口复用控制寄存器

LF2407共有3个I/O端口复用控制寄存器:

MCRA、MCRB、MCRC。

(1)I/O端口复用控制寄存器A地址:

7090h

 

表4-2数字I/O端口复用控制寄存器A(MCRA)的位定义

位名称

引脚功能选择

MCRA.n=1(基本功能)

MCRA.n=0(I/O口功能)

MCRA.0

SCITXD

IOPA0

1

MCRA.1

SCIRXD

IOPA1

2

MCRA.2

XINT1

IOPA2

3

MCRA.3

CAP1/QEP1

IOPA3

4

MCRA.4

CAP2/QEP2

IOPA4

5

MCRA.5

CAP3

IOPA5

6

MCRA.6

PWM1

IOPA6

7

MCRA.7

PWM2

IOPA7

8

MCRA.8

PWM3

IOPB0

9

MCRA.9

PWM4

IOPB1

10

MCRA.10

PWM5

IOPB2

11

MCRA.11

PWM6

IOPB3

12

MCRA.12

T1PWM/T1CMP

IOPB4

13

MCRA.13

T2PWM/T2CMP

IOPB5

14

MCRA.14

TDIRA

IOPB6

15

MCRA.15

TCLKINA

IOPB7

TMS320LF240x的端口均为8位,而MCRA为16位,因此控制了IOPA和IOPB两个I/O端口的设置。

(2)I/O端口复用控制寄存器B地址:

7092h

表4-3数字I/O端口复用控制寄存器B(MCRB)的位定义

MCRB.n=1(基本功能)

MCRB.n=0(I/O口功能)

MCRB.0

W/

IOPC0

MCRB.1

IOPC1

MCRB.2

SPISIMO

IOPC2

MCRB.3

SPISIMI

IOPC3

MCRB.4

SPICIK

IOPC4

MCRB.5

IOPC5

MCRB.6

CANTX

IOPC6

MCRB.7

CANRX

IOPC7

MCRB.8

XINT2/ADCSOC

IOPD0

MCRB.9

EMU0

保留

MCRB.10

EMU1

MCRB.11

TCK

MCRB.12

TDI

MCRB.13

TDO

MCRB.14

TMS

MCRB.15

TMS2

TMS320LF240x的端口均为8位,而MCRA为16位,因此控制了IOPC和IOPC两个I/O端口的设置。

(3)I/O端口复用控制寄存器C地址:

7094h

Notes:

1)DuetotheabsenceoftheW/R/IOPC0,BIO/IOPC1,andSPISTE/IOPC5pins,bits0,1,and5ofMCRBmustbetreatedasreservedinthe2402A.

2)DuetotheabsenceofSPIandCANmodules(in2402A),bits2,3,4,6,and7ofMCRBshouldalwaysbewrittenwith0.ThecorrespondingpinsworkasGPIOpinsonly.

3)DuetotheabsenceoftheCANmoduleandW/Rfunctionin2404A,bits0,6,and7ofMCRBshouldalwaysbewrittenwith0.ThecorrespondingpinsworkasGPIOpinsonly.

4)DuetotheabsenceoftheW/Rfunctionin2406A,bit0ofMCRBshouldalwaysbewrittenwith0.ThecorrespondingpinworksasaGPIOpinonly.

表4-3数字I/O端口复用控制寄存器C(MCRC)的位定义

MCRC.0

CLKOUT

IOPE0

MCRC.1

PWM7

IOPE1

MCRC.2

PWM8

IOPE2

MCRC.3

PWM9

IOPE3

MCRC.4

PWM10

IOPE4

MCRC.5

PWM11

IOPE5

MCRC.6

PWM12

IOPE6

MCRC.7

CAP4/QEP3

IOPE7

MCRC.8

CAP5/QEP4

IOPF

MCRC.9

CAP6

IOPF1

MCRC.10

T3PWM/T3CMP

IOPF2

MCRC.11

T4PWN/T4CMP

IOPF3

MCRC.12

TDIRB

IOPF4

MCRC.13

TCLKINB

IOPF5

MCRC.14

IOPF6

MCRC.15

TMS320LF240x的端口均为8位,而MCRA为16位,因此控制了IOPE和IOPF两个I/O端口的设置。

4.4数据和方向控制寄存器

6个数据和方向控制寄存器(PXDATDIR),包含两个功能位。

(1)I/O方向位

如果引脚被选择了通用I/O,方向位决定了是输入(0)还是输出

(1)。

(2)I/O数据位

如果引脚被选择了通用I/O,当方向选为输入,则可从该位上读取数据,当方向选为输出,则可向该位写入数据。

如I/O端口被选择作通用I/O引脚,数据和方向控制寄存器可以控制数据和I/O引脚的数据方向。

如I/O端口被选择作外设功能时,数据和方向控制寄存器的设置对相应的引脚无影响。

(1)I/O端口A数据和方向控制寄存器(PADATDIR),

地址:

位15-8:

AnDIRPA7-PA0的数据方向

0:

相应引脚配置为输入

1:

相应引脚配置为输出

位7-0:

IOPA7-IOPA0

如果AnDIR=0,引脚配置为输入

0-相应引脚的电平读为低电平

1-相应引脚的电平读为高电平

如果AnDIR=1,引脚配置为输出

0-设置相应引脚,使其输出信号为低电平时有效

1-设置相应引脚,使其输出信号为高电平时有效

如果I/O端口用作通用I/O,则必须对数据和方向寄存器进行初始化设置,为输入还是输出。

寄存器PADATDIR的数据位与对应I/O引脚

(2)I/O端口B数据和方向控制寄存器(PBDATDIR),

BnDIR

IOPBn

如果BnDIR=0,引脚配置为输入

如果BnDIR=1,引脚配置为输出

寄存器PBDATDIR的数据位与对应I/O引脚

(3)I/O端口C数据和方向控制寄存器(PCDATDIR),

CnDIR

IOPCn

如果CnDIR=0,引脚配置为输入

如果CnDIR=1,引脚配置为输出

寄存器PCDATDIR的数据位与对应I/O引脚

(4)I/O端口D数据和方向控制寄存器(PDDATDIR),

位15~9:

保留位

位8DnDIR

位7-1:

位0:

IOPDn

如果DnDIR=0,引脚配置为输入

如果DnDIR=1,引脚配置为输出

寄存器PDDATDIR的数据位与对应I/O引脚

(5)I/O端口E数据和方向控制寄存器(PEDATDIR),

位15~8:

EnDIR

IOPEn

如果EnDIR=0,引脚配置为输入

如果EnDIR=1,引脚配置为输出

寄存器PEDATDIR的数据位与对应I/O引脚

(6)I/O端口F数据和方向控制寄存器(PFDATDIR),

位15:

位14~8:

位7:

位6-0:

IOPFn

如果FnDIR=0,引脚配置为输入

如果FnDIR=1,引脚配置为输出

寄存器PFDATDIR的数据位与对应I/O引脚

4.5数字I/O端口配置实例

配置:

选择I/O引脚的功能,且设置I/O引脚的方向。

I/O配置实例程序:

MCRA.set7090h;

可将这些映射语句放于240x.h文件中

PADATDIR.set7098h;

PBDATDIR.set709Ah;

LDP#0E1h;

指向相应的数据页面

LACC#0h;

设置MCRA所有位均为0

SACLMCRA;

配置为I/O脚,选择引脚IOPA0-IOPA7和IOPB0-IOPB7

SACLPADATDIR;

引脚IOPA0-IOPA7配置为输入,低有效

LACC#0F00h;

引脚IOPB7-IOPB4配置为输入

SACLPBDATDIR;

引脚IOPB3-IOPB0配置为输出

LACCPBDATDIR;

读取引脚IOPB7-IOPB4输入状态

AND#00F0h;

A为输入状态

上为一个数字I/O的实际配置程序,对于每个寄存器的定义已介绍,对于所有数字I/O配置定义的参考表,见P81。

4.6数字I/O应用实例

4.6.1使用数字I/O查询输入信号

接口电路如下图所示。

在I/O初始化时,需设置引脚为I/O,且需要选择信号方向。

程序见参考书。

4.6.2使用数字I/O输出信号

本例为使用I/O端口输出4个信号,分别连接到4个LED。

输出脚与LED间接一触发器SN74HCT273,对LED驱动。

使用:

PWM3/IOPB0、PWM4/IOPB1、PWM5/IOPB2、PWM6/IOPB3作为输出。

PWM7/IOPE1作为SN74HCT273的选通信号。

如何实现对4个LED的循环驱动?

即DS0→DS1→DS2→DS2,参考程序见P86。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人文社科 > 军事政治

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1