2 mal event in einem Prozess

Gast #1403577
Lesenswert?
• ▲
▼
Liebe Kollegen!

Ich habe eine RS232 und will gewisse Daten senden wenn ich eine Taste 
drücke. Das funktioniert super aber die Daten werden so oft gesendet bis 
ich die Taste loslasse. Normalerweise würde ich ein

if btn'event and btn = '0' (neg. Flanke)

verwenden aber das geht nicht in einem Prozess (mit State Machine), wo 
ich schon auf die steigende Taktflanke warte.

Wie mache ich das????


Danke
Midnight
Gast #1403604
Lesenswert?
• ▲
▼
Eine Frage: Wird das senden der Daten über RS232 auf steigender Flanke 
gestartet, oder wird dabei etwas anderes ausgeführt?
Denn derzeit klingt es so als würde das senden bei einem High-Pegel und 
nicht bei einer Flanke passieren.
Gast #1403607
Lesenswert?
• ▲
▼
Ja, ist von mir und ich bin ein Depp!

Ich brauch ja nur

elsif (clk'event and clk='1') then
if (button = '1' and button_pressed = '0') then
 -- Anw.
button_pressed := '1';
elsif (button = '0' and button_pressed = '1') then
button_pressed := '0';
end if;

Ich hab nicht daran gedacht.

DANKE

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren