ST MCU Finder
安装免费手机应用,
寻找理想的ST MCU

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

[复制链接]
254|32
| 2018-11-9 15:15 | 显示全部楼层

跟踪进入并注释掉相关代码
| 2018-11-9 15:19 | 显示全部楼层
自动生成的代码后,有的需要手动稍微的修改一下才能用。
| 2018-11-9 15:22 | 显示全部楼层

楼上说的对,是需要修改的
 楼主 | 2018-11-9 15:27 | 显示全部楼层
还有吗
| 2018-11-9 15:30 | 显示全部楼层
不要总是相信这些工具,代码是灵活的,工具是死的。
| 2018-11-9 15:34 | 显示全部楼层
要能看懂这个工具生产的代码,一般带自动注释。
| 2018-11-9 15:41 | 显示全部楼层
你好,我也碰到这个问题,请问怎么解决?我芯片是103VCT ,由于PA15和PB3要用于PWM ,所以只能用SWD,但是一配置成SWD就死掉,且不能下载...
| 2018-11-9 15:41 | 显示全部楼层
基本不可能一点也不修改的
| 2018-11-9 15:45 | 显示全部楼层
直接使用代码注释关掉就行。
| 2018-11-9 15:49 | 显示全部楼层
SWJ_CFG[2:0] 就可以实现。
| 2018-11-9 15:53 | 显示全部楼层
问题情况:在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:这是我个人猜的
 楼主 | 2018-11-9 15:57 | 显示全部楼层

好的,我明天去单位试一下,多谢各位大侠了哈,结贴了先        
| 2018-11-9 21:18 | 显示全部楼层
GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable,ENABLE);//关闭jtag,保留swd。
| 2018-11-9 21:19 | 显示全部楼层
关闭jtag保留swd?
| 2018-11-9 21:19 | 显示全部楼层
WJ_CFG[2:0] :

串行线JTAG 配置 (Serial wire JTAG configuration)  位26:24
这些位只能由软件写( 读这些位,将返回未定义的数值) ,用于配置SWJ和跟踪复用功能的I/O
| 2018-11-9 21:20 | 显示全部楼层
GPIO_InitTypeDef GPIO_InitStructure;
        
        RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_AFIO, ENABLE);
        GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable,ENABLE);//要先开时钟,再重映射;关闭jtag,保留swd。        
        
        GPIO_InitStructure.GPIO_Pin = LED_PIN;
        GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz;
        GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
        GPIO_Init(LED_PORT, &GPIO_InitStructure);        
| 2018-11-9 21:20 | 显示全部楼层
应该设置GPIO的
| 2018-11-9 21:20 | 显示全部楼层
开启AFIO模式
| 2018-11-9 21:21 | 显示全部楼层
把STM32的SWD和JTAD接口都给关了
扫描二维码,随时随地手机跟帖
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复

您需要登录后才可以回帖
登录 | 注册
高级模式
我要创建版块 申请成为版主

论坛热帖

快速回复 返回顶部 返回列表