您的位置:首页 > 其它

二 ARM9(S3C2440)的IO口——理论知识及程序实例

2011-08-05 16:06 405 查看
概述

S3C2440A 包含了130 个多功能输入/输出口引脚并且它们为如下显示的八个端口:

– 端口A(GPA):25 位输出端口

– 端口B(GPB):11 位输入/输出端口

– 端口C(GPC):16 位输入/输出端口

– 端口D(GPD):16 位输入/输出端口

– 端口E(GPE):16 位输入/输出端口

– 端口F(GPF):8 位输入/输出端口

– 端口G(GPG):16 位输入/输出端口

– 端口H(GPH):9 位输入/输出端口

– 端口J(GPJ):13 位输入/输出端口

每个端口都可以简单的由软件配置为各种系统配置和设计要求。你必须在开始主程序前定义使用的每个引脚的

功能。如果没有使用某个引脚的复用功能,这个引脚可以配置为I/O 口。

端口控制描述

端口配置寄存器(GPACON 至GPJCON)

S3C2440A 中,大多数端口为复用引脚。因此要决定每个引脚选择哪项功能。PnCON(引脚控制寄存器)决

定了每个引脚使用哪项功能。

如果在掉电模式中PE0 至PE7 用于唤醒信号,这些端口必须配置为输入模式。

端口数据寄存器(GPADAT 至GPJDAT)

如果端口配置为输出端口,可以写入数据到PnDAT 的相应位。如果端口配置为输入端口,可以从PnDAT 的相

应位读取数据。

端口上拉寄存器(GPBUP 至GPJUP)

端口上拉寄存器控制每个端口组的使能/禁止上拉电阻。当相应位为0 时使能引脚的上拉电阻。当为1 时禁止

上拉电阻。

如果使能了上拉电阻,那么上拉电阻与引脚的功能设置无关(输入、输出、DATAn、EINTn 等等)

杂项控制寄存器

此寄存器控制睡眠模式,USB 引脚和CLKOUT 选择的数据端口上拉电阻。

外部中断控制寄存器

24 个外部中断由各种信号方式触发。EXTINT 寄存器为外部中断请求配置信号触发方式为低电平触发、高电平

触发、下降沿触发、上升沿触发或双边沿触发。

由于每个外部中断引脚包含一个数字滤波器,中断控制可以确认请求信号是否长于3 个时钟。

EINT[15:0]用于唤醒源

下面是结合具体的程序(用的是FL2440开发板):

一般步骤:

上拉寄存器和控制寄存器设置
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: