時間:2011-10-14 09:46:16來源:xuliyuan
USB是一種協議總線,即主機與設備之間的通信需要遵循一系列約定。主機控制器初始化所有的數據傳輸。這種通信USB接口包括RS232接口,RS485接口適合于多種設備,而USB接口具有快速、即插即用、支持熱插拔的特點,因此在越來越多的產品中我們都能看見USB的影子。RS232是單個設備接入計算機時,常采用的一種接入方式,它的硬件實現比較簡單。那如何實現RS232接口轉USB接口的通信呢,我們以門禁系統為例來分析一下。
為了實現IC卡門禁考勤系統中RS232-USB的接口轉換,需要1臺支持USB的主機,同時還要提供主機上用于與外設通信的驅動,一般由操作系統提供。此外,還需開發在主機上執行的客戶端應用程序。
主機必須能夠通過設備驅動接收USB數據,并且使這些數據對處理這些請求的應用程序有效。在主機中必須有一個驅動負責處理USB傳輸、辨識設備、向USB設備收發數據;同 時,還需要有一個設備驅動-虛擬化串行口,仿效真實的串口。這個驅動必須能夠像真實的串口接收和發送USB數據。
在定義即將使用的微控制器時,必須說明一些通信接口(RS232接口轉換器)要求,如:通信速率、頻率、傳輸的數據量等。考慮到IC卡門禁考勤系統有效的通信速率,可以把轉換器作為一個低速的設備使用,低速設備通信速度可以在10~100 Kb/s的范圍變化。考慮到傳輸的數據量和傳輸的頻率, 此系統中使用中斷的傳輸類型。中斷傳輸可以在2個方向進行,但不能同時進行,這種類型的傳輸要求在規定的時間里完成相當大數據量的傳輸任務。
從門禁考勤系統接收數據的過程是利用端點1完成的。端點1配置為1個中斷輸入端點,當有1個起始位到達引腳時,GPIO中斷必須打開,并關閉所有其它類型中斷。 設計中通過使用1個Get_Serial線程來收集I/O引腳發出的串行數據,并把它存入數據緩沖區。 同時該線程負責檢驗接收到的起始位和停止位的正確性。當收到8個字節時,將接收緩沖區中的數據復制到終端1的緩沖區,并且允許微處理器響應中斷輸入請求。
考慮到一般串行口的有效波特率的范圍在300~19 200 bps, 我們按處于最大波特率19 200 bps 的情況來考慮, 傳輸1個字符需要時間接近0.75 ms;而1個輸入中斷大約每10 ms送1個8字節的數據包,因此,設計1個128字節的快速數據緩沖區便可以保證不會丟失數據。因此在選擇相關的接口產品(USB接口轉換器、R485接口轉換器)是非常重要的。
標簽:
中國傳動網版權與免責聲明:凡本網注明[來源:中國傳動網]的所有文字、圖片、音視和視頻文件,版權均為中國傳動網(www.siyutn.com)獨家所有。如需轉載請與0755-82949061聯系。任何媒體、網站或個人轉載使用時須注明來源“中國傳動網”,違反者本網將追究其法律責任。
本網轉載并注明其他來源的稿件,均來自互聯網或業內投稿人士,版權屬于原版權人。轉載請保留稿件來源及作者,禁止擅自篡改,違者自負版權法律責任。
產品新聞
更多>2025-06-06
2025-05-19
2025-04-30
2025-04-11
2025-04-08
2025-03-31