[STM32F1]

STM32F103系列jtag编程端口作为普通IO口使用问题

[复制链接]
391|5
手机看帖
扫描二维码
随时随地手机跟帖
probedog|  楼主 | 2023-2-6 09:48 | 显示全部楼层 |阅读模式
ST-LINK编程时  遇到一个问题是SWDIO引脚,SWCLK引脚用做普通IO口  无法控制端口状态。端口一直有个0.9V 左右的电压输出  拔掉编程口也控制不了。

    有没人遇到类似情况   是否初始化需要设置什么? 高手有在吗!急!!! 在线等

使用特权

评论回复
软核硬核| | 2023-2-7 14:14 | 显示全部楼层
应该是没有配置好吧,好像有一段语句,让芯片失能SWDIO和SWCLK引脚。

使用特权

评论回复
LLGTR| | 2023-2-7 14:15 | 显示全部楼层
和程序有关系,但是建议不要用这个引脚当普通IO

使用特权

评论回复
芯路例程| | 2023-2-7 14:16 | 显示全部楼层
禁用调试功能
GPIO_PinRemapConfig(GPIO_Remap_SWJ_NoJTRST, ENABLE); //全功能SW+JTAG,禁用JTRST,PB4可用
GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable, ENABLE); //启用SW,禁用JTAG,PA15、PB3、PB4可用
GPIO_PinRemapConfig(GPIO_Remap_SWJ_Disable, ENABLE); //完全禁用SW+JTAG,PA13、PA14、PA15、PB3、PB4可用

SWJ调试端口,只能使用以上3种重映射方法,不可对单独引脚设置。

使用特权

评论回复
软核硬核| | 2023-2-7 14:17 | 显示全部楼层
SWJ调试端口设置成普通I/O口程序

/* 禁用 JTAG,PB3、PB4、PA15重定义为普通IO */
        GPIO_InitTypeDef  GPIO_InitStructure;
        RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA|RCC_APB2Periph_GPIOB, ENABLE);//使能PA和PB端口时钟

       
        RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE ); //配置复用时钟
        GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable, ENABLE);//启用SW,禁用JTAG,PA15、PB3、PB4可用

        GPIO_InitStructure.GPIO_Pin = GPIO_Pin_4 | GPIO_Pin_3;        //端口配置
        GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;                //推挽输出
        GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;                //IO口速度为50MHz
        GPIO_Init(GPIOB, &GPIO_InitStructure);                                        //根据设定参数初始化
        GPIO_InitStructure.GPIO_Pin = GPIO_Pin_15;                                //端口配置
        GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;                //推挽输出
        GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;                //IO口速度为50MHz
        GPIO_Init(GPIOA, &GPIO_InitStructure);                                        //根据设定参数初始化

使用特权

评论回复
SantaBunny| | 2023-2-11 16:28 | 显示全部楼层

应该是没有配置好

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

263

主题

1146

帖子

3

粉丝