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

 
 
 
Reply to this topicStart new topic
> помогите с автоматом, начинающему любителю электроники
kuzyara
сообщение May 25 2009, 06:32
Сообщение #1





Группа: Новичок
Сообщений: 4
Регистрация: 22-05-09
Пользователь №: 49 419



Добрый день! Я обычный студент технического вуза и понял, что электроника и схемотехника это жутко интересно, Но ... несмотря на то, что я более-менее разобрался с триггерами, транзисторами и основами электротехники, у меня возникают непреодолимые мной сложности и проблемы по переходу от абстрактного и структурного синтеза Автоматов к их плато-паяльниковой реализации.
Поэтому я прошу Вас, кого-нибудь из гуру электроники, стать моим Наставником в этом непростом и увлекательном направлении современной науки, и предоставить мне возможность онлайн общаться с Мастером электроники посредством icq и подобных программ, дабы ниспослать мне, сыну юному, просвещение и благодать неземную.

Посему... поскажите, как попроще реализовать в воркбенче или протеусе следующие элементы автомата(две кнопки, два таймера(мсек), кто быстрее нажмет, у того лампочка загорается):
  • генератор случайных чисел(от 1 до 9 сек) для немгновенного старта игры
  • вычитающий счетчик, который 1)это случайное число примет от ГСЧ 2) будет вычитать каждый такт 3)обнуляться при старте
  • счетчик с дешифратором на семисегментные цифровые индикаторы, который будет обуляться при старте, 2шт


№2
Код
Задание:

Играют два игрока. После запуска происходит выдержка времени (от 1 до 9 секунд), после чего загорается раздражитель (лампа). С момента загорания лампы отсчитывается время, до одной секунды, производится вывод времени на индикаторы, в миллисекундах. Если в течение секунды нажимается кнопка одного из игроков, на индикаторе остается время с момента загорания лампы до нажатия кнопки, время другого же идет, до тех пор, пока не будет нажата его кнопка. В случае одновременного нажатия обоих кнопок производится остановка времени обоих игроков. В момент нажатия кнопки игроком, оказавшимся первым, загорается лампа этого игрока.
Перевод в начальное состояние и старт игры осуществляется кнопками  START и STOP.



Я вот тут начал кой-чего делать, с операционными автоматами разобрался, а вот как синхронизировать с таймером не знаю... и решил выпутаться так: разбил все на блоки(км1, км2, ...) км0-остановка), и пока счетчик команд не перейдет в следующее значение будет выполняться текущая команда, список условий и выходов в таблице, выходы будут логическим элементом "И" соединены с генератором тактов 1кгц, чтоб выполнялись по такту.

Разумно ли это? или можно сделать получше каким-нибудь другим способом?

Сообщение отредактировал kuzyara - May 25 2009, 06:35
Go to the top of the page
 
+Quote Post
rv3dll(lex)
сообщение May 25 2009, 07:32
Сообщение #2


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

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



с гсч подожди - потом поговорим.

вариант такой.

счётчик тактируется импульсами частотой несколько герц.
есть два регистра защёлки и индикация подключенная к ним.
2 комплекта антидребезговой схемы кнопок на rs триггерах.

нажимаешь кнопку по переднему фронту нажатия в защёлке фиксируется состояние счётчика. защёлка по фронту.

давай пока с этим разберёмся - потом пойдём дальше?
Go to the top of the page
 
+Quote Post
kuzyara
сообщение May 26 2009, 03:42
Сообщение #3





Группа: Новичок
Сообщений: 4
Регистрация: 22-05-09
Пользователь №: 49 419





вот, разобрался, в протеусе похимичил маленько. Идем дальше? так как там с гсч?
Прикрепленные файлы
Прикрепленный файл  myCounter2.rar ( 19.42 килобайт ) Кол-во скачиваний: 15
 
Go to the top of the page
 
+Quote Post
rv3dll(lex)
сообщение May 26 2009, 12:58
Сообщение #4


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

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



как происходит несколько сеансов игры подрят
Go to the top of the page
 
+Quote Post
rv3dll(lex)
сообщение May 26 2009, 17:37
Сообщение #5


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

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



в смысле как начинается новая игра, когда уже посмотрели результаты????
Go to the top of the page
 
+Quote Post
kuzyara
сообщение May 27 2009, 05:17
Сообщение #6





Группа: Новичок
Сообщений: 4
Регистрация: 22-05-09
Пользователь №: 49 419



задание строго не оговорено, я думаю что после нажания кнопки стоп таймер должен гаснуть, если же кнопка стоп нажата не будет, а сразу старт, то начинаетяс новая игра. делать дополнительные кнопки Конец игры и Старт игры думаю будет лишне.

а гсч пожно снелать на дпсч, но вот только числа то будут псевдослучайные, тогда придется делать его работающим все время после подачи питания на схему, чтобы было действительно случайное число.




думаю вся сложность в составлении этого автомата заключается в: Как программно на таймер повесить выполнение задачи? Чтобы задача(в данной ситуации прибавление счетчика, которое прекращается по нажатию игроком своей кнопки) выполнялась не после миллисекундной паузы, а в течение неё!
Пока мои знания по автоматам, в которых все команды выполняются по какому-то внешнему воздействию, по нажатию кнопки там, не хватает... А мне надо, чтобы команды выполнялись одна за другой, чтобы сначала сгенерировать случ. число, потом записать его в вычитающий счетчик, потом отнимать, и все это должно следовать друг за другом, само собой, чтобы число успело сгенерироваться, регистры записаться, счетчик отняться... да... это я и хотел спросить...

Сообщение отредактировал kuzyara - May 27 2009, 05:18
Go to the top of the page
 
+Quote Post
rv3dll(lex)
сообщение May 27 2009, 06:17
Сообщение #7


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

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



1.надо сначала определиться с точностью, которая вам важна.
2. Чтобы не думать про то как всё работает можно схему делать абсолютно синхронной. общий клок подавать на все тактовые входы триггеров. и рулить ими только через разрешение клока (элемент и с клоком) тогда выходные данные с них будут относительно рабочего фронта триггера сдвинуты на время задержки переключения. Это позволяет не думая стыковать отдельные блоки.
Go to the top of the page
 
+Quote Post
kuzyara
сообщение May 27 2009, 11:11
Сообщение #8





Группа: Новичок
Сообщений: 4
Регистрация: 22-05-09
Пользователь №: 49 419



а не могли бы Вы мне показать примерчик простенький, как делаются элементарные "клоковые" автоматы... а то яндекс в основном автоматы калашникова и вендинг выдает...
Go to the top of the page
 
+Quote Post
rv3dll(lex)
сообщение May 27 2009, 12:12
Сообщение #9


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

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



в поиске надо искать книжку Проектирование цифровых устройств. их много разновидностей. И ещё желательно сразу начать изучать язык VHDL.
Go to the top of the page
 
+Quote Post

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

 


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


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