Например TDA7294

Форум РадиоКот • Просмотр темы - Накопительный бегущий огонь
Форум РадиоКот
Здесь можно немножко помяукать :)





Текущее время: Чт апр 18, 2024 03:33:12

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 2 ] 
Автор Сообщение
Не в сети
 Заголовок сообщения: Накопительный бегущий огонь
СообщениеДобавлено: Чт мар 10, 2016 13:56:45 
Родился

Зарегистрирован: Чт мар 10, 2016 13:51:40
Сообщений: 1
Рейтинг сообщения: 0
Здравствуйте!

Было дано задание: создать бегущий огонек на базе ПЛИС Cyclone IV. Собственно, благодаря мануалам, удалось выполнить задание. Код такой:
Код:
module LED
(
   input CLK,
   output [7:0] LED_Out,
   input RST
);

   reg [8:0] count = 8'b1;
   reg [24:0] ctr = 24'b0;
   always @(posedge CLK )
      begin
      
         if (RST == 0)
         begin
            ctr = 24'b0;
         end
         ctr = ctr + 1;
         
         if(ctr == 0)
         begin
            count[8:0] <= {count[0], count[8:1]};
         end

      end

   assign LED_Out = count [7:0];
endmodule


Вопрос в другом: как сделать бегущий огонь с накоплением? Нужно чтобы также бежал светодиод, доходил до последнего светодиода ленты и оставался гореть. Затем новый огонек. И повторяться это должно до момента, пока все огни не зажгутся. После этого все начинается заново.
Как я понял, нужно оперировать с count, но так и не смог разобраться в том, как реализовать накопление. Прошу помощи.
Спасибо!


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Накопительный бегущий огонь
СообщениеДобавлено: Чт мар 10, 2016 18:01:43 
Друг Кота
Аватар пользователя

Карма: 9
Рейтинг сообщений: 96
Зарегистрирован: Пн июл 13, 2009 14:37:39
Сообщений: 3961
Откуда: Московская область, наукоград.....
Рейтинг сообщения: 0
Можно пойти "влоб". Подготовительные операции:
1) Выписываете все возможные состояния столбиком.
00000000
00000001
00000010
....
11111110
11111111
2) Подсчитываете их количество, это число будет числом состояний счетчика.
Собственно синтез
3) Описывается счетчик на полученное число состояний (максимальное значение будет на 1 меньше числа строк)
4) По показаниям счетчика формируется блок сравнения в условиях которого прописывается код включения светодиодов.
5) работа проверяется либо в железе, либо в симуляторе.

_________________
Загружая на вход компьютера "мусор", на выходе получим "мусор^32".
PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 2 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 7


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y