根据DA14681的数据表,USB接口支持全速和低速。
在SDK中,在文件USB\u Conf.h的第48-52行,注释掉了非高速设备的定义。这意味着USB缓冲区需要512字节而不是64字节。
//#如果定义USBŠ是高速的Š
//定义USB支持高速1
//#其他
//定义USB支持高速0
//#结束
有什么理由不取消这些行的注释吗?
正如现在一样,在USB.h文件中,缺少USB\u SUPPORT\u HIGH\u SPEED to 0的定义会导致使用更大的缓冲区。
设备:
嗨,乌尔夫·索德伯格,
你提到的代码是处理USB的SEGGER堆栈的一部分,SEGGER堆栈是一个覆盖所有USB版本的统一驱动程序,因此你观察到的512字节并不是一个被浪费的重要内存空间。堆栈使用该定义,然后堆栈的较低部分将512缓冲区切分为64字节的块。使用64字节选项不会有问题,默认值被选为最佳值。
谢谢你的对话