[STM32F1] STM32F103 SWD编程端口与普通IO口共用问题

[复制链接]
 楼主| 尛舞icc 发表于 2016-2-3 17:16 | 显示全部楼层 |阅读模式
ST-LINK编程时  遇到一个问题是SWDIO端口 SWCLK端口用做普通IO口  无法控制端口     端口一直有个0.9V 左右的电压输出  拔掉编程口也控制不了    有没人遇到类似情况   是否初始化需要设置什么? 高手有在吗!急!!! 在线等
芙蓉洞 发表于 2016-2-3 18:05 | 显示全部楼层
如果要用作普通IO的话,得先禁掉jtag吧
 楼主| 尛舞icc 发表于 2016-2-3 18:37 | 显示全部楼层
芙蓉洞 发表于 2016-2-3 18:05
如果要用作普通IO的话,得先禁掉jtag吧

怎么禁止?
laotui 发表于 2016-2-3 19:07 | 显示全部楼层
AFIO_MAPR 123.jpg
xmshao 发表于 2016-2-3 22:34 | 显示全部楼层
不能直接用,得先做JTAGE配置。释放不用的JTAG口做GPIO.
玄德 发表于 2016-2-3 23:00 | 显示全部楼层

调试接口最好专用。


戈卫东 发表于 2016-2-3 23:11 | 显示全部楼层
这口占掉了再遇到BUG你就只能哭了。。。。。。
huangqi412 发表于 2016-2-4 09:51 | 显示全部楼层
戈卫东 发表于 2016-2-3 23:11
这口占掉了再遇到BUG你就只能哭了。。。。。。

复位**专治不服
LearningASM 发表于 2016-2-4 10:21 | 显示全部楼层

然后就把BUG给盖住了。
huangqi412 发表于 2016-2-4 17:33 来自手机 | 显示全部楼层
LearningASM 发表于 2016-2-4 10:21
然后就把BUG给盖住了。

不是  是复位后引脚又可以下载了
 楼主| 尛舞icc 发表于 2016-2-4 20:48 | 显示全部楼层
玄德 发表于 2016-2-3 23:00
调试接口最好专用。

你的意思是  另外找一个普通IO口?
 楼主| 尛舞icc 发表于 2016-2-4 20:48 | 显示全部楼层
戈卫东 发表于 2016-2-3 23:11
这口占掉了再遇到BUG你就只能哭了。。。。。。

我现在也找不到解决的办法     用别的下载方式 又没问题
 楼主| 尛舞icc 发表于 2016-2-4 20:49 | 显示全部楼层
xmshao 发表于 2016-2-3 22:34
不能直接用,得先做JTAGE配置。释放不用的JTAG口做GPIO.

具体怎么配置  能否详细告知   万分感谢
lemonboard 发表于 2016-2-5 11:01 | 显示全部楼层
基本上与楼上所说一样,下面为软件示例源代码
建议楼主一定要添加jtag保护功能函数。

  1. /*!< 保护jtag口,当按下PB0时,停机 */
  2. ProtectJtagIO();

  3. /* 失能Jtag口 */
  4. GPIO_PinRemapConfig(GPIO_Remap_SWJ_Disable, ENABLE);

  5. /* Configure PA.13 (JTMS/SWDAT), PA.14 (JTCK/SWCLK) and PA.15 (JTDI) as
  6.    output push-pull */
  7. GPIO_InitStructure.GPIO_Pin = GPIO_Pin_13 | GPIO_Pin_14 | GPIO_Pin_15;
  8. GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
  9. GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
  10. GPIO_Init(GPIOA, &GPIO_InitStructure);

  11. /* Configure PB.03 (JTDO) and PB.04 (JTRST) as output push-pull */
  12. GPIO_InitStructure.GPIO_Pin = GPIO_Pin_3 | GPIO_Pin_4;
  13. GPIO_Init(GPIOB, &GPIO_InitStructure);

评论

必须点赞,太完美了。  发表于 2016-5-8 22:55
yklstudent 发表于 2016-2-5 13:30 | 显示全部楼层
lemonboard 发表于 2016-2-5 11:01
基本上与楼上所说一样,下面为软件示例源代码
建议楼主一定要添加jtag保护功能函数。

STM32F0下怎么禁止JTAG口
webkit_ 发表于 2016-2-5 14:51 | 显示全部楼层
本帖最后由 webkit_ 于 2016-2-5 14:52 编辑

Jtag 禁用了 调试成问题哦  IO口那么多,最好用别的  JTAG的复用功能在Datasheet的GPIO部分C:\Users\Administrator\Desktop\QQ截图20160205144853
QQ截图20160205144853.png
lemonboard 发表于 2016-2-5 22:55 | 显示全部楼层
yklstudent 发表于 2016-2-5 13:30
STM32F0下怎么禁止JTAG口

目前stm32f0主要以STcubeMX生成代码为主,在其配置单不选择swd调试即可。
xmshao 发表于 2016-2-17 10:26 | 显示全部楼层
如果想少花时间研究手册,尽量使用STM32CUBE工具开发轻松点。
neeringstu 发表于 2016-5-7 22:19 | 显示全部楼层
xmshao 发表于 2016-2-17 10:26
如果想少花时间研究手册,尽量使用STM32CUBE工具开发轻松点。

我也想将swd的两个口用作普通的GPIO,不知道该如何设置
Brand2 发表于 2016-5-8 15:37 | 显示全部楼层
JTAG的IO是否有复用功能
您需要登录后才可以回帖 登录 | 注册

本版积分规则

67

主题

230

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部