智能车制作

标题: 为什么要移植UCOS.....??????????????? [打印本页]

作者: 简单丹    时间: 2013-6-14 17:22
标题: 为什么要移植UCOS.....???????????????
刚开始在看UCOS有很多介绍51单片机上的UCOS移植,在51上移植ucos有实用价值吗?原来写了一个采集温度湿度和光线强度的程序再由NRF905传到另一个模块,另一个模块也检测温度和湿度并用ds1302作时钟并且把接收到的温度湿度光线强度一并显示在12864上。把所有显示函数和接收NRF905的函数放到while(1)循环里结果十字显示就不准确一会儿走2秒一会儿走1S。最后只得用一个定时器把显示其它函数和NRF905接收函数执行频率降低了才解决这一问题。如果移植了UCOS也能解决这一问题吗?

作者: 野火    时间: 2013-6-14 17:50
51,范畴很大的,不仅仅是郭天祥视频里的 stc89c52 ,还有很多你见都没见过的。
带硬件解码视频、音频的51,你见过没?

对于资源够大的单片机而言,跑ucos是有意义的。只要把优先级设置合理,中间的延时设置合理,ucos应该可以解决你的问题。
作者: 简单丹    时间: 2013-6-14 19:44
野火 发表于 2013-6-14 17:50
51,范畴很大的,不仅仅是郭天祥视频里的 stc89c52 ,还有很多你见都没见过的。
带硬件解码视频、音频的51 ...

谢谢野火哥了...刚开始才再看C51上移植ucos的例程都是用的LED灯做实验,以为STC89C58上移植ucos没有实际意义,只能学习学习....

作者: lixianghua0428    时间: 2013-6-14 20:46
很明显,LZ的while循环里面的程序执行周期是不明确的,建议LZ将优先级较高的程序按功能分成几个任务,用定时器进行时间片轮转任务(注意任务执行周期别超过定时器周期),这样,每个任务的执行周期都是明确的,若是LZ有时间精力以后又想学习操作系统,ucos入门不错,干掉它吧
作者: 野火    时间: 2013-6-14 21:17
简单丹 发表于 2013-6-14 19:44
谢谢野火哥了...刚开始才再看C51上移植ucos的例程都是用的LED灯做实验,以为STC89C58上移植ucos没有实际意 ...

以LED来做例程,主要是简单,如果一开始一大堆代码,初学者肯定吓跑。
ucos,它可以把空闲的时间(例如按键中经常消抖浪费时间)都收集起来,给其他任务执行。


作者: 简单丹    时间: 2013-6-14 22:27
lixianghua0428 发表于 2013-6-14 20:46
很明显,LZ的while循环里面的程序执行周期是不明确的,建议LZ将优先级较高的程序按功能分成几个任务,用定时 ...

嗯 后来就是这样解决的现在正在看ucos....以后求指导..

作者: 简单丹    时间: 2013-6-14 22:32
野火 发表于 2013-6-14 21:17
以LED来做例程,主要是简单,如果一开始一大堆代码,初学者肯定吓跑。
ucos,它可以把空闲的时间(例如按 ...

嗯,谢谢!!刚开始再看ucos对ucos还不怎么理解...得加紧点

作者: 小白45    时间: 2013-6-15 09:50
学习了
作者: 简单丹    时间: 2013-6-15 12:49
小白45 发表于 2013-6-15 09:50
学习了

嗯,都学习学习

作者: 安之若命    时间: 2013-11-23 16:20
野火 发表于 2013-6-14 21:17
以LED来做例程,主要是简单,如果一开始一大堆代码,初学者肯定吓跑。
ucos,它可以把空闲的时间(例如按 ...

表示,我现在才刚刚了解了一点皮毛的理论知识。学ucos挺盲目的,求指导啊!
作者: yyyzrxh    时间: 2013-11-23 23:19
同求指导,求分享资料。。。。。
作者: 野火    时间: 2013-11-24 12:07
安之若命 发表于 2013-11-23 16:20
表示,我现在才刚刚了解了一点皮毛的理论知识。学ucos挺盲目的,求指导啊!

任哲 的 ucos 书,非常通俗易懂!!
也可以参考我们的 野火开源《从0开始移植ucos到野火stm32开发板》pdf教程


前者重视理论,通俗易懂的讲原理。
后者是我们的教程,重操作,重视代码修改方法,让初学者了解需要修改的内容,和整体的ucos思想。





作者: 何俊    时间: 2013-11-24 21:20
野火 发表于 2013-11-24 12:07
任哲 的 ucos 书,非常通俗易懂!!
也可以参考我们的 野火开源《从0开始移植ucos到野火stm32开发板》pd ...

火哥,问个问题,

uc/os 的中断优先级是软件中断,那在软件中断和硬件中断同时发生时,是不是优先执行硬件中断,也就是说硬件中断的优先级都高于软件中断?


作者: 野火    时间: 2013-11-24 21:26
何俊 发表于 2013-11-24 21:20
火哥,问个问题,

在 硬件中断里 (定时器中断) 执行 进入就绪表 的 ucos 最高优先级

即你所谓的软件中断,其实就是在 硬件中断里实现 (定时器中断)



作者: 何俊    时间: 2013-11-24 21:44
野火 发表于 2013-11-24 21:26
在 硬件中断里 (定时器中断) 执行 进入就绪表 的 ucos 最高优先级

即你所谓的软件中断,其实就是在  ...

懂了。多谢火兄!!!
作者: 凡尘逍遥    时间: 2014-11-17 18:06
野火 发表于 2013-11-24 12:07
任哲 的 ucos 书,非常通俗易懂!!
也可以参考我们的 野火开源《从0开始移植ucos到野火stm32开发板》pd ...

受教了,正在看 任哲 的教材!!





欢迎光临 智能车制作 (http://111.231.132.190/) Powered by Discuz! X3.2