一:STM32 被锁住后的解开方法

具体实施办法:
1、按住单片机复位键不松开;
2、同时下载程序
3、弹出一个窗口,选择NO
4、再重新下载程序,即可。

问题:STM32 JTAG/SWD禁用导致无法烧写
由于STM32的引脚功能较多,在为了方便硬件的使用,常会使用复用重映射的功能,这里主要提及的是SWD和JTAG端口的引脚对应出现的问题。
为了使得TIM2能够重映射到PA15和PB3,所以得对TIM2进行重映射,但是这样是不够的,因为下载调试端口SWD默认就占用了该引脚,所以重映射无效,
因此必须先启动时钟 RCC->APB2ENR|=1<<0;
然后令:AFIO->MAPR = AFIO_MAPR_SWJ_CFG_1;
或者AFIO->MAPR = AFIO_MAPR_SWJ_CFG_2;

但是又有一个新问题来了,如果你设置为第二种,那么就意味着你不但关闭了JTAG还关闭了SWD
这样一来,如果你使用该方式来烧写程序,那么你下一次将面临这无法烧写程序的后果 。

解决办法:
1、按着板子上面的复位键不放,若没有按键,就用夹子短路复位电容,这样单片机将停止程序的运行;

2.这时候点击 Keil下载,下方的“Buildoutput”窗口便会开始滚动,一会之后会提示出错。直接关闭它或选择 NO,放开复位键。

3.这时候单片机已经停止程序了,SWD 那些端口已经恢复原有的调试端口功能, 这时候你再一次按下载键便可以下载程序了,问题解决!!!

二:stm32f1系列 PA15(B3 B4)做普通IO用,普通设置方法不管用。

原因: A15->JTDI
B3->JTDO
B4->JNTRST
STM32 默认启动时 PA15、PB3、PB4三个引脚不是普通 IO,而是 JTAG 的复用功能,分别为JTDI、JTDO、JNTRST。
解决办法:
1、 禁用 JTAG 功能,例程如下。
2、 下载程序后,必须按复位键。(重要)

void GPIO_init()
{GPIO_InitTypeDef  GPIO_InitStructure;      RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA , ENABLE);//打开PA时钟RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE);//使能端口复用时钟GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable, ENABLE);//失能JTAG    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_15;  // 端口配置, 推挽输出GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;  //推挽输出GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;  //IO口速度为50MHzGPIO_Init(GPIOA, &GPIO_InitStructure);    //推挽输出 ,IO口速度为50MHz    GPIO_ResetBits(GPIOA,GPIO_Pin_15);        //P15置低电平
}

STM32 不小心被锁住,解开方法相关推荐

  1. java+oracle数据库锁,数据库学习之Oracle数据库\记录被另一个用户锁住\解决方法...

    1.先来看看为什么会出锁住: 数据库是一个多用户使用的共享资源.当多个用户并发地存取数据时,在数据库中就会产生多个事务同时存取同一数据的情况.若对并发操作不加控制就可能会读取和存储不正确的数据,破坏数 ...

  2. Oracle数据库 记录被另一个用户锁住 解决方法

    1.锁表原因: 数据库是一个多用户使用的共享资源.当多个用户并发地存取数据时,在数据库中就会产生多个事务同时存取同一数据的情况.若对并发操作不加控制就可能会读取和存储不正确的数据,破坏数据库的一致性. ...

  3. oracle 记录被另一个用户锁住

    oracle数据中删除数据时提示"记录被另一个用户锁住" 解决方法 1 查看数据库锁,诊断锁的来源及类型   select object_id,session_id,locked_ ...

  4. synchronized锁住了什么

    先看一个简单示例,下面这段代码能够正常通过编译. public  class  SyncTest {      public  SyncTest  syncVar ;      public  sta ...

  5. mysql数据库连接锁住_锁mysql方法

    Mysql锁初步 存储引擎 要了解mysql的锁,就要先从存储引擎说起. 常用存储引擎列表如下图所示: 最常使用的两种存储引擎: Myisam是Mysql的默认存储引擎.当create创建新表时,未指 ...

  6. 整个电脑键盘被锁住了_希沃智能大屏按键说明,锁屏组合键你知道吗?小心被熊孩子锁住了...

    教室里安装了希沃智能大屏,可以触摸.可以书写.演示课件等,功能非常强大,老师使用时非常方便.#希沃# #白板5# #智能大屏# 今天给大家介绍一下主机上的按键使用方法. 我们认识一下这几个按键,请看图 ...

  7. 键盘怎么锁定计算机,电脑键盘锁住了怎么解锁 详细方法介绍

    电脑大家应该都了解吧!电脑在我们的日常生活中扮演着重要的角色,平时的网上购物.娱乐等都需要电脑,不仅如此现在电脑在军事.政治领域应用也非常地广泛,但是大家平时能够接触到的就是我们日常生活之中的电脑了. ...

  8. Mac键盘被锁住了的解决方法

    日常使用电脑的时候,经常会遇到一开机就发现键盘什么键都按不了的情况,刚刚开始以为是死机,后来检测后发现是键盘被锁定了,肯定是按到什么不知名的快捷键导致的.那么要怎么解决mac键盘被锁住的问题?接下来小 ...

  9. 如何解除计算机方向键问题,笔记本键盘上下左右键怎么解锁_笔记本电脑的上下左右键被锁住了如何解决-win7之家...

    我们在电脑中玩游戏的时候,经常会使用到键盘上下左右键来进行操作,不过有不少笔记本用户反映说键盘上下左右键被锁住了,导致无法操作,但是这种情况不多见,如果被锁定的话.一般是数字区域,方向键基本上没有被锁 ...

最新文章

  1. UA MATH566 统计理论2 C-R不等式简介
  2. matlab中欠定方程组超定方程组_七年级下册第10章:解二元一次方程组(12课时)...
  3. 基于ffmpeg和libvlc的视频剪辑、播放器
  4. WeakHashMap和Java引用类型详细解析
  5. Android显存到内存拷贝耗时,memcpy速度太慢?掌握这个技术让内存拷贝效率成倍提升...
  6. 怎样才能培养孩子良好的用餐习惯
  7. Django+xadmin 打造线上教育平台(二)-1(旧)
  8. 深入BeanShell脚本对象
  9. HDU2029 Palindromes _easy version【入门】
  10. Dynamics CRM2013/2015 禁止欢迎屏幕(Disable the Welcome Screen)
  11. Juniper 210 密码清不掉_iPhone 11 每次下载应用都需要输入密码怎么办?
  12. CRA对于IE9的兼容性设置
  13. LINUX HTB队列规定用户指南
  14. 电池BMS软件架构设计和电池安全标准及测试
  15. mysql和mongo+查询效率_Mongodb VS Mysql 查询性能
  16. java 环境变量 locale_locale的设定及其LANG、LC_ALL、LANGUAGE环境变量的区别
  17. 蓝牙baseband概述
  18. VB创建写字板小程序
  19. Centos 5.4下的编译安装 xmms 和 mplayer
  20. 数据与广告系列二十四:效果广告后定向时代如何逆流而上

热门文章

  1. python read函数菜鸟_Python
  2. 过程语句 oracle,Oracle 过程控制语句整理
  3. 只精通python_七步精通Python机器学习--转载
  4. 系统学习机器学习之SVM(一)
  5. 数据结构--栈和队列记事本
  6. 使命召唤为啥显示新服务器玩家,《使命召唤8》建立服务器和加入自己、别人服务器方法...
  7. 属性值动态调整_【第1603期】CSS 自定义属性:使用篇
  8. Java为何能一次编写,到处运行
  9. Python学习-20180105
  10. [译]Flask教程--Cookie