[开发工具] 只要重映射端口SW就关掉了

[复制链接]
1051|11
 楼主| wyjie 发表于 2017-8-27 17:25 | 显示全部楼层 |阅读模式
用CubeMX生成代码时,只要重映射端口SW就关掉了。片子是103zet6。
jiajs 发表于 2017-8-27 17:29 | 显示全部楼层
跟踪进入并注释掉相关代码
jiajs 发表于 2017-8-27 17:36 | 显示全部楼层
自动生成的代码后,有的需要手动稍微的修改一下才能用。
huangchui 发表于 2017-8-27 17:39 | 显示全部楼层
楼上说的对,是需要修改的
 楼主| wyjie 发表于 2017-8-27 17:41 | 显示全部楼层
还有吗
heweibig 发表于 2017-8-27 17:43 | 显示全部楼层
不要总是相信这些工具,代码是灵活的,工具是死的。
jiahy 发表于 2017-8-27 17:44 | 显示全部楼层
要能看懂这个工具生产的代码,一般带自动注释。
 楼主| wyjie 发表于 2017-8-27 17:46 | 显示全部楼层
其实还是不大明白,我再琢磨琢磨吧,多谢了哈,结贴了先
l4157 发表于 2017-9-11 11:20 | 显示全部楼层
wyjie 发表于 2017-8-27 17:46
其实还是不大明白,我再琢磨琢磨吧,多谢了哈,结贴了先

你好,我也碰到这个问题,请问怎么解决?我芯片是103VCT ,由于PA15和PB3要用于PWM ,所以只能用SWD,但是一配置成SWD就死掉,且不能下载...
jkl21 发表于 2017-9-11 17:09 | 显示全部楼层
直接使用代码注释关掉就行。
jkl21 发表于 2017-9-11 17:16 | 显示全部楼层
SWJ_CFG[2:0] 就可以实现。
l4157 发表于 2017-9-12 11:10 | 显示全部楼层
本帖最后由 l4157 于 2017-9-12 11:12 编辑

问题情况:在CubeMX中,不映射掉相应管脚,选择JTAG 4线,可以仿真,下载等,但是不能使用STM32F103VCT的PA15和PB3,关掉JTAG,选择SWD,下载程序后无法再联接芯片。

解决方法:直接对MAPR寄存器一次性赋值,然后注释掉相应硬件MspInit中的对MAPR的操作,问题解决!
估计问题在:由于CubeMX对MPAR的操作不严谨导致,CubeMX 对MAPR是用SET_BIT()进行操作,而#define SET_BIT(REG, BIT)     ((REG) |= (BIT)),由于SWJ_CFG[2:0]是只写位,“|=”包含读操作,所以会造成对这些位的误读,然后意外选择了JTAG-DP Disabled and SW-DP Disabled!
PS:这是我个人猜的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

927

主题

12706

帖子

5

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