diff options
-rw-r--r-- | .gitignore | 3 | ||||
-rw-r--r-- | Makefile | 10 | ||||
-rw-r--r-- | led.c | 10 |
3 files changed, 11 insertions, 12 deletions
diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..9c16f5b --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +*.o +*.bin +*.hex @@ -1,12 +1,12 @@ DELAY?=1000 +SRCFILE?='led' default: - avr-gcc -DDELAY=${DELAY} -Os -DF_CPU=16000000UL -mmcu=atmega328p -c -o led.o led.c - avr-gcc -o led.bin led.o - avr-objcopy -O ihex -R .eeprom led.bin led.hex + avr-gcc -Wall -Wextra -DDELAY=${DELAY} -Os -DF_CPU=16000000UL -mmcu=atmega328p -c -o ${SRCFILE}.o ${SRCFILE}.c + avr-gcc -mmcu=atmega328p -o ${SRCFILE}.bin ${SRCFILE}.o flash: - sudo avrdude -F -V -c arduino -p ATMEGA328P -P /dev/ttyACM0 -b 115200 -U flash:w:led.hex + sudo avrdude -F -V -c arduino -p ATMEGA328P -P /dev/ttyACM0 -b 115200 -U flash:w:${SRCFILE}.bin clean: - rm -f led.o led.hex led.bin + rm -f ${SRCFILE}.o ${SRCFILE}.bin @@ -7,16 +7,12 @@ int main(void) { // назначаем PORTB5 на "вывод" (output) - DDRB = DDRB | (1 << DDB5); + DDRB |= (1 << DDB5); // вечный цикл... while(1) { - // сигнал на PORTB5 - PORTB = PORTB | (1 << PORTB5); - // пауза... - _delay_ms(DELAY); - // сигнал выкл. - PORTB = PORTB & ~(1 << PORTB5); + // переключаем сигнал на PORTB5 + PORTB ^= (1 << PORTB5); // пауза... _delay_ms(DELAY); } |