-
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
- Kod zniżkowy w TME do 26.09.2025
- SFP, 10G, simplex sc/apc
- [słabe wiatry powodują - przyp. JMJ] Energetyczny paraliż w Niemczech
- NxtPaper
- Programiści nie przestają zadziwiać świat
- Długi kabel zasilający a na końcu procek
- Dlaczego nam nie idzie
- Co czujnik to inna temperatura
- Jak naprawić pilota
- Dlaczego TMP wer. 2.0 nie może być sprzedawany jako patyk USB lub karta PCIe 1x?!?
- produkcja w UE
- Pamięć SRAM nie działa z Z80182
- plyta indukcyjna - naprawa
- założyłem kamerę
- syrenki alarmów
Najnowsze wątki
- 2025-09-18 pierwszy tel kupiłem za 1250zł
- 2025-09-17 jak się kupuje elektryczny?
- 2025-09-17 Kod zniżkowy w TME do 26.09.2025
- 2025-09-17 Ukraińcy uważają polski sys. antydronowy za najlepszy na Świecie, a rząd w III Rzeczy (pospolitej) woli sys. niemiecki
- 2025-09-17 Ukraińcy uważają polski sys. antydronowy za najlepszy na Świecie, a rząd w III Rzeczy (pospolitej) woli sys. niemiecki
- 2025-09-17 Warszawa => Dyrektor pionu IT <=
- 2025-09-17 Rzeszów => International Freight Forwarder <=
- 2025-09-16 China => Production Coordinator / Representant Product Dev <=
- 2025-09-16 Warszawa => Project Manager (AI and innovation) <=
- 2025-09-15 "Jeden telefon z Waszyngtonu i nasze samoloty nie wystartują" - czyli to co każdy koder wie
- 2025-09-15 UE chce uruchomić SI "Chat Control" na kompach wszystkich euroPejczyków
- 2025-09-15 Sejm odrzucił zakaz idelogii banderyzmu
- 2025-09-15 Nieprawidłowe parkowanie
- 2025-09-15 Poznań => Konsultant SAP HCM <=
- 2025-09-15 Warszawa => Specjalista rekrutacji IT <=