RS232接口轉USB接口的通信方法
摘要:USB通用串行總線是計算機外設接口的發(fā)展趨勢,將逐漸取代PC機上的RS232協(xié)議串口,因此很多傳統(tǒng)的RS232接口設備都將面臨一個向USB接口轉換的問題。本文以IC卡門禁考勤系統(tǒng)為例,提出一種方案,使傳統(tǒng)的RS232接口轉化為USB接口后直接通過USB總線接入PC, 同時使IC卡門禁考勤設備增加了USB總線具有的熱插拔、自動配置和智能電源管理等功能;著重剖析USB通信內核,探討系統(tǒng)軟硬件設計方案。關鍵詞:USB 終端 人機接口設備(HID) 列舉
引 言
USB作為一種新的PC機互連協(xié)議,使外設到計算機的連接更加高效、便利。這種接口適合于多種設備,不僅具有快速、即插即用、支持熱插拔的特點,還能同時連接多達127個設備,解決了如資源沖突、中斷請求(IRQs)和直接數據通道(DMAs)等問題。因此,越來越多的開發(fā)者欲在自己的產品中使用這種標準接口。而RS232是單個設備接入計算機時,常采用的一種接入方式,其硬件實現簡單, 因此在傳統(tǒng)的設備中有很多采用了這種通信方式。 一般的IC卡門禁考勤系統(tǒng)也使用RS232接口與PC機通信。如果將USB技術應用于IC卡門禁考勤系統(tǒng)與PC機之間的數據通信,這樣,不僅能使IC卡門禁考勤設備具備USB通信的諸多優(yōu)點,而且對PC機而言還可以節(jié)余1個RS232串口為其它通信所用。
1 USB系統(tǒng)概述
USB規(guī)范描述了總線特性、協(xié)議定義、編程接口以及其它設計和構建系統(tǒng)時所要求的特性。USB是一種主從總線,工作時USB主機處于主模式,設備處于從模式。USB系統(tǒng)所需要的唯一的系統(tǒng)資源是,USB系統(tǒng)軟件所使用的內存空間、USB主控制器所使用的內存地址空間(I/O地址空間)和中斷請求(IRQ)線。USB設備可以是功能性的,如顯示器、鼠標或者集線器之類。它們可以作低速或者高速設備實現。低速設備最大速率限制在1.5 Mb/s,每一個設備有一些專有寄存器,也就是端點(endpoint)。在進行數據交換時,可以通過設備驅動間接訪問它。每一個端點支持幾種特殊的傳輸類型,并且有一個唯一的地址和傳輸方向。不同的是端點0 僅用作控制傳輸,并且其傳輸可以是雙向的。
系統(tǒng)上電后,USB主機負責檢測設備的連接與拆除、初始化設備的列舉過程,并根據設備描述表安裝設備驅動后自動重新配置系統(tǒng),收集每個設備的狀態(tài)信息。設備描述表標識了設備的屬性、特征并描述了設備的通信要求。USB主機根據這些信息配置設備、查找驅動,并且與設備通信。
典型的USB數據傳輸是由設備驅動開始的,當它需要與設備通信時,設備驅動提供內存緩沖區(qū),用來存放設備收到或者即將發(fā)送的數據。USB驅動提供USB設備驅動和USB主控制器之間的接口,并將傳輸請求轉化為USB事務,轉化時需要與帶寬要求及協(xié)議結構保持一致。某些傳輸是由大塊數據構成的,這時需要先將它劃分為幾個事物再進行傳輸。
具有相似功能的設備可以組成一類,這樣便于分享共有的特性
[1] [2] [3] [4]