(1)什么是GPIO
GPIO是通用输入/输出端口的简称,是STM32可控制的引脚。GPIO的引脚与外部硬件设备连接,可实现与外部通讯、控制外部硬件或者采集外部硬件数据的功能。
(2)基本结构
1.保护二极管
IO引脚上下两边两个二极管用于防止引脚外部过高/过低的电压输入,当引脚电压高于VDD时,上方的二极管导通,当引脚电压低于VSS时,下方的二极管导通,防止不正常电压引入芯片导致芯片烧毁。但是尽管如此,还是不能直接外接大功率器件,须加大功率及隔离电路驱动,防止烧坏芯片或者外接器件无法正常工作。
2.P-MOS管和N-MOS管
图中红色箭头2方向为输出模式的GPIO,由P-MOS管和N-MOS管组成的单元电路使得GPIO具有“推挽输出”和“开漏输出”的模式。这两个MOS管接管电路的输入信号是由GPIO的输出数据寄存器GPIOx_ODR提供的,也就是我们可以通过编程修改GPIOx_ODR寄存器的值从而影响该单元电路的输出。
常用的还用置位/复位寄存器GPIOx_BSRR和复位寄存器GPIOx_BRR,设置这两个寄存器后也能影响GPIOx_ODR,进而影响单元电路输出。
除此,还有复用功能输出,意思是指STM32的其它片上外设对GPIO引脚进行控制,此时该引脚作为外设功能的一部分。片上外设数据信号作为双MOS管接管的输入,进而输出到GPIO引脚中。例如USART串口通讯,要用到某个GPIO引脚作为通讯发送引脚,就可以把该GPIO 引脚配置成USART 串口复用功能,由串口外设控制该引脚,发送数据。
3.TTL肖特基触发器
图中红色箭头1方向为输入模式的GPIO,GPIO引脚经过内部上/下拉电阻配置成上/下拉、或者浮空输入,然后连接到触发器。信号经过触发器后,模拟信号转化为0和1的数字信号,然后存储在输入寄存器GPIOx_IDR中,通过读取GPIOx_IDR寄存器就可以知道GPIO的电平状态。
同理,与复用功能输出类似,这里也有复用功能输入,GPIO引脚的输入信号会传输到STM32的其他片上外设,由外设去读取该引脚状态。例如使用USART串口通讯,用某个GPIO引脚作为通讯的接收引脚。
另外,当GPIO引脚作为ADC采集电压的输入通道时,用其“模拟输入”功能,此时信号不再经过触发器进行TTL电平转换。ADC外设要采集到的原始的模拟信号。类似的,当GPIO引脚用于DAC模拟电压输出通道时,此时作为“模拟输出”功能,DAC信号输出不经过双MOS管。
(3)GPIO的8种工作模式
(4)输入模式(上拉/下拉/浮空/模拟)
GPIO在输入模式中,TLL肖特基触发器被打开,输出被禁止,通过GPIOx_IDR读取I/O状态。
上拉/下拉输入,其默认电平由上拉/下拉决定,浮空输入的电平则是不确定的,完全由外部决定,一般按键就是采用浮空输入;模拟输入用于ADC采样。
(5)输出模式(推挽/开漏)
GPIO在输出模式中,TLL肖特基触发器同样被打开着的,即输入可用,这样通过输入数据寄存器GPIOx_IDR可以读取到IO实际状态。
推挽模式时,双MOS以轮流方式工作,开漏模式下,只有N-MOS管工作。输出寄存器GPIOx_ODR可控制是输出高低电平;输出的速率可配,有2MHz/10MHz/50MHz。频率越高,功耗越大,效率也越高。
(6)复用功能
复用功能中,输出输入都使能,可工作与开漏或推挽模式,但是输出信号源于片上外设,输出数据寄存器GPIOx_ODR无效,输入寄存器GPIOx_IDR仍然有效,可通过它获取IO实际状态,片上外设相关寄存器也是通过GPIOx_IDR获取该数据信号。
(7)其他GPIO端口工作模式
控制GPIO端口工作模式寄存器是GPIOx_CRL和GPIOx_CRH,它们都是32位的寄存器,分别管控GPIO的低8位IO和高8位IO。另外涉及到的寄存器还有:
GPIOx_ODR: 设置输出数据 GPIOx_IDR:读取输入数据 GPIOx_BSRR:置1/清零GPIO的相应引脚GPIOx_BRR:清零GPIO的相应引脚
注意:使用之前必须使GPIO使能(打开时钟)
上一篇:STM32——GPIO的CRL、CRH和CNF与MODE的关系
下一篇:STM32——ARM与STM32之间的联系
推荐阅读
史海拾趣
在快速发展的过程中,DART公司也遇到了不少挑战和危机。例如,某个时期全球电子元器件供应紧张,导致公司面临严重的原材料短缺问题。面对这一挑战,DART公司迅速调整采购策略,积极寻找新的供应商和替代品,并加强与现有供应商的合作和沟通。通过这些措施,公司成功度过了危机,并保持了业务的稳定增长。
在光通信技术领域,ETRI也取得了显著成果。他们与Eldis公司合作,成功将一种电吸收调制光源(EML)商业化。这种光源能够在30公里内每秒传输250亿比特,且在高温和室温下都能稳定工作。这一技术的成功商业化,对于提高数据传输速度和效率具有重要意义。
作为一家具有全球视野的研究机构,ETRI也积极拓展海外合作。他们与金陵华软投资集团(CSC)共同签署了战略合作备忘录,双方将在新技术对接、投资服务、资源共享、信息交流等方面实现合作。这一合作不仅有助于ETRI拓展海外市场,也将为双方带来更多的发展机遇。
随着技术创新的不断推进,Eagle Plastic Devices公司开始积极拓展国内外市场。公司通过参加国际电子展会、与知名电子制造商建立战略合作关系等方式,不断提高品牌知名度和市场份额。同时,公司还注重产品质量的提升和售后服务的完善,赢得了客户的信任和好评。在短短几年内,Eagle Plastic Devices公司便成为了电子行业内知名的塑料电子部件供应商。
随着全球环保意识的不断提高,Eagle Plastic Devices公司也开始将环保理念融入产品研发和生产过程中。公司采用环保材料、改进生产工艺、降低能耗和排放等措施,努力降低产品对环境的影响。同时,公司还积极参与环保公益活动,倡导绿色消费和可持续发展。这些举措不仅提升了公司的品牌形象,也为公司带来了更多的市场机遇。
在发展过程中,爱普特微电子积极寻求与业界领先的供应商和合作伙伴建立稳固的合作关系。通过与这些合作伙伴的紧密合作,公司得以在技术研发、市场拓展等方面取得更大的突破。同时,公司也积极拓展海外市场,与多家国际知名企业建立了合作关系,进一步提升了公司的国际影响力。
一. 我是已经从事DSP开发有几年了,看到许多朋友对DSP的开发非常感兴取,我结合这几年对DSP的开发写一写自己的感受,一家之言,欢迎指教。我上研究生的第一天起根据老板的安排就开始接触DSP,那时DSP开发在国内高校刚刚开始,一台DSP开发器接近一万 ...… 查看全部问答∨ |
|
根据Altium(Protel) 公司在2010年7月12日向悉尼证交所提交的2010年年报预告信息,该公司2009年7月1日至2010年6月30日止,预计共完成销售额是4650万美元,同比下降9% 。 在大中国地区(包括台湾和香港),预计共完成销售额是440万美元,同比下降43% ...… 查看全部问答∨ |
|
请问各位,网卡的全双工/半双工是对MAC而言还是对PHY说的啊,我现在的项目是MAC+PHY结构,自己看资料,发现设置全双工半双工是在PHY芯片上,但是看MAC的工作原理是,全双工半双工控制着MAC的发送流程,看资料上说的是半双工的时候,MAC发送数据要检 ...… 查看全部问答∨ |
|
我给这个板子取了个名字叫 EE_FPGA,感谢eeworld给我们一个这样好的学习平台。希望大家在这里能够真正的学到自己想要的东西。 适用对象: 1. FPGA初学者:希望能够迈入FPGA开发大门的初学者和爱好者,让大家 ...… 查看全部问答∨ |
GPIOPinTypeGPIOInput () GPIODirModeSet() 这两个函数都是设置GPIO的,而且应该能实现同样的功能,但是我在使用时发现,用GPIOPinTypeGPIOInput ()设置按键输入时,并不能读取按键,读取的值总是0,但是如果用GPIODirModeSet()设置就能实现。这 ...… 查看全部问答∨ |
组织DIY MSP430 Stellaris学习板 如果参与的人够多,可以把我的这2块PCB发出来做参考! [ 本帖最后由 蓝雨夜 于 2011-10-9 08:17 编辑 ]… 查看全部问答∨ |