搜索
bottom↓
回复: 5

问一个关于在mega8上移植ucos-ii的问题。

[复制链接]

出0入0汤圆

发表于 2008-3-25 15:59:11 | 显示全部楼层 |阅读模式
我刚接触这方面的东西,想把ucos-ii移植到mega8上,程序是从网上下的,在ICCAVR7中出现,
C:\iccv7avr\bin\imakew -f UCOS2.mak
    iccavr -c -e -D__ICC_VERSION="7.16A" -DATMega8  -l -g -MEnhanced -MHasMul -Wa-W   -Wa-g D:\study\ucos_ii\ucos2_iccavr\iccavr\default_hook_functions.s
    iccavr -c -e -D__ICC_VERSION="7.16A" -DATMega8  -l -g -MEnhanced -MHasMul -Wa-W   -Wa-g D:\study\ucos_ii\ucos2_iccavr\iccavr\OS_CORE.s
    iccavr -c -e -D__ICC_VERSION="7.16A" -DATMega8  -l -g -MEnhanced -MHasMul -Wa-W   -Wa-g D:\study\ucos_ii\ucos2_iccavr\iccavr\os_cpu_c.s
    iccavr -c -e -D__ICC_VERSION="7.16A" -DATMega8  -l -g -MEnhanced -MHasMul -Wa-W   -Wa-g D:\study\ucos_ii\ucos2_iccavr\iccavr\OS_FLAG.s
    iccavr -c -e -D__ICC_VERSION="7.16A" -DATMega8  -l -g -MEnhanced -MHasMul -Wa-W   -Wa-g D:\study\ucos_ii\ucos2_iccavr\iccavr\OS_MBOX.s
    iccavr -c -e -D__ICC_VERSION="7.16A" -DATMega8  -l -g -MEnhanced -MHasMul -Wa-W   -Wa-g D:\study\ucos_ii\ucos2_iccavr\iccavr\OS_MEM.s
    iccavr -c -e -D__ICC_VERSION="7.16A" -DATMega8  -l -g -MEnhanced -MHasMul -Wa-W   -Wa-g D:\study\ucos_ii\ucos2_iccavr\iccavr\OS_MUTEX.s
    iccavr -c -e -D__ICC_VERSION="7.16A" -DATMega8  -l -g -MEnhanced -MHasMul -Wa-W   -Wa-g D:\study\ucos_ii\ucos2_iccavr\iccavr\OS_Q.s
    iccavr -c -e -D__ICC_VERSION="7.16A" -DATMega8  -l -g -MEnhanced -MHasMul -Wa-W   -Wa-g D:\study\ucos_ii\ucos2_iccavr\iccavr\OS_SEM.s
    iccavr -c -e -D__ICC_VERSION="7.16A" -DATMega8  -l -g -MEnhanced -MHasMul -Wa-W   -Wa-g D:\study\ucos_ii\ucos2_iccavr\iccavr\OS_TASK.s
    iccavr -c -e -D__ICC_VERSION="7.16A" -DATMega8  -l -g -MEnhanced -MHasMul -Wa-W   -Wa-g D:\study\ucos_ii\ucos2_iccavr\iccavr\OS_TIME.s
    iccavr -c -e -D__ICC_VERSION="7.16A" -DATMega8  -l -g -MEnhanced -MHasMul -Wa-W   -Wa-g D:\study\ucos_ii\ucos2_iccavr\iccavr\test1.s
    iccavr -c -e -D__ICC_VERSION="7.16A" -DATMega8  -l -g -MEnhanced -MHasMul -Wa-W   -Wa-g D:\study\ucos_ii\ucos2_iccavr\iccavr\uCOS_II.s
    iccavr -o UCOS2 -LC:\iccv7avr\lib -g -e:0x2000 -Wl-W -bfunc_lit:0x26.0x2000 -dram_end:0x45f -bdata:0x60.0x45f -dhwstk_size:30 -beeprom:0.512 -fihx_coff -S2 @UCOS2.lk  
!ERROR file 'OS_CORE.o': undefined symbol 'push_gset1'
!ERROR file 'OS_CORE.o': undefined symbol 'push_gset2'
!ERROR file 'OS_CORE.o': undefined symbol 'push_gset3'
!ERROR file 'OS_FLAG.o': undefined symbol 'push_gset4'
!ERROR file 'OS_FLAG.o': undefined symbol 'push_gset5'
!ERROR file 'OS_CORE.o': undefined symbol '_OSIntCtxSw'
!ERROR file 'OS_CORE.o': undefined symbol '_OSCtxSw'
!ERROR file 'os_cpu_c.o': undefined symbol '_OSTickISR'
!ERROR file 'OS_CORE.o': undefined symbol 'pop_gset1'
!ERROR file 'OS_CORE.o': undefined symbol 'pop_gset2'
!ERROR file 'OS_CORE.o': undefined symbol 'pop_gset3'
!ERROR file 'OS_FLAG.o': undefined symbol 'pop_gset4'
!ERROR file 'OS_FLAG.o': undefined symbol 'pop_gset5'
!ERROR file 'OS_CORE.o': undefined symbol '_OSStartHighRdy'
!E test1.o(163): Code address 0:0x28 already contains a value
!E test1.o(163): Code address 0:0x29 already contains a value
!E test1.o(163): Code address 0:0x2a already contains a value
!E test1.o(163): Code address 0:0x2b already contains a value
C:\iccv7avr\bin\imakew.exe: Error code 1
Done: there are error(s). Exit code: 1. Tue Mar 25 15:57:34 2008
找了半天也没有资料啊,有谁帮忙指点一下啊。或者说说看那些书啊

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

一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。

出0入0汤圆

发表于 2008-3-25 16:12:21 | 显示全部楼层
icc里带有一个移植的例子不过好像有错,我曾经移植到M162上,M8跑ucos很勉强吧。会不会是你的ROM溢出了,有些模块链接不进去?你换个大点的CPU编译试试。

出0入0汤圆

 楼主| 发表于 2008-3-25 16:43:50 | 显示全部楼层
yangsen。谢谢你。
我换成mega128后,把由ROM的造成问题解决了,但是还有:
!ERROR file 'OS_CORE.o': undefined symbol 'push_gset1'
!ERROR file 'OS_CORE.o': undefined symbol 'push_gset2'
!ERROR file 'OS_CORE.o': undefined symbol 'push_gset3'
!ERROR file 'OS_FLAG.o': undefined symbol 'push_gset4'
!ERROR file 'OS_FLAG.o': undefined symbol 'push_gset5'
!ERROR file 'OS_CORE.o': undefined symbol '_OSIntCtxSw'
!ERROR file 'OS_CORE.o': undefined symbol '_OSCtxSw'
!ERROR file 'os_cpu_c.o': undefined symbol '_OSTickISR'
!ERROR file 'OS_CORE.o': undefined symbol 'pop_gset1'
!ERROR file 'OS_CORE.o': undefined symbol 'pop_gset2'
!ERROR file 'OS_CORE.o': undefined symbol 'pop_gset3'
!ERROR file 'OS_FLAG.o': undefined symbol 'pop_gset4'
!ERROR file 'OS_FLAG.o': undefined symbol 'pop_gset5'
!ERROR file 'OS_CORE.o': undefined symbol '_OSStartHighRdy'
C:\iccv7avr\bin\imakew.exe: Error code 1
Done: there are error(s). Exit code: 1.

出0入0汤圆

发表于 2008-3-25 16:52:27 | 显示全部楼层
你在源程序里找找'push_gset1' 这些变量,看看定义在那里,_OSIntCtxSw' _OSCtxSw' _OSStartHighRdy' 是在汇编里的一个程序是不是没有声明成extern,_OSTickISR可以是汇编语言的也可以是C语言的,不过要用汇编写接口,icc好久不用了,我忘了当时怎么处理这个函数的了

出0入0汤圆

发表于 2008-3-25 16:57:17 | 显示全部楼层
感觉 ucos ii 移植到mega8上意义不大吧

出0入0汤圆

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

本版积分规则

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

GMT+8, 2024-5-20 16:35

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

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