CH554 端點4 使能后設(shè)備無法識別

我這邊需要用到端點4,但是只要 將? UEP4_1_MOD |= bUEP4_TX_EN;? usb設(shè)備就無法識別.

如果屏蔽此行則可以識別到設(shè)備。

請幫忙看看,或者是否可以提供下用到端點4的demo 參考下??



void CTouchDeviceInit()

{

IE_USB = 0;

USB_CTRL = 0x00;? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? // 先設(shè)定模式

UDEV_CTRL = bUD_PD_DIS;? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?// 禁止DP/DM下拉電阻

? UDEV_CTRL &= ~bUD_LOW_SPEED;? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?//選擇全速12M模式,默認(rèn)方式

? USB_CTRL &= ~bUC_LOW_SPEED;

? UEP0_DMA = Ep0Buffer;? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?//端點0數(shù)據(jù)傳輸?shù)刂?/p>

?// UEP4_1_MOD &= ~(bUEP4_RX_EN | bUEP4_TX_EN);? ? ? ? ? ? ? ? ? ? ?//端點0單64字節(jié)收發(fā)緩沖區(qū)

? ??

? UEP1_DMA = Ep1Buffer;? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?//端點1數(shù)據(jù)傳輸?shù)刂?/p>

? UEP4_1_MOD = UEP4_1_MOD & ~bUEP1_BUF_MOD | bUEP1_TX_EN;? ? ? ? ?//端點1發(fā)送使能 64字節(jié)緩沖區(qū)

UEP2_DMA = Ep2Buffer;? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?//端點2數(shù)據(jù)傳輸?shù)刂?/p>

? UEP2_3_MOD = UEP2_3_MOD & ~bUEP2_BUF_MOD | bUEP2_TX_EN;? ? ? ? ?//端點2發(fā)送使能 64字節(jié)緩沖區(qū)

UEP3_DMA = Ep3Buffer;? ? ? ?

UEP2_3_MOD |= bUEP3_TX_EN;? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //端點3發(fā)送使能

? UEP2_3_MOD |= bUEP3_RX_EN;? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //端點3接收使能

UEP2_3_MOD &= ~bUEP3_BUF_MOD;? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?//端點3收發(fā)各64字節(jié)緩沖區(qū)

//? UEP3_CTRL = bUEP_AUTO_TOG | UEP_T_RES_NAK | UEP_R_RES_ACK;? ? //端點3自動翻轉(zhuǎn)同步標(biāo)志位,IN事務(wù)返回NAK,OUT返回ACK

?

UEP4_1_MOD |= bUEP4_TX_EN;??

USB_DEV_AD = 0x00;


USB_CTRL |= bUC_DEV_PU_EN | bUC_INT_BUSY | bUC_DMA_EN;? ? ? ? ? // 啟動USB設(shè)備及DMA,在中斷期間中斷標(biāo)志未清除前自動返回NAK

UDEV_CTRL |= bUD_PORT_EN;? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?// 允許USB端口

USB_INT_FG = 0xFF;? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? // 清中斷標(biāo)志

USB_INT_EN = bUIE_SUSPEND | bUIE_TRANSFER | bUIE_BUS_RST;

IE_USB = 1;

}


您好,

可以參考這個例程,使用端點4傳輸。

icon_rar.gifEXAM-端點4.zip



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

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