Hi,
ich brauche Hilfe beim Erstellen einer Funktion.
Und zwar will ich einer Funktion ein Bit übergeben. Dieses Bit soll in
Form eines Bool's übergeben werden. Wenn dieser Boolsche "Eingang" an
der Funktion anliegt soll der Returnwert ("rw") wieder ausgegeben
werden. Wie mach ich das denn ? Ich stelle mir das so vor, aber das
klappt noch nicht. (Natürlich ...;-(
1 | char taster(bool bit)
|
2 | {
|
3 | static unsigned char zustand;
|
4 | char rw = 0;
|
5 |
|
6 | if(zustand == 0 && (bit)) //Taster wird gedrueckt (steigende Flanke)
|
7 | {
|
8 | zustand = 1;
|
9 | //usart_write_str("hallo");
|
10 | rw = 1;
|
11 | }
|
12 | else if (zustand == 1 && (bit)) //Taster wird gehalten
|
13 | {
|
14 | zustand = 2;
|
15 | rw = 0;
|
16 | }
|
17 | else if (zustand == 2 && !(bit)) //Taster wird losgelassen (fallende Flanke)
|
18 | {
|
19 | zustand = 3;
|
20 | rw = 0;
|
21 | }
|
22 | else if (zustand == 3 && !(bit)) //Taster losgelassen
|
23 | {
|
24 | zustand = 0;
|
25 | rw = 0;
|
26 | }
|
27 |
|
28 | return rw;
|
29 | }
|
in der Main würde das dann in etwa so aussehen :
1 | bool Eingang;
|
2 |
|
3 | taster(Eingang);
|
4 |
|
5 | If (taster() == 1) then ....
|
6 |
|
7 | If (taster() == 2) then ....
|
8 |
|
9 | If (taster() == 3) then ....
|
Sehr sehr vielen Dank für die Hilfe von Euch !!!!
Danke ...