tiny6410的开发板的一个裸机跑马灯程序,不知道问题出在哪儿?从rvds中debug后,在AXD启动的同时,弹出一个对话框提示"Failed to set breakpoint"
之后在单步调试的时候一直停留在bl Main
全速运行后,跳到Disassembly。。。
代码如下:
//init.s
IMPORT Main
AREA |C$$code|, CODE, READONLY
global start
start
bl Main
END
//main.c
// 功能:四个发光二极管LED将轮流闪烁,最终实现流水灯效果
// LED1,LED2,LED3,LED4 = GPK4,GPK5,GPK6,GPK7
#define rGPKCON0 (*(volatile unsigned *)(0x7F008800))
#define rGPKCON1 (*(volatile unsigned *)(0x7F008804))
#define rGPKDAT (*(volatile unsigned *)(0x7F008808))
#define rGPKPUD (*(volatile unsigned *)(0x7F00880C))
void DelayMs(int time)
{
volatile unsigned int i,j;
for(i=0 ; i<2000000 ; i++)
{
for(j=0 ; j<time ; j++)
{
}
}
}
void GpioInit(void)
{
rGPKCON0 = 0x11111111;
rGPKCON1 = 0x11111111;
rGPKDAT = 0xFFFF;
rGPKPUD = 0x00000000;
}
void LedTest(void)
{
volatile unsigned int i;
while(1)
{
for(i=0 ; i<4 ; i++)
{
rGPKDAT = ~(1<<(i+4));//GPK4,GPK5,GPK6,GPK7
DelayMs(10);
}
}
}
void Main(void)
{
GpioInit();
LedTest();
}
请高人指点一下。。。。。