2 / 2 / 1
Регистрация: 20.04.2014
Сообщений: 30
|
|
1 | |
Присвоение значиний (Verilog)05.05.2015, 19:43. Показов 553. Ответов 0
Метки нет (Все метки)
Здравствуйте. Возник вопрос со сценариями, а точнее с присвоением значений в сценарии, да и в функциях тоже. Есть код:
Код
module LED( input SW0, input SW1, input CLOCK, output wire[7:0]LED ); reg[1:0]Gq = 0; reg[25:0]q = 0; always@(posedge CLOCK) begin if(SW1==1 && SW0!=1)begin if(q!=35000000)begin//один такт(приблизительно) q<=q+1; end else begin if(q==35000000)begin q<=0; end end end end always@(posedge CLOCK)begin if(SW1==1 && SW0!=1)begin if(Gq!=4)begin //считает 4 такта, что равно 2.8 секунды Gq<=Gq+1; end else begin if(Gq==4)begin Gq<=0; end end end end task LED_time; input [1:0]A; input [25:0]B; input [7:0]C; begin if(A==1 && B>=0 && B<=(35000000*(3/4)))begin C[0]=1; end end endtask always@(q or Gq or LED) begin LED_time(Gq,q,LED); end Два счётчика отсчитывает определённое количество тактов, их значения передаются в сценарий, вместе с регистром LED, в котором лежит 8 значений состояний лампочек на плате, изначально все в 0. В сценарии значение одной лампочки переопределяется. Когда компилирую, то возникает ошибка: line 89: Invalid use of input signal <LED_time/1/C> as target. 89 строка потому что в коде присутствует комментарии, которые сюда я не стал помещать. Так же поместил код verilog в код матлаба, ибо подходящего размещения нет на форуме.
0
|
05.05.2015, 19:43 | |
Ответы с готовыми решениями:
0
Icarus Verilog. GNU GPL компилятор под Verilog Переопределение значиний переменной Найти и вывести на экран: сумму наибольшего и наименьшего значиний компонент. Функции в Verilog |
05.05.2015, 19:43 | |
05.05.2015, 19:43 | |
Помогаю со студенческими работами здесь
1
Программа на Verilog Verilog и светодиод Переписать C++ на Verilog Вопрос по Verilog Блок always. Verilog VHDL-Verilog Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |