реклама на сайте
подробности

 
 
> Новичковое: дребезг кнопок
ReedCat
сообщение Jan 25 2008, 09:48
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 109
Регистрация: 14-01-08
Из: Москва
Пользователь №: 34 069



Приветствую!

Начал пробовать свои силы в работе с FPGA.
Схемотехникой немного занимался, но очень давно (ещё когда PLM были "будущим электроники", а не её настоящим), поэтому сразу стали возникать "вопросы новичка". Буду признателен за разъяснения.

Итак, дано: макетная плата с Spartan-3E, ISE Webpack.
Прогоняю технологическую цепочку, чтобы понять, как "оно" работает, на примитивном тесте: светодиодиками на макетной плате помигать. Мигает. Дальше хочу задействовать имеющуюся кнопку для управления процессом (выключения светодиодика).

Придумывается что-то типа:


reg ONOFF;

...
always @(posegde clk) if ( ~ butt) ONOFF = ~ ONOFF;
...

assign LED = ONOFF & .... ;

И "меня терзают смутные сомнения", придуманная конструкция явно неустойчива к "дребезгу" контактов кнопки.
Какой стандартный ход применяют те, кто уже имеет опыт? Делят такт и опрашивают реже? А что если единственный опрос придётся как раз на время дребезга?


Посоветуйте, пожалуйста.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
rv3dll(lex)
сообщение Jan 25 2008, 11:34
Сообщение #2


Полное ничтожество
*****

Группа: Banned
Сообщений: 1 991
Регистрация: 20-03-07
Из: Коломна
Пользователь №: 26 354



--filtrovanije dannih luart
process (Bus2IP_Clk) --filtr po wr_s
begin
if Bus2IP_Clk = '1' and Bus2IP_Clk'event
then
wr_s_del_line <= wr_s & wr_s_del_line(0 to 7);
if wr_s_del_line(1 to 8) = "11111111"
then
wr_s_filtr <= '1';
elsif wr_s_del_line(1 to 8) = "00000000"
then
wr_s_filtr <= '0';
end if;
end if;
end process;
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 24th June 2025 - 07:56
Рейтинг@Mail.ru


Страница сгенерированна за 0.01447 секунд с 7
ELECTRONIX ©2004-2016