打印

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

[复制链接]
3178|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
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

粉丝