#include <avr/io.h>
#include <util/delay.h>
#define SET_1(a,b) a|=(1<<b)
#define CLE_0(a,b) a&=~(a<<b)
int main(void)
{
SET_1(DDRD,5);
while(1)
{
CLE_0(PORTD,5);
_delay_ms(100);
SET_1(PORTD,5);
_delay_ms(100);
}
}
这样在atmega64上运行led不闪烁,把
CLE_0(PORTD,5);
改成
PORTD=0XCF&PORTD;
这样会不停的闪烁。
不解,请赐教。 |