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

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

3天內不再提示

基于CH375A控制芯片實現USB雙模式接口的設計

電子設計 ? 來源:電子技術 ? 作者:熊雪暉 ? 2021-05-05 13:54 ? 次閱讀

1 設計背景

隨著嵌入式處理器設計功耗的降低,越來越多的設備朝著小型化和集成化發(fā)展,而外形的精簡和功能的增加對外圍接口功能的兼容性和通用性提出了新的要求,如何在有限的空間內通過最少的外圍接口實現最多的功能是嵌入式系統(tǒng)設計面臨的新課題之一。與研發(fā)新的通信協議相比,充分利用現有接U的多種通信模式更具有現實意義。本文提出一種針對USB接口工作模式復用的設計思路和實現方法。

2 雙模式接口的設計原理

通用串行總線(USB)接LJ是當前應用領域最為廣泛的接口之一,主要優(yōu)點是速度快、功耗低,支持熱插拔和具有良好的兼容性。根據USB通信協議的設計,USB接口支持雙向通信,但只能有一個主控端對通信過程進行控制,因此USB設備存在兩種工作模式:USB.Host模式和USB.Device模式。

工作于USB—Host模式的設備包含USB主控器,并且能夠控制完成主機和USB設備之間的數據傳輸,USB系統(tǒng)的數據和命令的傳輸都是由USB—Host設備來啟動的,常見的有計算機以及其他具有USB主控芯片的設備。而工作于USB-Device模式的設備則可分為USB集線器和USB功能設備兩種。常見的u盤、MP3和移動硬盤都是USB功能設備。每個USB功能設備內部都包含有描述其功能和資源需求的配置信息,USB.Host設備必須在使用前對其進行配置。兩種模式的通信交互模式如圖1所示。

在傳統(tǒng)的數據通信應用中由于設備功能單一,固定地將接口設定為Host或者Device能夠滿足實際需求,但在嵌入式系統(tǒng)的應用中往往會出現既需要訪問USB設備,又需要和計算機進行通信的情況,這就需要在同一個接口上實現Host和Device兩種工作模式。

3 雙工作模式的設計實現

3.1硬件設計

設計選用同時支持USB.Host和USB.Device模式的CH375A作為接口控制芯片,該芯片具有8位雙向數據總線和完整的讀寫、片選控制信號,具有全速USB—Host主機接口,支持動態(tài)切換主機與設備方式,兼容USB2.0協議。

在USB.HostI作模式下,CH375A提供了串行通信方式,通過串行輸入、輸出和中斷輸出與嵌入式主控芯片相連;在USB.DeviceT作模式下,CH375A內置了USB通信中的底層協議,可以采用方便的內置固件模式,也可以采用靈活的外置固件模式,完全滿足設計需求。

由于物理接口是復用的,連接時采用并行數據接口與主控芯片通信。兩種模式不能同時工作,而接口不能自動識別接入設備的工作模式,因此主從設備識別需要由嵌入式主控芯片根據外部輸入來識別。硬件連接圖如圖2所示。

一圖中輸入輸出接口符號均為CH375A與主控芯片互連的信號,為增強USB信號強度,設計電路時對差分信號采用等長走線,并串接共模電感以減小串擾。

3.2軟件設計

設備上電時默認處于”未啟用的USB設備”方式,需要主控芯片根據外部輸入指定新的工作模式。當設備工作于USB.Host模式時,需要主動地對接入的設備進行檢測和初始化,具體流程如圖3所示。

程序采用查詢方式檢測設備接入,檢測到設備的存在后首先獲取設備中斷狀態(tài)并清空中斷請求,初始化設備并查詢該設備的存儲特性,最后獲取設備容量信息并對設備進行讀寫操作。部分功能函數代碼如下:

CheckExist(); //測試CH375A工作狀態(tài);

SetUSBMode(USB MODE5); //設置CH375A工作于Host模式;

GetUSBStatus(); //初始化中斷狀態(tài);

USB_DISK_INIT(); //初始化USB設備;

USB_DISK_INQUIRY() //查詢USB存儲設備的特性

GetUSBDiskSize(); //獲取設備容量;

。..

WriteUSBCmd(int8 x); //向設備寫入命令;

WriteUSBData(int8 x); //向設備寫入數據;

。..

當設備工作于USB.Device模式時,設備本身就成為一個需要主機控制的USB設備,在接入上位機后流程如圖4所示。

此時設備與上位機的通信方式采用請求加應答方式,由上位機主動請求數據,設備被動地應答上傳數據。部分功能函數代碼如下:

USB_Reset_ALL(): //設備復位;

CheckExist(); 測試CH375A工作狀態(tài);

SetUSBMode(USB_MODE2); //設置CH375A工作于內部固件Device模式;

GetUSBStatus(); //初始化中斷狀態(tài):

USB Open Device(); //通信之前必須先打開設備:

USB_GetFirmwareInfo(); //獲取調試固件程序版本,并取消未完成的上傳數據塊

。..

當設備需要在Host模式和Device模式中進行切換時,由主控芯片接受外部輸入的模式切換信號,然后向CH375A發(fā)送模式轉換命令,流程如圖5所示。

在不同模式之間切換,首先要切換至“未啟用的USB設備”模式,即上電復位后的默認模式。在經過一定的延時之后,再切換到所需的工作模式,如考慮進一步確保系統(tǒng)的穩(wěn)定性還可在延時之前加入復位命令。具體功能函數如下:

SetUSBMode(USB_MODE0); //設置CH375A為未啟用設備模式;

Delay(1000): //延時

SetUSBMode(USB_MODEn);//設置CH375A為目標模式;

。..。

4 結束語

實踐證明,按照程序所規(guī)定的流程對USB接口進行配置在調試板上工作正常,在兩個模式切換的過程中沒有產生任何錯誤。由于芯片限制,此系統(tǒng)目前只能工作在USB1.1模式下,如何進一步提高兩種工作模式下的數據傳輸速率將是下一步研究的重點。

作者簡介:

熊雪暉(1984-),男,61938部隊,助理工程師,研究方向:嵌入式系統(tǒng)設計與數據安全。聯系地址:北京市海淀區(qū)半壁街南路2號,中國人民解放軍61938部隊數據備份室(100089)。

責任編輯:gt

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

    關注

    68

    文章

    18927

    瀏覽量

    227232
  • 芯片
    +關注

    關注

    450

    文章

    49636

    瀏覽量

    417178
  • 嵌入式
    +關注

    關注

    5046

    文章

    18817

    瀏覽量

    298568
收藏 人收藏

    評論

    相關推薦

    USB總線接口芯片CH375

    CH375是一個USB總線的通用接口芯片,支持USB-HOST主機方式和USB-DEVICE/S
    發(fā)表于 03-08 14:28

    USB藍牙雙模式背光鍵盤

    切換。功能特點:?USB藍牙雙模式工作實時切換 ?最多可連接255個藍牙計算設備。 ?多色背光?6鍵盤無沖設計 ?29個功能熱鍵?Broadcom藍牙3.0 ?輕薄設計:4.0 mm厚度, 220g重?450mA電池`
    發(fā)表于 02-22 14:16

    【Rico Board申請】雙模式智能機器人

    。雙模式智能機器人的設計:模式一、無人導航,加入模糊神經網絡的蔽障算法實現自動蔽障。二、遙控模式,基于無線遙控模塊(預計使用藍牙),完成遙控導航。4。硬件模塊預計主要會涉及:藍牙、超聲
    發(fā)表于 10-20 15:50

    基于雙模式USB接口的便攜式比色計設計

    CH375支持 5V和 3.3V電源電壓和低功耗模式。2.雙模式USB接口硬件電路設計2.1 USB
    發(fā)表于 11-20 11:18

    采用CH375接口電路實現LPT-USB打印機驅動器設計

    單片機通過CH375控制USB打印機的硬件電路。CH375通過被動并行接口電路掛接到8位單片機的系統(tǒng)總線上,
    發(fā)表于 06-18 05:00

    請問USB控制芯片CH376 CH375的休眠模式下電流有多少?

    請問USB控制芯片 CH376 CH375 的休眠模式下電流有多少有沒有人回答我一下,我看官方手
    發(fā)表于 07-14 06:02

    基于CH375多通道USB接口與PC機通信的實現

    利用USB接口技術,采用USB模塊CH375,在加速器核輻射監(jiān)測系統(tǒng)中實現了多個探測通道USB
    發(fā)表于 06-26 08:51 ?39次下載

    CH375中文資料,pdf datasheet(USB總線接口芯片)

    CH375 是一個USB總線的通用接口芯片,支持USB-HOST主機方式和USB-DEVICE/
    發(fā)表于 07-22 11:07 ?300次下載

    USB接口芯片CH375的原理及應用

    USB接口芯片CH375的原理及應用:對USB 接口芯片
    發(fā)表于 09-20 18:07 ?133次下載

    基于雙模式USB接口的便攜式比色計設計

    本文設計一種以C8051F020 單片機為處理器,雙模式USB接口的比色計儀器。該儀器可以工作在USB 設備和主機兩種模式。在設備
    發(fā)表于 01-07 14:23 ?23次下載

    The MathWorks雙模式混合動力總成系統(tǒng)

    The MathWorks雙模式混合動力總成系統(tǒng)  The MathWorks 宣布,通用汽車公司 (GM) 已使用 The MathWorks 的基于模型的設計 (Model-Based Design) 工具開發(fā)出雙模式混合動力總成
    發(fā)表于 11-26 17:50 ?652次閱讀

    基于雙模式USB接口的便攜式比色計設計

    基于雙模式USB接口的便攜式比色計設計   引言:   目前市場上的光電比色計一般都是通過 RS232串口與計算機通信,隨著計算機技術的發(fā)展,這種接口實現
    發(fā)表于 02-22 09:29 ?1140次閱讀
    基于<b class='flag-5'>雙模式</b><b class='flag-5'>USB</b><b class='flag-5'>接口</b>的便攜式比色計設計

    USB接口芯片CH375與單片機的接口電路

    USB 接口選擇南京沁恒電子公司研發(fā)的USB 接口芯片CH
    發(fā)表于 03-22 15:52 ?7724次閱讀
    <b class='flag-5'>USB</b><b class='flag-5'>接口</b><b class='flag-5'>芯片</b><b class='flag-5'>CH375</b>與單片機的<b class='flag-5'>接口</b>電路

    USB總線通用接口芯片CH375對比色計儀器的設計

    CH375是一種USB總線的通用接口芯片,支持 USB-HOST主機方式和 USB-DEVICE
    發(fā)表于 07-17 15:21 ?2138次閱讀
    <b class='flag-5'>USB</b>總線通用<b class='flag-5'>接口</b><b class='flag-5'>芯片</b><b class='flag-5'>CH375</b>對比色計儀器的設計

    沁恒股份USB總線接口芯片:CH375概述

    CH375 是一個USB總線的通用接口芯片,支持USB-HOST主機方式和USB-DEVICE/
    的頭像 發(fā)表于 11-01 11:16 ?2548次閱讀
    沁恒股份<b class='flag-5'>USB</b>總線<b class='flag-5'>接口</b><b class='flag-5'>芯片</b>:<b class='flag-5'>CH375</b>概述