C8051F340的USBXpress開(kāi)發(fā)包USB通信設計
基于C8051F340的USB通信電路如圖2所示。
(3)USB通信電路說(shuō)明
①電路中的D-和D+不應連接其他負載電路,因為任何負載將影響數據線(xiàn)路上的電流,從而影響數據傳輸,直接后果將導致主機端無(wú)法識別設備。
②JTAG口線(xiàn)中的VDD引腳為+3 V輸入,輸入電壓過(guò)大將損壞器件。USB插口引腳與C8051F340引腳應對應連接,不要有誤。
③C8051F340的VBUS、REGIN和VDD引腳的連接有多種方式(穩壓器配置),詳見(jiàn)表2。
3 設備端的驅動(dòng)程序設計
在Keil uVision3編譯環(huán)境下,用USBXpress 工具包中的API函數設計設備端的USB通信,前提是在工程中添加C8051F340.h、USB_API.h和USBX_F34X.LIB文件(USBXpress工具包提供相關(guān)文件)。
下面介紹設備端USB的數據傳輸。在進(jìn)行數據傳輸之前,必須對USB時(shí)鐘和USB接口初始化:
(1)USB接口初始化參數定義
①USB_VID,16位二進(jìn)制賣(mài)主ID號,一般用SiliconLab的ID號(OXl0C4)。
②USB_PID,16位二進(jìn)制產(chǎn)品ID號,一般USBXpress規定為OXEA61。
③USB_MfrStr,BYTE型指針,指向描述廠(chǎng)商的字符串,不能為空。
若定義BYTE USB MfrStr[]={},數組中第1個(gè)數說(shuō)明數組中元素的個(gè)數(元素個(gè)數=字符串元素個(gè)數*2+2),第2個(gè)數說(shuō)明字符串描述符的類(lèi)型,0起間隔作用。以下的字符串定義同上。
④USB_ProductStr,BYTE型指針,指向描述產(chǎn)品的字符串,不能為空。
⑤USB_SerialStr,BYTE型指針,指向描述序列號的字符串,不能為空。
⑥USB_MaxPower,BYTE型,說(shuō)明總線(xiàn)最大電流,極限為500 mA。若取值0x32,則表示最大電流為100 mA。
評論