Chinaunix首页 | 论坛 | 博客
  • 博客访问: 90635
  • 博文数量: 21
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 379
  • 用 户 组: 普通用户
  • 注册时间: 2013-09-13 06:58
文章分类
文章存档

2013年(21)

我的朋友

分类: 嵌入式

2013-10-23 20:44:03

    经过几天努力,终于把ucgui移植到ucos上去了,说真的,到现在来看,本来应该是一点都不难,其实就是一个小小的delay();错误,我本人学习stm32由库函数入门,进而用原子的寄存器版本学习stm32,到后来自己摸索学习ucgui,ucos操作系统,而在stm32中自己的大部分底层程序都是用原子的程序再奋斗板,修改而成的,这样由于不是自己写的,所以对于底层的程序一直也没有过于深入的了解,这次调试ucgui到ucos上就吃了这个亏:
  在原子的寄存器版程序中,delay_ms();和delay_us(); delay_init();都是用systick写出来的,而ucos操作系统正是用systick作时钟基准,所以这些函数执行后,会扰乱ucos操作系统,以下是他们在原子的程序中的原型:
 
其实上次我能把ucgui移植到stm32上并且成功好像是因为我没有把    delay_init(72);   //延时初始化  这个加进去,上次没有搞清楚这些问题,直接导致这次还是得花大时间去解决这些问题

除此之外还有几个地方要注意:
1,触摸任务优先级要高于屏幕任务
2,触摸任务和屏幕任务并不需要高于10
3,阻塞对话框和非阻塞对话框不会影响ucos多任务的进行,没有很大问题
4,调试可以用到在线仿真,逐个排除,逛论坛,阅读源码


阅读(1468) | 评论(0) | 转发(0) |
0

上一篇:ucos+ucgui

下一篇:出现的语法错误(1)

给主人留下些什么吧!~~