那应该找到原因了,ADC_cal这个函数是默认在ROM里的, 看下面的CMD:
/* Allocate ADC_cal function (pre-programmed by factory into TI reserved memory) */
.adc_cal : load = ADC_CAL, PAGE = 0, TYPE = NOLOAD
ADC_CAL位于0x380080, 也就是你软仿的时候,调用这个函数,会去运行地址0x380080这个地址的程序,而实际上这个地方没有程序在那里, 可能执行了一下其他的随机指令导致堆栈出问题,从而回到了cint00.
如果你有实际的评估版,0x380080地址处应该就是TI出厂时已写好ADC_cal程序在那里.
1. 这些例子应该不能用来软件仿真的, 最好是有硬件连上仿真.
2. 或者你可以改一下CMD,把ADC_cal确信能编进去,应该也没有问题.
|