搜索
查看: 1217|回复: 2

[求助] 关于STM32F3系列启动时SWD的配置问题

[复制链接]

该用户从未签到

1

主题

2

帖子

0

蝴蝶豆

新手上路

最后登录
2021-1-22
发表于 2021-1-21 22:27:37 | 显示全部楼层 |阅读模式
求助:小弟现在使用STM32F373RCT6这款芯片,原来使用F103的,由于IO资源使用比较紧凑,基本没什么剩余IO,所以在system_stm32f1xx.c中增加了一个函数

/******************************************************************************
  * @功能简介        :                配置SWJ模式
  * @参    数        :                无
  * @返 回 值        :                无
*******************************************************************************/
////static void Set_DebugMode(uint32_t SWJ_Mode)
////{
////////                RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE);
////////       
////////                AFIO->MAPR &= ~AFIO_MAPR_SWJ_CFG;
////////                AFIO->MAPR |= SWJ_Mode;
////}

这样可以通过SWDJ的模式切换来释放SWD模式外的3个IO脚
但在STM32F373中,没有AFIO_MAPR这个寄存器,GPIO的复位是通过模式寄存器设置。
如果我在时钟初始化完成后加入一个函数将SWD外的3个脚PA15,PB3,PB4的相关寄存器位清零。
这个操作至少不再如F1下直接SWJ接口的模式切换设定,那F3系列在系统默认初始化的过程中,还是以SWJ(即JTAG+SWD)模式启动,在JTAG和SWD模式切换过程中会有什么隐患在里面?毕竟不再有直接用SWJ接口模式的直接设置,而去单独设置GPIO了
求路过大侠指点
回复

使用道具 举报

该用户从未签到

1

主题

2

帖子

0

蝴蝶豆

新手上路

最后登录
2021-1-22
 楼主| 发表于 2021-1-21 22:31:32 | 显示全部楼层
小弟现在使用的是F373的经典库,找了好久才配好,我是硬件工程师过来的,不习惯使用Cube那种方法
回复 支持 反对

使用道具 举报

  • TA的每日心情
    开心
    2017-12-6 11:47
  • 签到天数: 1 天

    [LV.1]初来乍到

    49

    主题

    3724

    帖子

    429

    蝴蝶豆

    论坛元老

    最后登录
    2021-8-7
    发表于 2021-1-22 15:25:39 | 显示全部楼层
    没什么区别吧,都是通过应用程序软件设置模式的。
    作为输入时,外部信号不能碰巧凑成一条JTAG/SWD指令;
    作为输出时,PA13、PA4上电默认上下拉状态,不要影响你电路的工作状态。
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /3 下一条

    Archiver|手机版|小黑屋|论坛-意法半导体STM32/STM8技术社区

    GMT+8, 2024-4-20 11:08 , Processed in 0.164540 second(s), 32 queries .

    Powered by Discuz! X3.4

    Copyright © 2001-2021, Tencent Cloud.

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