首页 > 应用 > 单片机应用
[导读]前天在STM32一个项目开发时,遇到了一个问题即想使用STM32的SWD默认管脚PA13或者PA14,当时使用的单片机型号为STM32F103VET6,该单片机为100pin单片机,这么多的管脚按理说一般的应用不会出现使用这么的管脚的,但是

前天在STM32一个项目开发时,遇到了一个问题即想使用STM32的SWD默认管脚PA13或者PA14,当时使用的单片机型号为STM32F103VET6,该单片机为100pin单片机,这么多的管脚按理说一般的应用不会出现使用这么的管脚的,但是,在绘制原理图和设计PCB时并未将全部的引脚引出,到最后焊好后可供扩展的IO就只有这个PA13 PA14了,所以就只能使用这个两个IO口了。

本文引用地址: http://www.21ic.com/app/mcu/201807/779098.htm

实际使用这个两个IO口十分简单,但考虑到很多人没有试过,且肯定和我开始一样存在一个疑问且不敢轻易尝试,那就是:将这个SWD改成普通IO口后,我用SWD方式还能烧写程序么?单片机会不会锁死?

首先,先讲述下怎样将这个SWD端口做为普通IO,总共分如下几步:

1.RCC配置中先RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE);

2.在GPIO配置中禁用 GPIO_PinRemapConfig(GPIO_Remap_SWJ_Disable , ENABLE);

3.在GPIO中就可以随意定义这个PA13 PA14的管脚模式了。

程序编好后,可以通过SWD模式轻松将这个程序烧写进去,但是注意,当你烧写完这个程序的单片机再去用SWD方式烧写别的程序时,尴尬的事情就发生了,无法如第一次那样顺利的烧写了!为什么呢?因为SWD下载器连接到单片机时,单片机就会因上电工作在运行模式上去了,而这个SWD管脚刚被修改成普通IO了,即无法进行通信,所以解决办法就是不让单片机在运行模式上去,那办法有两个,第一就是通过BOOT1和BOOT0将它设置成ISP模式,第二就是干脆用ISP模式去烧写。

我亲自试验过,以上两种方式均可以,不过如果你就坚持用SWD方式且在运行模式下烧写,答案只有一个,没门!

所以建议:如果你的单片机只有SWD接口的最小系统板,BOOT管脚固定在运行模式配置的,切勿进行以上的修改。如果单片机有SWD和串口,且BOOT管脚引出带跳线的,那么放心修改使用,没问题。不过如果IO口不紧张的情况下,PA13 14做为SWD专用端口,十分不建议修改为普通IO,即便是你硬件有SWD和ISP


换一批

延伸阅读

[单片机应用] STM32F4 TIM输入捕获(测频)

STM32F4 TIM输入捕获(测频)

在输入捕获模式下,当检测到ICx信号上升/下降边沿时,计数器的当前值被存储在捕获比较寄存器TIMx_CCRx中。当捕获事件发生时,相应的CCxIF 标志(TIMx_SR 寄存器) 被置1。如果中断或者DMA功能被使能,就会产生中断或者......

关键字:STM32F4 TIM 输入捕获

[单片机新品] 意法半导体STM32CubeMX MCU引入多面板GUI 更新配置软件以改善开发者体验

意法半导体STM32CubeMX MCU引入多面板GUI 更新配置软件以改善开发者体验

使用意法半导体最新版的STM32CubeMX配置工具创建STM32 微控制器(MCU)项目,将会更直观,更高效。STM32CubeMX v.5.0的最新设计的多面板GUI界面在不改变屏幕视图的情况下,能够让用户查看更多参数,完成更多任务,从......

关键字:意法半导体 STM32CubeMX MCU

[单片机应用] STM32系列第29篇--DS18B20

STM32系列第29篇--DS18B20

特点:独特的单总线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯。大大提高了系统的抗干扰性。测温范围 -55℃~+125℃,精度为±0.5℃。支持多点组网功能,多个DS18B20......

关键字:STM32系列 DS18B20

[单片机应用] Uip + Stm32移植问题总结

Uip + Stm32移植问题总结

uIP 由瑞典计算机科学学院(网络嵌入式系统小组)的Adam Dunkels (http://dunkels.com/adam/uip/)开发。其源代码由C 语言编写,并完全公开,有了这个TCP/IP协议栈,让嵌入式可以实现的功能更为丰富。......

关键字:Uip Stm32 移植问题

[单片机应用] STM32外部中断测试

STM32外部中断测试

环境:主机:WIN7开发环境:MDK4.23MCU:STM32F103CBT6说明:STM32有20个外部中断线,其中EXTI0-EXTI15给I/O端口使用EXTI线16连接到PVD输出EXTI线17连接到RTC闹钟事件EXTI线18连接......

关键字:stm32 外部中断

[单片机应用] STM32单片机闪存存储器里存储的是哪些内容

STM32单片机闪存存储器里存储的是哪些内容

先看rom也就是flash(0x0800 0000-0x0807 ffff)512k,这个空间就是用户存放程序的地方,用户以后自己写boot loader的时候,也是存放在这个空间里的,system memory这个空间是2k大小,是st公......

关键字:STM32 单片机 闪存存储器

[单片机应用] 对STM32的GPIO位带操作的理解

对STM32的GPIO位带操作的理解

支持了位带操作后,便可以使用普通的加载/储存指令来对单一的比特进行读写操作了。简单而言,就是可以单独的对一个比特位读和写。在F103中,有两个地方实现了位带操作,其中一个是SRAM区的最低1MB范围,第二个则是片......

关键字:STM32 GPIO 位带操作

[单片机应用] STM32 Nor Flash DFU

STM32 Nor Flash DFU

这次要讲讲怎么实现Nor Flash的升级。Nor Flash的DFU工程还是基于之前的flash DFU的工程上修改而来。工程的目录如下:我使用的Nor Flash芯片是M29W128F,该芯片共有128Mb的空间,通过FSMC挂接在BA......

关键字:STM32 Nor Flash DFU

我 要 评 论

网友评论

芯闻号

技术子站

更多

项目外包

更多

推荐博客