Files
AVR_Learning/Make AVR Examples/Chapter02_Programming-AVRs/blinkLED_AVR_style/blinkLED_AVRStyle.c

33 lines
712 B
C

/* Blinker Demo II */
#include <avr/io.h>
#include <util/delay.h>
#define LED PB0
#define LED_DDR DDRB
#define LED_PORT PORTB
#define DELAYTIME 200
#define setBit(sfr, bit) (_SFR_BYTE(sfr) |= (1 << bit))
#define clearBit(sfr, bit) (_SFR_BYTE(sfr) &= ~(1 << bit))
#define toggleBit(sfr, bit) (_SFR_BYTE(sfr) ^= (1 << bit))
int main(void) {
// Init
setBit(LED_DDR, LED); /* set LED pin for output */
// Mainloop
while (1) {
setBit(LED_PORT, LED);
_delay_ms(DELAYTIME);
clearBit(LED_PORT, LED);
_delay_ms(DELAYTIME);
}
return 0; /* end mainloop */
}