pq113_6 发表于 2020-6-7 22:19

MM32L073 USB的寄存器问题

本帖最后由 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个寄存器还是文档有错误?


huangzushuimd 发表于 2020-6-18 12:58

本帖最后由 huangzushuimd 于 2020-6-18 14:05 编辑

文档是正确的, 用户手册中是没有这2个寄存器USB_EP_DMA_DIR和USB_EP_DMA_SIZE;
该系列暂不支持DMA功能;新版例程会更新, 修正样例中上述寄存器描述错误, 使用中断方式实现USB功能;

xiaoqizi 发表于 2020-7-7 15:26

看来还有需要修改的地方

木木guainv 发表于 2020-7-7 15:26

我自己极少看的这么细致

磨砂 发表于 2020-7-7 15:26

但是有的系列是支持的

晓伍 发表于 2020-7-7 15:27

原来是这样啊

八层楼 发表于 2020-7-7 15:27

感谢热心解答
页: [1]
查看完整版本: MM32L073 USB的寄存器问题