-
Path: news-archive.icm.edu.pl!news.icm.edu.pl!news.interia.pl!not-for-mail
From: ToTylkoJa <m...@n...chce.tego.poczta.fm>
Newsgroups: pl.misc.elektronika
Subject: podstawy Verilog ktoś podpowie co jest żle?
Date: Tue, 29 Sep 2015 11:47:36 +0200
Organization: INTERIA.PL S.A.
Lines: 49
Message-ID: <mudmj8$a1e$1@usenet.news.interia.pl>
NNTP-Posting-Host: 114.120.225.195.static.bait.pl
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8Bit
X-Trace: usenet.news.interia.pl 1443519913 10286 195.225.120.114 (29 Sep 2015
09:45:13 GMT)
X-Complaints-To: u...@f...interia.pl
NNTP-Posting-Date: Tue, 29 Sep 2015 09:45:13 +0000 (UTC)
User-Agent: KNode/0.10.9
Xref: news-archive.icm.edu.pl pl.misc.elektronika:686634
[ ukryj nagłówki ]Witam
W ramach zapoznawania się z Verilogiem chciałem zrobić w FPGA prosty
licznik. Przykłady które znalazłem działały w oparciu o jedno wejście
zegarowe i wejście definiujące kierunek zliczania. Ja chcę zrobić coś jak
74193 czyli dwa wejściami zegarowe odpowiednio 'clkup' i 'clkdown'.
Wymyśliłem coś takiego:
always @(posedge pom_przy1 or posedge pom_przy2)
if (pom_przy2==1)
licz_wysw <= licz_wysw - 1;
else
if (pom_przy1==1)
licz_wysw <= licz_wysw + 1;
Niestety licznik ten poprawnie liczy tylko 'w górę' a przy liczeniu 'w dół'
przeskakuje po kilka stanów. Wydaje mi się że problem drgań przycisków
można pominąć ponieważ oba przyciski są filtrowane w taki sam sposób. Na
wszelki wypadek pokaże jak 'odkłócam' przyciski.
prosty_przy przy1(.but(but0),.zegar(pom_clk),.wy(pom_przy1));
prosty_przy przy2(.but(but1),.zegar(pom_clk),.wy(pom_przy2));
Jeśli dobrze rozumuję to tworzę dwie instancje (tak się to chyba nazywa)
modułu 'prosty_przy', czyli oba przyciski są traktowane tak samo. To może
jeszcze na koniec moduł 'prosty_przy'
module prosty_przy(
input but,zegar,
output wy
);
reg r0,r1,r2,r3,r4,r5;
always @(posedge zegar)
begin
r5=r4;
r4=r3;
r3=r2;
r2=r1;
r1=r0;
r0=but;
end
assign wy = r0 & r1 & r2 & r3 & r4 & r5;
endmodule
Nie jest to może najładniejszy przykład 'debouncera' ale chyba powinien
działać. Całość jest napędzana zegarem około 760 Hz. Czekam na jakieś
podpowiedzi.
MArek
Następne wpisy z tego wątku
- 29.09.15 12:13 Adam Górski
- 29.09.15 12:18 Grzegorz Kurczyk
- 29.09.15 12:35 ToTylkoJa
- 29.09.15 12:46 ToTylkoJa
- 29.09.15 12:50 Grzegorz Kurczyk
- 29.09.15 12:54 Grzegorz Kurczyk
- 29.09.15 13:12 Adam Górski
- 29.09.15 13:12 J.F.
Najnowsze wątki z tej grupy
- Propagation velocity v/c dla kabli RF
- Jakie natynkowe podwójne gniazdo z bolcem (2P+PE)
- Czujnik nacisku
- Protoków komunikacyjny do urządzenia pomiarowego
- Hiszpania bez pradu
- amperomierz w plusie
- 3G-nadal działa
- Historia pewnego miernika kalibratora
- Ustym 4k Pro i wyświetlacz
- Czemu rozwaliło celę?
- Wojna w portfelu
- Jaki trojfazowy licznik tuya lub podobny?
- Problem z dekoderem adresów
- Intel się wyprzedaje: po 10latach pchnęli pakiet kontrolny Altery za 1/4 kwoty zakupu
- Korekcja perspektywy
Najnowsze wątki
- 2025-05-10 Szczecin => Key Account Manager IT <=
- 2025-05-10 Rudno => Administrator sieci IT <=
- 2025-05-10 Wrocław => Controlling systems Consultant <=
- 2025-05-10 Rudno => IT network administrator <=
- 2025-05-10 Warszawa => Customer Service with Spanish + translation <=
- 2025-05-10 Warszawa => Senior Account Manager <=
- 2025-05-10 Trójmiasto => Head of Social Media <=
- 2025-05-10 Warszawa => C Programmer <=
- 2025-05-10 Warszawa => Java Developer <=
- 2025-05-10 powąchaj instrybutor
- 2025-05-10 Prawomocny wyrok. Rowerzysta nie ma pierwszeństwa, dojeżdżając do przejazdu
- 2025-05-09 Propagation velocity v/c dla kabli RF
- 2025-05-09 Warszawa => Senior Node.js Developer (doświadczenie z framework Nest.
- 2025-05-09 Patrolowanie kampusów
- 2025-05-09 Faktyczne opodatkowanie medianowej płacy w Polsce wyniosło 39,4% w lis. 2024r.