lgx169 发表于 2008-11-19 13:58:58

NEC-etouch,帮忙看一下,由PM编译C后生成汇编文件,再用汇编文件重建项目再编译时就出错

NEC-etouch:

因为进中断时间有点长(10来个us吧),有些事要在进中断后,压栈前就要处理,所以要手工改汇编,但汇编好像不能直接就这样编译,是不是还有什么需要设置的?

请看:

http://cache.amobbs.com/bbs_upload782111/files_11/ourdev_504174.JPG

 (原文件名:未命名.JPG) 



在汇编文件中的描述:

....

        EXTRN        _@cprep

        EXTRN        _@RTARG0

        EXTRN        _@RTARG2

        EXTRN        _@RTARG4

        EXTRN        _@RTARG6

        PUBLIC        _vt_detec_INTAD

        PUBLIC        _vt_detec_INTP0

        PUBLIC        _opt_byte

        PUBLIC        _sampling

        PUBLIC        _result_volt

.....

另外说明一下,这个汇编文件完全是由PM编译C文件产生的,我没做任何修改。

本贴被 lgx169 编辑过,最后修改时间:2008-11-19,14:03:45.

lgx169 发表于 2008-11-24 16:05:12

也不行,那样的话,C都编译不过了。using fixed area for standard I这个我一直都没有用,要不然程序会有问题的。

本贴被 lgx169 编辑过,最后修改时间:2008-11-24,16:07:18.

liu.zy 发表于 2008-11-21 13:19:47

_@RTARG4这样的段是用于runtime library的,是C编译器自动产生的,所以直接编汇编,就找不到定义这些标号的位置。

你重新编译一下你的C项目,把compiler option-》start up routine 下面的using library取消试试。还有要取消using fixed area for standard I。
页: [1]
查看完整版本: NEC-etouch,帮忙看一下,由PM编译C后生成汇编文件,再用汇编文件重建项目再编译时就出错