摘要:Lab07--数码管电路驱动本实验的目的是实现常用的7段码数码管电路的驱动,用动态扫描的方式实现,而且是同步动态扫描,因为DE2的数码管是直接驱动的,不能列扫描,所以本实验不适合DE2,但同样很经典。期颐完成上图所示个各模块,构成数码管驱动电路。模块说明:1.取位模块:number_mod_module.v简单说就是我的输入数据时00-99的两位数,那么我要分别取出十位和个位的数字待用,这个模块实现很简单,用求商/得到十位的数字,用求余%得到个位的数字。2. 译码模块:smg_encoder_module.v译码模块将我们前面得到的十位和个位数字译成数码管的7位码(若用到那个小数点,就是8位码
阅读全文
摘要:lab06--SOS信号之二如上图所示,本实验在lab05的基础上修改控制部分,使得实验效果更实际,由按键启动sos信号的产生。用到lab04的按键消抖模块和lab05的sos产生模块,本实验添加了一个用于协调的控制模块。代码debounce_module2.v 1 /** 2 * File name : debounce_module2.v 3 * 4 */ 5 6 module debounce_module2 7 ( 8 clk, rst_n, pin_in, pin_out 9 );10 11 input clk;12 input rst_n;13 input pin_in;14 ou
阅读全文
摘要:lab05 -- SOS信号之一本实验要做一个sos信号发生器,如上图所示,由2个模块构成,其中sos_module.v用来产生sos信号,对应莫尔斯电码就是. . . _ _ _ . . .,其中点(短音)用100ms的高电平表示,杠(长音)用300ms的高电平表示,空格用50ms的间隔表示。control_module.v作为控制模块,用来产生一个使能信号sos_en_sig。最后,实验的演示验证部分,由于DE2不带蜂鸣器,暂用LEDG8代替。(当然,用蜂鸣器的效果要明显些)。代码sos_module.v 1 /** 2 * File name: sos_module.v 3 * 4 */
阅读全文
摘要:lab04 消抖模块之二本实验当检测到由高到低的电平变化时,产生一个时钟的高脉冲。当检测到由低到高的电平变化时,只消抖,输出不变。代码在lab03的基础上修改如下:delay_module.v1 case (i)2 3 2'd0:4 if (H2L_sig) i <= 2'd1;5 else if (L2H_sig) i <= 2'd3;6 7 2'd1:8 if (count_ms == 4'd10) begin9 isCount <= 1'b0;10 rpin_out <= 1'b1; 11 i <= 2
阅读全文
摘要:lab03 消抖模块之一本实验是一个简单的按键消抖。主要由电平检测和10ms延时2个模块组成。以前,知道按键要消抖,但一直没做过。究其原因,可能是觉得麻烦,效果不炫,悲哀。无论如何,“出来混,总要还的”。咋消抖呢?大大们说,先检测电平变化,再将确定的变化延时输出。说起来简单,其中还有些小九九:1> 消的是什么抖?首先,要搞清楚,“抖”(跳变)是从哪里来的,最开始,我们的常识:按下按键,电平就变了。假设是由高变低。事实上,在按下的过程中,由于,按键大多是机械结构,就会产生轻微的跳变,瞬间(us级)跳变n次。也就是说这个瞬间,电平不是那么“干净”,所以就有了消抖的需求:期颐得到“干净”、确定
阅读全文
摘要:lab 02 闪耀灯和流水灯 这个实验主要是建立上图所示的模块。LEDG3闪烁,LEDG2-0流水。KEY0复位。代码flash_module.v 1 /** 2 * File name: flash_mocule.v 3 * 4 */ 5 6 module flash_module 7 ( 8 clk, rst_n, led_out 9 );10 11 input clk;12 input rst_n;13 output led_out;14 15 parameter T50MS = 22'd2_500_000;16 17 reg [21:0] count;18 19 always
阅读全文
摘要:缘起 偶然,借到块DE2,开始学习Verilog HDL,也是从语法看起,照着书上敲代码,仿真,做lab,下载,貌似入门了,但总是不确定,总是觉得不能把握什么。偶然看到akuei2的《Verilog哪些事儿--建模篇》V4,觉得很好,遂想记录“打谱”的点滴--是为再笔记。Lab 1 永远的流水灯 这名字是直接拿来的,起的太好了,不多言。 这个实验想阐述并行的思想,用4个类似的模块建立1个并行操作的流水灯模块。每隔100ms流动一下。代码:led0_module.v 1 /** 2 * File name: led0_mocule.v 3 * 4 */ 5 6 module led0_modul
阅读全文
摘要:1. 缘起 会了点HDL和数字逻辑基础后,操作DE2上的开关,led,7断码数码管都没啥问题,但至此好像也只能玩玩n年前教科书上都有的lab,啥数字钟,汽车尾灯,交通灯之类。浪费了DE2的资源,未免对不起DE2的价钱。板子上最明显的东东莫过于那个1602的LCD了,遂想玩玩这个东东。伟大的教育培养的惯性思维:照书本来,狗来狗去,国产的似乎就只有一本关于DE2的书(上交的一个博士写的),拜读一下,大半是DE2附带的光盘lab的中译版,。。。总之,DE2的玩法,没在这本书里找到,估计又是应付国内职评的产物。没期望过,所以没啥失望,好在web上tw的教育网页可打开,那边的学生都推荐OO无双说过的那两
阅读全文