C8051F340的USBXpress開(kāi)發(fā)包USB通信設計
傳統的USB設備驅動(dòng)程序編寫(xiě)異常復雜,程序員往往很難入手。Silicon Laboratories公司提供的USBXpress開(kāi)發(fā)包大大簡(jiǎn)化了USB通信的應用和相關(guān)驅動(dòng)程序的開(kāi)發(fā),只要做好開(kāi)發(fā)前的準備工作,USBXpress開(kāi)發(fā)包完全可以實(shí)現USB通信的所有功能。本文介紹USB通信開(kāi)發(fā)的全過(guò)程,以及在開(kāi)發(fā)過(guò)程中需要注意的事項。(主要針對設備端USB通信進(jìn)行講解)
本文引用地址:http://dyxdggzs.com/article/157255.htm1 USBXpress簡(jiǎn)介
由Silicon Laboratories公司推出的USBXpress開(kāi)發(fā)包涵蓋了主機端和設備端的所有函數功能,支持C8051F32X、C8051F34X和CP210X設備的USB通信。USBXpress開(kāi)發(fā)包中包含主機端的設備驅動(dòng)、主機端設備驅動(dòng)安裝程序、主機端的動(dòng)態(tài)鏈接庫(DLL)和設備端的函數庫文件。
設備端的函數庫文件提供了支持C805IF32X和C8051F34X設備USB通信的API函數,這些函數可以在Keil uVision3編譯環(huán)境下被編譯通過(guò)。編譯前需要在工程中添加相關(guān)的文件,詳見(jiàn)下文。
設備端函數庫中主要的API函數如下:
USB Clock Start() -初始化USB時(shí)鐘
USB Init() -USB接口初始化
Block Write() -向Buffer中寫(xiě)數據
Block Read() -從Buffer中讀數據
Get Interrupt Source() -獲取API函數的中斷標志值
USB Int Enable() -允許API函數中斷
USB Int Disable() -不允許API函數中斷
USB Disable() -不允許USB接口通信
USB Suspend() -延緩USB中斷
2 設備端的電路設計
(1)USB插座引腳識別
在沒(méi)備端電路設計的過(guò)程中,對USB插座引腳必須對應連接,否則將直接影響到與主機端的通信。USB插座一般分為A型插座和B型插座,如圖1所示,其引腳說(shuō)明如表1所列。
相關(guān)推薦技術(shù)專(zhuān)區
|
評論