<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 手機與無(wú)線(xiàn)通信 > 設計應用 > C8051F340的USBXpress開(kāi)發(fā)包USB通信設計

C8051F340的USBXpress開(kāi)發(fā)包USB通信設計

作者: 時(shí)間:2010-08-09 來(lái)源:網(wǎng)絡(luò ) 收藏

_PwAttributes,BYTE型,用于供電配置。如果設備自己供電第6位置“1”,若為總線(xiàn)供電則為“O”。如果設備提供弱上拉作用,第5位置“l(fā)”,位0~4必須為“O”,位7必須為“1”。
_bcdDevice,無(wú)符號int型,用BCD碼表示設備的版本號,如2.13版為Ox0213。
(2)中斷函數
設備端USB中API函數的功能,都在一個(gè)中斷模塊里面實(shí)現,為此必須提供一個(gè)中斷向量。其中,0x008B(Interrupt 17)是F34X設備的中斷向量。在main函數中,只有允許了USB中斷(調用USB Int Enable函數),才能進(jìn)入中斷。一旦進(jìn)入中斷服務(wù)程序,必須先獲得中斷標志(調用Get_Interrupt_Source函數,返回BYTE型中斷標志),后續操作根據獲得的中斷標志值與工具包自定義的中斷標志值判斷執行。自定義的中斷標志值主要有:USB_RESET(復位中斷)、TX_COMPLETE(發(fā)送完成中斷)、RX_COMPLETE(允許接收中斷)、DEVICEOPEN(設備實(shí)例在主機端打開(kāi))、DEVICE SUSPEND(延緩信號)等。
中斷函數如下:

本文引用地址:http://dyxdggzs.com/article/157255.htm

在main函數中進(jìn)行初始化之后,若中斷允許,通過(guò)函數Block_write來(lái)發(fā)送數據,發(fā)送數據的字節數不能超過(guò)4096。發(fā)送結束后將觸發(fā)中斷,從而進(jìn)入中斷服務(wù)程序進(jìn)行判斷操作。如果主機端向設備端的Buffer寫(xiě)入數據完成,也將觸發(fā)中斷,判斷執行Block_Read操作將Buffer中的數據存入指定的存儲單元。
發(fā)送數據的函數原型為:Block_write(數據存儲單元首地址,發(fā)送的字節數)。
(3)主機端USB應用程序
在VC++6.O編譯環(huán)境下開(kāi)發(fā)主機端的USB應用程序,需要注意在編譯之前向工程中添加提供的SiUSBXp.dll、SiUSBXp.h和SiUSBXp.lib文件。
為了能讓主機端識別USB設備并與之,在運行應用程序之前,要安裝主機端的驅動(dòng)程序(已提供)。安裝了驅動(dòng)程序,主機端才能識別USB設備,在設備管理器中可以找到USB設備的相關(guān)描述信息。
對USB設備的描述信息,除了可以修改設備端發(fā)送過(guò)來(lái)的描述符之外,還可以修改在主機端驅動(dòng)安裝目錄下*.inf文件中的信息。

結語(yǔ)
本文詳細介紹了USB通信的開(kāi)發(fā)過(guò)程、電路和設備端的驅動(dòng),簡(jiǎn)單說(shuō)明了在主機端應用的條件設置。所有設計思路和方法都通過(guò)了實(shí)驗驗證,可以直接用于工程項目開(kāi)發(fā)。通過(guò)此方法,程序員可以很容易地進(jìn)行一系列USB通信應用的設計和編程。


上一頁(yè) 1 2 3 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>