GPIO(1) STM32

这篇具有很好参考价值的文章主要介绍了GPIO(1) STM32。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

GPIO的简介

其实GPIO就是类似于51单片机的IO口 有采集和控制的作用
GPIO(1) STM32,stm32

GPIO的复用 复用和通用功能

GPIO(1) STM32,stm32
通用和复用功能
GPIO(1) STM32,stm32
gpio的通用功能就是直接通过CPU控制IO(GPIO)引脚 而复用功能就是CPU通过其他外设和模块来控制IO(gpio)引脚

GPIO重映射

GPIO(1) STM32,stm32
当同一个gpio引脚被CPU(通用功能)和外设和模块控制时(复用功能)会产生分歧 gpio不知道输出由那个控制输出的电平 由此引出重映射 重映射就是把复用功能引用到其他引脚上去例如1引脚被CPU和其他模块控制 产生分歧 就把其他模块的复用功能分到2号引脚 由2好引脚来输出由其他模块控制的高低电平
GPIO(1) STM32,stm32

GPIO(1) STM32,stm32
翻转指的是高电平到低电平 或者低电平到高电平
GPIO(1) STM32,stm32
1.不能接5v的电压 接了就烧
2.coms端口和ttl端口的识别
GPIO(1) STM32,stm32
在芯片手册内IO口(可以理解为GPIO)后面又FT就是TTL端口 没有就是COMS端口 接着以COMS为例 在第一个范围内的电压GPIO就识别为0 在第二个电压范围内GPIO就识别为1 如果电压的范围是1.164~1.833则会获得一个随机值(避免这样的情况发生) GPIO的单端输出电流为25MA 极限情况 但是不能每个GPIO口都输出25MA 因为超过了芯片的的最大电流值就会烧毁

IO端口基本结构介绍

GPIO(1) STM32,stm32
上下分为输入和输出驱动 分别处理输入和输出的信号
上面为输入信号的路径 下面为输出信号的路径 2为上下拉电阻 输入的信号和进入片上外设 也可进入寄存器IDO从而读出IO口是高电平还是低电平 然后输出信号进入输出控制 通过控制作用使得上下两个mos管输出高电平或低电平(上面高电平 下面低电平)从而IO口有输入和输出的作用

GPIO(1) STM32,stm32
而二极管有保护作用如果输入5v的电阻则使得芯片内部输入信号的电位为3.6v起到钳位的作用(钳位电路) 下面的二极管也是如此
触发器的作用就是把正弦波转化为方波
GPIO(1) STM32,stm32
第一个坐标图是正弦波(输入的信号) 第二个坐标图是经过触发器输出的波形图
GPIO(1) STM32,stm32
模电的mos管

GPIO的八种输入模式分析

GPIO(1) STM32,stm32
四个输出模式 四个输入模式GPIO(1) STM32,stm32
空闲时就是高阻态
GPIO(1) STM32,stm32
空闲时(高阻态)由于上拉电阻的存在使得IO口为高电平
GPIO(1) STM32,stm32
空闲时(高阻态)由于下拉电阻的存在使得IO口为低电平GPIO(1) STM32,stm32
GPIO(1) STM32,stm32
当寄存器(ODO)对应的位写入0 下面的Pmos管导通 则输出VSS0低电平 如果寄存器对应的位写入1 则下面的Pmos截至 处于高阻态状态 无法输出高电平 (想要输出高电平必须外接上拉电阻)
GPIO(1) STM32,stm32

GPIO(1) STM32,stm32
F1和F4以及其他系列的差别
GPIO(1) STM32,stm32
GPIO(1) STM32,stm32
注意看F4以及其他系列的上下拉电阻是接在输入驱动器外部的 所以可以使用内部上下拉

GPIO的寄存器介绍

GPIO(1) STM32,stm32
F1系列的BRR和LCKR都不用 不用学习 同理F4的LCKR寄存器 GPIO(1) STM32,stm32
(GPIOA) CRL 和CRH都是32位寄存器 一共加起来是64位bit 而GPIOA有16个IO口引脚 相当于每四个bit控制一个IO口引脚GPIO(1) STM32,stm32
四个位控制一个IO口 圈起来的分别控制PA0 和PA1 所以这CRL一共控制8个IO口
GPIO(1) STM32,stm32
如要设置PA10位推完模式 首先PA10对应的寄存器为CRH(CRL是控制低八位的) 就是CRH中 8 9 10 11这四个位 其中8 9 是设置IO口的输入和输出模式 (8 9设置为工程需要的模式 如设置为输出模式 速度为需要的模式 就设置为1 0 给8 9 位写入 1 1)然后后面两个位 10 11写入0 0 就设置成功
如果要设置为上下拉电阻 就写入1 0 但是不知道到底是上拉还是下拉模式?
引出ODR寄存器 GPIO(1) STM32,stm32
ODR寄存器一共有16个位 一共对应16个IO口 每一个IO口对应一个位 加上了这个位就可以配置IO口的上下拉模式了 设置为1就输出高电平 设置为0就输出低电平
GPIO(1) STM32,stm32

GPIO(1) STM32,stm32
r 和rw 和w 分别是只读 读写 和只写的意思 举个例子 如果GPIOB_IDR 的第0位读到的是1 那么就说明PB0这个IO引脚接到的是高电平 (联想GPIO引脚的结构图)
GPIO(1) STM32,stm32
一共有32个位 两个位控制IO口的ODR寄存器 这个寄存器 BSRR 只写 如果一个IO口引脚 如 PA10 对应GPIOA 而GPIOA的寄存器中的BSRR的BR10为1 BS10为0 那么 对应的寄存器ODR就为0 就输出低电平 反之ODR就为1 输出高电平

F4系列的配置输入输出
GPIO(1) STM32,stm32
GPIO(1) STM32,stm32
GPIO(1) STM32,stm32
GPIO(1) STM32,stm32
相比于F1只是把功能分开了 多了一个上下拉电阻 (因为上下拉电阻是在IO信号进入的必经之路)
后面的IDR 和ODR BSRR都是和F1一样的
GPIO(1) STM32,stm32
使用BSRR寄存器

AFIO简介

GPIO(1) STM32,stm32
当引脚冲突时候了可以使用重映射把模块映射到其他地方去
AFIO就是把其他的模块映射到其他引脚上去
GPIO(1) STM32,stm32
GPIO(1) STM32,stm32
定时器1的四个通道和串口的引脚冲突 需要映射到其他的引脚去
GPIO(1) STM32,stm32
GPIO(1) STM32,stm32
GPIO(1) STM32,stm32文章来源地址https://www.toymoban.com/news/detail-744250.html

到了这里,关于GPIO(1) STM32的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • [STM32 GPIO配置]

    GPIO初始化结构体: 关于 GPIO_Mode : 在程序函数里是这么写的: ​ 其中,具体的模式及使用说明如下: ​ GPIO_Mode_AIN 为模拟输入模式(Analog Input Mode)。 ​ 在该模式下,GPIO引脚被配置为模拟信号输入。ADC模块可以将引脚读取到的模拟信号转换成数字信号进行处理。这种模式

    2024年02月19日
    浏览(28)
  • STM32 GPIO 详解

    基于 STM32F407ZG 1.1 简介 GPIO全称:General Purpose Input Output,即通用输入输出端口,一般用来采集外部器件的信息或者控制外部器件工作,即输入输出 1.2 STM32 的 GPIO 特点 不同型号,IO口数量可能不一样,可通过选型手册快速查询 快速翻转,每次翻转最快只需要两个时钟周期(F

    2024年02月14日
    浏览(29)
  • GPIO(1) STM32

    其实GPIO就是类似于51单片机的IO口 有采集和控制的作用 通用和复用功能 gpio的通用功能就是直接通过CPU控制IO(GPIO)引脚 而复用功能就是CPU通过其他外设和模块来控制IO(gpio)引脚 当同一个gpio引脚被CPU(通用功能)和外设和模块控制时(复用功能)会产生分歧 gpio不知道输出

    2024年02月05日
    浏览(33)
  • stm32——GPIO输出

    (以下内容均来自:bilibili江协科技) GPIO(general purpose input output)通用输入输出口 简介: 1、可配置8种输入输出模式 2、引脚电平:0v~3.3v,部分引脚可容忍5v(可以在这个端口输入5v的电压,也认为是高电平。但对于输出而已,最大只能输出3.3v,因为供电只有3.3v) 3、输出

    2024年02月05日
    浏览(25)
  • STM32 GPIO

    · 可配置为8种输入输出模式 · 引脚电平:0V~3.3V,部分引脚可容忍5V(FT) · 输出模式下可控制端口输出高低电平,用以驱动LED、控制蜂鸣器、模拟通信协议输出时序等 · 输入模式下可读取端口的高低电平或电压,用于读取按键输入、外接模块电平信号输入、ADC电压采集、模拟

    2024年02月21日
    浏览(22)
  • STM32-GPIO解析

            (一)定义: GPIO是MCU对外进行数据交互的通用IO接口,在MCU内部其可配置与其它片上外设或MCU内核(CPU)连接完成引脚上电压信号的读写。 GPIO端口在MCU上分为多个组来共同完成IO引脚读写(如GPIOA...),并且每个GPIO组掌控的IO引脚可以单独配置         (二)框图分析

    2024年02月19日
    浏览(20)
  • 【【STM32之GPIO】】

    学完了正点原子自带的视频课之后感觉仍然一知半解现在更新一下来自其他版本的STM32学习 GPIO 就是 General Purpose Input Output 中文名叫通用输入输出口 可配置8种输入输出模式 引脚电平 0V~3.3V 部分引脚可容忍5V 输出模式下可控制端口输出高低电平,用以驱动LED,控制蜂鸣器,模

    2024年02月12日
    浏览(22)
  • STM32 GPIO篇

    ·GPIO(General Purpose Input Output)通用输入输出口 ·可配置为8种输入输出模式 ·引脚电平: 0v~3.3v,部分引脚可容忍5v ·输出模式下可控制端口输出高低电平,用以驱动LED,控制蜂鸣器,模拟通信协议输出时序等 ·输入模式下可读取端口的高低电平或电压,用于读取按键输入,外

    2024年04月12日
    浏览(24)
  • STM32_GPIO

    1.1GPIO特点 1,不同型号,IO口数量可能不一样,可通过选型手册快速查询 2,快速翻转,每次翻转最快只需要两个时钟周期(F1最高速度可以到50Mhz) 3,每个IO口都可以做中断 4,支持8种工作模式 1.2GPIO电气特性 1.STM32工作电压: 2 V ≤ VDD ≤ 3.6 2.GPIO识别电压范围: COMS端口:

    2024年01月17日
    浏览(19)
  • STM32 GPIO复习

    General Purpose Input Output,即通用输入输出端口,简称GPIO。 负责采集外部器件的信息或控制外部器件工作,即输入输出。 不同型号,IO口数量可能不一样,可通过选型手册快速查询。 能快速翻转,每次翻转最快只需要两个时钟周期(F1最高速度可到50MHz)。 每个IO口可以做中断

    2024年02月11日
    浏览(22)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包