【发布时间】:2014-08-15 09:34:09
【问题描述】:
我正在开发一个新项目,我想编写自己的协议。因此,我必须将一个变量(从 main.c)转换为一个中断处理程序文件。
这是我的 IRQHandler.h 文件:
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#ifndef stm32f4xx_EXTI0_IRQHAndler_H
#define stm32f4xx_EXTI0_IRQHAndler_H
void EXTI0_IRQHandler(void);
#endif
这是我的 IRQHandler.C 文件:
void EXTI0_IRQHandler(void)
{
if(GPIOA->IDR & 0x0001){
USART_SendData(USART1, ConvertedValue);
// GPIO_ToggleBits(GPIOD, GPIO_Pin_12);
EXTI_ClearFlag(EXTI_Line0);
// EXTI_ClearITPendingBit(EXTI_Line0);
}
EXTI_ClearITPendingBit(EXTI_Line0);
}
必要的变量是转换值,主文件中的内容..我无法转换...我知道这是一个非常简单的问题...但我现在无法解决..
感谢您的帮助! :)
【问题讨论】:
-
发布您在 main.c 中的代码会有所帮助 - 或者至少是
ConvertedValue的声明。 “转变”不是正确的词。您需要做的就是使变量可访问/可见的跨模块。不需要“转换”。 -
使用 .c 而不是 .C 作为文件扩展名。一些编译器(例如 GCC)会将 .C 文件编译为 C++。
-
我认为您的意思是“转移”或“访问”,而不是“转换”。
标签: c variables embedded global