新版数采仪问题解决全记录-烧写程序不能正确执行

对烧写文件进行了整理,最后发现不能正常执行。经调试检查,发现
如果BSS 段的长度为0, 则crt0.s的以下部分程序执行会出错。
因为D1为0,因此,执行完SUBQ.L    #1,D1 后D1会变为全F,就会一直在此循环。
//MOVE.L    #_clean1,A1
//MOVE.L    #_size,D1
//LSR.L    #2,D1
//LOOP    CLR.L    (A1)+
//SUBQ.L    #1,D1
//BNE    LOOP

为解决此问题,在main.c中定义了变量int i,使得BSS 段的长度不为0。


posted on 2008-10-22 16:59  坚强地活着  阅读(224)  评论(0编辑  收藏  举报

导航