| Форум РадиоКот https://radiokot.ru/forum/ |
|
| Счетчик https://radiokot.ru/forum/viewtopic.php?f=60&t=95177 |
Страница 1 из 1 |
| Автор: | Varistor [ Пт окт 04, 2013 14:33:24 ] |
| Заголовок сообщения: | Счетчик |
Здравствуйте всем. Вопрос по программированию. Стоит 2 задачи :1)посчитать период сигнала. Запуск счетчика производится по переднему фронту первого импульса, а сброс по переднему второго импульса. Вопрос в том как реализуется это программно. Подскажите. AHDL или или VHDL непринципиально.Заранее спасибо |
|
| Автор: | Meteor [ Пт окт 04, 2013 22:05:50 ] |
| Заголовок сообщения: | Re: Счетчик |
Алгоритм (структурная схема) таков(а) 1) Написать формирователь временных меток, например генератор частоты 1 МГц (если точность не задана). Если задана - то в соответствии с требованиями. 2) Написать счетчики нужной разрядности. Считаем например так, максимальный интервал измерения 1 с, частота тактирования 1 МГц (шаг измерения 1 мкс), тогда 2^N>=Tизм*f=Tизм/dt. Подставляя значения, будем иметь 2^N=1с/1 мкс=1 000 000. Отсюда, N>=20. Т.е. надо сформировать два двадцатиразрядных счетчика, работающих параллельно, с одним сигналом сброса, и разделенными сигналами разрешения счета. 3) Делаем сдвиговый регистр, хотя бы из двух триггеров, работающих на частоте п1 с параллельными выходами с обоих триггеров. В качестве входного сигнала (линия данных регистра) будет исследуемый сигнал. 4) Делаем обработку сдвигового регистра. Если состояние 01(сдвигаем влево сигнал), то формируем сигнал RESET, а также устанавливаем сигналы ENA_CNT_PERIOD и ENA_CNT_PULSE. Если состояние 10, то обнуляем сигнал ENA_CNT_PULSE. 5) Сигналы подаем на входы счетчиков. Сами понимаете, писать синтез за вас никто не станет. Поэтому все остальные подсказки, после того как вы покажете. что сами хоть что-то сделали, к примеру нарисовали схемку на листе и выложили ее сюда на проверку и тд. |
|
| Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
| Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |
|


