的内部结构这里小梅哥不做过多介绍,详细请参看代码。 五、 代码组织方式 本实验主要学习由顶向下的设计流程,代码均为常见风格,这里不多做介绍。希望读者能够通过代码架构,学习领会这种自顶向下的设计结构的优势。 六、 关键代码解读 本设计中,顶层模块
2018-09-26 07:59
关键词:FPGA , 按键检测 几乎没有哪一个系统没有输入输出设备,大到显示器,小到led灯,轻触按键。作为一个系统,要想稳定的工作,输入输出设备的性能占了很重要的角色。本实验,小梅哥就通过一个独立
2018-09-26 07:40
关键词:FPGA , LED 在之前更新的目录里面,并没有安排这个实验,第一个实验应该是独立按键的检测与消抖。可是,当小梅哥来做按键消抖的实验时,才发现没有做基本的输出设备,因此按键检测的结果
2018-09-26 07:52
的硬件结构,如果用RTL级电路来驱动彩色液晶屏来显示一定的数据,势必是非常不划算的选择,而且驱动也极为复杂。数码管作为一种能够直观显示一定数据信息的输出设备,具有驱动简单,显示直观的特点,尤其适合作为FPGA系统的输出设备。本节,小梅哥就
2018-09-26 07:29
关键词:FPGA , 按键检测 八、 仿真分析 由上图仿真结果可知,当有按键按下时,需要较长一段时间后,Key_Flag会有一个高电平脉冲,同时Key_Value更新为输入按键的反码。 为了确定消抖是成功的,这里再附上按键松开时的抖动细节图: 由图可知,松开按键时,该按键IO不断的检测到高电平和低电平,直到一段时间和,抖动方停止,稳定为按键没有按下时的状态 下图为整个工程的仿真结果,由图可知,每按下一次按键0(key_in[0]),led[0]的状态便翻转一次。 九
2018-09-26 07:31
关键词:FPGA , 数码钟 一、 实验目的 实现数码时钟的功能,要求能够进行24时制时、分、秒的显示,并能够通过按键调整时间。 二、 实验原理 通过对系统时钟进行计数,获得1S的标准信号,再以该信号为基础,进行时、分、秒的计数,通过数码管将该计数值显示出来,即可实现数字钟的功能。同时可以使用独立按键对时、分、秒计数器的初始值进行设置,即可实现时间的设定。 三、 硬件设计 本实验硬件电路简单,用到了8个数码管和4个独立按键。硬
2018-09-26 09:05
关键词:FPGA , LED 七、 测试平台设计 本实验主要对LED的输出和输入与复位的关系进行测试仿真,通过仿真,即可验证设计的正确性和合理性。相关testbench的代码如下: 以下是代码片段: `timescale 1ns/1ns module LED_Driver_tb; reg Rst_n; reg [3:0] Sig; wire [3:0] Led; LED_Driver #( /*参数例化*/ .Width (4) ) LED_Driver_inst(/*端口例化*/ .Rst_n(Rst_n), .Sig(Sig),/*OFF ON ON OFF*/ .Led(Led) ); initial begin Rst_n = 0; Sig = 4'b1010; #100; Rst_n = 1; #40 Sig = 4'b0001; #40 Sig = 4'b0010; #40 Sig = 4'b0011; #40 Sig = 4'b0100; #40
2018-09-26 07:47
关键词:FPGA , 动态扫描 测试平台设计 本实验主要对数码管驱动引脚的状态与预期进行比较和分析,通过仿真,验证设计的正确性和合理性。数码管驱动模块的testbench如下所示: `timescale 1ns/1ns module DIG_LED_DRIVE_tb; reg [23:0]data; reg clk; reg rst_n; wire [7:0]seg; wire [2:0]sel; DIG_LED_DRIVE DIG_LED_DRIVE_inst1( .Data(data), .Clk(clk), .Rst_n(rst_n), .Dig_Led_seg(seg), .Dig_Led_sel(sel) ); initial begin data = 0; clk = 1; rst_n = 0; #200; rst_n = 1; data = 24'h012345; #10000; data = 24'h518918; #10000; data = 24'h543210; #1000
2018-10-01 15:35
小梅哥最新款FPGA_SOC 小梅哥最新FPGA_SOC系列教程视频,适合有些基础的同学观看。 小梅
2019-09-02 06:05
小梅哥FPGA进阶教程
2019-08-30 06:07