代码内容如下: modulecounter_led_6( Clk, Reset_n, Ctrl, Time, Led ); inputClk; inputReset_n; input[7:0]Ctrl; input[31:0]Time; outputregLed; reg[31:0]counter; regEN; reg[18:0]counter0; //10ms周期定时器 always@(posedgeClkornegedgeReset_n) if(!Reset_n) counter0<=0; elseif(counter05000001) counter0<=0; els...

  1YQZUCUR1XeB   2023年11月12日   24   0   0 TimeVerilog

代码内容如下: modulecounter_led_6( Clk, Reset_n, Ctrl, Time, Led ); inputClk; inputReset_n; input[7:0]Ctrl; input[31:0]Time; outputregLed; reg[31:0]counter; regEN; reg[18:0]counter0; //10ms周期定时器 always@(posedgeClkornegedgeReset_n) if(!Reset_n) counter0<=0; elseif(counter05000001) counter0<=0; els...

  1YQZUCUR1XeB   2023年11月12日   23   0   0 TimeVerilog

代码内容如下: modulecounter_led_6( Clk, Reset_n, Ctrl, Time, Led ); inputClk; inputReset_n; input[7:0]Ctrl; input[31:0]Time; outputregLed; reg[31:0]counter; regEN; reg[18:0]counter0; //10ms周期定时器 always@(posedgeClkornegedgeReset_n) if(!Reset_n) counter0<=0; elseif(counter05000001) counter0<=0; els...

  1YQZUCUR1XeB   2023年11月12日   21   0   0 TimeVerilog

UART(通用异步收发传输器) 1.串口通信模块设计的目的是用来发送数据的,因此需要有一个数据输入端口; 2.串口通信,支持不同的波特率,所以需要有一个波特率设置端口; 3.串口通信的本质就是将8位的并行数据通过一根信号线,在不同的时刻传输并行数据的不同位,通过多个时刻,最终将8位并行数据全部传出; 4.串口通信以1位的低电平标志串行传输的开始,待8位数据传输完成之后,再以1位的高电平标志传输的结束; 5.控制信号,控制并转串模块什么时候开始工作?什么时候一个数据发送完成?须有一个发送开始信号,以及一个发送完成信号 代码内容如下: moduleuart_byte_tx( Clk, Reset...

  1YQZUCUR1XeB   2023年11月12日   30   0   0 串口通信Verilog

按键抖动是按键在日常工作中,经常出现的现象,为了避免该现象,设计了一个按键抖动消除的实验。 代码内容如下 modulekey_filter( Clk, Reset_n, Key, //p_key_flag, //n_key_flag, key_flag, key_state ); inputClk; inputReset_n; inputKey; //outputregp_key_flag; //outputregn_key_flag; outputkey_flag; outputregkey_state; //定义一个边沿检测寄存器 reg[1:0]r_key; always@(pose...

  1YQZUCUR1XeB   2023年11月12日   19   0   0 状态机Verilog按键消抖

moduledecoder_3_8_test( a, b, c, out ); inputa; inputb; inputc; outputreg[7:0]out; always@()begin case({a,b,c}) 3'b000:out=8'b0000_0001; 3'b001:out=8'b0000_0010; 3'b010:out=8'b0000_0100; 3'b011:out=8'b0000_1000; 3'b100:out=8'b0001_0000; 3'b101:out=8'b0010_000; 3'b110:out=8'b0100_0000; 3'b111:out=...

  1YQZUCUR1XeB   2023年11月02日   78   0   0 Verilog

以1秒频率闪烁的LED灯的代码内容如下: //设计一个以1秒频率闪烁的LED灯(亮灭各500ms) moduleled_flash( Reset_n,//复位端口,加_n是使用低电平复位 Clk,//时钟端口 Led, ); inputClk; inputReset_n; outputregLed; reg[24:0]counter; always@(posedgeClkornegedgeReset_n)//posedgeClk为时序描述的标准格式 //<=是非阻塞赋值的意思 if(!Reset_n) counter<=0; elseif(counter250000000...

  1YQZUCUR1XeB   2023年11月02日   32   0   0 赋值非阻塞sed

跑马灯的逻辑代码 moduleled_run( Clk, Reset_n, Led ); inputClk; inputReset_n; outputreg[7:0]Led; reg[24:0]counter; parameterMCNT=25'd24999999; always@(posedgeClkornegedgeReset_n) if(!Reset_n) counter<=0; elseif(counterMCNT) counter<=0; else counter<=counter+1'd1; always@(posedgeClkornegedgeReset...

  1YQZUCUR1XeB   2023年11月02日   38   0   0 流水灯Verilog

代码如下 moduleled_run8( Reset_n,//复位端口,加_n是使用低电平复位 Clk,//时钟端口 Led ); inputClk; inputReset_n; outputregLed; parameterMCNT=24999999; reg[24:0]counter; always@(posedgeClkornegedgeReset_n)//posedgeClk为时序描述的标准格式 //<=是非阻塞赋值的意思 if(!Reset_n) counter<=0; elseif(counterMCNT) counter<=0; else counter...

  1YQZUCUR1XeB   2023年11月02日   41   0   0 赋值非阻塞Verilog

代码如下所示 modulecounter_led_1( Clk, Reset_n, Led ); inputClk; inputReset_n; outputregLed; reg[25:0]counter1; parameterMCNT=50000000; always@(posedgeClkornegedgeReset_n) if(!Reset_n) counter1<=0; elseif(counter1MCNT-1) counter1<=0; else counter1<=counter1+1'b1; always@(posedgeClkornegedgeRese...

  1YQZUCUR1XeB   2023年11月02日   40   0   0 Verilog

代码内容如下 modulecounter_led_2( Clk, Reset_n, Led ); inputClk; inputReset_n; outputregLed; reg[26:0]counter1; parameterMCNT=125000000; always@(posedgeClkornegedgeReset_n) if(!Reset_n) counter1<=0; elseif(counter1MCNT-1) counter1<=0; else counter1<=counter1+1'b1; always@(posedgeClkornegedgeRes...

  1YQZUCUR1XeB   2023年11月02日   63   0   0 Verilog

代码内容如下: modulecounter_led_3( Clk, Reset_n, Ctrl_n, Led ); inputClk; inputReset_n; input[7:0]Ctrl_n; outputregLed; reg[26:0]counter; parameterMCNT=100000000; always@(posedgeClkornegedgeReset_n) if(!Reset_n) counter<=0; elseif(counterMCNT-1) counter<=0; else counter<=counter+1'b1; always@(...

  1YQZUCUR1XeB   2023年11月02日   65   0   0 Verilog

代码如下: //让多个LED灯按照设置的模式各自在一个变化循环内独立亮灭变化。 modulecounter_led_5( Clk, Reset_n, CtrlA, CtrlB, Time, Led ); inputClk; inputReset_n; input[7:0]CtrlA; input[7:0]CtrlB; input[31:0]Time; outputreg[1:0]Led; reg[31:0]counter; always@(posedgeClkornegedgeReset_n) if(!Reset_n) counter<=0; elseif(counterTime1...

  1YQZUCUR1XeB   2023年11月02日   47   0   0 ledVerilog

DDS是一种新型的频率合成技术,由于其较容易实现频率、相位以及幅度的数控调制,故而广泛应用于通信领域。 以下是其工作原理 我们可以使用ROM作为存储波形数据的存储器,首先在vivado软件中定义以下IP核 由于ROM模块是可以提前定义的,我们可以预先存储波形数据到ROM中,这里我们选择小梅哥自己研发的波形产生数据程序,选择并修改为以下选项 将得到的coe文件存放到创建的DDS根目录下 回到刚刚创建IP核的界面,根据箭头操作,载入刚刚创建的coe文件。 点击下方的OK代表创建成功 双击ROM.veo文件,copy并例化到DDS模块下即可 根据上述的工程流程图,可以写出代码,内容如下...

  1YQZUCUR1XeB   2023年11月02日   43   0   0 VerilogDDS

设计思路:使用fpga模拟双向红绿灯,也就是模拟实际路上红绿灯每个灯的亮灭程度:比如第一个红灯亮时,第二个灯的绿灯就亮,然后接着第二个灯的绿灯转为黄灯并闪烁时,第一个红灯转为绿灯,第二个灯转为红灯,依此类推。。。。。 设计思路图如下: 如上图所示,在0到1s时为空闲状态,在1s到4s时,是下方的绿灯和上方的红灯同时亮,在4s到5s时,下方的绿灯改为黄灯,并控制黄灯闪烁(可以更为真实的模拟红绿灯的状态),同时上方的红灯继续亮,在第5s到第8s时,上方的红灯改为绿灯,下方的黄灯改为红灯,在第8s到第9s时,上方的绿灯改为黄灯并控制黄灯闪烁,而下方的红灯保持不变。 伪代码如下: paramete...

  1YQZUCUR1XeB   2023年11月02日   77   0   0 Verilog交通灯

1.找到yolov7的utils中的activation.py,在最后面输入以下代码 原理:对局部卷积后的输出与原始数据进行一个max的比对 classFReLU(nn.Module): def__init__(self,c1,k=3):ch_in,kernel super().__init__() 可分离卷积,不改变hw与channels self.conv=nn.Conv2d(c1,c1,k,1,1,groups=c1,bias=False) self.bn=nn.BatchNorm2d(c1) defforward(self,x): 卷积处理后的特征图与原来的x是相同的shape的 ...

1.打开Vivado软件,点击CreateProject,再点击next 2.给程序命名,由于本文是制作二选一多路器,故可命名为mux2_1 3.点击选择RTL project,并勾选Donotspecifysourcesatthistime 5.在进入下一个页面后,找到小梅哥开发板对应芯片型号:XC7A35TFGG484,选择XC7A35TFGG484-2后点击next。 6.点击finish即可完成项目创建。 7.点击AddSources,选择Addorcreatedesignsources,再点击next按钮。 8.选择createfiles,并为文件命名,再点击fini...

关注 更多

空空如也 ~ ~

粉丝 更多

空空如也 ~ ~