Login schrieb:
> Ich möchte die Flankenerkennung von Peter verwenden.
> ...
> Aber ich bin zu doof dazu.
Ich möchte dir da keineswegs widersprechen. Aber was du an Beispiel
zeigst, ist unverständlich.
Merke: Eine Flankenerkennung soll erkennen, ob sich in einem oder
mehreren Signalen seit der letzten Flankenerkennung etwas geändert hat.
Also etwa so:
1 | var AlleMeineFlanken,
|
2 | MerkeAlleMeineBits : IrgendeinpassenderTyp;
|
3 |
|
4 | AlleMeineFlanken = AlleMeineBits XOR MerkeAlleMeineBits;
|
5 | if AlleMeineFlanken <> 0
|
6 | then
|
7 | begin
|
8 | for every Bit in AlleMeineFlanken do
|
9 | if diesesBit=1 then behandle_es
|
10 | MerkeAlleMeineBits = AlleMeineBits;
|
11 | end
|
kurzum, zum Erkennen von Flanken muß man den Ist-Zustand mit dem
vorherigen Zustand vergleichen, der vor der letzten Behandlung der
geänderten Bits war. Und wenn man die Unterschiede ermittelt hat, muß
man den jetzt aktuellen Zustand für später speichern.
ist doch easy!
W.S.