Files
luban-lite-t3e-pro/doc/topics/sdk/display/usb-display-config-addon.html
2025-01-23 16:37:00 +08:00

337 lines
45 KiB
HTML
Raw 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.0">
<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="除了提供基本的显示功能USB Display 设备还能提供 USB HID TP / USB Audio / USB MSC 等附加功能。附加功能都是独立可选的,可以根据产品形态灵活组合。 USB Display 利用 CherryUSB 组合了一个 USB 复合设备,从而可以作为提供多个功能的组合设备。其中 Interface 0 是基本的 Display 功能,其他每一个 Interface ..."/><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/app/usb-display.html"/><meta name="DC.relation" content="../../../topics/sdk/app/usb-display-config.html"/><meta name="DC.relation" content="../../../topics/sdk/display/usb-display-config-ui.html"/><meta name="DC.contributor" content="yan.wang"/><meta name="DC.creator" content="yan.wang"/><meta name="DC.date.modified" content="2024-01-15"/><meta name="DC.format" content="HTML5"/><meta name="DC.identifier" content="usb_display_config_addon"/><title>配置附加功能</title><!-- Build number 2023110923. --><meta name="wh-path2root" content="../../../"/><meta name="wh-toc-id" content="usb_display_config_addon-d5856e2035"/><meta name="wh-source-relpath" content="topics/sdk/display/usb-display-config-addon.dita"/><meta name="wh-out-relpath" content="topics/sdk/display/usb-display-config-addon.html"/>
<link rel="stylesheet" type="text/css" href="../../../webhelp/app/commons.css?buildId=2023110923"/>
<link rel="stylesheet" type="text/css" href="../../../webhelp/app/topic.css?buildId=2023110923"/>
<script src="../../../webhelp/app/options/properties.js?buildId=20250121171154"></script>
<script src="../../../webhelp/app/localization/strings.js?buildId=2023110923"></script>
<script src="../../../webhelp/app/search/index/keywords.js?buildId=20250121171154"></script>
<script defer="defer" src="../../../webhelp/app/commons.js?buildId=2023110923"></script>
<script defer="defer" src="../../../webhelp/app/topic.js?buildId=2023110923"></script>
<link rel="stylesheet" type="text/css" href="../../../webhelp/template/aic-styles-web.css?buildId=2023110923"/><link rel="stylesheet" type="text/css" href="../../../webhelp/template/notes.css?buildId=2023110923"/><link rel="stylesheet" type="text/css" href="../../../webhelp/template/aic-common.css?buildId=2023110923"/><link rel="stylesheet" type="text/css" href="../../../webhelp/template/aic-images.css?buildId=2023110923"/><link rel="stylesheet" type="text/css" href="../../../webhelp/template/footnote.css?buildId=2023110923"/><link rel="stylesheet" type="text/css" href="../../../webhelp/template/aic-web-watermark.css?buildId=2023110923"/><link rel="stylesheet" type="text/css" href="../../../webhelp/template/topic-body-list.css?buildId=2023110923"/></head>
<body id="usb_display_config_addon" 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 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="http://www.artinchip.com" class=" wh_logo d-none d-sm-block "><img src="../../../company-logo-white.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>
</div>
</header>
<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 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="concept_rcx_czh_pzb"><div class="title"><a href="../../../topics/sdk/chapter-app.html">应用场景</a><div class="wh-tooltip"><p class="shortdesc">描述了 SDK 在不同应用场景中的配置和使用包括系统更新、OTA、安全方案等。</p></div></div></div></li><li><div class="topicref" data-id="usb_display"><div class="title"><a href="../../../topics/sdk/app/usb-display.html">USB Display 方案</a></div></div></li><li class="active"><div class="topicref" data-id="usb_display_config_addon"><div class="title"><a href="../../../topics/sdk/display/usb-display-config-addon.html">配置附加功能</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/app/usb-display-config.html" title="配置 USB 设备功能" aria-label="上一主题: 配置 USB 设备功能" rel="prev"></a></span>
<span class="navnext"><a class="- topic/link link" href="../../../topics/sdk/display/usb-display-config-ui.html" title="配置本地 UI" aria-label="下一主题: 配置本地 UI" 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-d5856e989" 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-d5856e989-link">修订记录</a></div></div></li><li role="treeitem" aria-expanded="false"><div data-tocid="id-d5856e1003" class="topicref" data-id="id" data-state="not-ready"><span role="button" tabindex="0" aria-labelledby="button-expand-action id-d5856e1003-link" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/env/sdk-compile.html" id="id-d5856e1003-link">SDK 编译</a><div class="wh-tooltip"><p class="shortdesc">介绍不同编译环境下 SDK 的详细编译流程。</p></div></div></div></li><li role="treeitem" aria-expanded="false"><div data-tocid="id-d5856e1152" class="topicref" data-id="id" data-state="not-ready"><span role="button" tabindex="0" aria-labelledby="button-expand-action id-d5856e1152-link" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/advanced/sdk-usage.html" id="id-d5856e1152-link">使用指南</a><div class="wh-tooltip"><p class="shortdesc">系统镜像、编译选项、开发板、应用等相关的详细使用说明。</p></div></div></div></li><li role="treeitem" aria-expanded="true"><div data-tocid="concept_rcx_czh_pzb-d5856e1416" class="topicref" data-id="concept_rcx_czh_pzb" data-state="expanded"><span role="button" tabindex="0" aria-labelledby="button-collapse-action concept_rcx_czh_pzb-d5856e1416-link" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/chapter-app.html" id="concept_rcx_czh_pzb-d5856e1416-link">应用场景</a><div class="wh-tooltip"><p class="shortdesc">描述了 SDK 在不同应用场景中的配置和使用包括系统更新、OTA、安全方案等。</p></div></div></div><ul role="group" class="navbar-nav nav-list"><li role="treeitem"><div data-tocid="id-d5856e1431" class="topicref" data-id="id" data-state="leaf"><span role="button" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/usb/udisk.html" id="id-d5856e1431-link">挂载 U 盘 </a></div></div></li><li role="treeitem"><div data-tocid="id-d5856e1443" class="topicref" data-id="id" data-state="leaf"><span role="button" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/sdmc/sdcard.html" id="id-d5856e1443-link">挂载 SD 卡</a></div></div></li><li role="treeitem" aria-expanded="false"><div data-tocid="id-d5856e1455" class="topicref" data-id="id" data-state="not-ready"><span role="button" tabindex="0" aria-labelledby="button-expand-action id-d5856e1455-link" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/burnsys/burnsys_user_guide.html" id="id-d5856e1455-link">系统更新</a></div></div></li><li role="treeitem" aria-expanded="false"><div data-tocid="id-d5856e1553" class="topicref" data-id="id" data-state="not-ready"><span role="button" tabindex="0" aria-labelledby="button-expand-action id-d5856e1553-link" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/ota/ota_guide.html" id="id-d5856e1553-link">OTA 方案</a></div></div></li><li role="treeitem" aria-expanded="false"><div data-tocid="id-d5856e1657" class="topicref" data-id="id" data-state="not-ready"><span role="button" tabindex="0" aria-labelledby="button-expand-action id-d5856e1657-link" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/xip/xip_user_guide.html" id="id-d5856e1657-link">XIP 方案 </a></div></div></li><li role="treeitem"><div data-tocid="id-d5856e1734" class="topicref" data-id="id" data-state="leaf"><span role="button" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/app/psram_load.html" id="id-d5856e1734-link">分散加载</a></div></div></li><li role="treeitem" aria-expanded="false"><div data-tocid="id-d5856e1746" class="topicref" data-id="id" data-state="not-ready"><span role="button" tabindex="0" aria-labelledby="button-expand-action id-d5856e1746-link" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/app/dm.html" id="id-d5856e1746-link">动态加载 (DM-APP)</a></div></div></li><li role="treeitem" aria-expanded="false"><div data-tocid="id-d5856e1806" class="topicref" data-id="id" data-state="not-ready"><span role="button" tabindex="0" aria-labelledby="button-expand-action id-d5856e1806-link" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/secure/chapter-secure.html" id="id-d5856e1806-link">安全方案</a></div></div></li><li role="treeitem"><div data-tocid="mkfs_partition_image-d5856e1866" class="topicref" data-id="mkfs_partition_image" data-state="leaf"><span role="button" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/app/mkfs_partition_image.html" id="mkfs_partition_image-d5856e1866-link">制作分区镜像</a></div></div></li><li role="treeitem" aria-expanded="false"><div data-tocid="id-d5856e1878" class="topicref" data-id="id" data-state="not-ready"><span role="button" tabindex="0" aria-labelledby="button-expand-action id-d5856e1878-link" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/d13x_bare_boot/index.html" id="id-d5856e1878-link">客制化启动</a></div></div></li><li role="treeitem" aria-expanded="false"><div data-tocid="id-d5856e1963" class="topicref" data-id="id" data-state="not-ready"><span role="button" tabindex="0" aria-labelledby="button-expand-action id-d5856e1963-link" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/burnsys/burner_offline_lite.html" id="id-d5856e1963-link">离线烧录</a></div></div></li><li role="treeitem" aria-expanded="true"><div data-tocid="usb_display-d5856e2011" class="topicref" data-id="usb_display" data-state="expanded"><span role="button" tabindex="0" aria-labelledby="button-collapse-action usb_display-d5856e2011-link" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/app/usb-display.html" id="usb_display-d5856e2011-link">USB Display 方案</a></div></div><ul role="group" class="navbar-nav nav-list"><li role="treeitem"><div data-tocid="usb_display_config-d5856e2023" class="topicref" data-id="usb_display_config" data-state="leaf"><span role="button" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/app/usb-display-config.html" id="usb_display_config-d5856e2023-link">配置 USB 设备功能</a></div></div></li><li role="treeitem" class="active"><div data-tocid="usb_display_config_addon-d5856e2035" class="topicref" data-id="usb_display_config_addon" data-state="leaf"><span role="button" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/display/usb-display-config-addon.html" id="usb_display_config_addon-d5856e2035-link">配置附加功能</a></div></div></li><li role="treeitem" aria-expanded="false"><div data-tocid="usb_display_config_ui-d5856e2047" class="topicref" data-id="usb_display_config_ui" data-state="not-ready"><span role="button" tabindex="0" aria-labelledby="button-expand-action usb_display_config_ui-d5856e2047-link" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/display/usb-display-config-ui.html" id="usb_display_config_ui-d5856e2047-link">配置本地 UI</a></div></div></li><li role="treeitem"><div data-tocid="usb_display_rotate-d5856e2071" class="topicref" data-id="usb_display_rotate" data-state="leaf"><span role="button" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/display/usb-display-rotate.html" id="usb_display_rotate-d5856e2071-link">配置横屏竖用和竖屏横用功能</a></div></div></li><li role="treeitem"><div data-tocid="usb_display_config_screen_cut-d5856e2083" class="topicref" data-id="usb_display_config_screen_cut" data-state="leaf"><span role="button" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/display/usb-display-config-screen-cut.html" id="usb_display_config_screen_cut-d5856e2083-link">配置屏幕裁剪</a></div></div></li><li role="treeitem"><div data-tocid="usb_display_install_drive-d5856e2095" class="topicref" data-id="usb_display_install_drive" data-state="leaf"><span role="button" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/app/usb-display-install-drive.html" id="usb_display_install_drive-d5856e2095-link">安装驱动</a></div></div></li><li role="treeitem"><div data-tocid="usb_display_tp_calibrate_windows-d5856e2107" class="topicref" data-id="usb_display_tp_calibrate_windows" data-state="leaf"><span role="button" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/app/usb-display-tp-calibrate_windows.html" id="usb_display_tp_calibrate_windows-d5856e2107-link">在 Windows 中校准触摸屏</a></div></div></li></ul></li></ul></li><li role="treeitem" aria-expanded="false"><div data-tocid="id-d5856e2119" class="topicref" data-id="id" data-state="not-ready"><span role="button" tabindex="0" aria-labelledby="button-expand-action id-d5856e2119-link" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/peripheral/peripheral-intro.html" id="id-d5856e2119-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-d5856e2244" class="topicref" data-id="id" data-state="not-ready"><span role="button" tabindex="0" aria-labelledby="button-expand-action id-d5856e2244-link" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/bringup/chapter-bringup.html" id="id-d5856e2244-link">BringUp</a><div class="wh-tooltip"><p class="shortdesc">在硬件上电后快速初始化系统,为操作系统的启动准备好必要的硬件环境。</p></div></div></div></li><li role="treeitem" aria-expanded="false"><div data-tocid="id-d5856e2345" class="topicref" data-id="id" data-state="not-ready"><span role="button" tabindex="0" aria-labelledby="button-expand-action id-d5856e2345-link" class="wh-expand-btn"></span><div class="title"><a href="../../../topics/sdk/chapter-advanced-app.html" id="id-d5856e2345-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://172.16.35.88/tasks/jdssno1uvvbf2mltu9kb9v3if05d5gopuakboe8hlud18rma/edit/F:/aicdita/aicdita-cn/topics/sdk/display/usb-display-config-addon.dita">Edit online</a></span><h1 class="- topic/title title topictitle1" id="ariaid-title1">配置附加功能</h1><div class="date inPage">15 Jan 2024</div><div style="color: gray;">
Read time: 7 minute(s)
</div><div class="- topic/body body"><p class="- topic/p p" data-ofbid="d242626e19__20250121171659">除了提供基本的显示功能USB Display 设备还能提供 USB HID TP / USB Audio / USB MSC
等附加功能。附加功能都是独立可选的,可以根据产品形态灵活组合。</p><p class="- topic/p p" data-ofbid="d242626e21__20250121171659">USB Display 利用 CherryUSB 组合了一个 USB 复合设备,从而可以作为提供多个功能的组合设备。其中 Interface 0 是基本的 Display
功能,其他每一个 Interface 对应一个独立的功能。</p><section class="- topic/section section" id="usb_display_config_addon__section_bts_h2d_b2c" data-ofbid="usb_display_config_addon__section_bts_h2d_b2c"><h2 class="- topic/title title sectiontitle">配置 USB HID TP </h2>
<div class="- topic/p p" data-ofbid="d242626e28__20250121171659">如需在 USB Display 产品中附带触摸功能,则需要在 USB 复合设备中增加 HID Touch 功能。详细配置步骤如下所示:<ol class="- topic/ol ol" id="usb_display_config_addon__ol_rmr_p2d_b2c" data-ofbid="usb_display_config_addon__ol_rmr_p2d_b2c"><li class="- topic/li li" data-ofbid="d242626e31__20250121171659">
<p class="- topic/p p" data-ofbid="d242626e33__20250121171659">确保正确配置 TP触摸屏参数并且 TP 可在本地正常使用。</p>
<p class="- topic/p p" data-ofbid="d242626e36__20250121171659">关于 TP 的详细配置说明,可查看 <a class="- topic/xref xref" href="../peripheral/touch.html">CTP 移植指南</a></p>
</li><li class="- topic/li li" data-ofbid="d242626e43__20250121171659">在 SDK 根目录,执行下列命令,进入 menuconfig
的功能配置界面:<pre class="+ topic/pre pr-d/codeblock pre codeblock language-c" id="usb_display_config_addon__codeblock_kw1_ftc_b2c" data-ofbid="usb_display_config_addon__codeblock_kw1_ftc_b2c">scons menuconfig</pre></li><li class="- topic/li li" data-ofbid="d242626e47__20250121171659">
<div class="- topic/p p" data-ofbid="d242626e49__20250121171659">使能 CherryUSB 中 HID TP 类型的 Device Class
驱动,并且使能对应实例模板。<pre class="+ topic/pre pr-d/codeblock pre codeblock language-c" id="usb_display_config_addon__codeblock_l2f_dfd_b2c" data-ofbid="usb_display_config_addon__codeblock_l2f_dfd_b2c">&gt; Local packages options
&gt; Third-party packages options
[*] CherryUSB: tiny and portable USB host/device stack <strong class="hl-keyword">for</strong> embedded system with USB IP ---&gt;
[*] Enable usb device mode ---&gt;
[*] Enable usb hid device ---&gt;
Use hid template (touch) ---&gt;
Hid Touch Parameter ---&gt;</pre></div>
</li><li class="- topic/li li" data-ofbid="d242626e54__20250121171659">
<div class="- topic/p p" data-ofbid="d242626e56__20250121171659">使能 Display 类型的 Device Class 驱动,并且在 Composite Device
中使能相应配置:<pre class="+ topic/pre pr-d/codeblock pre codeblock language-c" id="usb_display_config_addon__codeblock_ss2_2fd_b2c" data-ofbid="usb_display_config_addon__codeblock_ss2_2fd_b2c">&gt; Local packages options
&gt; Third-party packages options
[*] CherryUSB: tiny and portable USB host/device stack <strong class="hl-keyword">for</strong> embedded system with USB IP ---&gt;
[*] Enable usb device mode ---&gt;
[*] Enable usb hid device ---&gt;
[*] Enable usb display device ---&gt;
[*] Enable composite device ---&gt;
[*] Use Composite template
Composite Parameter ---&gt;
[*] USBDEV_DISP_COMPOSITE
[*] USBDEV_TOUCH_COMPOSITE</pre></div>
</li></ol></div>
</section><section class="- topic/section section" id="usb_display_config_addon__section_v23_ffd_b2c" data-ofbid="usb_display_config_addon__section_v23_ffd_b2c"><h2 class="- topic/title title sectiontitle">配置 USB Audio (UAC) </h2>
<div class="- topic/p p" data-ofbid="d242626e67__20250121171659">如需在 USB Display 产品中附带音频功能,则需要在 USB 复合设备中增加 UAC 功能。详细配置步骤如下所示:<ol class="- topic/ol ol" id="usb_display_config_addon__ol_uwg_gfd_b2c" data-ofbid="usb_display_config_addon__ol_uwg_gfd_b2c"><li class="- topic/li li" data-ofbid="d242626e70__20250121171659">
<p class="- topic/p p" data-ofbid="d242626e72__20250121171659">确保正确配置 TP触摸屏参数并且 TP 可在本地正常使用。</p>
<p class="- topic/p p" data-ofbid="d242626e75__20250121171659">关于 TP 的详细配置说明,可查看 <a class="- topic/xref xref" href="../peripheral/touch.html">CTP 移植指南</a></p>
</li><li class="- topic/li li" data-ofbid="d242626e82__20250121171659">在 SDK 根目录,执行下列命令,进入 menuconfig
的功能配置界面:<pre class="+ topic/pre pr-d/codeblock pre codeblock language-c" id="usb_display_config_addon__codeblock_s1h_rsd_c2c" data-ofbid="usb_display_config_addon__codeblock_s1h_rsd_c2c">scons menuconfig</pre></li><li class="- topic/li li" data-ofbid="d242626e86__20250121171659">
<div class="- topic/p p" data-ofbid="d242626e88__20250121171659">使能 CherryUSB 中 HID TP 类型的 Device Class
驱动,并且使能对应实例模板。<pre class="+ topic/pre pr-d/codeblock pre codeblock language-c" id="usb_display_config_addon__codeblock_vwg_gfd_b2c" data-ofbid="usb_display_config_addon__codeblock_vwg_gfd_b2c">&gt; Local packages options
&gt; Third-party packages options
[*] CherryUSB: tiny and portable USB host/device stack <strong class="hl-keyword">for</strong> embedded system with USB IP ---&gt;
[*] Enable usb device mode ---&gt;
[*] Enable usb hid device ---&gt;
Use hid template (touch) ---&gt;
Hid Touch Parameter ---&gt;</pre></div>
</li><li class="- topic/li li" data-ofbid="d242626e93__20250121171659">
<div class="- topic/p p" data-ofbid="d242626e95__20250121171659">使能 Display 类型的 Device Class
驱动:<pre class="+ topic/pre pr-d/codeblock pre codeblock language-c" id="usb_display_config_addon__codeblock_wwg_gfd_b2c" data-ofbid="usb_display_config_addon__codeblock_wwg_gfd_b2c">&gt; Local packages options
&gt; Third-party packages options
[*] CherryUSB: tiny and portable USB host/device stack <strong class="hl-keyword">for</strong> embedded system with USB IP ---&gt;
[*] Enable usb device mode ---&gt;
[*] Enable usb hid device ---&gt;
[*] Enable usb display device ---&gt;</pre></div>
</li><li class="- topic/li li" data-ofbid="d242626e100__20250121171659">
<div class="- topic/p p" data-ofbid="d242626e102__20250121171659"><code class="+ topic/ph pr-d/codeph ph codeph">Enable composite device</code> 中使能下列配置,添加一个
<code class="+ topic/ph pr-d/codeph ph codeph">DISPLAY</code> + <code class="+ topic/ph pr-d/codeph ph codeph">TP HID</code> 的 USB
复合设备:<pre class="+ topic/pre pr-d/codeblock pre codeblock language-c" id="usb_display_config_addon__codeblock_e1q_vsd_c2c" data-ofbid="usb_display_config_addon__codeblock_e1q_vsd_c2c">&gt; Local packages options
&gt; Third-party packages options
[*] CherryUSB: tiny and portable USB host/device stack <strong class="hl-keyword">for</strong> embedded system with USB IP ---&gt;
[*] Enable usb device mode ---&gt;
[*] Enable usb hid device ---&gt;
[*] Enable usb display device ---&gt;
[*] Enable composite device ---&gt;
Composite Parameter ---&gt;
[*] USBDEV_DISP_COMPOSITE
[*] USBDEV_TOUCH_COMPOSITE</pre></div>
</li><li class="- topic/li li" data-ofbid="d242626e116__20250121171659">
<div class="- topic/p p" data-ofbid="d242626e118__20250121171659">配置完成后,可按照以下方式在不同操作系统中使用 UAC 功能:<ul class="- topic/ul ul" id="usb_display_config_addon__ul_dcf_mdg_c2c" data-ofbid="usb_display_config_addon__ul_dcf_mdg_c2c"><li class="- topic/li li" data-ofbid="d242626e121__20250121171659">
<p class="- topic/p p" data-ofbid="d242626e123__20250121171659">对于 Windows 系统,在 PC 设备的扬声器下拉菜单中,选择<span class="+ topic/ph ui-d/uicontrol ph uicontrol">扬声器(ArtInChip USB
Device)</span></p>
<br/><div class="imagecenter"><img class="- topic/image image imagecenter" id="usb_display_config_addon__image_g5n_qdg_c2c" src="../../../images/usb-display/uac_windows.png" width="288"/></div><br/>
</li><li class="- topic/li li" data-ofbid="d242626e131__20250121171659">
<div class="- topic/p p" data-ofbid="d242626e133__20250121171659">对于 Linux 系统:<ol class="- topic/ol ol" type="a" id="usb_display_config_addon__ol_myq_sdg_c2c" data-ofbid="usb_display_config_addon__ol_myq_sdg_c2c"><li class="- topic/li li" data-ofbid="d242626e136__20250121171659">
<p class="- topic/p p" data-ofbid="d242626e138__20250121171659">在电脑桌面上,找到音量图标<img class="- topic/image image" id="usb_display_config_addon__image_c1m_12g_c2c" src="../../../images/usb-display/uac_linux_volume_symbol.png"/> 后,点击鼠标右键。</p>
</li><li class="- topic/li li" data-ofbid="d242626e143__20250121171659">
<div class="- topic/p p" data-ofbid="d242626e145__20250121171659">在弹出的菜单栏中,选择<span class="+ topic/ph ui-d/uicontrol ph uicontrol"> ArtInChip USB
Device</span> <span class="+ topic/ph ui-d/uicontrol ph uicontrol">
<br/><div class="imagecenter"><img class="- topic/image image imagecenter" id="usb_display_config_addon__image_sft_vdg_c2c" src="../../../images/usb-display/uac_linux.png" width="288"/></div><br/>
</span></div>
</li></ol></div>
</li></ul></div>
</li></ol></div>
</section><section class="- topic/section section" id="usb_display_config_addon__section_ezq_ttd_c2c" data-ofbid="usb_display_config_addon__section_ezq_ttd_c2c"><h2 class="- topic/title title sectiontitle">配置 USB MSC (U 盘) </h2>
<p class="- topic/p p" data-ofbid="d242626e164__20250121171659">如果 USB Display 产品需要附带 U 盘安装功能,需要在 USB 复合设备中增加一个 MSC 功能。</p>
<div class="- topic/p p" data-ofbid="d242626e167__20250121171659">在增加 MSC 功能后,当设备插入 PC 设备时:<ul class="- topic/ul ul" id="usb_display_config_addon__ul_pgm_xtd_c2c" data-ofbid="usb_display_config_addon__ul_pgm_xtd_c2c"><li class="- topic/li li" data-ofbid="d242626e170__20250121171659">
<p class="- topic/p p" data-ofbid="d242626e172__20250121171659">如果 PC 没有安装驱动,设备会自动模拟出一个 U 盘,存储 PC 驱动安装包。</p>
</li><li class="- topic/li li" data-ofbid="d242626e175__20250121171659">
<p class="- topic/p p" data-ofbid="d242626e177__20250121171659">当用户安装完驱动程序后, U 盘又会自动消失。</p>
</li></ul></div>
<p class="- topic/p p" data-ofbid="d242626e181__20250121171659">关于驱动的安装流程,可查看 <a class="- topic/xref xref" href="../app/usb-display-install-drive.html">安装驱动</a></p>
<div class="- topic/p p" data-ofbid="d242626e188__20250121171659">MSC 功能详细配置流程如下:<ol class="- topic/ol ol" id="usb_display_config_addon__ol_o5n_f5d_c2c" data-ofbid="usb_display_config_addon__ol_o5n_f5d_c2c"><li class="- topic/li li" data-ofbid="d242626e191__20250121171659">在 SDK 根目录,执行下列命令,进入 menuconfig
的功能配置界面:<pre class="+ topic/pre pr-d/codeblock pre codeblock language-c" id="usb_display_config_addon__codeblock_q3g_z5d_c2c" data-ofbid="usb_display_config_addon__codeblock_q3g_z5d_c2c">scons menuconfig</pre></li><li class="- topic/li li" data-ofbid="d242626e195__20250121171659">
<div class="- topic/p p" data-ofbid="d242626e197__20250121171659">配置 <code class="+ topic/ph pr-d/codeph ph codeph">/rodata</code>
分区。<pre class="+ topic/pre pr-d/codeblock pre codeblock language-c" id="usb_display_config_addon__codeblock_cvl_h5d_c2c" data-ofbid="usb_display_config_addon__codeblock_cvl_h5d_c2c">&gt; Application options ---&gt;
[*] Using File System Image <span class="hl-number">0</span> ---&gt;
Select File System Type (FATFS) ---&gt;
(packages/third-party/cherryusb/tools/aic_usbdisplay/) Data Directory
(rodata.fatfs) Image Name
[*] <strong class="hl-keyword">auto</strong> calcuate image size</pre></div>
<div class="- topic/p p" data-ofbid="d242626e205__20250121171659">MSC 功能的核心是将本地存储分区 <code class="+ topic/ph pr-d/codeph ph codeph">/rodata</code> 挂载成 USB MSC 设备,因此必须优先配置
<code class="+ topic/ph pr-d/codeph ph codeph">/rodata</code> 分区。<div class="table-container"><table class="- topic/table table frame-all" id="usb_display_config_addon__table_uqh_j5d_c2c" data-ofbid="usb_display_config_addon__table_uqh_j5d_c2c" 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">参数描述</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="usb_display_config_addon__table_uqh_j5d_c2c__entry__1">参数</th><th class="- topic/entry entry colsep-0 rowsep-1" id="usb_display_config_addon__table_uqh_j5d_c2c__entry__2">描述</th></tr></thead><tbody class="- topic/tbody tbody"><tr class="- topic/row"><td class="- topic/entry entry colsep-1 rowsep-1" headers="usb_display_config_addon__table_uqh_j5d_c2c__entry__1"><code class="+ topic/ph pr-d/codeph ph codeph">Using File System Image
0</code></td><td class="- topic/entry entry colsep-0 rowsep-1" headers="usb_display_config_addon__table_uqh_j5d_c2c__entry__2">配置文件系统镜像格式。</td></tr><tr class="- topic/row"><td class="- topic/entry entry colsep-1 rowsep-1" headers="usb_display_config_addon__table_uqh_j5d_c2c__entry__1"><code class="+ topic/ph pr-d/codeph ph codeph">Select File System Type</code></td><td class="- topic/entry entry colsep-0 rowsep-1" headers="usb_display_config_addon__table_uqh_j5d_c2c__entry__2">选择分区格式,如选择 FATFS则系统显示 <code class="+ topic/ph pr-d/codeph ph codeph">Select File System
Type (FATFS)</code></td></tr><tr class="- topic/row"><td class="- topic/entry entry colsep-1 rowsep-1" headers="usb_display_config_addon__table_uqh_j5d_c2c__entry__1"><code class="+ topic/ph pr-d/codeph ph codeph">(packages/third-party/cherryusb/tools/aic_usbdisplay/)
Data Directory</code></td><td class="- topic/entry entry colsep-0 rowsep-1" headers="usb_display_config_addon__table_uqh_j5d_c2c__entry__2">打包的文件夹,示例目录为
<span class="+ topic/ph sw-d/filepath ph filepath">(packages/third-party/cherryusb/tools/aic_usbdisplay/)
Data Directory</span>,用于存放驱动安装包文件。</td></tr><tr class="- topic/row"><td class="- topic/entry entry colsep-1 rowsep-1" headers="usb_display_config_addon__table_uqh_j5d_c2c__entry__1"><code class="+ topic/ph pr-d/codeph ph codeph">(rodata.fatfs) Image
Name</code></td><td class="- topic/entry entry colsep-0 rowsep-1" headers="usb_display_config_addon__table_uqh_j5d_c2c__entry__2">映像名为 <code class="+ topic/ph pr-d/codeph ph codeph">rodata.fatfs</code></td></tr><tr class="- topic/row"><td class="- topic/entry entry colsep-1 rowsep-0" headers="usb_display_config_addon__table_uqh_j5d_c2c__entry__1"><code class="+ topic/ph pr-d/codeph ph codeph">auto calcuate image size</code></td><td class="- topic/entry entry colsep-0 rowsep-0" headers="usb_display_config_addon__table_uqh_j5d_c2c__entry__2">自动计算镜像尺寸。</td></tr></tbody></table></div></div>
</li><li class="- topic/li li" data-ofbid="d242626e265__20250121171659">
<div class="- topic/p p" data-ofbid="d242626e267__20250121171659">在 menuconfig 中使能 CherryUSB 中 Audio 类型的 Device Class
驱动,并且使能对应实例模板:<pre class="+ topic/pre pr-d/codeblock pre codeblock language-c" id="usb_display_config_addon__codeblock_xwr_1vd_c2c" data-ofbid="usb_display_config_addon__codeblock_xwr_1vd_c2c">&gt; Local packages options
&gt; Third-party packages options
[*] CherryUSB: tiny and portable USB host/device stack <strong class="hl-keyword">for</strong> embedded system with USB IP ---&gt;
[*] Enable usb device mode ---&gt;
[*] Enable usb msc device ---&gt;
Use ram or storage template (msc storage) ---&gt;
MSC Storage Parameter ---&gt;
[*] USBDEV_MSC_THREAD
[*] USBD_MSC_STORAGE_USING_HOTPLUG
(/rodata) MSC_STORAGE_PATH
(<span class="hl-number">204800</span>) USBDEV_MSC_MAX_BUFSIZE</pre></div>
<div class="- topic/p p" data-ofbid="d242626e272__20250121171659">
<div class="table-container"><table class="- topic/table table frame-all" id="usb_display_config_addon__table_j45_lxd_c2c" data-ofbid="usb_display_config_addon__table_j45_lxd_c2c" 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"> 2</span><span class="table--title-label-punctuation">. </span></span><span class="table--title">参数描述</span></caption><colgroup><col style="width:36.90036900369004%"/><col style="width:63.09963099630996%"/></colgroup><thead class="- topic/thead thead"><tr class="- topic/row"><th class="- topic/entry entry colsep-1 rowsep-1" id="usb_display_config_addon__table_j45_lxd_c2c__entry__1">参数</th><th class="- topic/entry entry colsep-0 rowsep-1" id="usb_display_config_addon__table_j45_lxd_c2c__entry__2">描述</th></tr></thead><tbody class="- topic/tbody tbody"><tr class="- topic/row"><td class="- topic/entry entry colsep-1 rowsep-0" headers="usb_display_config_addon__table_j45_lxd_c2c__entry__1"><code class="+ topic/ph pr-d/codeph ph codeph">(/rodata)
MSC_STORAGE_PATH</code></td><td class="- topic/entry entry colsep-0 rowsep-0" headers="usb_display_config_addon__table_j45_lxd_c2c__entry__2">设置 USB MSC 挂载分区为 <code class="+ topic/ph pr-d/codeph ph codeph">/rodata</code>
</td></tr></tbody></table></div>
</div>
</li><li class="- topic/li li" data-ofbid="d242626e298__20250121171659">
<div class="- topic/p p" data-ofbid="d242626e300__20250121171659">使能 Display 类型的 Device Class 驱动,并且在 Composite Device
中使能相应配置。<pre class="+ topic/pre pr-d/codeblock pre codeblock language-c" id="usb_display_config_addon__codeblock_ftt_4xd_c2c" data-ofbid="usb_display_config_addon__codeblock_ftt_4xd_c2c">&gt; Local packages options
&gt; Third-party packages options
[*] CherryUSB: tiny and portable USB host/device stack <strong class="hl-keyword">for</strong> embedded system with USB IP ---&gt;
[*] Enable usb device mode ---&gt;
[*] Dynamic registration mode ---&gt;
[*] Use AIC USB Display dynamic registration
[*] Enable usb hid device ---&gt;
[*] Enable usb msc device ---&gt;
[*] Enable usb audio device ---&gt;
[*] Enable usb display device ---&gt;
-*- Enable composite device ---&gt;</pre></div>
<p class="- topic/p p" data-ofbid="d242626e305__20250121171659">MSC 需要动态的添加和删除,因此复合设备的配置方法略有不同。如上所示,添加了一个 <code class="+ topic/ph pr-d/codeph ph codeph">DISPLAY</code> +
<code class="+ topic/ph pr-d/codeph ph codeph">TP HID</code> + <code class="+ topic/ph pr-d/codeph ph codeph">UAC</code> +
<code class="+ topic/ph pr-d/codeph ph codeph">MSC</code> 的 USB 复合设备,且 <code class="+ topic/ph pr-d/codeph ph codeph">MSC</code>
会根据驱动安装情况动态出现。</p>
</li></ol></div>
</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="#usb_display_config_addon__section_bts_h2d_b2c" data-tocid="usb_display_config_addon__section_bts_h2d_b2c">配置 USB HID TP </a></div></li><li class="section-item"><div class="section-title"><a href="#usb_display_config_addon__section_v23_ffd_b2c" data-tocid="usb_display_config_addon__section_v23_ffd_b2c">配置 USB Audio (UAC) </a></div></li><li class="section-item"><div class="section-title"><a href="#usb_display_config_addon__section_ezq_ttd_c2c" data-tocid="usb_display_config_addon__section_ezq_ttd_c2c">配置 USB MSC (U 盘) </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-2024 广东匠芯创科技有限公司. All rights reserved.</p>
</div><div>
<div class="generation_time">
Update Time: 2025-01-21
</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>