完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
最近用 MDK 4.10 编译 调试STM32 程序时发现个奇怪故障,费了很大劲,也没有排去,故只能发帖请教原子老师了。
利用我买的不完全板的程序,在其他板上(由于原子板只能用串口下载程序,不能直接使用LINK,所以才在别的板上编译调试)编了个图片文字显示,MP3播放等程序,编译后HEX可 达 540KB, 只要使用下面原子的ILI9320画圆函数,开机就白屏,什么也不显示?把这段画圆程序去掉,程序运行正常, 用单步 一步一步地 调试 ,程序工作就正常,画圆程序也能画出个 漂亮的大园圈,可是只要重新启动,进入初始化,就拜拜了,一片白,什么也显示不出来,我又认为是这画圆的鬼程序影响的,初始化到它那里,就白屏了,就把画圆程序放到初始化 程序的最后,可是没有运行到它,也同样白屏,好像只要有这段画圆程序,程序就根本没有运行,直接就白屏了,这是什么鬼蜮故障,只得请教原子老师了。 下面就是那段的画圆程序,没看出它有多么鬼蜮,但是它又怎么去干那样的“坏事”呢? void Draw_Circle(u16 x0,u16 y0,u8 r){int a,b;int di;a=0;b=r; di=3-(r<<1); //判断下个点位置的标志while(a<=b){LCD_DrawPoint(x0-b,y0-a); //3 LCD_DrawPoint(x0+b,y0-a); //0 LCD_DrawPoint(x0-a,y0+b); //1 LCD_DrawPoint(x0-b,y0-a); //7 LCD_DrawPoint(x0-a,y0-b); //2 LCD_DrawPoint(x0+b,y0+a); //4 LCD_DrawPoint(x0+a,y0-b); //5LCD_DrawPoint(x0+a,y0+b); //6 LCD_DrawPoint(x0-b,y0+a); a++;//使用Bresenham算法画圆 if(di<0)di +=4*a+6; else{di+=10+4*(a-b); b--;} LCD_DrawPoint(x0+a,y0+b);} |
|
相关推荐
12个回答
|
|
|
|
|
|
hex大小并不代表占用的flash大小.大小要从mdk编译结果看.
|
|
|
|
hex大小并不代表占用的flash大小.大小要从mdk编译结果看.
--------------------------------- 看来没招了,又试着把那画圆程序中的3条画点程序删去(两条不行,必须是3条),就可以正常运行了,但是画的是残缺圆,圆边有缺口 好像就和程序大小有关似的,小于某个值就正常了??? |
|
|
|
如果是这样,你把其他不相关的代码去掉,只留下画圆的,那你看能否正常?
|
|
|
|
这个没问题,不用删去整个程序,只要删去画圆其中的几条语句,就OK了。
|
|
|
|
|
|
|
|
排除法啊.
不删除画圆的.删除其他的.看看能不能画圆. --------------------------------- 试过。删去bmp图片也不会白屏,但要删的多,不如删画圆程序只几条就行,好像这画圆和显示bmp图片有什么纠结?它俩碰一块,就白屏? |
|
|
|
|
|
|
|
你说的这个问题很重要,弄不好是它做的怪!这个优化我还不会呢,怎么才能优化?反正 MDK 按你 书上 说得步骤设置一下,再没动过,什么时间它自己偷
偷搞优化了呢?还请施教。 |
|
|
|
|
|
|
|
优化要自己设置的.
在天价头文件路径的那个界面,有个Optimization的选项,就是用来设置优化等级的. --------------------------------- 好,去试试看,谢谢! |
|
|
|
楼主,建议你注意一下屏的复位引脚,复位一下屏,会正常的。
|
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1786 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1622 浏览 1 评论
1089 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
730 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1680 浏览 2 评论
1942浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
739浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
576浏览 3评论
598浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
561浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-25 17:54 , Processed in 1.160143 second(s), Total 98, Slave 82 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号