jiuyouyun 发表于 2013-9-27 21:50:46

ucosII开启时钟节拍

看《嵌入式实时操作系统uC/OS-II(第2版)》Labrosse著的书,第108页,说必须在多任务系统启动以后,即调用OSStart ()之后,再开启时钟节拍器,即允许时钟节拍中断。

问题:野火的教程给的程序里“野火M3-uCOS-II+LED(多任务)”,开启时钟节拍器的句子是不是这句啊SysTick_init();?如果是的话,为什么它是放在OSStart()之前呢?如果不是的话,开启时钟的句子是哪句?在哪个函数里?我看了几遍也没找到……

schwarz 发表于 2013-9-27 23:29:55

在项目里面搜“cpise”吧,初始化了systick没开中断有个毛用。

jiuyouyun 发表于 2013-9-28 00:20:32

schwarz 发表于 2013-9-27 23:29 static/image/common/back.gif
在项目里面搜“cpise”吧,初始化了systick没开中断有个毛用。

Cpice是什么?貌似没找到……

673104326 发表于 2013-9-28 10:29:26

这个一时也想不起来了,你有没有 源代码啊?

书上的代码是不全的,找个源代码对应着看会好些。

jiuyouyun 发表于 2013-9-28 11:35:06

673104326 发表于 2013-9-28 10:29 static/image/common/back.gif
这个一时也想不起来了,你有没有 源代码啊?

书上的代码是不全的,找个源代码对应着看会好些。 ...

有啊,怎么给你啊?

marx 发表于 2013-9-28 11:39:32

cpise是汇编语言,开中断。

wdooy 发表于 2013-9-29 18:20:47

cpise是汇编语言,开中断。0s_cpu_xx.asm里面有

creep 发表于 2013-9-30 09:11:10

是CPSIE吧

673104326 发表于 2013-9-30 09:41:53

jiuyouyun 发表于 2013-9-28 11:35 static/image/common/back.gif
有啊,怎么给你啊?


我也有啊,我是说 你应该对应着 代码看会 好些。

应该是 在 调用OSStart ()之后 ,第一个 调用的任务最前面 来 开启时钟节拍的。

我的是Tmr_TickInit();   ,不确定 用的 单片机不同会不会给出不同的 命名。

但完成的 任务都是一样的,开启时钟节拍,也就是 开启 定时器 相关的 代码。

jiuyouyun 发表于 2013-10-1 13:51:07

creep 发表于 2013-9-30 09:11 static/image/common/back.gif
是CPSIE吧

对的,CPSIE,多谢~

jiuyouyun 发表于 2013-10-1 13:54:28

673104326 发表于 2013-9-30 09:41 static/image/common/back.gif
我也有啊,我是说 你应该对应着 代码看会 好些。

应该是 在 调用OSStart ()之后 ,第一个 调用的任务最 ...

我发现程序在OSStart()函数中的 OSStartHighRdy()里面,通过    CPSIE   I   这一句开了总中断,所以之前开启了时钟中断也没有用,最终是在OSStart()中使能的。
感谢回复~

jiuyouyun 发表于 2013-10-1 13:55:42

schwarz 发表于 2013-9-27 23:29 static/image/common/back.gif
在项目里面搜“cpise”吧,初始化了systick没开中断有个毛用。

大哥,你的思路非常正确,谢谢回复~
页: [1]
查看完整版本: ucosII开启时钟节拍