Files
luban-lite/doc/topics/sdk/advanced/gdb.html
刘可亮 11c97ef399 v1.2.1
2025-07-22 11:15:46 +08:00

480 lines
51 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="zh-cn" lang="zh-cn" data-whc_version="26.1">
<head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><meta name="description" content="GDB 调试的主要配置步骤如下所示: 安装 T-HEADDebugServer。 配置主控调试引脚功能为 JTAG。 关闭主控 JTAG 引脚其他复用功能及断开对应物理连接(如有)。 编译、烧录。 使用 T-HEADDebugServer 连接主控。 进行调试。 GDB 工具介绍 GDB 调试工具及其功能描述如下: 表 1 . GDB 调试工具 工具 说明 T-HeadDebugServer 运行 ..."/><meta name="DC.rights.owner" content="(C) 版权 2025"/><meta name="copyright" content="(C) 版权 2025"/><meta name="generator" content="DITA-OT"/><meta name="DC.type" content="topic"/><meta name="DC.relation" content="../../../topics/sdk/advanced/sdk-usage.html"/><meta name="DC.relation" content="../../../topics/sdk/advanced/burn-procedure-by-diff-media.html"/><meta name="DC.relation" content="../../../topics/sdk/advanced/pinmux.html"/><meta name="DC.contributor" content="yan.wang"/><meta name="DC.contributor" content="yan.wang"/><meta name="DC.date.modified" content="2025-05-16"/><meta name="DC.format" content="HTML5"/><meta name="DC.identifier" content="id"/><meta name="DC.language" content="zh-CN"/><title>GDB 调试</title><!-- Generated with build number 2025051600. --><meta name="wh-path2root" content="../../../"/><meta name="wh-toc-id" content="id-d3752e913"/><meta name="wh-source-relpath" content="topics/sdk/advanced/gdb.dita"/><meta name="wh-out-relpath" content="topics/sdk/advanced/gdb.html"/>
<link rel="stylesheet" type="text/css" href="../../../webhelp/app/commons.css?buildId=2024041900"/>
<link rel="stylesheet" type="text/css" href="../../../webhelp/app/topic.css?buildId=2024041900"/>
<script src="../../../webhelp/app/options/properties.js?buildId=20250519091401"></script>
<script src="../../../webhelp/app/localization/strings.js?buildId=2024041900"></script>
<script src="../../../webhelp/app/search/index/keywords.js?buildId=20250519091401"></script>
<script defer="defer" src="../../../webhelp/app/commons.js?buildId=2024041900"></script>
<script defer="defer" src="../../../webhelp/app/topic.js?buildId=2024041900"></script>
<link rel="stylesheet" type="text/css" href="../../../webhelp/template/css/aic-styles-web-internal.css?buildId=2024041900"/><link rel="stylesheet" type="text/css" href="../../../webhelp/template/css/notes.css?buildId=2024041900"/><link rel="stylesheet" type="text/css" href="../../../webhelp/template/css/aic-common.css?buildId=2024041900"/><link rel="stylesheet" type="text/css" href="../../../webhelp/template/css/aic-images.css?buildId=2024041900"/><link rel="stylesheet" type="text/css" href="../../../webhelp/template/css/footnote.css?buildId=2024041900"/><link rel="stylesheet" type="text/css" href="../../../webhelp/template/css/aic-highlight-changes.css?buildId=2024041900"/><link rel="stylesheet" type="text/css" href="../../../webhelp/template/css/search-in-header.css?buildId=2024041900"/><link rel="stylesheet" type="text/css" href="../../../webhelp/template/css/topic-body-list.css?buildId=2024041900"/></head>
<body id="id" class="wh_topic_page frmBody">
<a href="#wh_topic_body" class="sr-only sr-only-focusable">
跳转到主要内容
</a>
<header class="navbar navbar-default wh_header">
<div class="container-fluid">
<div xmlns:whc="http://www.oxygenxml.com/webhelp/components" class="wh_header_flex_container navbar-nav navbar-expand-md navbar-dark">
<div class="wh_logo_and_publication_title_container">
<div class="wh_logo_and_publication_title">
<a href="https://www.artinchip.com" class=" wh_logo d-none d-sm-block "><img src="../../../company-logo.png" alt=" RTOS SDK 使用指南 SDK 指南文件 "/></a>
<div class=" wh_publication_title "><a href="../../../index.html"><span class="booktitle"> <span class="ph mainbooktitle">RTOS SDK 使用指南</span> <span class="ph booktitlealt">SDK 指南文件</span> </span></a></div>
</div>
</div>
<div class="wh_top_menu_and_indexterms_link collapse navbar-collapse" id="wh_top_menu_and_indexterms_link">
</div>
<div class=" wh_search_input navbar-form wh_topic_page_search search " role="form">
<form id="searchForm" method="get" role="search" action="../../../search.html"><div><input type="search" placeholder="搜索 " class="wh_search_textfield" id="textToSearch" name="searchQuery" aria-label="搜索查询" required="required"/><button type="submit" class="wh_search_button" aria-label="搜索"><span class="search_input_text">搜索</span></button></div></form>
</div></div>
</div>
</header>
<div class="container-fluid" id="wh_topic_container">
<div class="row">
<nav class="wh_tools d-print-none navbar-expand-md" aria-label="Tools">
<div data-tooltip-position="bottom" class=" wh_breadcrumb "><ol class="d-print-none"><li><span class="home"><a href="../../../index.html"><span>主页</span></a></span></li><li><div class="topicref" data-id="id"><div class="title"><a href="../../../topics/sdk/advanced/sdk-usage.html">使用指南</a><div class="wh-tooltip"><p class="shortdesc">命令详解,编译选项,镜像和分区配置,添加应用和驱动等的详细使用说明。</p></div></div></div></li><li class="active"><div class="topicref" data-id="id"><div class="title"><a href="../../../topics/sdk/advanced/gdb.html">GDB 调试</a></div></div></li></ol></div>
<div class="wh_right_tools">
<button class="wh_hide_highlight" aria-label="切换搜索突出显示" title="切换搜索突出显示"></button>
<button class="webhelp_expand_collapse_sections" data-next-state="collapsed" aria-label="折叠截面" title="折叠截面"></button>
<div class=" wh_navigation_links "><span id="topic_navigation_links" class="navheader">
<span class="navprev"><a class="- topic/link link" href="../../../topics/sdk/advanced/burn-procedure-by-diff-media.html" title="镜像烧录媒介及流程" aria-label="上一主题: 镜像烧录媒介及流程" rel="prev"></a></span>
<span class="navnext"><a class="- topic/link link" href="../../../topics/sdk/advanced/pinmux.html" title="引脚配置" aria-label="下一主题: 引脚配置" rel="next"></a></span> </span></div>
<div class=" wh_print_link print d-none d-md-inline-block "><button onClick="window.print()" title="打印此页" aria-label="打印此页"></button></div>
<button type="button" id="wh_toc_button" class="custom-toggler navbar-toggler collapsed wh_toggle_button navbar-light" aria-expanded="false" aria-label="Toggle publishing table of content" aria-controls="wh_publication_toc">
<span class="navbar-toggler-icon"></span>
</button>
</div>
</nav>
</div>
<div class="wh_content_area">
<div class="row">
<nav id="wh_publication_toc" class="col-lg-3 col-md-3 col-sm-12 d-md-block d-none d-print-none" aria-label="Table of Contents Container">
<div id="wh_publication_toc_content">
<div class=" wh_publication_toc " data-tooltip-position="right"><span class="expand-button-action-labels"><span id="button-expand-action" role="button" aria-label="Expand"></span><span id="button-collapse-action" role="button" aria-label="Collapse"></span><span id="button-pending-action" role="button" aria-label="Pending"></span></span><ul role="tree" aria-label="Table of Contents"><li role="treeitem"><div data-tocid="revinfo_linux-d3752e463" class="topicref" data-id="revinfo_linux" data-state="leaf"><span role="button" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/revinfo/revinfo_rtos.html" id="revinfo_linux-d3752e463-link">修订记录</a></div></div></li><li role="treeitem" aria-expanded="false"><div data-tocid="id-d3752e480" class="topicref" data-id="id" data-state="not-ready"><span role="button" tabindex="0" aria-labelledby="button-expand-action id-d3752e480-link" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/env/sdk-compile.html" id="id-d3752e480-link">SDK 编译</a><div class="wh-tooltip"><p class="shortdesc">介绍不同编译环境下 SDK 的详细编译流程。</p></div></div></div></li><li role="treeitem" aria-expanded="true"><div data-tocid="id-d3752e604" class="topicref" data-id="id" data-state="expanded"><span role="button" tabindex="0" aria-labelledby="button-collapse-action id-d3752e604-link" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/advanced/sdk-usage.html" id="id-d3752e604-link">使用指南</a><div class="wh-tooltip"><p class="shortdesc">命令详解,编译选项,镜像和分区配置,添加应用和驱动等的详细使用说明。</p></div></div></div><ul role="group" class="navbar-nav nav-list"><li role="treeitem" aria-expanded="false"><div data-tocid="id-d3752e623" class="topicref" data-id="id" data-state="not-ready"><span role="button" tabindex="0" aria-labelledby="button-expand-action id-d3752e623-link" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/advanced/commands.html" id="id-d3752e623-link">命令详解 </a></div></div></li><li role="treeitem"><div data-tocid="id-d3752e683" class="topicref" data-id="id" data-state="leaf"><span role="button" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/advanced/architecture.html" id="id-d3752e683-link">设计框架</a></div></div></li><li role="treeitem"><div data-tocid="id-d3752e697" class="topicref" data-id="id" data-state="leaf"><span role="button" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/advanced/sconstruct.html" id="id-d3752e697-link">SConstruct </a></div></div></li><li role="treeitem"><div data-tocid="id-d3752e711" class="topicref" data-id="id" data-state="leaf"><span role="button" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/advanced/compile.html" id="id-d3752e711-link">编译选项介绍</a></div></div></li><li role="treeitem" aria-expanded="false"><div data-tocid="config-storage-d3752e725" class="topicref" data-id="config-storage" data-state="not-ready"><span role="button" tabindex="0" aria-labelledby="button-expand-action config-storage-d3752e725-link" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/advanced/config-storage.html" id="config-storage-d3752e725-link">切换存储类型</a></div></div></li><li role="treeitem" aria-expanded="false"><div data-tocid="id-d3752e771" class="topicref" data-id="id" data-state="not-ready"><span role="button" tabindex="0" aria-labelledby="button-expand-action id-d3752e771-link" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/advanced/partition_config.html" id="id-d3752e771-link">配置分区</a></div></div></li><li role="treeitem" aria-expanded="false"><div data-tocid="id-d3752e815" class="topicref" data-id="id" data-state="not-ready"><span role="button" tabindex="0" aria-labelledby="button-expand-action id-d3752e815-link" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/advanced/image_burn_and_config.html" id="id-d3752e815-link">配置烧录镜像</a></div></div></li><li role="treeitem" class="active"><div data-tocid="id-d3752e913" class="topicref" data-id="id" data-state="leaf"><span role="button" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/advanced/gdb.html" id="id-d3752e913-link">GDB 调试</a></div></div></li><li role="treeitem"><div data-tocid="id-d3752e929" class="topicref" data-id="id" data-state="leaf"><span role="button" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/advanced/pinmux.html" id="id-d3752e929-link">引脚配置</a></div></div></li><li role="treeitem"><div data-tocid="id-d3752e945" class="topicref" data-id="id" data-state="leaf"><span role="button" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/advanced/driver.html" id="id-d3752e945-link">添加驱动</a></div></div></li><li role="treeitem"><div data-tocid="id-d3752e960" class="topicref" data-id="id" data-state="leaf"><span role="button" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/advanced/app.html" id="id-d3752e960-link">添加应用</a></div></div></li><li role="treeitem"><div data-tocid="id-d3752e974" class="topicref" data-id="id" data-state="leaf"><span role="button" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/advanced/hellowold.html" id="id-d3752e974-link">hellowold</a></div></div></li><li role="treeitem"><div data-tocid="id-d3752e988" class="topicref" data-id="id" data-state="leaf"><span role="button" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/advanced/burnin_test.html" id="id-d3752e988-link">烤机测试</a></div></div></li></ul></li><li role="treeitem" aria-expanded="false"><div data-tocid="concept_rcx_czh_pzb-d3752e1004" class="topicref" data-id="concept_rcx_czh_pzb" data-state="not-ready"><span role="button" tabindex="0" aria-labelledby="button-expand-action concept_rcx_czh_pzb-d3752e1004-link" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/chapter-app.html" id="concept_rcx_czh_pzb-d3752e1004-link">应用场景</a><div class="wh-tooltip"><p class="shortdesc">描述了 SDK 在不同应用场景中的配置和使用包括系统更新、OTA、安全方案等。</p></div></div></div></li><li role="treeitem" aria-expanded="false"><div data-tocid="id-d3752e1848" class="topicref" data-id="id" data-state="not-ready"><span role="button" tabindex="0" aria-labelledby="button-expand-action id-d3752e1848-link" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/peripheral/peripheral-intro.html" id="id-d3752e1848-link">外设移植</a><div class="wh-tooltip"><p class="shortdesc"><span class="ph">CTP、U 盘、SD 卡、有线和无线网络</span>等外设的介绍和使用说明。</p></div></div></div></li><li role="treeitem" aria-expanded="false"><div data-tocid="id-d3752e2022" class="topicref" data-id="id" data-state="not-ready"><span role="button" tabindex="0" aria-labelledby="button-expand-action id-d3752e2022-link" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/bringup/chapter-bringup.html" id="id-d3752e2022-link">BringUp</a><div class="wh-tooltip"><p class="shortdesc">主要描述板卡的各项配置,使 SDK 的环境和板卡匹配,并确保 SDK 编译后的固件能够在板子上正常运行。</p></div></div></div></li><li role="treeitem" aria-expanded="false"><div data-tocid="id-d3752e2418" class="topicref" data-id="id" data-state="not-ready"><span role="button" tabindex="0" aria-labelledby="button-expand-action id-d3752e2418-link" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/chapter-advanced-app.html" id="id-d3752e2418-link">高级应用</a><div class="wh-tooltip"><p class="shortdesc">系统、存储、多媒体、接口、安全等模块的详细配置和设计说明。</p></div></div></div></li></ul></div>
</div>
</nav>
<div class="col-lg-7 col-md-9 col-sm-12" id="wh_topic_body">
<button id="wh_close_publication_toc_button" class="close-toc-button d-none" aria-label="Toggle publishing table of content" aria-controls="wh_publication_toc" aria-expanded="true">
<span class="close-toc-icon-container">
<span class="close-toc-icon"></span>
</span>
</button>
<button id="wh_close_topic_toc_button" class="close-toc-button d-none" aria-label="Toggle topic table of content" aria-controls="wh_topic_toc" aria-expanded="true">
<span class="close-toc-icon-container">
<span class="close-toc-icon"></span>
</span>
</button>
<div class=" wh_topic_content body "><main role="main"><article class="- topic/topic topic" role="article" aria-labelledby="ariaid-title1">
<span class="edit-link" style="font-size:12px; opacity:0.6; text-align:right; vertical-align:middle"><a target="_blank" href="http://aicdocco/taskstopics/sdk/advanced/gdb.dita">Edit online</a></span><h1 class="- topic/title title topictitle1" id="ariaid-title1">GDB 调试</h1>
<div class="date inPage">16 May 2025</div><div style="color: gray;">
Read time: 6 minute(s)
</div>
<div class="- topic/body body">
<div class="- topic/p p" data-ofbid="d183396e38__20250519091525">GDB 调试的主要配置步骤如下所示:<ol class="- topic/ol ol" id="id__ul_hn5_5tk_52c" data-ofbid="id__ul_hn5_5tk_52c">
<li class="- topic/li li" data-ofbid="d183396e42__20250519091525">
<p class="- topic/p p" data-ofbid="d183396e44__20250519091525">安装 T-HEADDebugServer。</p>
</li>
<li class="- topic/li li" data-ofbid="d183396e48__20250519091525">
<p class="- topic/p p" data-ofbid="d183396e50__20250519091525">配置主控调试引脚功能为 JTAG。</p>
</li>
<li class="- topic/li li" data-ofbid="d183396e54__20250519091525">
<p class="- topic/p p" data-ofbid="d183396e56__20250519091525">关闭主控 JTAG 引脚其他复用功能及断开对应物理连接(如有)。</p>
</li>
<li class="- topic/li li" data-ofbid="d183396e60__20250519091525">
<p class="- topic/p p" data-ofbid="d183396e62__20250519091525">编译、烧录。</p>
</li>
<li class="- topic/li li" data-ofbid="d183396e66__20250519091525">
<p class="- topic/p p" data-ofbid="d183396e68__20250519091525">使用 T-HEADDebugServer 连接主控。</p>
</li>
<li class="- topic/li li" data-ofbid="d183396e73__20250519091525">
<p class="- topic/p p" data-ofbid="d183396e75__20250519091525">进行调试。</p>
</li>
</ol></div>
<section class="- topic/section section" id="id__section_kpq_3bq_52c" data-ofbid="id__section_kpq_3bq_52c"><h2 class="- topic/title title sectiontitle">GDB 工具介绍</h2>
<p class="- topic/p p" data-ofbid="d183396e85__20250519091525">GDB 调试工具及其功能描述如下:</p>
<div class="table-container"><table class="- topic/table table frame-all" id="id__table_xpq_3bq_52c" data-ofbid="id__table_xpq_3bq_52c" data-cols="2"><caption class="- topic/title title tablecap" data-caption-side="top" data-is-repeated="true"><span class="table--title-label"><span class="table--title-label-number"> 1</span><span class="table--title-label-punctuation">. </span></span><span class="table--title">GDB 调试工具 </span></caption><colgroup><col style="width:37.453183520599254%"/><col style="width:62.546816479400746%"/></colgroup><thead class="- topic/thead thead">
<tr class="- topic/row">
<th class="- topic/entry entry colsep-1 rowsep-1" id="id__table_xpq_3bq_52c__entry__1">
<p class="- topic/p p" data-ofbid="d183396e105__20250519091525">工具</p>
</th>
<th class="- topic/entry entry colsep-0 rowsep-1" id="id__table_xpq_3bq_52c__entry__2">
<p class="- topic/p p" data-ofbid="d183396e111__20250519091525">说明</p>
</th>
</tr>
</thead><tbody class="- topic/tbody tbody">
<tr class="- topic/row">
<td class="- topic/entry entry colsep-1 rowsep-1" headers="id__table_xpq_3bq_52c__entry__1">
<p class="- topic/p p" data-ofbid="d183396e123__20250519091525">T-HeadDebugServer</p>
</td>
<td class="- topic/entry entry colsep-0 rowsep-1" headers="id__table_xpq_3bq_52c__entry__2">
<p class="- topic/p p" data-ofbid="d183396e129__20250519091525">运行 GDB Server</p>
</td>
</tr>
<tr class="- topic/row">
<td class="- topic/entry entry colsep-1 rowsep-1" headers="id__table_xpq_3bq_52c__entry__1">
<p class="- topic/p p" data-ofbid="d183396e138__20250519091525">AiBurn</p>
</td>
<td class="- topic/entry entry colsep-0 rowsep-1" headers="id__table_xpq_3bq_52c__entry__2">
<p class="- topic/p p" data-ofbid="d183396e144__20250519091525">镜像烧写工具</p>
</td>
</tr>
<tr class="- topic/row">
<td class="- topic/entry entry colsep-1 rowsep-1" headers="id__table_xpq_3bq_52c__entry__1">
<p class="- topic/p p" data-ofbid="d183396e153__20250519091525">AIC-JTAG</p>
</td>
<td class="- topic/entry entry colsep-0 rowsep-1" headers="id__table_xpq_3bq_52c__entry__2">
<p class="- topic/p p" data-ofbid="d183396e159__20250519091525">AIC 调试器</p>
</td>
</tr>
<tr class="- topic/row">
<td class="- topic/entry entry colsep-1 rowsep-1" headers="id__table_xpq_3bq_52c__entry__1">
<p class="- topic/p p" data-ofbid="d183396e168__20250519091525">JTAG - SDMC 转接线</p>
</td>
<td class="- topic/entry entry colsep-0 rowsep-1" headers="id__table_xpq_3bq_52c__entry__2">
<p class="- topic/p p" data-ofbid="d183396e174__20250519091525">仅用于调试器连接 SDMC 接口使用</p>
</td>
</tr>
<tr class="- topic/row">
<td class="- topic/entry entry colsep-1 rowsep-1" headers="id__table_xpq_3bq_52c__entry__1">
<p class="- topic/p p" data-ofbid="d183396e183__20250519091525">riscv64-unknown-elf-gdb.exe</p>
</td>
<td class="- topic/entry entry colsep-0 rowsep-1" headers="id__table_xpq_3bq_52c__entry__2">
<p class="- topic/p p" data-ofbid="d183396e189__20250519091525">调试工具,位于 <span class="+ topic/ph sw-d/filepath ph filepath">$(SDK)tool/riscv64-gdb/bin/</span></p>
</td>
</tr>
<tr class="- topic/row">
<td class="- topic/entry entry colsep-1 rowsep-1" headers="id__table_xpq_3bq_52c__entry__1">
<p class="- topic/p p" data-ofbid="d183396e201__20250519091525">d21x.elf</p>
</td>
<td class="- topic/entry entry colsep-0 rowsep-1" headers="id__table_xpq_3bq_52c__entry__2">
<p class="- topic/p p" data-ofbid="d183396e207__20250519091525">Eclipse 工程目录下生成的符号链接表</p>
</td>
</tr>
<tr class="- topic/row">
<td class="- topic/entry entry colsep-1 rowsep-0" headers="id__table_xpq_3bq_52c__entry__1">
<p class="- topic/p p" data-ofbid="d183396e216__20250519091525">Tabby</p>
</td>
<td class="- topic/entry entry colsep-0 rowsep-0" headers="id__table_xpq_3bq_52c__entry__2">
<p class="- topic/p p" data-ofbid="d183396e222__20250519091525">用于控制调试串口、发送指令</p>
</td>
</tr>
</tbody></table></div>
</section>
<section class="- topic/section section" id="id__id2" data-ofbid="id__id2"><h2 class="- topic/title title sectiontitle">准备工作</h2>
<p class="- topic/p p" data-ofbid="d183396e235__20250519091525">执行 GDB
调试前,需要按照以下步骤准备相关软件环境:</p>
<ol class="- topic/ol ol simple" id="id__ol_d1l_drc_5cc" data-ofbid="id__ol_d1l_drc_5cc">
<li class="- topic/li li" data-ofbid="d183396e240__20250519091525">
<p class="- topic/p p" data-ofbid="d183396e242__20250519091525">安装 T-HeadDebugServer以下简称 DebugServer</p>
<p class="- topic/p p" data-ofbid="d183396e245__20250519091525">下列过程中会自动安装自带的 AIC-JTAG 驱动。</p>
<ol class="- topic/ol ol" type="a" id="id__ol_p24_grc_5cc" data-ofbid="id__ol_p24_grc_5cc">
<li class="- topic/li li" data-ofbid="d183396e250__20250519091525">解压,运行 <span class="+ topic/ph sw-d/filepath ph filepath">setup.exe</span></li>
<li class="- topic/li li" data-ofbid="d183396e256__20250519091525">在弹出页面中,点击 <span class="+ topic/ph ui-d/uicontrol ph uicontrol">Next</span><br/><div class="imagecenter"><img class="- topic/image image imagecenter" id="id__image_gbf_hrc_5cc" src="../../../images/sdk/install_1.png" alt="install_1"/></div><br/></li>
<li class="- topic/li li" data-ofbid="d183396e267__20250519091525">
<div class="- topic/p p" data-ofbid="d183396e269__20250519091525">在用户协议界面点击 <span class="+ topic/ph ui-d/uicontrol ph uicontrol">Yes</span><br/><div class="imagecenter"><img class="- topic/image image imagecenter" id="id__image_wlc_3rc_5cc" src="../../../images/sdk/install_2.png" alt="install_2"/></div><br/></div>
</li>
<li class="- topic/li li" data-ofbid="d183396e281__20250519091525">
<div class="- topic/p p" data-ofbid="d183396e283__20250519091525">在安装路径页面,按照实际需求,修改路径:<br/><div class="imagecenter"><img class="- topic/image image imagecenter" id="id__image_whx_3rc_5cc" src="../../../images/sdk/install_4.png" alt="install_4"/></div><br/></div>
</li>
<li class="- topic/li li" data-ofbid="d183396e292__20250519091525">
<div class="- topic/p p" data-ofbid="d183396e294__20250519091525">在安装组件页面,建议全选,继续点 <span class="+ topic/ph ui-d/uicontrol ph uicontrol">Next</span><br/><div class="imagecenter"><img class="- topic/image image imagecenter" id="id__image_g2k_krc_5cc" src="../../../images/sdk/install_5.png" alt="install_5"/></div><br/><br/><div class="imagecenter"><img class="- topic/image image imagecenter" id="id__image_uq2_lrc_5cc" src="../../../images/sdk/install_6.png" alt="install_6"/></div><br/></div>
<div class="- topic/p p" data-ofbid="d183396e310__20250519091525">等待完成安装后,桌面会自动创建一个 DebugServer 的图标:<br/><div class="imagecenter"><img class="- topic/image image imagecenter" id="id__image_g5q_mrc_5cc" src="../../../images/sdk/install_7.png" alt="install_7"/></div><br/></div>
</li>
</ol>
</li>
<li class="- topic/li li" data-ofbid="d183396e321__20250519091525">
<p class="- topic/p p" data-ofbid="d183396e323__20250519091525">将 AIC 调试器通过 USB-TypeC 连接 PC。</p>
<div class="- topic/p p" data-ofbid="d183396e326__20250519091525">成功识别后AIC 调试器绿灯会亮起。<br/><div class="imagecenter"><img class="- topic/image image imagecenter" id="id__image_f5y_4rc_5cc" src="../../../images/sdk/run_1.png" alt="run_1"/></div><br/><br/><div class="imagecenter"><img class="- topic/image image imagecenter" id="id__image_xtg_prc_5cc" src="../../../images/sdk/cklink_detected.png" alt="cklink_detected"/></div><br/></div>
</li>
</ol></section>
<section class="- topic/section section" id="id__sdk" data-ofbid="id__sdk"><h2 class="- topic/title title sectiontitle">SDK 配置</h2>
<div class="- topic/p p" data-ofbid="d183396e345__20250519091525"><span class="- topic/ph ph">Luban-Lite</span> SDK 支持使用 JTAG硬件接口进行调试。
为避免 GPIO 冲突,需要配置 <span class="+ topic/ph sw-d/filepath ph filepath">ddr_init.json</span>
<span class="+ topic/ph sw-d/filepath ph filepath">xxx_defconfig</span><div class="- topic/note note note note_note" id="id__note_glx_g3q_gdc" data-ofbid="id__note_glx_g3q_gdc"><span class="note__title">注:</span>
<p class="- topic/p p" data-ofbid="d183396e357__20250519091525">配置前,确保已经加载目标工程。</p>
</div></div>
<div class="- topic/p p" data-ofbid="d183396e361__20250519091525"><strong class="+ topic/ph hi-d/b ph b">使用 JTAG 口</strong> 进行连接和配置的详细操作流程:<ol class="- topic/ol ol simple" id="id__ul_ejq_h3q_gdc" data-ofbid="id__ul_ejq_h3q_gdc">
<li class="- topic/li li" data-ofbid="d183396e367__20250519091525"><span class="+ topic/ph sw-d/filepath ph filepath">target/&lt;CPU&gt;/&lt;board&gt;/pinmux.c</span> 中,找到
<code class="+ topic/ph pr-d/codeph ph codeph">aic_pinmux_config</code>
数组,添加代码如下:<pre class="+ topic/pre pr-d/codeblock pre codeblock language-c" id="id__codeblock_txj_tbq_52c" data-ofbid="id__codeblock_txj_tbq_52c"><strong class="hl-keyword">struct</strong> aic_pinmux aic_pinmux_config[] = {
...
{<span class="hl-number">6</span>, PIN_PULL_DIS, <span class="hl-number">3</span>, <span class="hl-string">"PA.8"</span>}, <em class="hl-comment">// 以 D21x 为例,查询引脚复用表,结合电路图,设置四个引脚的功能为 JTAG</em>
{<span class="hl-number">6</span>, PIN_PULL_DIS, <span class="hl-number">3</span>, <span class="hl-string">"PA.9"</span>},
{<span class="hl-number">6</span>, PIN_PULL_DIS, <span class="hl-number">3</span>, <span class="hl-string">"PA.10"</span>},
{<span class="hl-number">6</span>, PIN_PULL_DIS, <span class="hl-number">3</span>, <span class="hl-string">"PA.11"</span>},
...
};</pre></li>
<li class="- topic/li li" data-ofbid="d183396e378__20250519091525">
<p class="- topic/p p" data-ofbid="d183396e380__20250519091525">运行下列命令:</p>
<pre class="+ topic/pre pr-d/codeblock pre codeblock language-c" id="id__codeblock_utp_m3q_gdc" data-ofbid="id__codeblock_utp_m3q_gdc">scons --menuconfig</pre>
</li>
<li class="- topic/li li" data-ofbid="d183396e387__20250519091525">
<p class="- topic/p p" data-ofbid="d183396e389__20250519091525">关闭 I2C 以及 Touch Panel</p>
<pre class="+ topic/pre pr-d/codeblock pre codeblock language-c" id="id__codeblock_gjw_m3q_gdc" data-ofbid="id__codeblock_gjw_m3q_gdc">Board options ---&gt;
[ ] Using I2C3
Drivers options ---&gt;
Peripheral ---&gt;
[ ] Touch Panel Support</pre>
<div class="- topic/note note note note_note" id="id__note_gkt_5bq_52c" data-ofbid="id__note_gkt_5bq_52c"><span class="note__title">注:</span> 由于开发板的 I2C3 与 JTAG 引脚共用,此处关闭 CTP
是为了避免软件干扰;同时硬件上需断开 CTP 触屏排线。<figure class="- topic/fig fig fignone" id="id__fig_gjq_h3q_gdc" data-ofbid="id__fig_gjq_h3q_gdc">
<br/><div class="imagecenter"><img class="- topic/image image imagecenter" id="id__image_hjq_h3q_gdc" src="../../../images/sdk/ctp_disconnected.png" alt="CTP_disconnected"/></div><br/>
</figure></div>
</li>
</ol></div>
</section>
<section class="- topic/section section" id="id__id6" data-ofbid="id__id6"><h2 class="- topic/title title sectiontitle">连接开发板</h2>
<ol class="- topic/ol ol simple" data-ofbid="d183396e413__20250519091525">
<li class="- topic/li li" data-ofbid="d183396e415__20250519091525">
<p class="- topic/p p" data-ofbid="d183396e417__20250519091525">编译 SDK。</p>
</li>
<li class="- topic/li li" data-ofbid="d183396e421__20250519091525">
<p class="- topic/p p" data-ofbid="d183396e423__20250519091525">使用 AiBurn 烧录编译生成的镜像,详见<a class="- topic/xref xref" href="image_burn_and_config.html">配置烧录镜像</a></p>
</li>
<li class="- topic/li li" data-ofbid="d183396e431__20250519091525">
<p class="- topic/p p" data-ofbid="d183396e433__20250519091525">开发板连接串口、AIC-JTAG 和电源线。</p>
<figure class="- topic/fig fig fignone" id="id__id8" data-ofbid="id__id8">
<br/><div class="imagecenter"><img class="- topic/image image imagecenter" id="id__image_m4b_s3q_gdc" src="../../../images/sdk/debug_jtag.png" alt="debug_jtag"/></div><br/>
<figcaption data-caption-side="bottom" class="- topic/title title figcapcenter"><span class="figtitleprefix fig--title-label"><span class="fig--title-label-number"> 1</span><span class="fig--title-label-punctuation">. </span></span><span class="fig--title">开发板连接 JTAG 接口</span></figcaption></figure>
</li>
<li class="- topic/li li" data-ofbid="d183396e451__20250519091525">
<div class="- topic/p p" data-ofbid="d183396e453__20250519091525">使用 Tabby打开调试串口。<ol class="- topic/ol ol" type="a" id="id__ol_kcp_3fr_3dc" data-ofbid="id__ol_kcp_3fr_3dc">
<li class="- topic/li li" data-ofbid="d183396e457__20250519091525">打开选择页面。<div class="- topic/p p" data-ofbid="d183396e459__20250519091525">
<br/><div class="imagecenter"><img class="- topic/image image imagecenter" id="id__image_p3n_s3q_gdc" src="../../../images/sdk/tabby_open_serial-1.png" width="384" alt="tabby_open_serial-1"/></div><br/>
</div></li>
<li class="- topic/li li" data-ofbid="d183396e468__20250519091525">选择串口 COM 口。<div class="- topic/p p" data-ofbid="d183396e470__20250519091525">
<br/><div class="imagecenter"><img class="- topic/image image imagecenter" id="id__image_ut1_v3q_gdc" src="../../../images/sdk/tabby_open_serial-2.png" width="384" alt="tabby_open_serial-2"/></div><br/>
</div></li>
<li class="- topic/li li" data-ofbid="d183396e479__20250519091525">设置波特率,默认 115200。<div class="- topic/p p" data-ofbid="d183396e481__20250519091525">
<br/><div class="imagecenter"><img class="- topic/image image imagecenter" id="id__image_edy_c3q_gdc" src="../../../images/sdk/tabby_open_serial-3.png" width="384" alt="tabby_open_serial-3"/></div><br/>
</div><figure class="- topic/fig fig fignone" id="id__id13" data-ofbid="id__id13">
<br/><div class="imagecenter"><img class="- topic/image image imagecenter" id="id__image_klf_w3q_gdc" src="../../../images/sdk/tabby_open_serial-4.png" width="384" alt="tabby_open_serial-4"/></div><br/>
<figcaption data-caption-side="bottom" class="- topic/title title figcapcenter"><span class="figtitleprefix fig--title-label"><span class="fig--title-label-number"> 2</span><span class="fig--title-label-punctuation">. </span></span><span class="fig--title">打开成功</span></figcaption></figure></li>
</ol></div>
</li>
<li class="- topic/li li" data-ofbid="d183396e507__20250519091525">
<p class="- topic/p p" data-ofbid="d183396e509__20250519091525">将系统句柄放置在调试串口窗口,点击一下调试串口所在窗口。</p>
</li>
<li class="- topic/li li" data-ofbid="d183396e513__20250519091525">
<div class="- topic/p p" data-ofbid="d183396e515__20250519091525">在键盘上按住 <span class="+ topic/ph ui-d/uicontrol ph uicontrol">Ctrl +
C</span>,同时给开发板上电,串口打印如下:<pre class="+ topic/pre pr-d/codeblock pre codeblock language-c" id="id__codeblock_wmh_z3q_gdc" data-ofbid="id__codeblock_wmh_z3q_gdc">Pre-Boot Program ... (<span class="hl-number">2023</span>-<span class="hl-number">08</span>-<span class="hl-number">08</span> <span class="hl-number">11</span>:<span class="hl-number">29</span>:<span class="hl-number">35</span> <span class="hl-number">13</span>a563f)
No DDR info
Going to init DDR2. freq: <span class="hl-number">504</span>MHz
DDR2 initialized
<span class="hl-number">120186</span> <span class="hl-number">134875</span> <span class="hl-number">162258</span>
PBP done
tinySPL [Built on Aug <span class="hl-number">21</span> <span class="hl-number">2023</span> <span class="hl-number">17</span>:<span class="hl-number">12</span>:<span class="hl-number">58</span>]
Boot device = <span class="hl-number">5</span>(BD_SPINAND)
nand read speed: <span class="hl-number">1346320</span> byte, <span class="hl-number">76998</span> us -&gt; <span class="hl-number">17075</span> KB/s
aic@tinySPL #
aic@tinySPL #</pre></div>
</li>
<li class="- topic/li li" data-ofbid="d183396e524__20250519091525">
<p class="- topic/p p" data-ofbid="d183396e526__20250519091525">运行 DebugServer首次运行会有安全警告点击<span class="+ topic/ph ui-d/uicontrol ph uicontrol">允许访问</span></p>
<figure class="- topic/fig fig fignone" id="id__fig_yfw_w3q_gdc" data-ofbid="id__fig_yfw_w3q_gdc">
<br/><div class="imagecenter"><img class="- topic/image image imagecenter" id="id__image_zfw_w3q_gdc" src="../../../images/sdk/run_0.png" alt="run_0"/></div><br/>
</figure>
</li>
<li class="- topic/li li" data-ofbid="d183396e542__20250519091525">
<p class="- topic/p p" data-ofbid="d183396e544__20250519091525">配置 <span class="+ topic/ph ui-d/menucascade ph menucascade"><span class="+ topic/ph ui-d/uicontrol ph uicontrol">DebugServer Setting</span><abbr> &gt; </abbr><span class="+ topic/ph ui-d/uicontrol ph uicontrol">Setting</span><abbr> &gt; </abbr><span class="+ topic/ph ui-d/uicontrol ph uicontrol">Target Setting</span></span></p>
<figure class="- topic/fig fig fignone" id="id__fig_fk2_x3q_gdc" data-ofbid="id__fig_fk2_x3q_gdc">
<br/><div class="imagecenter"><img class="- topic/image image imagecenter" id="id__image_gk2_x3q_gdc" src="../../../images/sdk/run_2.png" alt="run_2"/></div><br/>
</figure>
</li>
<li class="- topic/li li" data-ofbid="d183396e569__20250519091525">
<p class="- topic/p p" data-ofbid="d183396e571__20250519091525">配置 DebugServer 的端口号,例如 3333。</p>
<figure class="- topic/fig fig fignone" id="id__fig_r4j_x3q_gdc" data-ofbid="id__fig_r4j_x3q_gdc">
<br/><div class="imagecenter"><img class="- topic/image image imagecenter" id="id__image_s4j_x3q_gdc" src="../../../images/sdk/debug_server_cfg_port.png" alt="debug_server1"/></div><br/>
</figure>
</li>
<li class="- topic/li li" data-ofbid="d183396e584__20250519091525">
<div class="- topic/p p" data-ofbid="d183396e586__20250519091525">启动仿真器连接,显示本地 IP 及已配置的端口3333则表示连接成功<figure class="- topic/fig fig fignone" id="id__fig_dpp_x3q_gdc" data-ofbid="id__fig_dpp_x3q_gdc">
<br/><div class="imagecenter"><img class="- topic/image image imagecenter" id="id__image_epp_x3q_gdc" src="../../../images/sdk/connected.png" alt="connected"/></div><br/>
</figure></div>
</li>
<li class="- topic/li li" data-ofbid="d183396e599__20250519091525">
<p class="- topic/p p" data-ofbid="d183396e601__20250519091525">连接成功后,即可通过 IDE 或命令行进行调试。</p>
</li>
</ol>
</section>
<section class="- topic/section section" id="id__section_bqt_3jq_gdc" data-ofbid="id__section_bqt_3jq_gdc"><h2 class="- topic/title title sectiontitle">Linux 下使用 GDB 调试</h2>
<div class="- topic/note note note note_note" id="id__note_oks_jjq_gdc" data-ofbid="id__note_oks_jjq_gdc"><span class="note__title">注:</span>
<p class="- topic/p p" data-ofbid="d183396e615__20250519091525">在 Linux 下进行调试操作前,需确保与 DebugServer 所在的 Windows 系统可以 ping 通。</p>
</div>
<ol class="- topic/ol ol simple" id="id__ul_m4c_bjq_gdc" data-ofbid="id__ul_m4c_bjq_gdc">
<li class="- topic/li li" data-ofbid="d183396e621__20250519091525">
<div class="- topic/p p" data-ofbid="d183396e623__20250519091525">在 SDK 根目录编写 <span class="+ topic/ph sw-d/filepath ph filepath">jtag-debug.sh</span>
脚本:<pre class="+ topic/pre pr-d/codeblock pre codeblock language-c" id="id__codeblock_ztf_kjq_gdc" data-ofbid="id__codeblock_ztf_kjq_gdc">$cat jtag-debug.sh
target remote <span class="hl-number">172.16</span>.<span class="hl-number">31.141</span>:<span class="hl-number">3333</span> #此处 IP 为 DebugServer 运行 PC 的 IP端口为 DebugServer 配置的端口
load ./output/d13x_demo88-nor_rt-thread_helloworld/images/d13x.elf # 对应项目的 elf 文件
file ./output/d13x_demo88-nor_rt-thread_helloworld/images/d13x.elf</pre></div>
</li>
<li class="- topic/li li" data-ofbid="d183396e632__20250519091525">
<div class="- topic/p p" data-ofbid="d183396e634__20250519091525">在 SDK 根目录下运行 GDB
<pre class="+ topic/pre pr-d/codeblock pre codeblock language-c" id="id__codeblock_av4_kjq_gdc" data-ofbid="id__codeblock_av4_kjq_gdc">$ ./toolchain/bin/riscv64-unknown-elf-gdb -x ./jtag-debug.sh
GNU gdb (Xuantie-<span class="hl-number">900</span> elf newlib gcc Toolchain V2.<span class="hl-number">6.1</span> B-<span class="hl-number">20220906</span>) <span class="hl-number">10.0</span>.<span class="hl-number">50.20200724</span>-git
Copyright (C) <span class="hl-number">2020</span> Free Software Foundation, Inc.
License GPLv3+: GNU GPL version <span class="hl-number">3</span> or later &lt;http:<em class="hl-comment">//gnu.org/licenses/gpl.html&gt;</em>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type <span class="hl-string">"show copying"</span> and <span class="hl-string">"show warranty"</span> <strong class="hl-keyword">for</strong> details.
This GDB was configured as <span class="hl-string">"--host=x86_64-pc-linux-gnu --target=riscv64-unknown-elf"</span>.
Type <span class="hl-string">"show configuration"</span> <strong class="hl-keyword">for</strong> configuration details.
For bug reporting instructions, please see:
&lt;https:<em class="hl-comment">//www.gnu.org/software/gdb/bugs/&gt;.</em>
Find the GDB manual and other documentation resources online at:
&lt;http:<em class="hl-comment">//www.gnu.org/software/gdb/documentation/&gt;.</em>
For help, type <span class="hl-string">"help"</span>.
Type <span class="hl-string">"apropos word"</span> to search <strong class="hl-keyword">for</strong> commands related to <span class="hl-string">"word"</span>.
warning: No executable has been specified and target does not support
determining executable automatically. Try using the <span class="hl-string">"file"</span> command.
<span class="hl-number">0x0000000000106b3a</span> in ?? ()
Loading section .text, size <span class="hl-number">0xa4780</span> lma <span class="hl-number">0x40000100</span>
sectio--Type &lt;RET&gt; <strong class="hl-keyword">for</strong> more, q to quit, c to <strong class="hl-keyword">continue</strong> without paging--
--Type &lt;RET&gt; <strong class="hl-keyword">for</strong> more, q to quit, c to <strong class="hl-keyword">continue</strong> without paging--
section progress: <span class="hl-number">41.5</span>%, total progress: inf%
section progress: <span class="hl-number">46.2</span>%, total progress: inf%
section progress: <span class="hl-number">50.4</span>%, total progress: inf%
section progress: <span class="hl-number">53.9</span>%, total progress: inf%
section progress: <span class="hl-number">63.3</span>%, total--Type &lt;RET&gt; <strong class="hl-keyword">for</strong> more, q to quit, c to <strong class="hl-keyword">continue</strong> without paging--
section progress: <span class="hl-number">93.5</span>%, total progress: inf%--Type &lt;RET&gt; <strong class="hl-keyword">for</strong> more, q to quit, c to <strong class="hl-keyword">continue</strong> without paging--
section progress: <span class="hl-number">100.0</span>%, total progress: inf%
Loading section .rodata, size <span class="hl-number">0x843b8</span> lma <span class="hl-number">0x400a4880</span>
section progress: <span class="hl-number">27.7</span>%, total progress: i--Type &lt;RET&gt; <strong class="hl-keyword">for</strong> more, q to quit, c to <strong class="hl-keyword">continue</strong> without paging--
sect--Type &lt;RET&gt; <strong class="hl-keyword">for</strong> more, q to quit, c to <strong class="hl-keyword">continue</strong> without paging--
section progress: <span class="hl-number">100.0</span>%, total progress: inf%
Loading section .data, size <span class="hl-number">0x32e0</span> lma <span class="hl-number">0x40128c40</span>
--Type &lt;RET&gt; <strong class="hl-keyword">for</strong> more, q to quit, c to <strong class="hl-keyword">continue</strong> without paging--
section progress: <span class="hl-number">100.0</span>%, total progress: inf%
Start address <span class="hl-number">0x0000000040000100</span>, load size <span class="hl-number">1228312</span>
Transfer rate: <span class="hl-number">107</span> KB/sec, <span class="hl-number">3988</span> bytes/write.</pre></div>
<p class="- topic/p p" data-ofbid="d183396e639__20250519091525">显示以上信息,表示已经进入 GDB 调试模式。</p>
</li>
</ol>
</section>
</div>
</article></main></div>
</div>
<nav role="navigation" id="wh_topic_toc" aria-label="On this page" class="col-lg-2 d-none d-lg-block navbar d-print-none">
<div id="wh_topic_toc_content">
<div class=" wh_topic_toc "><div class="wh_topic_label">在本页上</div><ul><li class="section-item"><div class="section-title"><a href="#id__section_kpq_3bq_52c" data-tocid="id__section_kpq_3bq_52c">GDB 工具介绍</a></div></li><li class="section-item"><div class="section-title"><a href="#id__id2" data-tocid="id__id2">准备工作</a></div></li><li class="section-item"><div class="section-title"><a href="#id__sdk" data-tocid="id__sdk">SDK 配置</a></div></li><li class="section-item"><div class="section-title"><a href="#id__id6" data-tocid="id__id6">连接开发板</a></div></li><li class="section-item"><div class="section-title"><a href="#id__section_bqt_3jq_gdc" data-tocid="id__section_bqt_3jq_gdc">Linux 下使用 GDB 调试</a></div></li></ul></div>
</div>
</nav>
</div>
</div>
</div>
<footer class="navbar navbar-default wh_footer">
<div class=" footer-container mx-auto ">
<title>footer def</title>
<style>
.p1 {
font-family: FangZhengShuSong, Times, serif;
}
.p2 {
font-family: Arial, Helvetica, sans-serif;
}
.p3 {
font-family: "Lucida Console", "Courier New", monospace;
}
</style>
<div class="webhelp.fragment.footer">
<p class="p1">Copyright © 2019-2025 广东匠芯创科技有限公司. All rights reserved.</p>
</div>
<div>
<div class="generation_time">
Update Time: 2025-05-19
</div>
</div>
</div>
</footer>
<div id="go2top" class="d-print-none">
<span class="oxy-icon oxy-icon-up"></span>
</div>
<div id="modal_img_large" class="modal">
<span class="close oxy-icon oxy-icon-remove"></span>
<div id="modal_img_container"></div>
<div id="caption"></div>
</div>
<script src="${pd}/publishing/publishing-styles-AIC-template/js/custom.js" defer="defer"></script>
</body>
</html>