在STM32F103上跑ucosII系统并带emwin图形界面显示,删除某些之前定义或者增加全局变量会导致显示的很多数据为0

2019-07-14 21:43发布

求问各位高手:在STM32F103上跑ucosII系统并带emwin图形界面显示,删除某些之前定义或者增加全局变量会导致显示的很多数据为0
系统程序之前是别人开发的,用的是MDK4.6,他定义了很多全局变量,现在要增加一些代码,需要增加一些全局变量。但是增加到一定数量的全局变量,液晶显示的大部分数据就会变零,这些全局变量只是定义,未使用到程序中。于是勾选设置项的优化等级,还是一样。通过仿真数据在采集时候是可以得到的,但是显示就是为0.
还有就是是用floa型打印数据也会,使用的比较多时候也会出现此种情况。后来转成%d打印,就不会出现这种情况。
后来我就开始删除一些他之前定义的,但是没有使用的全局变量(通过查找整个工程发现只有定义,或者定义了但是只在在某处没有意义的使用),还是出现上述情况。
郁闷之极!
咨询了一些大神,说是启动代码的定义的堆栈不够,我试着堆和栈都扩大了一倍,然并卵!
各位走过路过的大神,跪求支招!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。