- 1、本文档共10页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
GPIO功能描述汇编
GPIO功能描述
每个GPI/O端口有两个32位配置寄存器(GPIOx_CRL,GPIOx_CRH),两个32位数据寄存器(GPIOx_IDR,GPIOx_ODR),一个32位置位/复位寄存器(GPIOx_BSRR),一个16位复位寄存器(GPIOx_BRR)和一个32位锁定寄存器(GPIOx_LCKR)。
?
GPIO端口的每个位可以由软件分别配置成多种模式。
─输入浮空
─输入上拉
─输入下拉
─模拟输入
─开漏输出
─推挽式输出
─推挽式复用功能
─开漏复用功能
?
每个I/O端口位可以自由编程,然而I/0端口寄存器必须按32位字被访问(不允许半字或字节访问)。GPIOx_BSRR和GPIOx_BRR寄存器允许对任何GPIO寄存器的读/更改的独立访问;这样,在读和更改访问之间产生IRQ时不会发生危险。
?
下图给出了一个I/O端口位的基本结构。
?
?
?
复位期间和刚复位后,复用功能未开启,I/O端口被配置成浮空输入模式(CNFx[1:0]=01b,MODEx[1:0]=00b)。
复位后,JTAG引脚被置于输入上拉或下拉模式:
─PA15:JTDI置于上拉模式
─PA14:JTCK置于下拉模式
─PA13:JTMS置于上拉模式
─PB4: JNTRST置于上拉模式
?
当作为输出配置时,写到输出数据寄存器上的值(GPIOx_ODR)输出到相应的I/O引脚。可以以推挽模式或开漏模式(当输出0时,只有N-MOS被打开)使用输出驱动器。
输入数据寄存器(GPIOx_IDR)在每个APB2时钟周期捕捉I/O引脚上的数据。
所有GPIO引脚有一个内部弱上拉和弱下拉,当配置为输入时,它们可以被激活也可以被断开。
?
当对GPIOx_ODR的个别位编程时,软件不需要禁止中断:在单次APB2写操作里,可以只更改一个或多个位。
这是通过对“置位/复位寄存器”(GPIOx_BSRR,复位是 GPIOx_BRR)中想要更改的位写’1’来实现的。没被选择的位将不被更改。
?
?
复用功能(AF)
使用默认复用功能前必须对端口位配置寄存器编程。
●
对于复用的输入功能,端口必须配置成输入模式(浮空、上拉或下拉)且输入管脚必须由外部驱动
注意:也可以通过软件来模拟复用功能输入管脚,这种模拟可以通过对GPIO控制器编程来实现。此时,端口应当被设置为复用功能输出模式。显然,这时相应的管脚不再由外部驱动,而是通过GPIO控制器由软件来驱动。
●
对于复用输出功能,端口必须配置成复用功能输出模式(推挽或开漏)。
●
对于双向复用功能,端口位必须配置复用功能输出模式(推挽或开漏)。这时,输入驱动器被配置成浮空输入模式。
如果把端口配置成复用输出功能,则引脚和输出寄存器断开,并和片上外设的输出信号连接。
如果软件把一个GPIO脚配置成复用输出功能,但是外设没有被激活,它的输出将不确定。
?
软件重新映射I/O复用功能
为了使不同器件封装的外设I/O功能的数量达到最优,可以把一些复用功能重新映射到其他一些脚上。这可以通过软件配置相应的寄存器来完成(参考AFIO寄存器描述)。这时,复用功能就不再映射到它们的原始引脚上了。
?
输入配置
当I/O端口配置为输入时:
●输出缓冲器被禁止
●施密特触发输入被激活
●根据输入配置(上拉,下拉或浮动)的不同,弱上拉和下拉电阻被连接
●出现在I/O脚上的数据在每个APB2时钟被采样到输入数据寄存器
●对输入数据寄存器的读访问可得到I/O状态
?
?
?
?
输出配置
当I/O端口被配置为输出时:
●输出缓冲器被激活
─开漏模式:输出寄存器上的’0’激活N-MOS,而输出寄存器上的’1’将端口置于高阻状态(P-MOS从不被激活)。
─推挽模式:输出寄存器上的’0’激活N-MOS,而输出寄存器上的’1’将激活P-MOS。
●施密特触发输入被激活
●弱上拉和下拉电阻被禁止
●出现在I/O脚上的数据在每个APB2时钟被采样到输入数据寄存器
●在开漏模式时,对输入数据寄存器的读访问可得到I/O状态
●在推挽式模式时,对输出数据寄存器的读访问得到最后一次写的值。
?
?
?
模拟输入配置
当I/O端口被配置为模拟输入配置时:
●输出缓冲器被禁止;
●禁止施密特触发输入,实现了每个模拟I/O引脚上的零消耗。施密特触发输出值被强置为’0’;
●弱上拉和下拉电阻被禁止;
●读取输入数据寄存器时数值为’0’。
?输?
?
?
?
?
?
例程(1)
?
?
本例展示了如何通过设置GPIO BSRR寄存器(Port bit set/reset registe)和GPIO BRR寄存器 (Port bit reset register)来翻转IO的状态。
?
通过设置这两个寄存器,可以利用单比特操作(single atomic
您可能关注的文档
- FPGA学习笔记之嵌入式锁相环模块ALTPLL的配置和调用汇编.docx
- Fortran语言第六章汇编.ppt
- FPGA实验——8位数码显示频率计设计汇编.docx
- FPGA频率计的设计汇编.doc
- FPGA面试问题汇编.docx
- FPS架构汇编.doc
- freq_counter汇编.ppt
- FRC极限抛射程序使用说明汇编.docx
- FPGA波形发生器汇编.doc
- FR的配置汇编.ppt
- 2025年春新统编版七年级道德与法治下册全册课件.pptx
- 2024年秋季新北师大版七年级上册数学全册大单元整体设计教学课件.pptx
- 2024年秋季新北师大版七年级上册数学全册大单元整体设计课件.pptx
- 2024年秋新北师大版七年级上册数学全册课件(新版教材).pptx
- 2024年秋新人教版数学七年级上册全册课件(新版教材).pptx
- 2024年秋新人教版七年级上册数学全册课件(新版教材).pptx
- 2024年秋新人教版历史七年级上册全册教学课件.pptx
- 2024年新沪粤版八年级上册物理全册教学课件 (2).pptx
- 2024年新沪粤版八年级上册物理全册课件.pptx
- 2024年新沪粤版物理八年级上册全册教学课件.pptx
最近下载
- 2025甘肃甘南州专业化管理的村党组织书记招聘45人笔试备考题库及一套答案详解.docx VIP
- 05G525_吊车轨道联结及车挡 .docx VIP
- 《交流电机的维护与检修》课件.ppt VIP
- 妇产科学教学课件:女性生殖系统生理.ppt VIP
- (通用)大学生人文知识竞赛题库及答案(通用版).pptx VIP
- DB42╱T 1528.1-2019 湖北省农业用水定额 第1部分:农田灌溉用水定额.docx VIP
- 财务风险管理及防范对策研究.pptx VIP
- 儿童特应性皮炎的药物治疗.pptx
- 一种在无有机模板剂条件下合成MCM-49型沸石分子筛的方法.pdf VIP
- 三相异步电动机的铭牌.pptx VIP
文档评论(0)