精品博文基于FPGA的计算器设计一(矩阵键盘模块)

小微 科技精品博文基于FPGA的计算器设计一(矩阵键盘模块)已关闭评论109字数 1352阅读模式
摘要这周做了一个计算器的实验,目前可以正负实现数的加减乘除了了,以及定点小数的加减乘除了了,精度不高还在进一步完善,今天先把矩阵键盘扫描的模块总结一下,明天继续优化。这是一个大概的模块...

这周做了一个计算器的试验,目前可以正负实现数的加减乘除了,和定点小数的加减乘除了,精度不高还在进一步完美,今天先把矩阵键盘扫描的模块总结一下,明天继续优化。

这是一个大概的模块划分以及数据流向图,咱们首先要通过矩阵键盘扫描来肯定按下的键,然后把键值送给输入输出节制模块,来判断输入的是第一个操作数还是操作符,还是第二个操作数和等号,可以说输入输出节制模块是整个计算器设计最核心的模块了,这个明天再总结,如果判断按下等号,那么计算模块就应当依据操作数以及操作符来运算,并把运算的结果送到输入输出节制模块。由于在输入数据的时候,数码管也是要显示数据的,所以把计算的结果传回来一块儿处理,而且计算的结果也能够作为下一次计算的操作数,实现连续运算。计算模块还包含BCD转二进制和二进制转BCD模块,此外因为触及到负数运算,所以计算进程都是补码进行运算,计算结果再由补码转回原码,数码管显示模块以及经常使用的数码管模块不同之处就是它拥有消“0”的功能,输入的时候每一输入一名数据显示一名,对于没有输入的位数是不能显示“0”的,输出计算结果的时候也是同样,对于没有数值的位,是不能显示“0”的。文章源自微观生活(93wg.com)微观生活-https://93wg.com/22171.html

下面先总结下列矩阵键盘模块,使用矩阵键盘的缘由就不多说了,就是为了节俭IO口。矩阵键盘扫描的原理我简单介绍一下吧:文章源自微观生活(93wg.com)微观生活-https://93wg.com/22171.html

以4x4的矩阵键盘为例,同一行按键的一段被接到同一根先上,4行分别被接到4根,咱们命名row0-row3;列同理,命名col0-col3。同时咱们给row端接上上拉电阻,那么没有按键按下的时候row端是高电平,咱们把4根row接到FPGA作为输入端,把col接到FPGA作为输出端。咱们在初始状况下给col全体赋0输出,如果某一个按键按下,那么就会有一个col以及一个row线被联通了,那么被联通的那根row就会给FPGA输入0,此时row是输入,咱们可以很容易判断是哪根row被联通了,然而每一一根row上连上了4根col,咱们还不能知道具体是哪个col,所以咱们这时候用到中学物理时学到的节制变量法,咱们让col每一次只有一根输出低电平(注意原来是4个全是低电平,在检测到有键按下后,变为只有一根输出低电平),顺次扫描,知道检测到row端不全为1时,说明此时的row以及col就是按下按键的坐标了。文章源自微观生活(93wg.com)微观生活-https://93wg.com/22171.html

最后例化的消抖模块是上次数字钟的消抖模块,稍微做了一点修改,所以将设计模块化还是有很大帮助的。文章源自微观生活(93wg.com)微观生活-https://93wg.com/22171.html

里面的flag_pos是为了检测按键的边缘,按键按下会有一个flag标志拉高,这里检测的实际上是flag的降落沿,也就是按键弹起来的时候,一开始然而会存在一点时序问题,由于这个flag_pos只有一个时钟周期,我如果检测上升沿输出,在flag拉高的这一刻,key_value其实尚无被赋值好,所以会致使,我按第一个按键的时候没有数据显示,按第二个的时候显示第一个按键的值,然而检测按键弹起的时刻(也就是flag的降落沿)就能有效防止这类情况。文章源自微观生活(93wg.com)微观生活-https://93wg.com/22171.html

矩阵键盘扫描的原理基本就是这样,然而实现的办法有不少种,我觉得这类办法是比较简单明了,合适新手理解的。固然我自己也还是新手,嘻嘻......加油!文章源自微观生活(93wg.com)微观生活-https://93wg.com/22171.html

以上就是微观生活(93wg.com)关于“精品博文基于FPGA的计算器设计一(矩阵键盘模块)”的详细内容,希望对大家有所帮助!文章源自微观生活(93wg.com)微观生活-https://93wg.com/22171.html 文章源自微观生活(93wg.com)微观生活-https://93wg.com/22171.html

继续阅读
 
小微
  • 版权声明: 本文部分文字与图片资源来自于网络,转载此文是出于传递更多信息之目的,若有来源标注错误或侵犯了您的合法权益,请立即通知我们(管理员邮箱:81118366@qq.com),情况属实,我们会第一时间予以删除,并同时向您表示歉意,谢谢!
  • 转载请务必保留本文链接:https://93wg.com/22171.html