快速业务通道

基于S3C2410的通用IO编程

作者 佚名技术 来源 Linux系统 浏览 发布时间 2012-04-16

作者:蒙洋,华清远见嵌入式学院讲师.

一、通用IO的定义

GPIO(General-Purpose IO ports),通用的IO口.一般的微控制芯片都提供通用的可编程接口.按照它们的功能分成:

● 通用IO控制寄存器
● 通过IO数据寄存器

很多MCU的GPIO接口出去了标准的寄存器外,还会提供上拉寄存器,可以设置IO的输出模式为高阻.

二、S3C2410A的通用IO寄存器

S3C2410A共有117个复用的输入/输出端口,分别是端口A~H,共8组.按照其位数不同不同可分为:

● 端口A(GPA),23位输出口
● 端口B(GPB),11位输出口
● 端口C(GPC),16位输出口
● 端口D(GPD),16位输出口
● 端口E(GPE),16位输出口
● 端口F(GPF),8位输出口
● 端口G(GPG),16位输出口
● 端口H(GPH),11位输出口

为了满足不同设计要求,每个IO口可以设置成不同的工作模式,其中又可以将IO口分成如下3类:

● 端口控制寄存器(GPACON~CPHCON)
设置引脚工作模式,例如:输入、输出、外部中断和保留.
● 端口数据寄存器(GPADAT~CPHDAT)
当端口被设置成输入模式,可以向GPxDAT的相应位写入数据;当端口被设置成输出模式,可以从GPxDAT的相应位读出数据
● 端口上拉寄存器(GPAUP~CPHUP)
控制某一端口的响应位的上拉电阻状态(允许/禁止).
0 – 响应的上拉电阻被允许
1 – 响应的上拉电阻被禁止

参看S3C2410A数据手册

三 编程实例

(1) 编程目的
控制和S3C2410A芯片IO连接的几个LED有规律的点亮.

(2) 电路原理

电路原理如图1所示:

图1 电路原理图

四个LED发光二极管分别与S3C2410A的GPF4~GPF7相连,通过GPF4~GPF7的引脚高低电平变化控制LED的点亮和熄灭.由图1可以清晰的看出当GPF4~GPF7输出低电平时LED点亮,反之当GPF4~GPF7输出高电平时LED熄灭.

(3) 代码分析

在头文件中定义了相关的寄存器

操作相关寄存器,LED能够规律的工作

具体的细节可以参考相应的工程文件.

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号