关于sprintf的问题

2019-07-21 04:04发布

今天调试时LED矩阵时,发现一个问题,使用sprintf时,首位会不定时出错!
平时使用sprintf将字符串显示到TFT上,不会发现问题,因为LCD的显示字符串函数有判断字符是否越界的功能,如果越界了,则不更新,所以不会显示错误。
但是,我现在是直接打在LED矩阵上的,函数没有检测越界的功能,而且LED矩阵是不断更新的,所以出错了就会显示。

如上图,首字符本身为空格,但是有时成了0XA0。 于是,我用了最笨的方法,忽略首字符,即首字符输入空格,写入与读取是跳过首字符,至于首字符是什么就不管他了。
但是,这明显不是好方法,各位前辈能指导一下讲解一下原因和解决方发吗?
环境是MDK5.1,使用ucos系统,使用sprintf函数时为求稳定甚至调度器都关了。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。