symbo 发表于 2014-9-2 08:28:12

从单片机初学者……多任务疑惑

各位大侠,
        我想问下,《从单片机初学者迈向单片机工程师》,多任务章节中,假如某个任务输出20KHz的方波(或者更高),那么我的定时器中断要20KHz(或者更高)吗(选择最快的任务频度来设定定时器中断节拍)?如果这样,每个任务体的时间又要很短,定时器又要耗CPU,程序也不好控制。具体要怎么用才能符合文中所说一般为200Hz?低频的任务调度怎么运行高频的任务体呢(用2个定时器好像有干扰)?--- 初次接触多任务概念,不是很明白,希望大侠们耐心点哈

lcw_swust 发表于 2014-9-2 08:52:46

个人觉得高频的任务要单独处理,比如高频任务用一个定时器,操作系统用另一个定时器,
如果单片机内有专门产生方波的硬件模块就更好了,比如PCA\时钟输出(如STC12C5A60S2).
也可以考虑多核,比如高频任务交给一个单片机处理,操作系统运行在另一个单片机上.

summarize 发表于 2014-9-2 08:55:06

这个时候得用带PWM的单片机.

皮爱了西 发表于 2014-9-2 08:58:41

是不是类似定义一个满足最快任务要求的时基,然后用时基来触发不同的任务函数。个人觉得任务调度的频率肯定要大于频率最高的任务的执行频率。俺也是初学者,相互学习。

ypengfei 发表于 2014-9-2 09:01:25

用软件来做PWM波形开销是非常大的,我原来做个小车,超声波测距壁障,两路PWM(两个轮子)由软件生成,而且单片机还要中断超声波信号和两个转速检测中断,鱼和熊掌不可兼得啊,最后失败了,还是用带PWM的单片机吧。。。。

我认为多任务就照顾不到实时性,这俩应该是有冲突的吧。

wycox 发表于 2014-9-2 09:06:25

单片机选型很重要,那么多型号,就是为了不用应用的目的。

symbo 发表于 2014-9-2 10:58:34

lcw_swust 发表于 2014-9-2 08:52
个人觉得高频的任务要单独处理,比如高频任务用一个定时器,操作系统用另一个定时器,
如果单片机内有专门产生 ...

嗯,谢谢。我用2个定时器,但是好像有干扰。用2个单片机或者带PWM的确实好很多,就是成本稍微高点,呵呵

symbo 发表于 2014-9-2 10:59:34

皮爱了西 发表于 2014-9-2 08:58
是不是类似定义一个满足最快任务要求的时基,然后用时基来触发不同的任务函数。个人觉得任务调度的频率肯定 ...

是的。我也是你这么想的

symbo 发表于 2014-9-2 11:00:02

summarize 发表于 2014-9-2 08:55
这个时候得用带PWM的单片机.

哦,好吧

symbo 发表于 2014-9-2 11:02:36

ypengfei 发表于 2014-9-2 09:01
用软件来做PWM波形开销是非常大的,我原来做个小车,超声波测距壁障,两路PWM(两个轮子)由软件生成,而且 ...

看来只能选择带PWM的单片机了。多任务实时性是可以做到的,关键还是要看程序怎么写。

别有洞天下 发表于 2014-9-3 09:34:56

为了一个帖子在开一个帖子啊
页: [1]
查看完整版本: 从单片机初学者……多任务疑惑