求助:将c源程序分成两个后,系统就不正常

2019-07-20 15:12发布

原99年做的tms320vc33系统,一直是一个c程序,显示计算均正常。现在因为要增加程序功能,想分工合作。第一步只是将原程序拆成了两个:1.c(主控程序)和2.c(函数),如果在1.c中使用include “2.c”语句,也均正常,但不用include “2.c”,直接将1.c和2.c加入project中形成1.obj和2.obj,再链接成.out,系统就无显示。使用的.cmd一直没改过,不知哪儿错了,请各位大侠指教。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
14条回答
hufangling
2019-07-21 16:06
就是改为头文件调用了系统就不显示了
文件一kz:
#include "func_kz.h"
#include "func_js_ext.h"
#include "func_tx_ext.h"
文件二js:
#include "func_kz_ext.h"
#include "func_js.h"
#include "func_tx_ext.h"
文件三tx
#include "func_kz_ext.h"
#include "func_js_ext.h"
#include "func_tx.h"
cmd中
MEMORY
{
   VECS:   org = 0x1000 ,len = 0x40
   
   EXT0:   org = 0x3000,len = 0x20000   /* EXTERNAL MEMORY org = 0x3000,len = 0x1d000 */
   EXT1:   org = 0x1100,len = 0x0100        /*1e00 org = 0x1100, len = 0x0100 */
   
   RAM0:   org = 0x809800,len = 0x400         /* RAM BLOCK 0 */
   RAM1:   org = 0x809c00,len = 0x400         /* RAM BLOCK 1 */  
   RAM2:   org = 0x800000,len = 0x4000   /* RAM BLOCK 2        */
   RAM3:   org = 0x804000,len = 0x4000   /* RAM BLOCK 3        */
}

/* SPECIFY THE SECTIONS ALLOCATION INTO MEMORY */

SECTIONS
{
   .asect:  > VECS      
   .text:   > EXT0  
   .cinit:  > RAM3  
   .const:  > EXT0   
   .data:   > EXT0   
   .stack:  > RAM0                 
   .sysmem: > RAM1  
   .bss:    > EXT0          
}
形成的map中
MEMORY CONFIGURATION

           name     origin    length      used    attributes    fill
         --------  --------  ---------  --------  ----------  --------
         VECS      00001000  000000040  00000000     RWIX      
         EXT1      00001100  000000100  00000000     RWIX      
         EXT0      00003000  000020000  0000cc21     RWIX      
         RAM2      00800000  000004000  00000000     RWIX      
         RAM3      00804000  000004000  00002270     RWIX      
         RAM0      00809800  000000400  00000400     RWIX      
         RAM1      00809c00  000000400  00000000     RWIX      


SECTION ALLOCATION MAP

output                                  attributes/
section   page    origin      length       input sections
--------  ----  ----------  ----------   ----------------
.asect     0    00001000    00000000     UNINITIALIZED
.text      0    00003000    0000a6f7     
.cinit     0    00804000    00002270     
.const     0    00003000    00000000     UNINITIALIZED
.data      0    0000d6f7    00000014     
.stack     0    00809800    00000400     UNINITIALIZED
.sysmem    0    00809c00    00000000     UNINITIALIZED
.bss       0    0000d70b    00002516     UNINITIALIZED
内存小模式,bss段未超过64K呀

一周热门 更多>