#define scope (microchip studio)



我使用microchip studio我如何在main.c文件中定义F_CPU并使所有文件都"看到"?这个定义吗?

我在main.c中声明:

#include <avr/io.h>
#include "UART.h"
#define F_CPU 12000000

和在UART.c中我尝试使用这个定义:

ubrr_value = (F_CPU/(2*BAUD_RATE))-1;

i received this error:

Severity    Code    Description Project File    Line

错误'F_CPU'未声明(在此函数中首次使用)UART_TEST XXUART_TESTUART_TESTUART.c 55

如何在main.c文件中定义F_CPU并使所有文件都"看到"这个定义吗?

你不能。

您可以在编译器命令行参数中定义F_CPU。例如,gcc编译器接受-DF_CPU=12000000。并使用该定义编译所有源代码。

你可以重构你的代码,把F_CPU放到一个单独的文件中,并从所有需要它的文件中包含它。

// config.h
#deifne F_CPU 12000000
// main.c
#include "config.h"
// uart.c
#include "config.h"
...
ubrr_value = (F_CPU/(2*BAUD_RATE))-1;
...

相关内容

  • 没有找到相关文章

最新更新