ARM之GPIO介绍(Exynos4412平台)

GPIO

概述:GPIO的英文全称是General-Purpose Input/Output,也就是通用输入输出。在微控制器芯片上一般都会提供一个“通用可编程IO接口”,即GPIO.接口至少有两个寄存器,即“通用IO控制寄存器”和“通用IO数据寄存器”。
特性

  • 46个可中断通用控制I/O;
  • 172个外部中断;
  • 32个外部可唤醒中断;
  • 252个多路复用I/O口;
  • 睡眠模式引脚状态可控(除了GPX0,GPX1,GPH2,GPH3);

GPIO常用寄存器

引脚控制寄存器(GPxCON x=A0~V4)

在exynos4412中,大多数的引脚都是功能复用的,所以必须对每个引脚进行配置。引脚控制寄存器(GPxCON)用来配置每个引脚的功能。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

引脚数据寄存器(GPxDAT x=A0~V4)

如果引脚功能被配置为输出功能,可以通过向GPxDAT寄存器对应位写入数据,控制引脚输出相应电平。如果引脚被配置为输入功能,则可以从GPxDAT寄存器对应位读出数据读回的数据就是当前引脚的电平状态。
在这里插入图片描述

引脚上拉下拉设置寄存器(GPxPUD x=A0~V4)

exynos4412芯片的内部给引脚设置了上拉电路和下拉电路,通过引脚上下拉设置寄存器控制引脚上拉电阻和下拉电阻的使能和禁止。如果引脚的上拉电阻被使能,则无论在哪种状态(输入、输出、DATAn、EINTn等其他功能)下,上拉电阻都起作用。
在这里插入图片描述

引脚驱动能力寄存器(GPxDRV x=A0~V4)

根据和引脚连接的外设电器特性,设置引脚合适的驱动电流,达到既能满足正常驱动的需求,也不浪费功耗。
在这里插入图片描述

低功耗模式引脚功能控制寄存器(GPxCONPDn x=A0~V4)

该寄存器用来控制exynos4412芯片在低功耗模式下的引脚功能,类似GPxCON寄存器,部分引脚没有这个功能。

低功耗引脚上下拉设置寄存器(GPxPUDPDN x=A0~V4)

该寄存器用来控制exynos4412芯片在低功耗模式下的引脚上拉和下拉功能的使能和禁止,类似GPxPUDPDN寄存器,部分引脚诶呦这个功能。
注意
GPIO模块的基地址是0x1100_0000
GPx2组的配置寄存器GPx2DRV的地址是:基地址+偏移量
0x1100 0000+0x0c4c=0x11000c4c

GPIO寄存器的封装

直接封装
#define GPx2CON (*(volatie unsigned int *)0x1100 0c40)

这里定义了一个宏,宏定义在预处理阶段进行直接替换。0x11000c40是一个十六进制的数据,前面用(unsigned *)修饰,表示把0x11000c40强制转换成一个指向unsigned int型的指针变量。
volatile 是C 语言的 32个关键字之一,是一种类型修饰符,用它声明的类型变量表示可以被某些编译器未知的因素更改,比如:操作系统、硬件中断或者线程等。遇到这个关键字声明的变量,编译器对访问该变量的代码就不再进行优化,每次读取这个变量的值都要从内存单元里读取,而不是直接使用放在高速缓存或寄存器里的备份,从而可以提供对特殊地址的稳定访问。

结构体封装

和直接封装是相同的道理,在这里就不进行赘述,一般都是使用直接封装的方法,有兴趣的可以将直接封装改写为结构体封装。

1.2 产品简介 UT-Exynos4412开发板是一款功能极为强大的高端ARM Coretex-A9开发平台,采用Samsung最新的Exynos4412Exynos4412 Quad),主频达到1.4~1.6GHz;Exynos4412的主要特性为:QuadCore、WXGAresolution、1080pHDTVdisplay throughoutHDMI、I2Ssupports、USBHost&Device2;.0、HSICinterface、LPDDR2PackageonPackage、Chip2Chip等;内建32/32KB数据/指令一级缓存,1MB的二级缓存;GPU采用的是Mali 400MP四核心图形处理器,支持2D/3D图形加速;内建HDMI1.4(3D feature)兼容HDCP1.1和DVI1.0;内部的MFC支持MPEG-2/4、H.263、H.264等的编解码和VC1的解码。硬件编解码器实现视频会议和数字电视。该芯片采用了最新的32nm HKMG的先进工艺制程。相比于之前的45nm工艺,功耗方面有了明显的降低,即使是四核,同等测试下的功耗比双核的4210低了40%。四核处理器在达到双核两倍性能的同时,功耗却只有双核的八成,续航和发热都可能会大大改善。目前三星最新的N7100 GALAXY Note2和GALAXY SIII系列手机采用的就是此款芯片,表现相当出色。Exynos4412处理器采用0.4mm pitch值的12x12平方毫米FCMSP封装,降低PCB加工工艺要求。 UT-Exynos4412开发板本着完全展现Exynos4412芯片功能,结合客户反馈与广泛调研,设计而成,其功能全面、接口丰富,完美展现了Samsung Exynos4412芯片的强大,主要面向企业用户进行产品开发过程中,对Exynos4412芯片的性能评估、设计参考使用。其丰富的外设接口及强大的性能,也成为高校、科研机构等单位的最佳科研设备;可为无线通讯、个人导航、摄像、移动游戏音乐视频、PDA、医疗器械、车载、广告机、手机等提供前期测试平台,无论从功能、性价比、调试飞线等方面,都可方便进行,大大缩短公司产品的研发周期。 UT-Exynos4412开发板堪称市面上最强大的ARM平台,采用Exynos4412的主芯片,具有更高的主频和更丰富外设,配置2GB DDR3的内存及8GB iNAND存储,具有稳定性强、可靠性高,能适用于对性能和处理能力有更高要求的嵌入式系统应用场合。 UT-Exynos4412开发板可以选配有无线WIFI模块、Bluetooth、GPS、Camera、3G等模组,支持HDMI1.4(1080P/60Hz)显示,客户可以直接从开发平台中汲取完整的产品信息,甚至可以直接用于后续的产品开发中,完全不同于一般意义的开发平台。 UT-Exynos4412开发板最新的操作系统:Google Android4.0.4 ICS,提供平台完整的源码,支持WIFI、Bluetooth、GPS、Camera、HDMI、3G等选配模块
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值