关于我们
技术文章
产品开发 芯片销售 技术顾问 PCBA加工
消费类 民用类 工控类 汽车类 医疗类
栏目导航
内容搜索
联系我们

联系电话: 138O2559739刘生

电子邮件: lmserver@163.com

办公地址: 深圳市宝安区宝民二路25号


技术文章

STM32的JTAG关闭方法和SWD的使用

信息来源:lmserver   浏览次数:2363   更新时间:2013-3-31 13:21:37

JTAG占用太多IO口,而SWD只需要两条线,在IO资源紧张的时候,关闭JTAG是很有必要的。

网上很多关闭JTAG的方法很简单,一句重定义就可以了。
GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable, ENABLE);//IO口重定义,JTAG关闭 

但是,要注意一个事情:务必在关闭JTAG前打开AFIO的时钟,否则关不掉,JTAG占的那几个IO也不能用。

所以,应该是这样:

  RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE); //开AFIO时钟使能
  GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable, ENABLE);//IO口重定义,JTAG关闭 

 

关于SWD的使用,很多人说两条线就可以了,手册里也说使用两条线即可,但还是有网友说两条线无法调试。

其实问题出在复位上,这一点手册里没有提到。

如果仅用双线调试,必须释放掉RST脚,接上拉电阻是可以的,但不可以直接接VDD,很多场合RST脚是受控制的,例如外部复位芯片、其他主控单片机等。

所以,不妨在其之间串一个1K电阻,问题就解决了。

最新评论
 
请礼貌用语,文明留言!
昵称:   验证码:
邮箱:   QQ/MSN:
内容:
   

Copyright © 2007-2018 All Rights Reserved
粤ICP备18039308号
Powered By McuDesign