当前位置: 首页 > news >正文

STM32特殊功能引脚详解文章·STM32特殊功能引脚能当作GPIO使用嘛详解!!!

目录

STM32特殊功能引脚

使用STM32特殊功能引脚函数


                                禁止搬运,仅供学习,编写不易,感谢理解!!!

STM32特殊功能引脚

        本篇详解文章仅以STM32F103C8T6芯片来讲解,STM32芯片除了普通的GPIO引脚以外,还有专门的特殊功能引脚,这些特殊功能引脚用于晶振信号的输入,控制单片机的复位,Booto引脚,芯片的烧录,还有备份电源区域。

        这些特殊功能引脚给外界提供了,调试跟控制STM32芯片的方式,在F1系列有Booto 0 引脚跟 Booto1 引脚其中 Booto1 引脚在F4  F7系列的芯片中不在设置 Booto1 引脚,被省略设计。

引脚名称功能描述是否可复用为 GPIO  对应引脚 
NRST芯片复位引脚,低电平触发系统复位NRST(Pin 7)
VBAT备份电源引脚,为 RTC 和备份寄存器供电VBAT(无此功能)
OSC_IN外部晶振输入引脚,用于连接外部时钟晶振部分芯片支持OSC_IN(Pin 5)
OSC_OUT外部晶振输出引脚,用于外部时钟晶振输出部分芯片支持OSC_OUT(Pin 6)
BOOT0启动模式选择引脚,决定芯片上电后进入的启动模式BOOT0(Pin 34)
JTMS/SWDIO调试接口引脚(JTAG/SWD 数据线输入)是(需禁用调试接口)PA13(Pin 37)
JTCK/SWCLK调试接口引脚(JTAG/SWD 时钟)是(需禁用调试接口)PA14(Pin 36)
JTDI调试接口引脚(JTAG 数据输入)是(需禁用调试接口)PA15(Pin 35)
JTDO/SWO调试接口引脚(JTAG 数据输出/SWD 输出)是(需禁用调试接口)PB3(Pin 31)
NJTRST调试接口复位引脚,用于复位 JTAG 调试器是(需禁用调试接口)PB4(Pin 30)

                                                      STM32特殊功能引脚表格

        这些特殊功能引脚对应着不同的特殊功能,部分特殊功能引脚是可以当作普通的GPIO来使用只要经过程序的写入,但是部分引脚只能当作特殊功能引脚来使用。

使用STM32特殊功能引脚函数

        在上面表格里面,PA13,PA14,PA15,PB3,PB4,对应着JTAG烧录接口的特殊功能引脚通过程序AFIO禁止JTAG烧录接口,就能让这些烧录接口引脚当作GPIO引脚来使用。

    // 启用 AFIO 时钟RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE);// 配置 AFIO->MAPR 禁用 JTAG,仅保留 SWDGPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable, ENABLE);

                                                            相关代码

        上面的代码是禁止JTAG烧录引脚,禁止烧录引脚之后,在配置 PA13,PA14,PA15,PB3,PB4,会发现才能使用。

                                               欢迎指正,希望对你,有所帮助!!!

http://www.lryc.cn/news/521145.html

相关文章:

  • Qt QComboBox的QSS美化
  • 计算机视觉算法实战——实时车辆检测和分类(主页有相关源码)
  • what?ngify 比 axios 更好用,更强大?
  • 安装虚拟机VMware遇到的问题
  • 通过ESP32和INMP441麦克风模块实现音频数据传递
  • Vue中nextTick实现原理
  • 数据仓库基础常见面试题
  • Java设计模式——单例模式(特性、各种实现、懒汉式、饿汉式、内部类实现、枚举方式、双重校验+锁)
  • 数字普惠金融对新质生产力的影响研究(2015-2023年)
  • 国产编辑器EverEdit - 扩展脚本:新建同类型文件(避免编程学习者反复新建保存练习文件)
  • jupyter notebook练手项目:线性回归——学习时间与成绩的关系
  • dockerfile2.0
  • 【spring mvc】文件上传、下载
  • FPGA工程师成长四阶段
  • java fastjson2 解析JSON用法解析
  • 计算机视觉算法实战——步态识别(主页有源码)
  • LabVIEW水位监控系统
  • 网络层协议-----IP协议
  • 计算机网络八股文学习笔记
  • IntelliJ IDEA中Maven项目的配置、创建与导入全攻略
  • 如何在Jupyter中快速切换Anaconda里不同的虚拟环境
  • stack和queue专题
  • 【Vue】点击侧边导航栏,右侧main对应显示
  • 【Debug】django.db.utils.OperationalError: (1040, ‘Too many connections‘)
  • 如何开放2375和2376端口供Docker daemon监听
  • RabbitMQ确保消息可靠性
  • 前端常见的设计模式之【单例模式】
  • 【React】脚手架进阶
  • win32汇编环境,窗口程序中单选框的一般操作示例
  • 如何移除git中被跟踪的commit文件