- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于PLD的矩阵键盘状态机控制.
FPGA设计技术课程报告课程报告题目:基于PLD的矩阵键盘状态机控制专业:电路与系统学 号:2016080904姓名:熊文杰日 期: 2015 年 12月15 日一、FPGA矩阵键盘电路图在FPGA中的电路,与单片机电路基本相同,图如下:在上电默认情况下,L[3:0] =4b1,因为上拉了3.3V,而默认情况下H.[3:0]为低电平;一旦有某一个按键被按下,便是是的该路电路流向该按键的H,是的L检测不到电流。因此可以通过对每一行H输出的控制,来检索是哪一个按键被按下了,这也原理和单片机中一样,只是写法不一样罢了。了。二、FPGA矩阵键盘FSM1. 代码代码如下所示,采用了三段式状态机来描述矩阵键盘。本模块形式与上一张按键消抖动雷同,方便移植。/************************************************** Module Name : matrix_key_design.v* Engineer : Crazy Bingo* Target Device : EP2C8Q208C8* Tool versions : Quartus II 11.0* Create Date : 2011-6-26* Revision : v1.0* Description : **************************************************/module matrix_key_design(input clk,input rst_n,input [3:0] col_data,output reg [3:0] row_data,output key_flag, output reg [3:0] key_value );reg [19:0] cnt; always @(posedge clk or negedge rst_n)beginif(!rst_n)cnt = 0;elsecnt = cnt+1b1;end/****************************************************** R3 ---0----1----2----3* | | | |* R2 ---4----5----6----7* | | | |* R1 ---8----9----A----B* | | | |* R0 ---C----D----E----F* | | | |* C3 C2 C1 C0*****************************************************/parameter SCAN_IDLE = 3b000;parameter SCAN_JITTER= 3b001;parameter SCAN_COL0 = 3b011;parameter SCAN_COL1 = 3b010;parameter SCAN_COL2 = 3b110;parameter SCAN_COL3 = 3b100;parameter SCAN_READ = 3b101;parameter SCAN_JTTTER2= 3b111;reg [2:0] current_state;reg [2:0] next_state;always@(posedge clk or negedge rst_n)beginif(!rst_n)current_state = SCAN_IDLE;else if(cnt == 20hfffff)current_state = next_state;endalways@*begincase(current_state)SCAN_IDLE : if(col_data != 4b1111) next_state = SCAN_JITTER;else next_state = SCAN_IDLE;SCAN_JITTER: if(col_data != 4b1111) next_state = SCAN_COL0;else next_state = SCAN_IDLE;SCAN_COL0 : if(col_data != 4b1111) next_state = SCAN_READ;else next_state = SCAN_COL1;SCAN_COL1 : if(col_data != 4b1111) next_state = SC
您可能关注的文档
最近下载
- A.8 公用设备二次回路原理图集20170407.pdf VIP
- 人教版(2024)数学三年级上册《认识直角》PPT课件.pptx VIP
- 流行性感冒诊疗方案(2025 年版)解读PPT课件.pptx VIP
- 医院感染的消毒灭菌与器械管理.pptx VIP
- 新生儿大疱性表皮松解症的护理.pptx VIP
- 2025年呼吸内科医师呼吸系统疾病治疗考核试题及答案解析.docx VIP
- A.1 220kV线路二次回路原理图集..pdf VIP
- 回弹法检测混凝土抗压强度技术规程.pdf VIP
- 苏轼《南乡子 重九涵辉楼呈徐君猷》古诗词PPT.pptx VIP
- (2025年)全科医生培训考试题库及答案.docx VIP
文档评论(0)