舉例打點(diǎn)函數(shù):
int ctTag( unsigned long tagID )
{
if ( amc_ctrl_port == NULL )
ct_init();
*amc_ctrl_port = tagID;
return( tagID );
}
int ctDataTag( unsigned long tagID )
{
if ( amc_data_port == NULL )
ct_init();
*amc_data_port = tagID;
return( tagID );
}
接下來(lái)需要對(duì)編譯目標(biāo)源代碼的makefile文件進(jìn)行修改,
1、 確定CodeTEST打點(diǎn)編譯選項(xiàng)
注釋去CC = ppc_8xx-gcc
令CC = ctcc -CTv –Ctkeep
–CTtag-allocator=$AMC_HOMElib toslinuxctlinuxwrap.map
其中-CTv選項(xiàng)提供版本號(hào)信息,–CTkeep選項(xiàng)將保留中間過(guò)程文件,通過(guò)*.i和*._i可察看源程序中的打點(diǎn)情況。
2、在編譯需要鏈接的*.o文件,增加libctHwic.a,即令
mginit_OBJECTS = mginit.o
libctHwic.a libctmem.a
3、令CodeTEST采用軟件方式打點(diǎn),注釋去
#CFLAGS = -g -O2 -Wall -fomit-frame-pointer -fno-strength-reduce -g -O2 –pipe,令
令
CFLAGS = -g -O2 -Wall -fomit-frame-pointer -fno-strength-reduce -g -O2 –pipe -DTAG_DEST=1
保存修改好的makefile文件。
使用上述的makefile文件,對(duì)待測(cè)代碼進(jìn)行打點(diǎn)編譯。打點(diǎn)編譯完成后將在當(dāng)前編譯目錄增加codetest.idb 和mginit.exe文件。