本帖最后由 pq113_6 于 2020-6-7 22:19 编辑
例程中有设置DMA,但是用户手册中并没有这2个寄存器USB_EP_DMA_DIR和USB_EP_DMA_SIZE:
write_mreg32(USB_EP_DMA_DIR,EPn_DIR_IN(EPIN)|EPn_DIR_OUT(EPOUT));//ep1 is D2H(IN), ep2 is H2D(out)
write_mreg32(USB_EP_DMA_SIZE,0x00);
这2个寄存器的地址是0x68和0x6c
#define USB_EP_EN (USB_BASE + 0x64 )
#define USB_EP_DMA_DIR (USB_BASE + 0x68 )
#define USB_EP_DMA_SIZE (USB_BASE + 0x6c )
#define USB_EP_INDEX1_2 (USB_BASE + 0x70 )
#define USB_EP_INDEX3_4 (USB_BASE + 0x74 )
#define USB_TOG_CTRL1_4 (USB_BASE + 0x78 )
#define USB_EP_SETUPn(x) (USB_BASE + 0x80 +(x)*0x04)
#define USB_PACKAGE_SIZE0 (USB_BASE + 0xa0 )
而用户手册中是:
0x64到0x78之间并没有这2个寄存器。确切的说,少了4个寄存器的说明,所以是这个芯片没有这4个寄存器还是文档有错误?
|