搜索
bottom↓
回复: 6

三个文件搞定 AVR 的多任务(ICCAVR)

[复制链接]

出0入0汤圆

发表于 2008-7-17 16:55:04 | 显示全部楼层 |阅读模式
本程序在 ICCAVR 下 ATmega8 上调试通过,模仿了 UCOS-II 的某些理念.多任务是通过时间片轮番来完成的,也就是一个任务执行一段时间后由时钟中断来进入下一任务,也就是说一般情况下各个任务执行的时间相同,没有优先级之分.

就这一个ourdev_350411.rar(文件大小:54K) (原文件名:UCOS.rar)

调式中应注意修改头文件的路径.

阿莫论坛20周年了!感谢大家的支持与爱护!!

月入3000的是反美的。收入3万是亲美的。收入30万是移民美国的。收入300万是取得绿卡后回国,教唆那些3000来反美的!

出0入0汤圆

发表于 2008-7-17 17:10:09 | 显示全部楼层
随便看来一下就看到
//****************************************
//        延时函数
//****************************************
void OSTimeDly(INT16U t)                //中断延时函数
{  
OSTCBCur->OSTCBDly=t;  
while(OSTCBCur->OSTCBDly);         //延时,就这么简单!!
}

延时就这么简单?
想的美,死等也叫多任务的话……


随便说说,别介意。

出0入0汤圆

 楼主| 发表于 2008-7-17 17:37:04 | 显示全部楼层
回楼上:
看来楼上没有真正理解.
那里并没有死等,因为时钟中断没有被屏蔽,仍然会进入其它任务.
延时也可用 delay(INT16U t),二者效果差不多.

出0入0汤圆

发表于 2008-7-17 20:46:30 | 显示全部楼层
谢谢分享!

出0入0汤圆

发表于 2008-7-17 21:04:50 | 显示全部楼层
这个不是实时的操作系统  也不是可剥夺的内核 不过思路不错  楼主要继续下去呀 关注中

出0入0汤圆

发表于 2008-7-17 21:35:46 | 显示全部楼层
我做过的项目中都是设置状态位,然后轮询所有任务,如果采用时间片的话会更好,避免了某个任务占用太多的时间。

出0入22汤圆

发表于 2008-7-17 21:36:50 | 显示全部楼层
谢谢,有空试试。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-28 01:18

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表