第五章 ARM9_IO和IO操作.ppt_第1页
第五章 ARM9_IO和IO操作.ppt_第2页
第五章 ARM9_IO和IO操作.ppt_第3页
第五章 ARM9_IO和IO操作.ppt_第4页
第五章 ARM9_IO和IO操作.ppt_第5页
已阅读5页,还剩18页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第五章 S3C2410的I/O口和I/O操作,S3C2410芯片上共有71个多功能的输人/输出引脚,它们分为8组I/O端口。 1个23位输出端口(端口A); 2个11位输人/输出端口(端口B, H); 4个16位输入/输出端口(端口C,D,E,G); 1个8位输人/输出端口(端口F)。 可以很容易地通过每组端口来满足不同系统配置和设计的需要。在运行程序之前,必须 对每个用到的引脚功能进行设置。如果某些引脚的复用功能(第二功能)没有使用,那么可以先将该引脚设置为I/O口。,5.1 S3C2410 I/O口描述 端口控制寄存器(GPACONGPHCON)。 在S3C2410芯片中,大部分引脚是复用

2、的,所以必须对每个引脚进行配置。端口控制寄存器定义了每个引脚的功能。 端口数据寄存器(GPADATGPHDAT)。如果该端口定义为输出端口,那么可以向PnDAT的相应位写数据。如果该端口定义为输人端端口,可以从PnDAT的相应位读入数据。 端口上拉寄存器(GPBUPGPHUP)。端口上拉寄存器控制每个端口组上拉电阻的使能/禁止。如果某一位为0,则相应的上拉电阻被使能(上电复位状态),端口做输人/输出端口(第一功能口);如果是1则相应的上拉电阻被禁止,端口做多功能口(第二功能口)。如果端口的上拉电阻使能,无论在哪种状态(INPUT、OUTPUT、DATAn、和EINTn等下,)上拉电阻都起作用。

3、, 多状态控制寄存器。该寄存器控制数据端口的上拉电阻,包括高阻态、USB 和CLKOUT选项。 外部中断控制寄存器(EXTINTN) 。24个外部中断有各种各样的中断请求信号,EXTINTN寄存器可以配置信号的类型有低电平触发中断请求、高电平触发中断清求、下降沿触发中断请求、上升沿触发中断请求,以及两沿触发方式中断清求。 8个外部中断引脚有数字滤波器(参考数据手册中的EINTFI.Tn)。 有16个外部中断 (E1NT15:0) 用于唤醒CPU。 掉电模式和I/O端口。在掉电模式下仍然保持所有的GPIO状态值,可以参考相应章节的内容。EINTMASK在掉电模式下也不能阻止唤醒CPU。如果EIN

4、TMASK屏蔽了EINT15:4的某一位,仍然可以唤醒CPU;但是SRCPND的EINT4:7位和EINT8:23位不能在CPU唤醒后马上被置位。,5.2 I/O端口控制寄存器 5.2.1 端口A控制寄存器(GPACON、GPADAT)和功能配置 S3C2410 I/O端口A控制寄存器及端口A功能配置分别如表5-1表5-2所示。 表5-1 S3C2410端口A控制寄存器,表5-2 端口A功能配置,GPACON22:0中的某一清零,与该位相对应的引脚为输出口;置位相应的引脚为第二功能端口。 端口被配置为输出引脚后,引脚的状态和相应的位状态一致。当端口被配置为第二功能引脚后,读出来的值不确定。,5

5、.2.2 端口B控制寄存器(GPBCON、GPBDAT和GPBUP)和功能配置 表5-3 S3C2410端口B控制寄存器,若端口B被配置为输入端口,则可以从引脚上读入相应的外部输入的数据。如果端口B被配置为输出端口,则向该位写人的数据可以被发送到相应的引脚上。如果该引脚被配置为第二功能引脚,则读出的数据不确定。 若清位GPBUP10:0中的某一位,则允许端口B的相应引脚的上拉功能,否则禁止上拉功能。,表5-4 端口B控制寄存器(GPBCON)的配置,5.2.3 端口C控制寄存器(GPCCON、GPCDAT和GPCUP) 和功能配置 端口C控制寄存器(GPCCON、GPCDAT和GPCUP) 和

6、具体配置如表5-5和5-6所示。,表5-5 端口C控制寄存器(GPCCON)的配置,表5-6端口C控制寄存器(GPCCON)的配置,如果端口C被配置为输人端口,则可以从引脚读入相应外部输入源输入的数据。如果端口C被配置为输出端口,则向寄存器写的数据可以被送往相应的引脚。如果端口C被配置为第二功能引脚,则从该引脚读出的数据不确定。 若清位GPCUP 15:0的某一位,则允许端口C相应引脚的上拉功能,否则禁止上拉功能。 5.2.4 端口D控制寄存器(GPDCON、GPDDAT和GPDUP)和功能配置 端口D控制寄存器(GPDCON)的具体配置情况如表5-7和表-8所示。,表5-7 端口D控制寄存器

7、( GPDCON)的配置,表5-8 端口D控制寄存器( GPDCON)的配置,如果端口D被配置为输入端口,则可以从引脚读入相应外部输入源输入的数据。如果端口D被配置为输出端口,则向寄存器写的数据可以被送往相应的引脚。如果端口D被配置为第二功能引脚,则从该引脚读出的数据不确定。 若清位GPDUP15:0的某一位,则允许端口D相应引脚的上拉功能,否则禁止上拉功能。,5.2.5 端口E控制寄存器(GPECON、GPEDAT和GPEUP) 和功能配置,表5-9 端口E控制寄存器( GPECON),表5-10 端口E控制寄存器(GPECON)的配置,端口E控制寄存器(GPECON)的配置如表5-9和5-

8、10所示。 如果端口E被配置为输入端口,则可以从引脚读入相应外部输入源输入的数据。如果端口E被配置为输出端口,则向寄存器写的数据可以被送往相应的引脚。如果端口E被配置为第二功能引脚,则从该引脚读出的数据不确定。 若清位GPEUP15:0的某一位,则允许端口E相应引脚的上拉功能,否则禁止上拉功能 5.2.6 端口F控制寄存器(GPFCON、GPFDAT和GPFUP)和功能配置 端口F控制寄存器(GPFCON)的配置如表5-l1和-12所示。 如果端口F被配置为输入端口,则可以从引脚读入相应外部输入源输入的数据。如果端口F被配置为输出端口,向寄存器写的数据可以被送往相应的引脚。如果端口F被配置为第

9、二功能引脚,则从该引脚读入的数据不确定。 若清位GPFUP15:0的某一位,则允许端口F相应引脚的上拉功能,否则禁止相应引脚上拉功能。,表5-11 端口F控制寄存器( GPFCON),表5-12 端口F控制寄存器(GPFCON)的配置,5.2.7 端口G控制寄存器(GPGCON、GPGDAT和GPGUP)和功能配置 端口G控制寄存器(GPGCON)的配置如表5-13和5-14所示。,表5-13 端口G控制寄存器( GPGCON),表5-14 端口G控制寄存器(GPGCON)的配置,如果端口G被配置为输入端口,可以从引脚读入相应外部输入源输入的数据。如果端口G被配置为输出端口,向寄存器写的数据可

10、以被送往相应的引脚。如果端口G被配置为第二功能引脚,则从该引脚读出的数据不确定。 若清位GPGUP15:0的某一位,则允许端口G相应引脚上的上拉功能,否则禁止相应引脚上拉功能。,5.2.8 端口H控制寄存器(GPHCON、GPHDAT和GPHUP)和功能配置 端口H被配置为输入端口,可以从引脚读入相应外部输入源输入的数据。如果端口H被配置为输出端口,向寄存器写的数据可以被送往相应的引脚。如果端口H被配置为第二功能引脚,则从该引脚读出的数据不确定。 若清位GPHUP15:0的某一位,则允许端口H相应引脚的上拉功能,否则禁止相应引脚上拉功能。端口H控制寄存器(GPHCON、GPHDAT和GPHUP

11、)和端口B功能配置基本相同,见表5-15,5-16。,表5-15端口H控制寄存器,表5-16 端口H控制寄存器(GPHCON)的配置,5.3 I/O口操作步骤 5.31 上拉寄存器和控制寄存器设置 I/O口上拉寄存器和控制寄存器设置比较简单,首先确定I/O口工作模式,如果是工作在第二功能状态,则上拉电阻功能禁止,即GPBUPGPHUP中相应位置1;如果工作在基本输入/输出状态,则上拉电阻功能允许,此时因上电或复位时GPBUPGPHUP初值为0,所以在程序中不用设置。 I/O口数据寄存器中每一位输入/输出功能大多由I/O口控制寄存器中两位控制,如GPHDATA0,即GPH0的输入/输出功能,由G

12、PHCON1:0控制,GPHCON1:0=0 0,该位作输入;GPHCON1:0=0 1,该位作输出;GPHCON1:0=1 0,该位作nCTS0;GPHCON1:0=1 1,系统保留没用。其他各口与此相同,编写I/O程序时一定注意GPnCON和GPnDATA中位的对应关系。 I/O口与外围设备连接一般要通过光电隔离或其他隔离器件,直接相连一定要确认负载不能超过4个与非门。光电隔离一是可保护微处理器;二是可进行电平转换;三是可对某些信号进行分配,所以在一般情况下都要加。,5.3 I/O口编程示例 在北京精仪达盛科技公司的EL-ARM830教学实验系统上有两个LED发光二极管,它们的阴极接在S3

13、C2410 G口的8(bit8)脚和9(bit9)脚,阳极经电阻接电源5V,如果GPG8或GPG9输出低电平,相应LED亮;如果GPG8或GPG9输出高电平,相应LED灭。控制程序使这两个LED管循环亮灭。,/- / GPG8,GPG9轮流输出低电平,使两个LED循环亮灭 /- void Main(void) int flag, i; sys_init(); for(;) if(flag=0) for(i=0;i1000000;i+); /延时 rGPGCON = rGPGCON , else for(i=0;i1000000;i+); /延时 rGPGCON = rGPGCON ,第五章习题与练习 1,S3C2410有多少组I/O口?每组包括的I/O口的有哪些? 2,I/O口AH功能有哪些不同? 3,S3C2410 I/O口的控制寄存器、

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论