0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

STM32单片机中OBG调试接口的介绍

牵手一起梦 来源:面包板 作者:面包板 2020-01-26 16:45 次阅读

OBG在单片机中的解释STM32单片机的内核(Cortex-M3)含有硬件调试模块,支持多种复杂的调试操作,硬件调试模块允许内核在取地址或者访问数据时停止-这就是我们在单片机开发和过程中可以在线仿真的保障。内核在停止时,其内部的状态与外部状态都是可以进行查询的,- 在单片机仿真调试中受到中断,通常为人为设置的断点,此时单片机中所有的变量,以及程序指针,CP,等地址指针都可以查询到状态。在调试过程中,设置了断点,当程序停止运行时,我们可以接着进行单步执行,跳出函数,进入函数等操作。还可以进行复位,使寄存器都回归到初始复位状态。

OBG调试接口

串行接口

JTAG调试接口

STM32单片机中OBG调试接口的介绍

OBG调试框图

SWJ(serial wire and JTAG)调试端口

JTAG调试接口(JTAG-DP)为AHP-AP模块提供5针标准JTAG口串行调试接口(SW-DP)为两针接口(时钟+数据)接口在swj-dp接口中,SW-DP接口的2个引脚和JTAG标准接口的5个引脚中的一些是复用的。

STM32单片机中OBG调试接口的介绍

SWJ调试端口

JTAG-DP与SW-DP切换的机制 JTAG调试接口是默认的调试接口如果想换到SW-DP,必须在TMS/TCK上输出一指定的JTAG序列(SWCLK SWDIO),该序列禁止JTAG-DP,并激活SW-DP,该方法只能通过SWCLK与SWDIO两个引脚来激活。

指定序列是:

输出超过50个SWCLK的周期=1信号

输出16个SWDIO信号0111100111100111(MSB)

输出超过50个SWCLK周期的=1信号

注:如果在调试过程中,使用到了SW-DP模式,可以对SWDIO与SWCLK信号进行观察,不出意外可以观察到上面的信号。

SWJ调试端口脚

注:下图中的所有引脚在所有STM32系列单片机中都存在SWJ端口对应

STM32单片机中OBG调试接口的介绍

在系统复位后(SYSRESETn或PORESETn)以后,属于SWJ-DP的所有5个脚都立即被初始化为可被调试器调用的专用引脚。然而STM32控制器可以复用重映射和调试IO配置寄存器(AFIO_MARR)寄存器来禁止SWJ-DP接口的部分或者全部引脚功能,被释放为普通IO口,此寄存器被映射到Cortex-M3系统总线的APB桥上,对此寄存器的配置将由用户进行配置。

注:在单片机开发中基本上以及绝对不会用到占用调试接口的情况。大家松口气JTAG脚上的内部上拉与下拉保证JTAG的输入引脚不是悬空的是非常必要的,因为他们直接连接到D触发器控制着调试模式。必须特别注意SWCLK/TCK引脚,因为他们直接连接到一些D触发器的时钟端。

为了避免任何未受控制的I/O电平, STM32F10xxx在JTAG输入脚上嵌入了内部上拉和下拉●JINTRST:内部上拉

● JTDI:内部上拉

● JTMS/SWDIO:内部上拉

● TCK/SWCLK:内部下拉

一旦JTAG I/O被用户代码释放, GPIO控制器再次取得控制。这些I/O口的状态将恢复到复位时的状态。

● JNTRST:带上拉的输入

● JTDI:带上拉的输入

● JTMS/SWDIO:带上拉的输入

● JICK/SWCLK:带下拉的输入

● JTDO:浮动输入

软件可以把这些I/O口作为普通的I/O口使用。

注意: JTAG IEEE标准建议对TDI, TMS和nTRST上拉,而对TCK没有特别的建议。但在STM32F10xxx中, JTCK引脚带有下拉。

内嵌的上拉和下拉使芯片不再需要外加外部电阻利用串行接口并释放不用的调试脚作为普通I/O口为了利用串行调试接口来释放一些普通I/O口,用户软件必须在复位后设置SWJ_CFG=010,从而释放PA15, PB3和PB4用做普通I/O口。

责任编辑:gt

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    5997

    文章

    43947

    浏览量

    620538
  • 接口
    +关注

    关注

    33

    文章

    7609

    浏览量

    148376
  • 仿真
    +关注

    关注

    50

    文章

    3871

    浏览量

    132132
收藏 人收藏

    评论

    相关推荐

    STM32的SPI接口(1)#单片机

    单片机STM32
    未来加油dz
    发布于 :2023年08月11日 16:31:23

    STM32的SPI接口(2)#单片机

    单片机STM32
    未来加油dz
    发布于 :2023年08月11日 16:32:08

    飞思卡尔单片机调试接口说明

    飞思卡尔单片机调试接口说明
    发表于 08-27 01:15

    STM32的JTAG接口硬件设计介绍

    什么是JTAG接口? 从感官上看,JTAG接口就是上图中的蓝色的那个20PIN的牛角座。 JTAG接口的作用? 给单片机下载程序。在线调试
    发表于 07-04 03:09

    stm32f103单片机介绍

    stm32f103单片机介绍,硬件电路的设计(末尾附文件)系统硬件系统分析设计1、STM32单片机核心电路设计
    发表于 07-14 08:19

    如何使用VSCode开发调试STM32单片机

    如何使用VSCode开发调试STM32单片机
    发表于 11-05 07:12

    单片机串口的介绍

    目录串口的介绍串口硬件电路串口电平标准常用通信接口比较51单片机的UARTUART参数及时序图UART模式图串口和中断串行口相关寄存器串口发送数据代码usart.husart.cmain.c串口
    发表于 11-30 06:24

    单片机的中断介绍

    目录一、中断的介绍1.1 单片机的中断1.2 STM32的中断1.2.1 中断地址1.2.2 中断优先级1.2.3 中断使能1.3 中断的过程二、利用STM32CubeMX生成HAL库
    发表于 01-14 08:19

    单片机实用接口技术

    单片机实用接口技术介绍了MCS-51系列单片机应用系统的各种实用接口技术及其配置。内容包括:MCS-51系列
    发表于 12-23 14:27 29次下载
    <b class='flag-5'>单片机</b>实用<b class='flag-5'>接口</b>技术

    OBG调试接口单片机中的应用解析

    OBG单片机中的解释STM32单片机的内核(Cortex-M3)含有硬件调试模块,支持多种复杂的调试
    发表于 03-30 15:19 1815次阅读
    <b class='flag-5'>OBG</b><b class='flag-5'>调试</b><b class='flag-5'>接口</b>在<b class='flag-5'>单片机</b>中的应用解析

    基于STM32的蓝牙HC05调试程序 通过手机控制STM32单片机程序

    基于STM32的蓝牙HC05调试程序 通过手机控制STM32单片机程序
    发表于 11-24 12:36 121次下载
    基于<b class='flag-5'>STM32</b>的蓝牙HC05<b class='flag-5'>调试</b>程序 通过手机控制<b class='flag-5'>STM32</b><b class='flag-5'>单片机</b>程序

    OBG单片机中的解释

    OBG单片机中的解释STM32单片机的内核(Cortex-M3)含有硬件调试模块,支持多种复杂的调试
    发表于 02-09 11:39 0次下载
    <b class='flag-5'>OBG</b>在<b class='flag-5'>单片机</b>中的解释

    AN5286_STM32H7x5/x7双核单片机调试的应用手册

    AN5286_STM32H7x5/x7双核单片机调试的应用手册
    发表于 11-21 17:06 3次下载
    AN5286_<b class='flag-5'>STM32</b>H7x5/x7双核<b class='flag-5'>单片机</b><b class='flag-5'>调试</b>的应用手册

    单片机程序调试常见问题 STM32单片机一般有几种调试方式

    SWD是STM32单片机常用的调试模式之一。它通过单一的调试引脚(SWDIO)和时钟引脚(SWCLK)来进行调试和编程操作。使用SWD
    的头像 发表于 12-02 17:14 1692次阅读

    STM32单片机一般有几种调试方式

    JTAG调试*:这是一种常用的调试工具,可以用于单步执行、断点调试等操作。在STM32单片机中,可以使用ST-Link、STMicroele
    的头像 发表于 12-13 10:31 1063次阅读