在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

怎樣理解Gadget框架

麥辣雞腿堡 ? 來源:嵌入式Linux系統開發 ? 作者:嵌入式Linux系統開 ? 2023-07-13 11:18 ? 次閱讀

USB 協議是主從結構:

圖片

左邊主機,右邊從機;USB 有主機控制器 UHC 和從機控制器 UDC,主機側有 USB Device Driver,從機側有 USB
Function Driver。

意思是說,一個開發板,可以當 USB 主機,接鼠標、鍵盤等從機;一個開發板也可以當 U 盤,接入 PC
電腦,此時開發板是從機。因此,我們要掌握兩套驅動框架。這是 Linux 下 USB 相對于 I2C、SPI 復雜的地方,I2C 等根本不會考慮主控 Soc
作為從機的情況,但 USB 需要考慮。

本文主要針對主控 Soc 作為 USB 從機的情況,Linux 為其提供了 Gadget 框架。

編寫 USB 設備驅動程序時,主要是:

讀取設備的各類描述符,比如 endpoint 描述符,得到端點號

使用底層 USB Host Controller 驅動程序提供的 API 函數,從 endpoint 上讀寫數據

基于 Gadget 驅動框架模擬一個 USB 設備時,endpoint 的數據傳輸能力是底層的 USB Device Controller
驅動提供的,我們要做的就是:

提供各類設備描述符

使用底層 USB Device Controller 驅動程序提供的 API 函數,從 endpoint 得到數據、反饋數據

Gadget 的含義是“小器件”,在 Linux 的 USB 系統中,它表示“usb device”。Gadget 驅動程序,就是用來模擬 USB
Device。對于真實的 USB Device,它有兩大要素:

怎么表示自己?

每個 USB Device 都有 1 個設備描述符

都 1 個或多個配置描述符

每個配置描述符里面有 1個 或多個接口描述符

每個接口描述符里面有 0 個多個端點描述符

怎么進行數據傳輸?

通過端點進行傳輸

有端點的操作函數

圖片

在學習過程中,記住這幾個要點非常有幫助:

各類描述符的構造

USB Host 獲得 Gadget 各類描述符的過程

數據傳輸的流程

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 嵌入式
    +關注

    關注

    5086

    文章

    19143

    瀏覽量

    306041
  • Linux
    +關注

    關注

    87

    文章

    11315

    瀏覽量

    209812
  • 框架
    +關注

    關注

    0

    文章

    403

    瀏覽量

    17510
收藏 人收藏

    評論

    相關推薦

    請問對話框和框架控件之間的關系該怎么理解?

    理解對話框就是框架控件中放置了一些其他小控件(比如Botton)。是不是這樣理解?謝謝!
    發表于 09-12 04:35

    Intel Power Gadget支持baytrail平臺嗎?

    Intel Power Gadget支持baytrail平臺嗎?
    發表于 08-22 21:06

    Modbus程序框架流程是怎樣

    什么是Modbus協議?Modbus程序框架流程是怎樣的?
    發表于 10-20 07:13

    RK3288使用USB GADGET實現大容量存儲腳本

    (){mount -t configfs none /sys/kernel/configmkdir /sys/kernel/config/usb_gadget/rockchip -m
    發表于 11-18 16:33

    怎樣理解阻抗匹配?

    怎樣理解阻抗匹配? 阻抗匹配是指信號源或者傳輸線跟負載之間的一種合適的搭配方式。阻抗匹配分為低頻和高頻兩種情況討論。
    發表于 11-30 10:30 ?1484次閱讀

    怎樣理解EMC電路

    怎樣理解EMC電路 電磁兼容設計通常要運用各項控制技術,一般來說,越接近EMI源,實現EM控制所需的成本就越小。PCB上的集成電路芯
    發表于 04-09 18:02 ?2155次閱讀

    RS亞太首發Gadget Renesas開發套件

      全球領先的電子與維修產品高端服務分銷商、Electrocomponents plc 集團公司(LSE:ECM)的貿易品牌 RS Components 公司今天宣布,將于其亞太區電子商務平臺開始銷售 Gadget Renesas 。Gadget R
    發表于 11-27 09:07 ?1041次閱讀

    工具SemExpr可實現gadget搜索與語義分析

    代碼重用攻擊的實施過程較為繁雜,通常需要一些工具輔助人工來完成 gadget序列的構建,但現有的自動化構建工具效率較低。在分析 Ropper、 angrop和BoPC等典型開源 gadget工具語義
    發表于 03-12 14:52 ?20次下載
    工具SemExpr可實現<b class='flag-5'>gadget</b>搜索與語義分析

    [嵌入式linux]將linux板卡虛擬為USB網卡設備(Ethernet Gadget

    kernel menuconfig-> Device Drivers ->USB support -> USB Gadget Support 建議最好選成M,作為內核驅動模塊,便于
    發表于 11-02 11:36 ?12次下載
    [嵌入式linux]將linux板卡虛擬為USB網卡設備(Ethernet <b class='flag-5'>Gadget</b>)

    怎樣理解各種電機之間的區別?

    電機本來種類就多,命名也比較混亂,怎樣理解各種電機之間的區別?下面這些電機,看了是不是有點兒頭大,每種都能弄個明白嗎?
    發表于 03-13 18:00 ?2171次閱讀

    AMD Xilinx Linux 2022.1 USB Gadget使用

    有客戶使用Linux中的USB Gadget功能,把MPSoC器件做USB從設備
    的頭像 發表于 07-07 14:15 ?717次閱讀

    USB Gadget serial應用實例(上)

    1. 硬件體驗 使用 Linux 自帶的 USB Gadget 驅動 /drivers/usb/gadget/legacy/serial.c 使用 USB 線,連接板子的 OTG 口和 PC
    的頭像 發表于 07-13 11:06 ?2898次閱讀
    USB <b class='flag-5'>Gadget</b> serial應用實例(上)

    USB Gadget zero應用實例程序

    /usb/gadget/legacy/zero.c】。 應用程序編程框架如下: 找到設備 選擇配置:zero.c 提供了兩種配置,loopback、sourcesink 得到端點:找到
    的頭像 發表于 07-13 11:14 ?1113次閱讀
    USB <b class='flag-5'>Gadget</b> zero應用實例程序

    從硬件軟件角度理解Gadget框架

    2. 從硬件軟件角度理解 Gadget 框架 USB 傳輸的核心是 endpoint,使用 endpoint 可以收發數據。在 endpoint 之上,就可以模擬 USB 串口、USB 觸碰屏
    的頭像 發表于 07-13 11:32 ?1121次閱讀
    從硬件軟件角度<b class='flag-5'>理解</b><b class='flag-5'>Gadget</b><b class='flag-5'>框架</b>

    從獲取描述符的角度理解Gadget框架

    安裝好 gadget 驅動程序后(比如 modprobe g_zero), 它只是構造好了各類描述符。在設備的枚舉過程會讀取描述符。 使用 OTG 線連接電腦和開發板時,電腦軟件會執行如下
    的頭像 發表于 07-13 11:38 ?958次閱讀
    從獲取描述符的角度<b class='flag-5'>理解</b><b class='flag-5'>Gadget</b><b class='flag-5'>框架</b>
    主站蜘蛛池模板: 97综合| 欧美成人性色| 久久午夜免费视频| 成年人黄色大片大全| 免费一级欧美片在线观看| 五月天婷婷激情| yy8090韩国日本三理论免费| 天天操夜夜操狠狠操| 91色视频网站| 免费在线播放毛片| 老色鬼久久综合第一| 日本aaaa| 色婷婷综合网| 亚洲爽爽网站| 久久99热精品| 视频免费1区二区三区| 5566成人| 国产黄色在线| 国产在线黄| 女主播扒开内衣让粉丝看个够 | 婷婷亚洲视频| 日本黄色激情视频| 国产三级网| 国产婷婷色一区二区三区深爱网| 国产成人精品曰本亚洲77美色| 国产www色| 天天看天天做| 日本一级黄色毛片| 日本一级大片| 男人和女人做爽爽视频在线观看 | 狠狠操影院| 国产单男| bt天堂在线www种子搜索| 成人欧美精品大91在线| 福利视频一区二区微拍堂| 午夜视频在线观看网站| 天堂中文在线最新版地址| 久色乳综合思思在线视频| 在线免费一区| 在线免费成人网| 香蕉黄色网|