当前位置:  开发笔记 > 编程语言 > 正文

ATMEGA168A-F_CPU警告

如何解决《ATMEGA168A-F_CPU警告》经验,为你挑选了1个好方法。

我编写了以下代码,以使ATMEGA168A闪烁一个小的led:

#include 
#include 

#define F_CPU 1000000UL

int main(void)
{
    DDRB = 0b00000010;
    PORTB = 0b00000000;

    while(1)
    {
        PORTB ^= 1 << 1;
        _delay_ms(1000);
    }
}

编译器向我发出如下警告:

Warning     #warning "F_CPU not defined for "

这是此警告的来源(delay.h)

#ifndef F_CPU
/* prevent compiler error by supplying a default */
# warning "F_CPU not defined for "
# define F_CPU 1000000UL
#endif

我在这里做错了什么?我的声明不正确吗?



1> donjuedo..:

您需要定义 F_CPU在包含之前。您可以在编译时在命令行上执行此操作,也可以将其放在源代码中。定义此符号的目的是让构建系统知道特定CPU的运行速度。(即,您不必以此方式更改实际速度)。

有关讨论,请参见http://www.avrfreaks.net/forum/understanding-fcpu

推荐阅读
mobiledu2402851323
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有