ap0405209 发表于 2022-12-12 16:33

CH32V203 FreeRTOS 浮点输出问题

本帖最后由 ap0405209 于 2022-12-12 16:55 编辑

CH32V203 FreeRTOS 串口1使能printf浮点输出问题会导致异常,希望官方和坛友能解决此问题, 串口1不使能printf浮点输出程序正常使用。

事实证明,官方的MounRiver Studio提供的FreeRTOS模板很多bug!

lanmanck 发表于 2022-12-12 17:22

有没有rtthread啊?都被制裁了还用美国东西,差评

yangxiaor520 发表于 2022-12-12 19:27

自己重新下载一个freertos的源码包吧

tototm 发表于 2022-12-13 20:47

也是,估计也没有经过严格的测试就匆匆上马,国人通病!要学人家也学全一点,好多东西全靠猜!

WCHTech2 发表于 2022-12-15 11:16

您好,在FreeRTOS下进行浮点计算时,需要将任务堆栈设置为8字节对齐,此外还需要将“freertos_risc_v_chip_specific_extensions.h”中的ARCH_FPU宏打开,该宏的用途是在任务切换时对FPU寄存器进行压栈和弹栈处理。若不打开该宏,浮点寄存器不会被压栈,使用的值是之前计算a时调用FPU寄存器的值。下图为使用FreeRTOS时浮点计算的一些配置方式。

ap0405209 发表于 2022-12-15 12:22

WCHTech2 发表于 2022-12-15 11:16
您好,在FreeRTOS下进行浮点计算时,需要将任务堆栈设置为8字节对齐,此外还需要将“freertos_risc_v_chip_ ...

谢谢你的回应,我稍后会按照上述配置再进行测试,希望可以把问题解决,也希望官方可以在这些使用细节上出份文档,让开发者或者使用者少走弯路,毕竟使用者怕的就是遇到这些细节问题不知道如何入手处理,花更多时间去找出问题,而且不一定找到情况下,那是最痛苦的。

tototm 发表于 2022-12-17 22:07

全靠猜!
页: [1]
查看完整版本: CH32V203 FreeRTOS 浮点输出问题