Hallo,
also, zu aller erst: Ich bin ganz neu bei dem Programmieren mit
Microcontrollern, also bitte nicht schimpfen, wenn das eine wirklich
doofer Frage ist. Ich habe auch schon online gesuch, aber leider nichts
gefunden.
Also, ich versuche "bloß" eine LED mit einem Taster anzuschalten und
dann mit bei einem erneuten Tasterndruck wieder auszuschalten.
Wenn ich mein Programm starte, dann kann ich mit dem Taster die LED
einschaltne, aber sobal ich den Taster wieder los lasse, geht die LED
auch wieder aus. Was mache ich falsch?
Programm:
1 | #include <avr/io.h>
|
2 |
|
3 | #define Taster1 3
|
4 | #define Taster2 4
|
5 |
|
6 | void setze_LED2 ()
|
7 | {
|
8 | PORTD |= (1<<PD6);
|
9 | }
|
10 | void loesche_LED2 ()
|
11 | {
|
12 | PORTD &= ~(1<<PD6);
|
13 | }
|
14 |
|
15 | int main(void)
|
16 | {
|
17 | //Ports richtig einstellen
|
18 | DDRD = 0b11100000;
|
19 |
|
20 |
|
21 |
|
22 |
|
23 | while(1)
|
24 | {
|
25 | if (PIND & (1<<Taster1))
|
26 | {
|
27 | setze_LED2();
|
28 | }
|
29 | if (PIND & (1<<Taster1))
|
30 | {
|
31 | loesche_LED2();
|
32 | }
|
33 | }
|
34 | }
|
Danke schon mal an alle, di emir helfen.