在STM32F103上跑ucosII系统并带emwin图形界面显示,删除某些之前定义或者增加全局变量会导致显示的很多数据为0
时间:10-02
整理:3721RD
点击:
求问各位高手:在STM32F103上跑ucosII系统并带emwin图形界面显示,删除某些之前定义或者增加全局变量会导致显示的很多数据为0
系统程序之前是别人开发的,用的是MDK4.6,他定义了很多全局变量,现在要增加一些代码,需要增加一些全局变量。但是增加到一定数量的全局变量,液晶显示的大部分数据就会变零,这些全局变量只是定义,未使用到程序中。于是勾选设置项的优化等级,还是一样。通过仿真数据在采集时候是可以得到的,但是显示就是为0.
还有就是是用floa型打印数据也会,使用的比较多时候也会出现此种情况。后来转成%d打印,就不会出现这种情况。
后来我就开始删除一些他之前定义的,但是没有使用的全局变量(通过查找整个工程发现只有定义,或者定义了但是只在在某处没有意义的使用),还是出现上述情况。
郁闷之极!
咨询了一些大神,说是启动代码的定义的堆栈不够,我试着堆和栈都扩大了一倍,然并卵!
各位走过路过的大神,跪求支招!
系统程序之前是别人开发的,用的是MDK4.6,他定义了很多全局变量,现在要增加一些代码,需要增加一些全局变量。但是增加到一定数量的全局变量,液晶显示的大部分数据就会变零,这些全局变量只是定义,未使用到程序中。于是勾选设置项的优化等级,还是一样。通过仿真数据在采集时候是可以得到的,但是显示就是为0.
还有就是是用floa型打印数据也会,使用的比较多时候也会出现此种情况。后来转成%d打印,就不会出现这种情况。
后来我就开始删除一些他之前定义的,但是没有使用的全局变量(通过查找整个工程发现只有定义,或者定义了但是只在在某处没有意义的使用),还是出现上述情况。
郁闷之极!
咨询了一些大神,说是启动代码的定义的堆栈不够,我试着堆和栈都扩大了一倍,然并卵!
各位走过路过的大神,跪求支招!
你更改一下ucosii中给每个任务分配的内存大小。
你更改一下ucosii中给每个任务分配的内存大小。我复制的,支持楼上
楼上的方法 我有试过 然并卵!不过还是挺感谢回答的!
这个方法 我有试过 然并卵!不过还是挺感谢回答的!
安富莱的开发板有相关的例程,