我使用atmega168a并在工具&gt;上配置保险丝<设备编程> AVR龙&gt;保险丝&gt; (单击)CKDIV8将其设置为8 MHz内部时钟。
我需要在C代码中添加哪些代码才能设置该保险丝?
答案 0 :(得分:3)
如果您在外部设置保险丝,作为单独的步骤,您不需要在C中使用任何其他代码。
如果以编程方式设置保险丝,则无需在外部设置保险丝。现在(每个)程序在运行时决定。此代码适用于atmega32u2:
CLKPR = 1&lt;&lt; CLKPCE;
//将预分频器设为1
CLKPR = 0;
在这两种情况下,您都应该设置F_CPU
:
#define F_CPU 8000000ul
在您的来源中,甚至更好CFLAGS
CFLAGS + = -DF_CPU = 8000000ul
在Makefile
中,以便其他人知道核心频率:例如_delay_ms
中的<util/delay.h>
。