> Малюнок 2 «Додавання портів на діаграму»
2. Задати вхідним портам відповідні значення (рис.3).
Малюнок 3 «Завдання значень вхідних портів»
3. Потім запустити симуляцію.
4. Проаналізувати отримані результати (Мал. 4).
Малюнок 4 «Результат симуляції».
В результаті аналізу часових діаграм видно, що при натисканні на кнопку «UP» значення лічильника збільшується, а частота зменшується. При натисканні на кнопку «DOWN» значення лічильника зменшується, а частота збільшується. Для оптимізації схеми до роботи на платі був доданий лічильник, понижуючий частоту мерехтіння світлодіода з 25 МГц до 3 Гц. Також була додана ланцюг придушення брязкоту контактів (рис. 5).
Малюнок 5 «Схема з придушенням брязкоту»
Малюнок 6 «Придушення брязкоту на тимчасовій діаграмі».
3. ОПИС ЦИФРОВОГО ВУЗЛА МОВОЮ AHDL
регулювання лампа настройка світіння
Схема цифрового пристрою, описаного в попередньому розділі, створена заново з використанням мови опису AHDL. Далі наведено текст програми мовою AHDL.
Title «Meandr Generator (lab3)»;
«lpm_counter0.inc»;«lpm_counter1.inc»;«lpm_compare0.inc»;
laba3
(, up, down: INPUT;, meandr: OUTPUT; [3 .. 0]: OUTPUT; [3 .. 0]: OUTPUT;
): lpm_counter1;% рах-к імпульсів такт генер-ра%: lpm_counter0;% рах-к натискань кнопок%: lpm_compare0;% компаратор шин даних лічильників%
rstri: SRFF;% RS тригер%
ttri: TFF;% T тригер%
BEGIN
% системний лічильник%. clock=sysclk;. sclr=(cmp.aeb # cmp.ageb); 0 [3 .. 0]=syscnt.q [3 .. 0];% значення системного лічильника на вихід для перевірки%
% RS тригер%. s=up;. r=down;. clk=sysclk;=rstri.q;% стан тригера на вихід для перевірки%
% лічильник натискань%
updowncnt.updown=rstri.q;% Напрям рахунки%
updowncnt.clock=(up # down); % Рахунок натискань% +1 [3 .. 0]=updowncnt.q [3 .. 0]; % Значення лічильника натискань на вихід для перевірки%
% Компаратор%
cmp.dataa=syscnt.q [3 .. 0];
cmp.datab=updowncnt.q [3 .. 0];
% Т тригер%
ttri.clk=sysclk;
ttri.t=cmp.aeb;
meandr=ttri.q;
END;
Для зменшення трудомісткості розробки програм існує можливість включення в програму раніше створеного екземпляра макрофункції. Наприклад, команда INCLUDE «lpm_counter0.inc», включає в програму лічильник lpm_counter0 з попереднього розділу.
Тестування роботи цифрового вузла, описаного мовою AHDL, аналогічно тестуванню цифрового вузла, описаного блок-схемою.
4. ПРИВ'ЯЗКА ПОРТОВ до сигналів та програмування МІКРОСХЕМИ
Для прив'язки портів схеми до контактів чіпа Altera MAX7000S використ...