求助下斑竹和各位高手:一直都提示我没有定义变量(内详)

[复制链接]
 楼主| wu0232 发表于 2008-11-16 16:34 | 显示全部楼层 |阅读模式
正在调STM32

用了systick计数器,它每次计满到1ms后,进入中断程序;

中断程序中有个变量TimingDelay,每进入一次,自减1,程序如下:
void SysTickHandler(void)
{
  if(TimingDelay != 0)
      TimingDelay--;
}


在main.c文件中,定义一个Delay函数,程序如下:

void Delay(u32 param)
{
      SysTick_CounterCmd(SysTick_Counter_Enable);
      TimingDelay = param;
      
      while(TimingDelay != 0)
      {
      }
      
      SysTick_CounterCmd(SysTick_Counter_Disable);
      SysTick_CounterCmd(SysTick_Counter_Clear);
      
  
}



问题就来了,这个全局变量TimingDelay,如果我在stm32f10x_it.c文件中定义的话,编译main.c会报错
Error[Pe020]: identifier "TimingDelay" is undefined H:STM32_bookchapter_USART_ADCstm32_usart_adc_examplemain.c 397 

如果在main.c中定义的话,编译stm32f10x_it.c还是报错
Error[Pe020]: identifier "TimingDelay" is undefined H:STM32_bookchapter_USART_ADCstm32_usart_adc_examplestm32f10x_it.c 158 



问题在哪? 晕哪~~~
席君秋 发表于 2008-11-16 16:37 | 显示全部楼层

在stm32f10x_it.c文件中定义的话

在main.c中声明是外部变量即可!
 楼主| wu0232 发表于 2008-11-16 16:50 | 显示全部楼层

非常感谢

已经解决,非常感谢~ 

原来是这个原因~~


您需要登录后才可以回帖 登录 | 注册

本版积分规则

26

主题

130

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部

26

主题

130

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部