Ich möchte während ein delay ist einen Pin abfragen.
Der Quelltext sieht in etwa so aus:
1 | ...
|
2 | while(1){
|
3 | PORTB |= (1 << PB0);
|
4 | _delay_ms(5000);
|
5 | if ( !(PINB & (1<<PINB2)) ) {
|
6 | PORTB |= (1 << PB1);
|
7 | }
|
8 | }
|
9 | ...
|
Wenn jetzt aber der Benutzer im delay drückt passiert ja nichts. Wie
kann ich das umgehen. Ich habe schon überlegt Teil-Delays mit 20 ms zu
machen und dazwischen immer den Pin abfragen, das ist aber Quatsch weil
ich an anderen stellen auch Delays von 20 Sekunden verwende. Eine andere
Lösung wäre zum Beispiel ein Interrupt das auf einen Pin hört - So wie
ich das aver im AVR-GCC Tutorial gelesen hab geht das nicht.
Ich hoffe ihr könnt mir helfen.