版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、河南理工大学通信工程系第第1章章 通用通用IO接口(接口(GPIO)及编程)及编程主要内容:主要内容:(1)S3C2440芯片芯片GPIO硬件及引脚;硬件及引脚;(2)GPIO相关的寄存器及功能;相关的寄存器及功能;(3)C或汇编访问寄存器的方法;或汇编访问寄存器的方法;(5)GPIO编程(控制编程(控制LED等的亮灭)。等的亮灭)。(4)典型不带操作系统的嵌入式程序结构;)典型不带操作系统的嵌入式程序结构;1.1 S3C2440芯片芯片GPIO概述概述1.1.1 GPIO硬件概述硬件概述S3C2440芯片上集成了芯片上集成了ARM920T为核心的为核心的 CPU和和常用常用IO接口接口,芯片
2、的背部有芯片的背部有289个引脚,与其它部件如内存、个引脚,与其它部件如内存、Flash存储器、外存储器、外设进行连接;设进行连接;河南理工大学通信工程系GPIO接口即通用输入输出(接口即通用输入输出(General Purpose I/O)接口,)接口,是是IO接口的一种,接口的一种,“通用通用”即该即该IO接口可以通过引脚外接不接口可以通过引脚外接不同种类的外部设备;同种类的外部设备;S3C2440芯片集成的芯片集成的GPIO接口情况如下:接口情况如下:(1)提供了)提供了9组组GPIO接口接口GPA、GPBGPJ,每组,每组IO接接口外接引脚数不等;口外接引脚数不等;(2)每组接口都有)
3、每组接口都有独立的独立的数据寄存器、控制寄存器、上拉数据寄存器、控制寄存器、上拉电阻寄存器等用来控制接口工作状态和输入输出数据;电阻寄存器等用来控制接口工作状态和输入输出数据;河南理工大学通信工程系1.1.2 GPIO相关寄存器相关寄存器IO接口是连接总线与外部设备的中间硬件,接口是连接总线与外部设备的中间硬件,IO接口中通常接口中通常包含了控制寄存器、数据寄存器等,包含了控制寄存器、数据寄存器等,CPU通过访问寄存器通过访问寄存器间接的控制外部设备间接的控制外部设备,与外设进行数据交换;,与外设进行数据交换;河南理工大学通信工程系为什么要重点关注为什么要重点关注IO接口的寄存器?接口的寄存器
4、?S3C2440芯片包含的芯片包含的IO接口中的寄存器与内存单元采用接口中的寄存器与内存单元采用统一统一编址编址,访问方法与内存单元,访问方法与内存单元相同相同;因此,需要重点关注两方面:因此,需要重点关注两方面:(1)IO接口寄存器每位的功能;(接口寄存器每位的功能;(2)寄存器的地址;)寄存器的地址;S3C2440 GPIO接口分为接口分为9组,每组的寄存器都包括控制寄存组,每组的寄存器都包括控制寄存器、数据寄存器、上拉电阻使能寄存器;器、数据寄存器、上拉电阻使能寄存器;(1)控制寄存器)控制寄存器GPxCON(x为为A、B.J)S3C2440 GPIO接口引脚一般具备多种功能,控制寄存器
5、接口引脚一般具备多种功能,控制寄存器用于选择引脚的功能,每用于选择引脚的功能,每2位位决定一个引脚的功能:决定一个引脚的功能:00表示输入表示输入,01表示输出表示输出,10表示特殊功能表示特殊功能;11保留保留寄存器功能:寄存器功能:河南理工大学通信工程系访问:访问:控制寄存器控制寄存器可读、写可读、写;例如例如GPB包含包含GPB10-GPB0共共11个引脚,控制寄存器个引脚,控制寄存器GPBCON地址为地址为0 x56000010,功能如下:,功能如下:河南理工大学通信工程系位位控制的引脚控制的引脚功能描述功能描述21:20GPB1000=输入;输入;01=输出;输出;10=nXDREQ
6、0;11=保留。保留。19:18GPB900=输入;输入;01=输出;输出;10=nXDACK0;11=保留。保留。17:16GPB800=输入;输入;01=输出;输出;10=nXDREQ1;11=保留。保留。15:14GPB700=输入;输入;01=输出;输出;10=nXDACK1;11=保留。保留。13:12GPB600=输入;输入;01=输出;输出;10=nXBREQ; 11=保留。保留。11:10GPB500=输入;输入;01=输出;输出;10=nXBACK; 11=保留。保留。9:8GPB400=输入;输入;01=输出;输出;10=TCLK 0; 11=保留。保留。7:6GPB300
7、=输入;输入;01=输出;输出;10=TOUT3; 11=保留。保留。5:4GPB200=输入;输入;01=输出;输出;10=TOUT2; 11=保留。保留。3:2GPB100=输入;输入;01=输出;输出;10=TOUT1; 11=保留。保留。1:0GPB000=输入;输入;01=输出;输出;10=TOUT0; 11=保留。保留。采用采用C语言语言设置寄存器设置寄存器GPBCON的值:的值:#define rGPBCON (*(volatile unsigned *)0 x56000010)要设置要设置GPBCON第第9、8位,位,7、6位,位,5、4位,位,3、2位,位,1、0位位为为01
8、,其余位为,其余位为00;先使用先使用#define定义定义rGPBCON,则对,则对rGPBCON读写即可访读写即可访问寄存器问寄存器GPBCON;例例1:设置:设置GPB4至至GPB0为输出,其余引脚功能为输入;为输出,其余引脚功能为输入;河南理工大学通信工程系rGPBCON = 0b0000000000000101010101;或或rGPBCON = 0 x155;PB10 PB9 PB8 PB7 PB6 PB5 PB4 PB3 PB2 PB1 PB0rGPBCON0 x1550 1 0 1 0 1 0 10 0 0 0 0 0 0 10 0 0 0 0 0例例1采用采用汇编代码汇编代码
9、实现:实现:rGPBCON EQU 0 x56000010 LDR R0, =rGPBCONLDR R1, =0 x155STR R1, R0河南理工大学通信工程系或或LDR R0, =0 x56000010 LDR R1, =0 x155STR R1, R0将将GPBCON第第15、14位,位,9、8位变为位变为00,则,则GPB7、GPB4为为输入引脚;输入引脚;将将GPBCON第第13、12位,位,7、6位,变为位,变为01,则,则GPB6、GPB3为输出引脚;为输出引脚;例例2:设置:设置GPB7、GPB4为输入,为输入, GPB6、GPB3为输出,为输出,其余其余引脚功能保持不变引脚
10、功能保持不变;河南理工大学通信工程系rGPBCON &= ( (314)|(38)|(312)|(36) );rGPBCON |= ( (112)|(16) );为不影响寄存器其它位,先采用与运算将要设置的位清零;为不影响寄存器其它位,先采用与运算将要设置的位清零; 再采用或运算按需要进行设置再采用或运算按需要进行设置1;PB10 PB9 PB8 PB7 PB6 PB5 PB4 PB3 PB2 PB1 PB0rGPBCON?0 1 x x x x x x0 0 0 1 x x 0 0 x x x x x x(2)数据寄存器)数据寄存器GPxDAT(x为为A、B.J)引脚功能为输入时,读取可获取
11、引脚电平状态;引脚功能为输入时,读取可获取引脚电平状态;引脚功能为输出时,写数可设置引脚输出的电平;引脚功能为输出时,写数可设置引脚输出的电平;其中,其中,0对应引脚为低电平,对应引脚为低电平,1为高电平;为高电平;寄存器功能:寄存器功能:河南理工大学通信工程系访问:访问:数据寄存器数据寄存器可读、写可读、写;例如例如GPB包含包含GPB10-GPB0共共11个引脚,数据寄存器个引脚,数据寄存器GPBDAT地地址为址为0 x56000014;河南理工大学通信工程系#define rGPBDAT (*(volatile unsigned *)0 x56000014)读数据寄存器:读数据寄存器:u
12、nsigned int reg_data = rGPBDAT ;写数据寄存器:写数据寄存器:rGPBDAT = 0 x55 ;(3)内部上拉电阻使能寄存器)内部上拉电阻使能寄存器GPxUP(x为为A、B.J)每位对应控制每位对应控制1个引脚,为个引脚,为1时内部上拉电阻无效,为时内部上拉电阻无效,为0时时上拉电阻使能;上拉电阻使能;寄存器功能:寄存器功能:河南理工大学通信工程系访问:访问:内部上拉电阻使能寄存器内部上拉电阻使能寄存器可读、写可读、写;上拉电阻与下拉电阻如下图示意:上拉电阻与下拉电阻如下图示意:上拉、下拉电阻可以使引脚处上拉、下拉电阻可以使引脚处于一个确定的电平,提高抗干于一个确
13、定的电平,提高抗干扰能力;扰能力;河南理工大学通信工程系用于输出时,上拉电阻还可以用于输出时,上拉电阻还可以提高引脚的驱动能力;提高引脚的驱动能力;例如例如GPB包含包含11个引脚,个引脚,GPBUP第第0位至第位至第10位分别控制位分别控制GPB0至至GPB10的上拉电阻情况:的上拉电阻情况:河南理工大学通信工程系GPBUP位位引脚引脚描述描述10:0GPB10:01=对应的对应的GPIO引脚上拉电阻不使能;引脚上拉电阻不使能;0=对应的对应的GPIO引脚上拉电阻使能。引脚上拉电阻使能。1.2 GPIO的应用举例的应用举例1、S3C2440 GPIO驱动驱动LED灯实例灯实例引脚功能设置为输
14、出;引脚功能设置为输出;河南理工大学通信工程系当引脚输出低电平(即当引脚输出低电平(即0)时,)时,对应连接的对应连接的LED发光;输出高电发光;输出高电平(即平(即1)时,连接的)时,连接的LED灭;灭;设置引脚内部上拉电阻使能;设置引脚内部上拉电阻使能;编写编写S3C2440不带操作系统的程序,采用汇编和不带操作系统的程序,采用汇编和C混合编程;混合编程;汇编程序通常写在汇编程序通常写在2440init.s文件文件中,为程序入口,主要完成:中,为程序入口,主要完成:(4)初始化各工作模式的堆栈(主要是)初始化各工作模式的堆栈(主要是SP寄存器初始化);寄存器初始化);(3)初始化存储器控制
15、器硬件;)初始化存储器控制器硬件;(1)设定异常与中断处理向量;)设定异常与中断处理向量;(6)调用)调用B Main跳到跳到C语言编写的语言编写的Main函数;函数;(5)初始化程序所用内存,将程序跳转到)初始化程序所用内存,将程序跳转到SDRAM里执行;里执行;(2)初始化时钟;)初始化时钟;河南理工大学通信工程系注意:涉及到一些知识尚未学习,本章不要求看懂注意:涉及到一些知识尚未学习,本章不要求看懂2440init.s,学完中断、时钟之后再理解,目前只编写学完中断、时钟之后再理解,目前只编写C语言部分程序;语言部分程序;对于所有寄存器的对于所有寄存器的#define定义,通常写在定义,通
16、常写在2440addr.h文件,文件,关于关于GPB的寄存器定义如下:的寄存器定义如下:#define rGPBCON (*(volatile unsigned *)0 x56000010)#define rGPBDAT (*(volatile unsigned *)0 x56000014) #define rGPBUP (*(volatile unsigned *)0 x56000018)河南理工大学通信工程系在在Main.c文件中实现文件中实现C语言的语言的Main函数,注意不是小写函数,注意不是小写main;#include 2440addr.h“void delay(void)int i;for(i=0; i10000000; i+);void Led_Init(void)rGPBCON &= ( (310)|(312)|(314)|(316) );rGPBCON |= ( (110)|(112)|(114)|(116) );rGPBUP &= 0 x61F;/GPB5GPB8引脚上拉电阻使能引脚上拉电阻使能rGPBDAT |= 0 x7FF;河南理工大学通信工程
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年太和县医疗事业单位人员招聘笔试备考题库及答案解析
- 2026年马山县带编教师招聘笔试备考题库及答案解析
- 2026年南漳县医疗事业单位人员招聘笔试参考题库及答案解析
- 2026年石阡县医疗事业单位人员招聘考试备考试题及答案解析
- 2026年天镇县医疗事业单位人员招聘笔试模拟试题及答案解析
- 2026年印江土家族苗族自治县医疗事业单位人员招聘考试备考题库及答案解析
- 2026年理塘县社区工作者招聘笔试参考题库及答案解析
- 2026年唐河县医疗事业单位人员招聘笔试参考题库及答案解析
- 2026年阳谷县医疗事业单位人员招聘考试备考试题及答案解析
- 2026年西林县社区工作者招聘考试模拟试题及答案解析
- 2026秋初中人教版数学七年级上册(新教材)教学计划附教学进度表
- 2026-2030旋转蒸发仪行业市场现状供需分析及重点企业投资评估规划分析研究报告
- 【中小学】【开学收心】主题班会:开学吧!八仙小队
- 2026秋新北师大版小学数学五年级上册教学计划附进度表
- 肺癌合并骨转移护理查房
- 2026年秋季学期人教版小学数学五年级上册教学计划附教学进度表
- 2026不动产登记代理人《地籍调查》真题(附答案)
- 2026年秋统编版(新教材)道德与法治五年级上册(全册)分层作业及答案(附目录)
- 不发火地面施工工艺及施工方法
- DBJ53-14-2005 公路隧道消防设计施工管理技术规程 附条文说明
- 水利水电工程单元工程施工质量检验表与验收表(SLT631.5-2025)
评论
0/150
提交评论