资料介绍
背景
最近有一个项目用到了STM32F103RB系列单片机,由于引脚数量较少,不得不使用到了单片机的PB3和PB4两个引脚。而这两个引脚刚好又是STM32系列的JTAG调试引脚,如果要用于普通IO的功能需要先进行一定的设置。
1. STM32的调试方式选择
STM32支持JTAG和SWD两种调试方式,且默认状态下这两种调试功能都是开启的。
由此我们可以知道:
如果要使用JTAG调试功能,那么PB3,PB4,PA13,PA14,PA15都不能使用;
而如果我们关闭JTAG功能,但是开启SWD调试功能,那么PB3,PB4,PA15都可以当作普通IO来使用了;
ST官方3.5的库有提供关闭调试功能的两个接口:
1.1 关闭所有的JTAG和SWD调试功能
慎用,一旦执行该命令,程序运行后将不能通过JTAG或SWD方法进行烧写和下载,补救措施见文末。
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB | RCC_APB2Periph_AFIO, ENABLE);
GPIO_PinRemapConfig(GPIO_Remap_SWJ_Disable, ENABLE);
执行上面语句后,PB3,PB4,PA13,PA14,PA15都可以当作普通iO来使用,此时不能通过J-Link进行调试了;
1.2 仅关闭JTAG调试功能
该方法的好处是,解放了JTAG功能占用的引脚,但是SWD调试功能依旧可以使用。
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB | RCC_APB2Periph_AFIO, ENABLE);
GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable, ENABLE);
执行上面语句后,PB3,PB4,PA15都可以当作普通iO来使用,且可以通过SWD进行调试。
2. 关闭JTAG和SWD调试方式后如何更新程序以及仿真
2.1 关闭JTAG如何更新程序
关闭JTAG调试功能以后,STM32不再支持在线仿真,且更新程序也需要通过一定操作才可以完成。此方法在开发阶段慎用!
建议程序启动时延时3-5秒后再关闭JTAG调试模式,如此,单片机断电复位后立即点击烧写按钮也是可以进行程序烧录的。
2.2 关闭JTAG及SWD调试功能后的补救措施
补救措施一:
设置启动模式为ISP模式(BOOT0=1、BOOT1=0)或设置启动模式为RAM运行模式(BOOT0=1、BOOT1=1)。
将开发板断电后重新上电,此时就因不是在用户程序模式,因此就不会执行禁用JTAG的语句,JTAG功能也就可以正常使用。
补救措施二:
设置启动模式为ISP模式(BOOT0=1、BOOT1=0),用ISP程序将STM32的FLASH擦除,之后就可恢复JTAG功能。
补救措施三:
如果你的仿真器支持SWD仿真模式,如IAR下用JLINK、MDK下用ULINK2。直接将仿真器的模式设为SWD模,就可以不受这个禁止JTAG功能的影响了。
本文转载自:
转载地址:
声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有,如涉及侵权,请联系小编进行处理。(mbbeetchina)
下载该资料的人也在下载
下载该资料的人还在阅读
更多 >
- 工具集成窜口网口MODBUS调试工具免费下载 25次下载
- 关于stm32单片机准双向IO口配置
- STM32端口IO方向设置问题
- 单片机小白学步(23) IO口原理知识补充:双向IO口、互补推挽、高阻态资料下载
- STM32串口DMA容易忽视的问题资料下载
- 微控制器(MCU)各IO口的类型与应用资料下载
- 微控制器(MCU)IO口的一些用法资料下载
- 串口的循环队列是什么?(以STM32串口为例)资料下载
- STM32的IO口基本操作:初始化结构体,设置系统时钟,开启外设时钟资料下载
- 通信接口背景知识与STM32串口原理资料下载
- 使用单片机IO口模拟IIC程序设计的资料和程序说明
- 如何使用单片机扩展IO口的详细资料说明
- 51单片机io口的详细资料说明
- AVR单片机的IO口的设置及应用的代码详细资料免费下载 9次下载
- stm32串口调试软件 7次下载
- 华为射频天线口匹配设计及调试指导 3k次阅读
- MCU IO口电压下降原因分析 3.2k次阅读
- STM32串口发送数据和接收数据方式总结 9.9k次阅读
- PLC中自由通讯口设置步骤 2.4k次阅读
- 一份“IO口模拟串口”独门秘籍 4.8k次阅读
- stm32串口奇偶校验 1.2w次阅读
- PIC单片机以及51和AVR单片机的IO口操作方法解析 3.6k次阅读
- STM32单片机的八种IO口模式解析 4w次阅读
- 关于STC单片机IO口的状态和配置IO口的工作类型等资料概述 1.3w次阅读
- 如何将西门子S7-200CPU的通信口设置为自由口模式 1.5w次阅读
- STM32串口通信数据乱码的相关问题 1.3w次阅读
- STM32中IO口模拟串口输出的乱码现象 5.2k次阅读
- 串口通信的原理,IO口模拟UART串口通信 2.4w次阅读
- 空前绝后的“IO口扫键”法 电子设计必备良方 7.5k次阅读
- 什么是光口和电口_光口和电口的区别 9w次阅读
下载排行
本周
- 1冷柜-电气控制系统讲解
- 13.68 MB | 4次下载 | 10 积分
- 2安川A1000变频器中文版说明书
- 20.16 MB | 3次下载 | 3 积分
- 3直流电路的组成和基本定律
- 1.67 MB | 2次下载 | 免费
- 4丹佛斯2800系列变频器说明书
- 8.00 MB | 1次下载 | 5 积分
- 5PC8011同步开关型降压3.5A单节锂电池充电管理电路技术手册
- 0.74 MB | 1次下载 | 免费
- 6ES7243E+ES8311音频录制与播放电路资料
- 0.06 MB | 1次下载 | 5 积分
- 7SDM02 激光测距模块产品手册
- 0.43 MB | 1次下载 | 免费
- 8SDFM 激光测距模块模组手册
- 0.54 MB | 1次下载 | 免费
本月
- 1CH341编程器软件NeoProgrammer_2.2.0.10
- 20.47 MB | 170次下载 | 1 积分
- 22025智能家居传感器市场分析及创新应用
- 3.11 MB | 43次下载 | 免费
- 3RV1126B系列开发板产品资料
- 4.19 MB | 18次下载 | 免费
- 4CH341编程软件下载
- 2.50 MB | 16次下载 | 5 积分
- 5全志系列-米尔基于T153核心板开发板 四核异构、3路千兆网,赋能多元化工业场景
- 3.05 MB | 12次下载 | 免费
- 6【开源】60余套STM32单片机、嵌入式Linux、物联网、人工智能项目案例及入门学习资源包
- 10.55 MB | 8次下载 | 免费
- 7冷柜-电气控制系统讲解
- 13.68 MB | 4次下载 | 10 积分
- 8特斯拉MODEL S车载充电机主电路回路原理图
- 0.81 MB | 4次下载 | 3 积分
总榜
- 1matlab软件下载入口
- 未知 | 935137次下载 | 10 积分
- 2开源硬件-PMP21529.1-4 开关降压/升压双向直流/直流转换器 PCB layout 设计
- 1.48MB | 420064次下载 | 10 积分
- 3Altium DXP2002下载入口
- 未知 | 233094次下载 | 10 积分
- 4电路仿真软件multisim 10.0免费下载
- 340992 | 191448次下载 | 10 积分
- 5十天学会AVR单片机与C语言视频教程 下载
- 158M | 183356次下载 | 10 积分
- 6labview8.5下载
- 未知 | 81604次下载 | 10 积分
- 7Keil工具MDK-Arm免费下载
- 0.02 MB | 73824次下载 | 10 积分
- 8LabVIEW 8.6下载
- 未知 | 65991次下载 | 10 积分
电子发烧友App





创作
发文章
发帖
提问
发资料
发视频
上传资料赚积分
评论