注册会员
- 积分
- 88
- 威望
- 48
- 贡献
- 24
- 兑换币
- 24
- 注册时间
- 2016-4-13
- 在线时间
- 8 小时
- 毕业学校
- nudt
|
在iar下我进行了程序调试
我的部分程序是:
void main()
{
//关中中断
DisableInterrupts;
//硬件初始化
init();
//SPILCD_Init();
//初始化投影参数
InitProjectPara();
//初始化传感器参数
InitSensorPara();
//开总中断
EnableInterrupts;
//传感器标定z
speed_Init();
parainit();
//开PIT0中断
enable_pit_int(PIT0);
}
其中:
void enable_pit_int(uint8 pitno)
{
PIT_TCTRL(pitno)|=(PIT_TCTRL_TIE_MASK); //开pit中断
switch(pitno)
{
case 0:
enable_irq(68); //开接收引脚的IRQ中断
break;
case 1:
enable_irq(69); //开接收引脚的IRQ中断
break;
case 2:
enable_irq(70); //开接收引脚的IRQ中断
break;
case 3:
enable_irq(71); //开接收引脚的IRQ中断
break;
}
}
程序上都似乎没有什么问题。在分步调试的时候,enable_pit_int(PIT0);出现了问题,显示:
Target is running,fail to stop the target.Maybe the target need to reset.Try again?
点击yes,自动跳转至crt0.s文件:
SECTION .noinit : CODE
EXPORT Reset_Handler
Reset_Handler ;本来是命名为 __startup 的,改为 Reset_Handler 需要修改 vectors.h
CPSIE I;
MOV r0,#0 ; Initialize the GPRs 初始化寄存器
MOV r1,#0
MOV r2,#0
MOV r3,#0
MOV r4,#0
MOV r5,#0
MOV r6,#0
MOV r7,#0
MOV r8,#0
MOV r9,#0
MOV r10,#0
MOV r11,#0
MOV r12,#0
import start
BL start ; call the C code 调用 C语言 编写的 start 函数
__done
B __done
END
分步时,在BL start 这一步调试再次出现上面那条WARNING
求教各位大神,这是怎么回事?这一套程序其他同学的板子可以正常运行,但是我的不可以。但是我的板子在运行一些Keil的历程时能够正常运行,pit也能正常工作。实在困扰太久,求教各位大神!!!! |
|