S
somf0872
Guest
Kan iemand me helpen hoe dat de for-lus werkzaam is in deze code?Ik heb een aantal stap voor stap uitleg.
Met vriendelijke groet,
- X --
.............
statische vluchtige uint8_t geleid; / / gebruik vluchtige wanneer variabele is toegankelijk via interrupts
int main (void)
(
unsigned char toetsen;DDRB = 0xff; / / gebruik maken van alle pinnen van PORTB voor de output
PORTB = 0xff;
DDRD = 0x00; / / gebruik maken van alle pinnen op poort D voor input
PORTD = 0xff; / / activeren interne pull-upPas = 1; / / init variabele die de LED staatfor (;
<img src="http://www.edaboard.com/images/smiles/icon_wink.gif" alt="Wink" border="0" />
(/ / Loop forever
toetsen = ~ Pind; / / Lees input poort met sleutels (actief-laag)
if (toetsen & 1)
Pas = 1;
else if (toetsen & 2) / / priority encoder: als er meerdere toetsen worden ingedrukt,
Pas = 2; / / alleen de laagste toets wordt herkend
else if (toetsen & 4)
Pas = 4;
else if (toetsen & 8)
Pas = 8;
else if (toetsen & 0x10)
LED = 0x10;
else if (toetsen & 0x20)
LED = 0x20;
else if (toetsen & 0x40)
LED = 0x40;
else if (toetsen & 0x80)
Pas = 0x80;
if (toetsen)
PORTB = ~ geleid; / / bijbehorende Set LED-toets ingedrukt als
)
)
.............
Met vriendelijke groet,
- X --
.............
statische vluchtige uint8_t geleid; / / gebruik vluchtige wanneer variabele is toegankelijk via interrupts
int main (void)
(
unsigned char toetsen;DDRB = 0xff; / / gebruik maken van alle pinnen van PORTB voor de output
PORTB = 0xff;
DDRD = 0x00; / / gebruik maken van alle pinnen op poort D voor input
PORTD = 0xff; / / activeren interne pull-upPas = 1; / / init variabele die de LED staatfor (;
<img src="http://www.edaboard.com/images/smiles/icon_wink.gif" alt="Wink" border="0" />
(/ / Loop forever
toetsen = ~ Pind; / / Lees input poort met sleutels (actief-laag)
if (toetsen & 1)
Pas = 1;
else if (toetsen & 2) / / priority encoder: als er meerdere toetsen worden ingedrukt,
Pas = 2; / / alleen de laagste toets wordt herkend
else if (toetsen & 4)
Pas = 4;
else if (toetsen & 8)
Pas = 8;
else if (toetsen & 0x10)
LED = 0x10;
else if (toetsen & 0x20)
LED = 0x20;
else if (toetsen & 0x40)
LED = 0x40;
else if (toetsen & 0x80)
Pas = 0x80;
if (toetsen)
PORTB = ~ geleid; / / bijbehorende Set LED-toets ingedrukt als
)
)
.............