CH549虛擬3個設(shè)配的問題?

目前我用的官方DEMO:

* File Name? ? ? ? ? : CompositeKM.C

* Author? ? ? ? ? ? ?: WCH

* Version? ? ? ? ? ? : V1.0

* Date? ? ? ? ? ? ? ?: 2018/08/15

我虛擬鍵盤鼠標(biāo),由于是虛擬出來的設(shè)配最終是要向windows移動鼠標(biāo)鍵盤的。所以我開發(fā)了windows由于USB通信的代碼。

現(xiàn)在的問題是:

? ? 我windows同過writefile寫數(shù)據(jù)到USB后,我能收到:case UIS_TOKEN_OUT | 3:? ?但我寫的代碼卻收不到收據(jù):

目前,我在DEMO的基礎(chǔ)上虛擬出第3個設(shè)配來與windows通信了。

收數(shù)據(jù)的緩沖我是這樣寫的:

UINT8X? Ep3Buffer[MIN(64,ENDP3_IN_SIZE+2)+MIN(64,ENDP3_OUT_SIZE+2)] _at_ (MIN(64,THIS_ENDP0_SIZE+2)+MIN(64,ENDP1_IN_SIZE+2)+MIN(64,ENDP2_IN_SIZE+2));


初始化時這樣寫的:

void USBDeviceInit()

。。。

? ? UEP3_DMA = Ep3Buffer;? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??

? ? UEP2_3_MOD = UEP2_3_MOD & ~bUEP3_BUF_MOD | bUEP3_TX_EN;? ? ? ? ? ??

。。。



在DeviceInterrupt過程中能收到回調(diào):

。。。

? ? ? ? case UIS_TOKEN_OUT | 3:

? UEP3_CTRL ^= bUEP_R_TOG;? ? //手動翻轉(zhuǎn)同步標(biāo)志位

? ? ? ? ? ? //if ( U_TOG_OK )? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?// 不同步的數(shù)據(jù)包將丟棄

? ? ? ? ? ? {

? ? ? ? len = USB_RX_LEN;? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?//接收數(shù)據(jù)長度,數(shù)據(jù)從Ep2Buffer首地址開始存放

? ? ? ? ? ? ? ? DevEP3_OUT_Deal( len );? ?這里面打印出來的Ep3Buffer? ?數(shù)據(jù)不對。

? ? ? ? ? ? }


。。。。。。



我的問題是:


我如何才能收到windows那邊傳過來的數(shù)據(jù)。Ep3Buffer設(shè)計不對還是初始化那里不對。我用573是可以完全交互的。

? ? ? ??

個人信息保護,已隱藏

參考一下venderdevice例程的端點2收發(fā),電腦上可以嘗試用bushound對端點進行數(shù)據(jù)收發(fā)


OK ,已經(jīng)解決。


只有登錄才能回復(fù),可以選擇微信賬號登錄

国产91精品新入口,国产成人综合网在线播放,九热这里只有精品,本道在线观看,美女视频a美女视频,韩国美女激情视频,日本美女pvp视频