Jag föredrar nog den traditionella metoden, så länge som man använder bitarnas namn när man sätter register, typ
TCCR1A = (1 << COM1B1) | (1 << COM1B0)| (0 << COM1A1) | (1 << COM1A0) | (1 << WGM10) | (0 << WGM11);
istället för TCCR1A = (1 << 0) | ... osv, blir lättare att se vad varje bit sätts till då. Portar får man väl döpa till lämpliga saker via defines antar jag.

//Häger

Den 25 oktober 2009 11.47 skrev Thomas Axelsson <thoax133@student.liu.se>:
Tjo,

vi borde kanske komma överens om hur vi specar portar i avr-koden så
det görs likadant överallt.

Finns ju den "traditionella" metoden typ:
#define LED_PORT PORTB
#define LED_DDR DDRB
#define LED_PIN 3

LED_DDR |= (1 << LED_PIN)
LED_PORT |= (1 << LED_PIN)

Sen finns det diverse makrouppsättningar

Den här ser rätt trevligt ut, även om man kanske vill lägga till så
det funkar på hela portar och inte enskilda pinnar
http://www.dragonsgate.net/pipermail/icc-avr/2004-September/004355.html

Gillade inte de här så mycket där de sätter flera med exvis
BITS_SET(..) istf (1 << BIT) | (1 << OTHER_BIT)
http://www.mtcnet.net/~henryvm/bitmacros/

//Thomas
_______________________________________________
Kmm09-3 mailing list
Kmm09-3@lists.lysator.liu.se
http://lists.lysator.liu.se/mailman/listinfo/kmm09-3