QQ个性网:专注于分享免费的QQ个性内容

关于我们| 网站公告| 广告服务| 联系我们| 网站地图

搜索
编程 JavaScript Java C++ Python SQL C Io ML COBOL Racket APL OCaml ABC Sed Bash Visual Basic Modula-2 Logo Delphi IDL Groovy Julia REXX Chapel X10 Forth Eiffel C# Go Rust PHP Swift Kotlin R Dart Perl Ruby TypeScript MATLAB Shell Lua Scala Objective-C F# Haskell Elixir Lisp Prolog Ada Fortran Erlang Scheme Smalltalk ABAP D ActionScript Tcl AWK IDL J PostScript IDL PL/SQL PowerShell

雅特力AT32F423 GPIO使用全面指南

日期:2025/04/07 13:20来源:未知 人气:53

导读:GPIO特性雅特力AT32F423提供了多达86个双向I/O引脚,这些引脚被精心分为6组,包括PA0-PA15、PB0-PB15、PC0-PC15、PD0-PD15、PE0-PE15以及PF0-PF2、PF6和PF8-PF10。每个引脚都具备与外部通讯、控制及数据采集的多功能特性。这些引脚支持多种配置模式,如浮空输入、上拉/下拉输入、模拟输入/输出以及通用推挽/开漏输出。此外,......

GPIO特性

雅特力AT32F423提供了多达86个双向I/O引脚,这些引脚被精心分为6组,包括PA0-PA15、PB0-PB15、PC0-PC15、PD0-PD15、PE0-PE15以及PF0-PF2、PF6和PF8-PF10。每个引脚都具备与外部通讯、控制及数据采集的多功能特性。

这些引脚支持多种配置模式,如浮空输入、上拉/下拉输入、模拟输入/输出以及通用推挽/开漏输出。此外,每个引脚还能映射至多达16个外部中断,进一步增强了其功能多样性。

值得一提的是,几乎所有I/O口都能承受5V的电压,且所有I/O口均具备快速I/O特性,其寄存器存取速度高达fAHB。每个引脚都配备了独立的弱上拉/下拉功能,并允许软件灵活配置输出驱动能力。

为了防止意外的I/O寄存器写入,每个引脚的外设功能都可以通过特定操作进行锁定。此外,GPIO还提供了设置/清除寄存器(GPIOx_SCR)和位清除寄存器(GPIOx_CLR),以实现对GPIO输出数据寄存器(GPIOx_ODT)的位级访问。

在复位期间和刚复位后,GPIO的复用功能处于未开启状态,此时大部分I/O端口被预设为浮空输入模式。然而,每个引脚都能通过软件灵活配置为四种不同的输入模式(如输入浮空、输入上拉等)和四种输出模式(如开漏输出、推挽式输出等)。每个I/O端口的寄存器都支持半字或字节访问,且每位都能自由编程,从而提供了极高的灵活性和可编程性。 注意 :在雅特力AT32F423上,PC13引脚所对应的GPIO功能及其关联的RTC功能,在初始上电时是不可直接使用的。若需启用,请参阅ES0010_AT32F423_Errata_Sheet中的GPIO相关章节。

接下来,我们来看一下GPIO的详细配置。

GPIO切换功能

雅特力AT32F423所提供的I/O口均为高速类型,其寄存器的存取速度高达fAHB,这使得GPIO的翻转频率能够轻松达到75MHz。以下为GPIO翻转速度的示意图:

IO引脚的5V或3.3V容忍度标准 雅特力AT32F423的I/O引脚设计考虑到了5V和3.3V的电压兼容性,从而确保了引脚在各种电压环境下都能稳定工作。这种设计使得该微控制器能够灵活适应不同的电路需求,提高了其在实际应用中的通用性和可靠性。

3.3V容忍引脚(TC)

雅特力AT32F423微控制器中,所有振荡器相关的引脚均设计为标准3.3V容忍引脚,包括PA11、PA12、PC14、PC15(用于LEXT_IN/OUT功能)以及PF0、PF1(用于HEXT_IN/OUT功能)。这种设计使得这些引脚在3.3V电压环境下能够稳定可靠地工作,进一步增强了微控制器的电路兼容性和应用灵活性。

模拟功能集成

雅特力AT32F423微控制器不仅具备出色的电路兼容性和应用灵活性,还集成了模拟功能。这一特性使得该微控制器在处理模拟信号时能够更加高效和精准,进一步拓宽了其应用范围。

5V容忍引脚(FTa)

雅特力AT32F423微控制器的ADC占用端口配备了带模拟功能的5V容忍引脚。这些引脚在设置为输入浮空、输入上拉或输入下拉模式时,能够承受高达5V的电平,提供了出色的耐压能力。然而,在设置为模拟模式时,这些引脚将不再具备5V电平容忍特性,此时输入电平必须控制在VDD+0.3V以下,以确保稳定性和准确性。表3提供了FTa引脚的具体示例和说明。 5V容忍引脚(FTa)的详细解析 雅特力AT32F423微控制器的ADC占用端口所配备的5V容忍引脚,不仅功能强大,而且使用灵活。当这些引脚被设置为输入浮空、输入上拉或输入下拉模式时,它们能够轻松承受高达5V的电平,展现出卓越的耐压性。但需要注意的是,在模拟模式下使用时,这些引脚的5V电平容忍特性将不再适用,此时必须确保输入电平控制在VDD+0.3V以下,以确保系统的稳定性和数据准确性。此外,表3还详细列出了FTa引脚的具体示例和详细说明,为开发者提供了全面的参考信息。 20mA吸入能力5V容忍引脚(FTf)的介绍 雅特力AT32F423微控制器的部分I2C占用端口配备了带20mA吸入能力的5V容忍引脚,这些引脚专为支持I2C的增强快速模式而设计。具体来说,PD12和PD13这两个引脚就属于此类。此外,表4还提供了FTf引脚的详细示例,为开发者提供了全面的参考信息。

5V容忍引脚(FT)

除了雅特力AT32F423微控制器中配备的带20mA吸入能力的5V容忍引脚外,其他GPIO引脚也均为5V容忍设计。这意味着这些引脚在处理5V信号时同样展现出优越的容忍性。此外,表5还进一步提供了FT引脚的详细示例,为开发者在设计与开发过程中提供了详尽的参考信息。

IOMUX(I/O复用功能)

在微控制器中,I/O复用功能允许多个外设共享同一GPIO引脚,例如PA0引脚,它可以作为TMR1_EXT、USART2_CTS、I2C2_SCL或USART4_TX等外设使用。然而,在任意给定的时刻,每个GPIO引脚只能与一个外设相连。此外,某些外设功能还可以通过重映射到其他引脚来增加同时使用的外设数量。选择每个端口线的有效复用功能是通过GPIOx_MUXL和GPIOx_MUXH复用功能寄存器来完成的,这两个寄存器可以根据应用需求将复用功能模块连接到其他引脚。表6展示了如何通过GPIOA_MUX寄存器来配置端口A的复用功能。 通过GPIOB_MUX寄存器配置端口B的复用功能

要配置端口B的复用功能,可以使用GPIOB_MUX寄存器。通过适当地设置该寄存器的值,您可以为端口B选择不同的外设功能。具体如何操作,可以参考相关数据手册或参考文档。 通过GPIOC_MUX寄存器配置端口B的复用功能 若需通过GPIOC_MUX寄存器来设定端口B的复用功能,可参照相关数据手册或指南进行操作。请确保正确设置寄存器的值,以实现所需的外设功能。 通过GPIOD_MUX寄存器配置端口D的复用功能 若需利用GPIOD_MUX寄存器来设定端口D的复用功能,可参照相应数据手册或指南进行操作。务必确保正确配置寄存器的值,从而达成所需的外设功能。 通过GPIOE_MUX寄存器配置端口E的复用功能

为了利用GPIOE_MUX寄存器来设定端口E的复用功能,用户可以参考相关数据手册或指南进行操作。关键在于确保准确配置寄存器的值,以实现所需的外设功能。 通过GPIOF_MUX寄存器配置端口F的复用功能

要利用GPIOF_MUX寄存器来设定端口F的复用功能,用户同样可以参考相关数据手册或指南进行操作。同样重要的是,必须仔细配置寄存器的值,以确保实现预期的外设功能。

特殊I/O配置

在复位时及复位后,某些I/O引脚(如PA13和PA14)会进入复用模式,而非通常的浮空输入状态。具体而言,PA13被配置为SWDIO,采用复用上拉功能,而PA14则作为SWCLK,使用复用下拉功能。

此外,振荡器复用引脚的行为也值得一提。在振荡器关闭状态下(即复位后的默认状态),这些引脚可被用作GPIO。然而,一旦振荡器使能,相应引脚的GPIO配置将变得无效。特别地,在振荡器处于bypass模式(即使用外部时钟源)时,LEXT_IN/HEXT_IN引脚将作为振荡器时钟输入,而LEXT_OUT/HEXT_OUT引脚则可被用作GPIO。

电池供电域引脚

电池供电域下的引脚,如PC13、PC14和PC15,由VDD供电。这些引脚具有多种功能,例如PC13可用作通用I/O口、TAMPER引脚、ERTC校准时钟等。同时,PC14和PC15可用于GPIO或LEXT引脚。但请注意,这些I/O口的速度必须限制在2MHz以下,且最大负载为30pF,此外它们绝不能作为电流源使用。

GPIO固件驱动程序API

Artery提供的固件驱动程序包含了一系列函数,用于管理GPIO的多种功能,如初始化配置、读取输入/输出端口和引脚、设置或清除引脚输出等。此外,还提供了引脚复用功能的配置选项。

输出模式配置

GPIO提供了推挽输出和开漏输出两种类型的输出模式。用户可以根据需要选择合适的输出模式进行配置。 输入模式 GPIO提供了三种不同的输入模式:浮空输入、上拉输入和下拉输入。以下是这些输入模式的配置示例: 模拟模式 当ADC通道需要作为输入使用时,必须将相应的引脚设置为模拟模式。以下是模拟模式的配置示例:

复用模式

在配置ADC通道为输入使用之前,首先需要将其对应的引脚设置为复用模式。复用模式是ADC通道正常工作的前提条件。接下来,我们将探讨如何进行这一模式的配置。

  1. 在使用任何外设模式之前,都必须将I/O引脚配置为复用功能,以确保系统能正确地进行输入或输出操作。
  2. I/O引脚通过复用器与相应外设相连,该复用器在任一时刻仅允许一个外设的复用功能与I/O引脚相连。这样,就可以避免共用同一I/O引脚的不同外设之间的冲突。每个I/O引脚都配备了一个复用器,它提供了16路复用功能输入/输出选项(从MUX0到MUX15)。这些引脚可以通过gpio_pin_mux_config()函数进行配置。

在系统复位后,所有I/O引脚默认都连接到系统的复用功能0(MUX0)。通过配置MUX1到MUX15,用户可以将特定的外设复用功能映射到相应的I/O引脚上。 3. 此外,系统还提供了灵活的I/O复用功能,允许将特定外设的复用功能映射到不同的I/O引脚上。这种灵活性使得用户能够根据器件封装的差异来优化外设I/O功能的数量。例如,USART2_TX引脚可以被映射到PA2或PA14引脚上,以满足特定的应用需求。 4. 配置步骤详解: 首先,使用gpio_pin_mux_config()函数将I/O引脚连接到所需的外设复用功能(MUX)。例如,若要将PA0配置为TMR1_EXT输入,可以这样操作: gpio_pin_mux_config(GPIOA, GPIO_PINS_SOURCE0, GPIO_MUX_4); 接着,通过GPIO_Init()函数来详细配置I/O引脚。这包括选择复用功能模式、设置引脚类型、上拉/下拉选项以及驱动力等参数。

在了解了上述配置过程后,我们将进一步探讨几种常用外设的配置示例,如USART I/O复用模式的配置等。 TMR I/O复用模式配置详解

在STM32系统中,TMR(定时器)的I/O复用模式配置也是关键的一环。通过灵活配置,用户可以确保TMR与I/O引脚之间的正确连接,从而实现高效的时间管理功能。具体配置步骤包括使用相应的函数将I/O引脚与TMR复用功能进行映射,并详细设置引脚参数以满足特定的应用需求。通过这些配置,用户能够充分利用STM32系统的定时器功能,为各种应用提供精确的时间管理支持。 I2C I/O复用模式配置详解 在STM32系统中,I2C的I/O复用模式配置同样至关重要。通过合理的配置,用户可以确保I2C与I/O引脚之间的顺畅连接,进而实现高效的数据传输与通信。具体而言,用户需要使用特定函数将I2C引脚与复用功能进行关联,并细致调整引脚参数以适应不同的应用场景。这些配置步骤旨在充分发挥STM32系统的I2C功能,为各类应用提供稳定可靠的数据传输支持。 关于雅特力

雅特力科技,一家在2016年成立的芯片设计公司,致力于引领全球32位微控制器(MCU)的创新潮流。公司专注于ARM® Cortex®-M4/M0+架构的32位微控制器研发,并采用先进的55nm工艺及高性能的ARM® Cortex®-M4内核或低功耗的M0+内核。其产品不仅在运算效能上达到业界领先水平,更拥有广泛的工业级工作温度范围(-40°~105°)。

雅特力的成功案例遍布多个终端产品领域,包括微型打印机、扫地机器人、光流无人机、热成像仪、激光雷达等。其产品不仅广泛应用于5G、物联网等前沿技术领域,还深入消费、商务及工控等多个传统行业。

关于我们|网站公告|广告服务|联系我们| 网站地图

Copyright © 2002-2023 某某QQ个性网 版权所有 | 备案号:粤ICP备xxxxxxxx号

声明: 本站非腾讯QQ官方网站 所有软件和文章来自互联网 如有异议 请与本站联系 本站为非赢利性网站 不接受任何赞助和广告