[求助] 同样的代码,换个位置就不行

jamesthe   2012-12-24 15:53 楼主
练习使用SysTick中断,把SysTickHandler放在mian。c下不能工作
把SysTickHandler放在stm32f10x_it.c下就好了 这是什么原理啊 还是编译器的问题
我用的是keil4
这是代码
char Tab[9]={0x10,0x20,0x40,0x20,0x10,0x00,0x10,0x00,0x10};
char i=0;
void SysTickHandler(void)
{
        if(i == 9)
        i = 0;
        GPIO_Write(GPIOA, Tab);
        i++;
}

回复评论 (6)

把it.c中的函数注释掉
点赞  2012-12-24 16:44
之前已经把it.c从工程里删除了
点赞  2012-12-24 16:57
.s里面安排你的中断向量
点赞  2012-12-25 09:18
不懂啊, 搜狗截图_2012-12-25_09-33-31.png
.s是建立工程时自动添加的,不知道怎么改
点赞  2012-12-25 09:34
不要考虑什么。s
你把it。c里面的函数原本不动的考到main
可以用的
点赞  2012-12-25 14:04
__Vectors       DCD     __initial_sp              ; Top of Stack
...
                DCD    Your_SysTick_Handler_Name           ; SysTick Handler
...
把这段
SysTick_Handler PROC
                EXPORT  SysTick_Handler           [WEAK]
                B       .
                ENDP
...
改成
        EXPORT  Your_SysTick_Handler_Name           [WEAK]

根儿上是在这儿
点赞  2012-12-25 14:15
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复