-
晕了 兴奋过头了
虽然能生成.OUT文件
但是第一次build 还是有错误
今夜无眠了
-
谢谢大家支持 基本上解决掉了 我分析可能是编译器问题
最后的一个错误是 -E定位不了
我把程序的起始位置重新命名 比如改start 为asdf
如下:
ASM:
.title " add.asm "
.mmregs ;预定义的寄存器
.global asdf
.text ;程序区
asdf: SSBX XF ;XF 置1
CALL Delay ;调用延时程序
RSBX XF ;XF 清0
CALL Delay ;调用延时程序
B asdf ;跳转到程序开头循环执行
Delay:
STM #0x26,AR1 ;循环次数1000
LOOP1:
STM #0x55,AR2 ;循环次数5000
LOOP2:
BANZ LOOP2,*AR2- ;如果AR2 不等于0,AR2 减1,再判断
BANZ LOOP1,*AR1- ;如果AR1 不等于0,AR1 减1,跳转到LOOP1
RET
.end
cmd:
-e asdf
/*-e start*/
MEMORY {
PAGE 0:VECT: org=0080h len=0080h
PARAM: org=100h len=0F00h
PAGE 1:DARAM: org=1000h len=1000h
}
SECTIONS
{
.text :> PARAM PAGE 0
.vectors :> VECT PAGE 0
STACK :> DARAM PAGE 1
.bss :> DARAM PAGE 1
.data :> DARAM PAGE 1
}
结果:
compiler film 没问题
build 没问题
rebuid all 则出现如下问题:
"d:\ti_ccs\c5400\cgtools\bin\cl500" -@"Debug.lkf"
>> warning: entry point other than _c_int00 specified
Build Complete,
0 Errors, 1 Warnings, 0 Remarks.
然后我就不知道什么原因了 欢迎各位高手把这个问题继续讨论下去
虽然这个问题对于高手来说可能很简单,但是对于我们这些菜鸟可能要闷好些天
-
存在的
我自己编写的东西没有放在默认的\ti_ccs\myprojects里 而是把工程所有的文件都指定另外的目录
我所理解的-E命令是用来连接程序用的,定位一个起始位置,因为CMD就是用来 LINK和资源配置的,首先指定了程序的入口.我刚看不久 , 不知道这样的理解是否正确,还请指正
-
ccs 2('5000)
-
大家一起研究吧,在于过程,不在结果呵呵,解决问题的时候总能学到很多东西
比自己看强多了,记忆也深刻
以后还要多讨论啊
-
好象是-E START 没有连接上
我上2个汇编程序 都单独compier OK
但是一连CMD文件就出现-e flag does not specify a legal symbol name
但是前面我已经有了 .def start
我的
compile 设定为:
-g -q -fr"E:\dsp_exercis\asm_add\Debug" -d"_DEBUG" 默认的
linker设定:
-q -c -m".\Debug\asm_add.map" -o".\Debug\asm_add.out" -x
-
前面的错误基本上找到了,但是连结的时候出现
---------------------------- asm_add.pjt - Debug ----------------------------
"d:\ti_ccs\c5400\cgtools\bin\cl500" -g -q -fr"E:/dsp_exercis/asm_add/Debug" -d"_DEBUG" -@"Debug.lkf" "add.asm"
"d:\ti_ccs\c5400\cgtools\bin\cl500" -g -q -fr"E:/dsp_exercis/asm_add/Debug" -d"_DEBUG" -@"Debug.lkf" "vectors.asm"
"d:\ti_ccs\c5400\cgtools\bin\cl500" -@"Debug.lkf"
>> E:\dsp_exercis\asm_add\add.cmd, line 4: error:
-e flag does not specify a legal symbol name
Build Complete,
1 Errors, 0 Warnings, 0 Remarks.
-
谢谢各位 不过我觉得好象不是 这个语句的问题
但是我又想不出来问题在哪,
我从书上看的的用法就是 .title "string"