huanghaiming 发表于 2010-4-12 20:38:54

AVR-ucosII初学的一些疑问,会的人请一解疑惑,体谅体谅初学者的痛苦

1.我以前光做单片机时习惯用AVR studio的,我看论坛里都是说用icc的,想问问,是不是在icc上才能做ucosII的?
2.相对于单片机直接一个c文件再包含一个开发软件自带的头文件就可以编译,移植操作系统是不是也是只建立一个c文件写程序,然后把ucosII的所有源代码都包含进去(直接或间接)就行了,包括不用更改的:
OS_CORE.c
OS_FLAG.c
Os_mbox.c
Os_mem.c
Os_mutex.c
Os_dbg_r.c
os_Q.c
Os_sem.c
Os_task.c
Os_time.c
Ucos_II.c
Ucos_II.h
OS_CFG.H
INCLUDES.H
以及要更改的:
Os_cpu.h
Os_cpu_A.ASm
Os_cpu_c.c,
是不是这样?
3.为什么我下载源代码都找不到有这三个移植文件:
Os_cpu.h
Os_cpu_A.ASm
Os_cpu_c.c
是不是完全要自己编写?
很多由于感性认识不当造成的误解还需会的人指点迷津,希望能早日学会操作系统,如果不介意可以加我的Q327741577或者发邮件shaquille2003@sina.com交流指教!!

jia_xuan 发表于 2010-4-12 22:41:50

我一样刚学会用ucos,建议你买一本周立功的相关书籍看一看就很容易明白了。有大量的实例和他移植好的模板(不过是ARM7的,完全可以借鉴)。

sky_walker 发表于 2010-4-12 22:48:04

建议买书

huanghaiming 发表于 2010-4-12 23:17:17

书的全名叫什么???

huanghaiming 发表于 2010-4-12 23:22:50

我之前上过一下ARM的实验,不知道是老师移植好还是什么的,完全不用改那些驱动,直接写任务.....

huanghaiming 发表于 2010-4-12 23:23:02

用ADS的

huanghaiming 发表于 2010-4-13 00:29:55

对了,还有这两个文件下载的源文件也是没有的:
OS_CFG.H
INCLUDES.H
是不是理论上都得自己编写的?

ba_wang_mao 发表于 2010-4-13 11:55:07

1.我以前光做单片机时习惯用AVR studio的,我看论坛里都是说用icc的,想问问,是不是在icc上才能做ucosII的?
-----------------------------------------------------------------------

编译器可以根据你的喜好选取,可以是ICC,也可以是GCC,总之随便啦.

2.相对于单片机直接一个c文件再包含一个开发软件自带的头文件就可以编译,移植操作系统是不是也是只建立一个c文件写程序,然后把ucosII的所有源代码都包含进去(直接或间接)就行了,包括不用更改的:
-----------------------------------------------------------------------
内核函数千万不能更改

3.所谓移植,就是更改以下几个函数
   os_cpu.h
   ---------> 定义关中断和开中断的方法以及堆栈的增长方向(堆栈是从低地址向高地址增长 还是堆栈从高地址向低地址增长)

   os_cpu_c.c
   --------> 编写用户接口以及任务堆栈初始化函数
             OSTaskStkInit()
   os_cpu_a.s
      -------> 硬件驱动编写移植函数(跟编译器和硬件相关的函数),包括:
            OSStartHighRdy()/OSCtxSw()/OSIntCtxSw()/OSTickISR()
   os_cfg.h      
       ------>系统裁减配置定义任务堆栈大小,是否使用邮箱/消息队列 等等
   includes.h


3.为什么我下载源代码都找不到有这三个移植文件:
Os_cpu.h
Os_cpu_A.ASm
Os_cpu_c.c
是不是完全要自己编写?
-----------------------------------------------------------------------
是的,尤其是Os_cpu_A.ASm和Os_cpu_c.c 需要根据单片机类型和所选取的编译器重新编写.

ba_wang_mao 发表于 2010-4-13 11:58:19

http://www.ourdev.cn/bbs/bbs_content.jsp?bbs_sn=3879792&bbs_page_no=2&bbs_id=3004

   上述网页中有"实例下载链接" 是AT90CAN128在ICC编译器下编译成功 ,【2楼】有移植实例下载链接
页: [1]
查看完整版本: AVR-ucosII初学的一些疑问,会的人请一解疑惑,体谅体谅初学者的痛苦