Мультибитный светодиод
Плата прототипирования, которую я использую для своих экспериментов в области микроэлектроники, оснащена всего четырьмя светодиодами, которых мне как разработчику естественно постоянно не хватает, когда речь заходит о выводе отладочной информации. Написав модуль PWM, я спросил себя, а что собственно мне мешает использовать этот модуль, чтобы светодиод мог индицировать состояние нескольких логических выводов.
Так родилась написать модуль для мультибитного вывода информации на светодиод.
Модуль 4-битной индикации
Поскольку для отладки текущей задачи мне требовалось выводить информацию о состоянии 8-битной шины данных, а свободных светодиодов было только три, то первым модулем мультибитной LED-индикации стал модуль с 4 линиями на входе и одним выводом PWM на выходе. Этот замечательный своей простотой модуль я назвал LED4bit (скачать):
module LED4bit(
input wire nResetIN,
input wire clkIN,
input wire bit0IN,
input wire bit1IN,
input wire bit2IN,
input wire bit3IN,
output wire pwmOUT
);
wire [7:0] data;
assign data[0] = 1'b0;
assign data[1] = bit0IN;
assign data[2] = 1'b0;
assign data[3] = bit1IN;
assign data[4] = 1'b0;
assign data[5] = bit2IN;
assign data[6] = 1'b0;
assign data[7] = bit3IN;
PWM pwm(.nResetIN(nResetIN),
.clkIN(clkIN),
.valueIN(data),
.pwmOUT(pwmOUT));
endmodule
Функция ШИМ выполняется модулем PWM, скачать который можно на странице FPGA. Модуль PWM.
Автор: Андрей Шаройко <vanyamboe@gmail.com>