STM32通用和复用功能IO
总结
RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE);
//后面肯定接的代码是
//重映射引脚
GPIO_PinRemapConfig(GPIO_FullRemap_TIM3, ENABLE);
//或者配置为中断线
GPIO_EXTILineConfig(uint8_t GPIO_PortSource, uint8_t GPIO_PinSource);
//或者配置为事件输出
GPIO_EventOutputConfig(uint8_t GPIO_PortSource, uint8_t GPIO_PinSource);
上面代码用于引脚重映射,数据手册Remap功能。
GPIO_InitStruct.GPIO_Mode = GPIO_Mode_AF_PP;
上面代码用于普通IO口复用功能,数据手册Default功能。
GPIO功能配置
每个端口可以被配置为8种模式:
typedef enum
{ GPIO_Mode_AIN = 0x0,//模拟输入--IO口用于模拟量输入GPIO_Mode_IN_FLOATING = 0x04,//浮空输入GPIO_Mode_IPD = 0x28,//下拉输入GPIO_Mode_IPU = 0x48,//上拉输入GPIO_Mode_Out_OD = 0x14,//开漏输出GPIO_Mode_Out_PP = 0x10,//推挽输出GPIO_Mode_AF_OD = 0x1C,//复用开漏输出--不作为普通IO口时使用GPIO_Mode_AF_PP = 0x18 //复用推挽输出--不作为普通IO口时使用
}GPIOMode_TypeDef;
AFIO端口复用
RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE);
F1系列:
- 配置复用功能重映射
为了优化64脚或100脚封装的外设数目,可以把一些复用功能重新映射到其他引脚上。设置复用重映射和调试I/O配置寄存器(AFIO_MAPR)实现引脚的重新映射。这时,复用功能不再映射到它们的原始分配上。
复用功能重映射可以分为:没有重映射,部分重映射,完全重映射。
GPIO_PinRemapConfig(GPIO_Remap1_CAN1, ENABLE);
- 配置外部中断线映射
GPIO_EXTILineConfig(uint8_t GPIO_PortSource, uint8_t GPIO_PinSource);
- 配置EVENTOUT事件输出
GPIO_EventOutputConfig(uint8_t GPIO_PortSource, uint8_t GPIO_PinSource);
F4系列:
GPIO_PinAFConfig(GPIOA,GPIO_PinSource9,GPIO_AF_USART1);
STM32通用和复用功能IO相关推荐
- stm32的afio初始化代码_STM32-IO-AFIO(复用功能IO和调试配置)
最近在学习STM32,在BZ上一篇关于的串口通信文章里有这么一段代码:RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOD| RCC_APB2Periph_AFIO, ...
- stm32的IO口的复用功能(即AFIO)
关于stm32的IO口的复用功能,可以参考这篇博客,写的不错. https://blog.csdn.net/u013082827/article/details/77543394
- 笔记:STM32——IO口的复用功能外部中断
在STM32里面一般有五组寄存器分别是A--E组,每组寄存器的端口基本都有复用功能,这样可以使得端口的不被浪费,而达到极致利用. 使用复用端口的时候需要打开AFIO的时钟才能使用IO口的复用端口.每个 ...
- stm32驱动lcd段码io配置_I.MX6U处理器GPIO的命名复用与IO配置
一.I.MX6U处理器GPIO的命名 STM32 中的 IO 都是 PA0~15.PB0~15 这样命名的,I.MX6U 的 IO 是怎么命名的呢?打开NXP官方提供的<I.MX6UL 参考手册 ...
- STM32F103:一.(4)JWAG功能IO复用
JWAG功能IO复用 当想要使用JWAG功能引脚时,需要进行相关配置. ///开启复用时钟 注意PB3 PB4....是JWAG功能IO 要复用 ,,,还要用SWD下载!!! 出现问题时 一直按NRS ...
- IO复用功能占用时,普通GPIO功能使用
标题 单片机IO口基础知识: 最近工作遇到问题:ARM主控的I2C引脚被使用做硬件I2C,不能将其改为普通IO进行读写操作: 查看IO驱动的得知,当引脚被用作其他复用功能时,IO口只是不能作为输出引脚 ...
- 单片机(STM32)的GPIO框图:─ 输入浮空 ─ 输入上拉 ─ 输入下拉 ─ 模拟输入 ─ 开漏输出 ─ 推挽式输出 ─ 推挽式复用功能 ─ 开漏复用功能
─ 输入浮空 ─ 输入上拉 ─ 输入下拉 ─ 模拟输入 ─ 开漏输出 ─ 推挽式输出 ─ 推挽式复用功能 ─ 开漏复用功能 GPIO框图 保护电路: 高压保护--上拉二极管 低压保护--下拉二极管 输 ...
- 【STM32】谈谈STM32F10XX的定时器通道复用功能重映射
写这篇的动机是我每次配置定时器硬件PWM的时候都要翻一遍手册,对着目录找内容实在麻烦,干脆写一篇博文直接pick出这一段. 本文参考:正点原子提供的STM32中文参考手册 关键词:STM32 定时器 ...
- STM32笔记 GPIO介绍及IO口操作 STM32F0 利用C语言位域实现仿位带操作
文章目录 GPIO简介 工作方式 相关寄存器介绍 IO 操作步骤 IO口三种操作细解 附录:C语言相关 偏移地址与绝对地址 GPIO简介 GPIO:每个连接到I/O总线上的设备都有自己的I/O地址集, ...
最新文章
- C语言自学《四》---- 循 环
- OPNET仿真zigbee
- 【动态规划】关于转移方程的简单理解
- git status中文显示乱码
- CentOS上安装Python3.7.4
- ansys matlab 调用,matlab 调用ansys (转载)
- uva 11134——Fabled Rooks
- 如何在Ubuntu 18.04上安装Django
- Koa入门教程之示例应用
- deepin下深度终端使用ssh-agent(xshell中的xagent功能)
- 随想录(从kaldi学习语音识别)
- 工作之RF功能开发入门
- Dorado7常用JS以及常见错误
- Javaweb生成族谱树形图
- 钉钉如何调整组织架构_钉钉怎么给员工换部门?钉钉员工更改部门教程
- 安装 win7虚拟机
- win10远程连接服务器出现“这可能是由于credssp加密……”的原因及解决办法,win10家庭版无法找到gpedit.msc或者组策略或安全组策略
- 无线测量APP开发总结
- Unity 支持 3ds max 2021 物理材质吗?(FBX 出口)是否应该使用BPR材质?
- 宛如一个未来穿越者,终年33岁的印度数学天才,大数学家哈代说“他发现并创造了数学”
热门文章
- Java 设计模式之 Observer 模式
- linux服务启动redis自动启动不了,linux开机启动redis、nginx等服务
- fastapi学习(三):返回HTML页面
- java酒店信息管理系统_java实现酒店管理系统
- easymodbus_easymodbus4j基于netty的modbus协议快速开发工具
- android design包控件,Android Design包之TextInputLayout和TextInputEditText的组合使用【原创】...
- javaScript从入门到精通3.md
- [LeetCode] Z字型变换
- # 20155337 2016-2017-2 《Java程序设计》第十周学习总结
- JavaScript判断访问终端