为CH582的串口工程启用 link time optimization,以UART0为例,注意到反汇编为:
200000b2 : 200000b2: a001 j 200000b2
取消掉该选项,反汇编正确
程序上表现为无法进入中断,关闭 link time optimization 解决问题
推测为 ltowrapper 或者其它部分改变了符号名,望尝试复现并处理
谢谢!
编译选项参考:
riscv-none-embed-gcc -c ...(ide生成值)... -flto -O2 -Wall ...(ide生成值)... SOURCE -o OBJECT
链接选项参考:
riscv-none-embed-gcc OBJECTS -lISP583 -lCH58xBLE -flto ...(ide生成值)... -o target/BLE.elf
热门产品 :
CH32X035: 32位USB+USB PD单片机