FT:5V容忍IO
TTa:3.3V容忍IO,连接ADC(模数转化)
GPIO默认是普通IO,要想复用其他功能,就得自行配置;
保护二极管:容忍5V,保护芯片(VDD_FT VSS)
上下拉电阻:GPIO默认是浮空状态(1.5V 不稳定)(除了pA15上拉、pA14下拉、pA13上拉、pB4上拉)

注意:GPIOI只有0-11端口,只有12个引脚

STM32F429IGT6引脚分类

  • 电源:(VBAT)、(VDD VSS(0V))、(VDDA VSSA)、(VREF+ VREF-)等(用S表示)
  • 晶振IO:主晶振IO、RTC晶振IO
  • 下载IO:用于JTAG下载的IO:JTMS、JTCK、JTDI、JTDO、NJTRST(仿真器下载)
  • BOOT IO:BOOT0、BOOT1、用于设置系统的启动方式(用B表示)
  • 复位IO:NRST,用于外部复位(用RST表示)
    (由上面五类IO组成的系统,我们叫最小系统)

GPIO分类

  • 专用IO:I2C、SPI(串行flash)、SDIO(SD卡、SD口WIFI)、FSMC、DCMI这些专业总线器件
    (专业总线器件需要连接专用IO)
  • 普通元件IO:只要输出0和1,就能控制。如:LED,蜂鸣器等元器件
  • 备用IO:可根据需求
    (用I/O表示)

输出端

  • 推挽输出原理:
    1. 输入高电平,经过仿真器变成0(如果有仿真器),P-MOS导通(一端是VDD,
      一端是0),N-MOS关闭(两端是0),输出高电平,灌电流,(推)
    2. 输入低电平,经过仿真器变成1(如果有仿真器),P-MOS关闭(两端都是VDD) ,N-MOS导通(一端端是1,一端是接地),输出低电平,拉电流,(挽)
  • 推挽输出:由两个P-MOS和N-MOS同时控制
    1. 高电平------------=>高电平
    2. 低电平------------=>低电平
  • 开漏输出原理
    1. 输入低电平,经过仿真器变成1(如果有仿真器),N-MOS导通(一端是1,一端接地),输出低电平
    2. 输入高电平,经果仿真器变成0(如果有仿真器),N-MOS(两端都是0),不输出高电平,也不输出低电平
  • 开漏输出:只有N-MOS工作
    1. 高电平------------=>高阻态(外加上拉电阻(输出高低电平,由上拉电阻决定))
    2. 低电平------------=>低电平

输入端

TTL施密特触发器:确保输入只是1或0,高于某电平的输入的是1,低于某电平的输入的是0;

普通GPIO输入寄存器

  • GPIO端口输入寄存器:(GPIOx_IDR)(x=A-I)
    1. 0:输入是低电平
    2. 1:输出是高电平
  • GPIO端口输出速度寄存器:(GPIOx_OSPEEDR)(x=A-I)(32位)
    1. 00:2MHz(低速)
    2. 01:25MHz(中速)
    3. 10:50MHz(高速)(一般)
    4. 11:电容30pF时为100MHz(15pF时为80MHz输出(最大速度))
  • 复用功能:控制GPIO使用其他功能;
  • 模拟输入:ADC
文章目录