zoukankan      html  css  js  c++  java
  • AFIO何时开启(还没听明白其实)

    转载:https://blog.csdn.net/huibei_wuhan/article/details/77876928

    1、不是说使用了IO的复用功能就一定要启动RCC_APB2Periph_AFIO的Clock的,参考下图
    image

    只有使用了AFIO的事件控制寄存器、AFIO的重映射功能以及外部中断(EXTI)控制寄存器才需要开启AFIO的时钟,STM32参考手册从来没说过使用IO的复用功能就一定要开启AFIO时钟,这是个误区。

    重映射步骤为:
    
    1.打开重映射时钟和USART重映射后的I/O口引脚时钟, 
    RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB | RCC_APB2Periph_AFIO,ENABLE);
    
    2.I/O口重映射开启.
    GPIO_PinRemapConfig(GPIO_Remap_USART1,ENABLE);
    
    3.配制重映射引脚, 这里只需配置重映射后的I/O,原来的不需要去配置.
    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6;
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;
    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
    GPIO_Init(GPIOB, &GPIO_InitStructure);
    
    
    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_7;
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;
    GPIO_Init(GPIOB, &GPIO_InitStructure);
    

    简单的说 STM32的 io 有3个功能 一个是默认的 一个是复用 一个是重映射功能(这个其实也属于复用)

  • 相关阅读:
    小程序排错(redis导致)
    linux系统删除-开头文件或目录
    nginx 反向代理
    memcache
    一次故障过程
    json.Decoder vs json.Unmarshal
    ssl中间证书
    作业10:String类
    Angular6如何引入jQuery-knob
    OpenJdk源码下载
  • 原文地址:https://www.cnblogs.com/xuyan123/p/15262553.html
Copyright © 2011-2022 走看看