好的,这是一段使用 C 语言控制 LED 灯的代码。这里假设你已经接好了 LED 灯和微控制器,并且 LED 灯的控制引脚已经连接到了微控制器的一个 I/O 口(如 PORTB.0):
#include <avr/io.h>
int main(void) {
DDRB |= (1 << 0); // 设置 PORTB.0 为输出
while (1) {
PORTB |= (1 << 0); // 打开 LED 灯
_delay_ms(500); // 延时 500 毫秒
PORTB &= ~(1 << 0); // 关闭 LED 灯
_delay_ms(500); // 延时 500 毫秒
}
}
上面的代码会不断地打开和关闭 LED 灯,每次打开和关闭之间间隔 500 毫秒。DDRB
是一个特殊的寄存器,用来控制 I/O 口的方向(输入或输出)。在这里,我们使用位运算符 |=
将 PORTB.0 设为输出。PORTB
是另一个特殊的寄存器,用来控制 I/O 口的电平(高或低)。使用位运算符 |=
和 &=
可以分别将 PORTB.0 设为高电平(打开 LED 灯)和低电平(关闭 LED 灯)。
请注意,这段代码中使用了 _delay_ms
函数,它是 AVR 系列微控制器的内置函数,用来延时指定的毫秒数。你需要在你的程序中包含 `<util/