根据数据表上DA14681的USB接口支持全速和低速。
在SDK中,文件USB_Conf.h的第48-52行中,对非高速设备的定义被注释掉了。这意味着USB缓冲区需要512字节而不是64字节。
/ / # ifdef USB_IS_HIGH_SPEED
//定义USB_SUPPORT_HIGH_SPEED
/ / #其他
//定义USB_SUPPORT_HIGH_SPEED 0
/ / # endif
我们有什么理由不取消这些行注释吗?
就像现在一样,在文件USB.h中,缺少USB_SUPPORT_HIGH_SPEED到0的定义将导致使用更大的缓冲区。
设备:
嗨Ulf Soderberg,
你提到的代码是处理USB的SEGGER堆栈的一部分,SEGGER堆栈是一个统一的驱动程序,涵盖了所有的USB版本,所以你观察到的512字节不是一个重要的内存空间被浪费了。堆栈使用该定义,然后堆栈的较低部分将把512缓冲区切成64字节的块。使用64字节选项没有问题,默认值被选择为最佳值。
由于MT_dialog