微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > 菜鸟一只,刚学FPGA,希望大神帮忙看看这段代码什么意思。。谢谢了

菜鸟一只,刚学FPGA,希望大神帮忙看看这段代码什么意思。。谢谢了

时间:10-02 整理:3721RD 点击:
reg [3:0] key_scan_r;
always @(posedge clk)
    key_scan_r 1或1->0]

这说的是按键信号锁存一个时钟节拍,但是具体是什么意思呢?

大神啊。能不能来帮帮忙。脑子短路了啊。就是转不过来弯啊。

这是采沿啊!采下降沿!你把所有信号当成1bit去理解,就是一个1bit的下降沿,这里一共四bit,写到一起了而已!

还没有敲完上去了,补充1点,最后一句理解成,比如原始位1111,按键之后成为1011,两者取反与后=1011。

大神,我也刚开始学,那个1011怎么出来的?能详细点吗

比如原来的flag_key=1111,~flag_key就是扫描到的按键值再取反,如果按下一个键=1011,取反后=0100;
1111与0100做逻辑与运算,结果=0100,表示为1的哪个键按下了-如果键分别为Key3,key2,key1,key0,应该是key2按下了。
以前的表达有误,Sorry。

谢谢你哦,懂了,谢谢谢谢

取4个信号的上升沿,脉宽1个clk

键盘的扫描寄存器对输入进行检测,当出现scan状态为0,scanr状态为1时,对应位的flag_key变为1

边缘检测

谢谢。我就是阻塞赋值理解的不到位。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top