此帖出自GD32 MCU论坛
最新回复
本帖最后由 lvben5d 于 2019-2-12 19:46 编辑
楼主帅气, 能否找到BUG 真是用心。 库文件的定时占用掉了TIMER0 而且是阻塞的,不如写软延迟。当然不同主频下,软延迟要注意时间的差别,用宏定义处理。 这个3.usbd_std.h中45行改为#define _WIDE_STRING(string) u##string 原来库函数是#define _WIDE_STRING(string) L##string 我用的KEIL5 验证没问题,是不是IAR跟KEI5的区别?
L##string 我查看意思是 unicode字符保存形式,也就是2个字节。 因为USB的特性,传递字符串描述符的时候 需要在每个字符后 补1个'0' 比如你的字符是abcd 实际传递的是 ‘a’ '0' 'b' '0' ‘c’ '0' 'd '0' 所以长度加倍了。
详情
回复
发表于 2019-2-12 18:53
| ||
|
||
此帖出自GD32 MCU论坛
| ||
|
||
EEWorld Datasheet 技术支持