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