其实,我是这样想的,因为我之前使用的NIOS2_6.0 IDE不是完全版,里面自然就不带有UCOS_II。(论坛上也有人在问这个问题:为什么他们的IDE下没有UCOS_II,原因就在此)。 而我又发现在NIOS2_4.2的安装目录下的compnent下有UCOS_II的完整源码,特别是altera编写的针对nios2 cpu的三个源文件OS_CPU.H,OS_CPU_A.ASM,OS_CPU_C.C。我们从UCOS_II的教程中了解到,要移植UCOS_II到不同的CPU平台上,只需要修改这三个文件就行了。我想既然altera已经为我们编写好了这三个文件,我们就不用费力去编写了。只需要将这些OS的源码同应用程序放到同一个project下编译,运行就是了。因此这样即使安装的不是NIOS2 IDE的完全版,照样能够自如的使用UCOS_II,最多只是手动编辑一下os_cfg.h文件。 但是我发现我这样做了之后,根本不行,然后我再仔细对照UCOS_II的教程(邵贝贝的书)和altera的OS_CPU_A.ASM文件,发现它与教程所要求的内容不一样,也就是没有OSTickISR()函数,但在4.2的ucos2 template下,其又能正常工作。而我自己拷贝过去的os源码却不行。我对此感到很不解。所以,我想请人帮我解答一下我的困惑,如果我想让拷贝到project的os源码工作,是不是就得编写一个OSTickISR()函数?
[此贴子已经被作者于2007-1-13 13:29:17编辑过] |