diff options
| -rw-r--r-- | Makefile | 2 | ||||
| -rw-r--r-- | hello.c | 49 | ||||
| -rw-r--r-- | hello.hex | 16 |
3 files changed, 39 insertions, 28 deletions
@@ -1,7 +1,7 @@ default: # compile for attiny86 with warnings, optimizations, and 1 MHz clock frequency - avr-gcc -Wall -Os -DF_CPU=1000000 -mmcu=attiny85 -o hello.o hello.c + avr-gcc -Wall -Os -DF_CPU=1048576 -mmcu=attiny85 -o hello.o hello.c avr-objcopy -j .text -j .data -O ihex hello.o hello.hex avrdude -c usbasp -p t85 -U flash:w:hello.hex:i @@ -1,32 +1,35 @@ + #include <avr/io.h> -// F_CPU frequency to be defined at command line #include <util/delay.h> -// LED is on pin 2, PB3 -#define LED PB3 -#define DELAY_MS 500 - -int main () { - uint8_t high = 0; - uint16_t ms = 0; - - DDRB |= (1 << LED); - PORTB &= ~(1 << LED); +int +main (void) +{ + DDRB |= _BV(DDB0); + DDRB |= _BV(DDB1); + DDRB |= _BV(DDB2); + DDRB |= _BV(DDB3); + DDRB |= _BV(DDB4); + while(1) { + PORTB ^= _BV(PB0); + _delay_ms(500); + PORTB ^= _BV(PB0); - while (1) { - high = !high; + PORTB ^= _BV(PB1); + _delay_ms(500); + PORTB ^= _BV(PB1); - if (high) { - PORTB |= (1 << LED); - } else { - PORTB &= ~(1 << LED); - } + PORTB ^= _BV(PB2); + _delay_ms(500); + PORTB ^= _BV(PB2); - for (ms = DELAY_MS; ms > 0; ms -= 10) { - _delay_ms(10); - } - } + PORTB ^= _BV(PB3); + _delay_ms(500); + PORTB ^= _BV(PB3); - return 0; + PORTB ^= _BV(PB4); + _delay_ms(500); + PORTB ^= _BV(PB4); + } } @@ -1,7 +1,15 @@ :100000000EC015C014C013C012C011C010C00FC064
:100010000EC00DC00CC00BC00AC009C008C011241E
-:100020001FBECFE5D2E0DEBFCDBF02D016C0E8CF05
-:10003000BB9AC39880E091E0892711F0C39A01C070
-:10004000C39822E330E0E3ECF9E03197F1F700C028
-:0E005000000021503109B9F7EFCFF894FFCF2F
+:100020001FBECFE5D2E0DEBFCDBF02D052C0E8CFC9
+:10003000B89AB99ABA9ABB9ABC9A51E042E034E0B5
+:1000400028E090E188B3852788BB69E979E981E0F8
+:10005000615070408040E1F7000088B3852788BB7D
+:1000600088B3842788BB69E979E981E061507040F1
+:100070008040E1F7000088B3842788BB88B38327DA
+:1000800088BB69E979E981E0615070408040E1F71F
+:10009000000088B3832788BB88B3822788BB69E9BF
+:1000A00079E981E0615070408040E1F7000088B359
+:1000B000822788BB88B3892788BB69E979E981E011
+:1000C000615070408040E1F7000088B3892788BB09
+:0600D000B9CFF894FFCF48
:00000001FF
|
