嵌入式中sprintf %f 失效问题解决
文章主要从问题描述、原因和解决方法展开描述如何解决此问题。
问题描述
使用sprintf读取整型的数据是可以的,但是读取浮点型数据,发现读出来是空的,所有sprintf %f失效;
原因
查看IAR的配置,发现library options的printf formatter的配置设置为tiny,是不支持float类型的;
解决方法
针对上述的原因,把printf formatter的配置调整为Full。从我的编译环境看,此调整会额外占用3.7K ROM空间。请注意CPU的空间是否够用。
调试结果
调试发现sprintf可以工作了,完美解决问题。