电子技术综合设计教程 教学课件 作者袁小平 键盘防抖动.doc

电子技术综合设计教程 教学课件 作者袁小平 键盘防抖动.doc

ID:50496914

大小:33.00 KB

页数:3页

时间:2020-03-09

电子技术综合设计教程 教学课件 作者袁小平 键盘防抖动.doc_第1页
电子技术综合设计教程 教学课件 作者袁小平 键盘防抖动.doc_第2页
电子技术综合设计教程 教学课件 作者袁小平 键盘防抖动.doc_第3页
资源描述:

《电子技术综合设计教程 教学课件 作者袁小平 键盘防抖动.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、subdesignkeyscan(inclk,inscan[3..0]:input;outscan[3..0],outrsult[3..0],oe:output;)variablema[15..0],fp,delay[3..0]:dff;outrsult[3..0],st[2..0],outscan[3..0]:dff;mda[3..0],mdb[3..0]:node;begin(ma[],fp).clk=inclk;--分频器,将40MHz的inclk分到1000Hz(fp)ifma[]==1999thenma[]=0

2、;fp=!fp;elsema[]=ma[]+1;fp=fp;endif;(st[],delay[],outscan[],outrsult[]).clk=fp;casest[]iswhen0=>outscan[]=7;outrsult[]=outrsult[];--将扫描线置为”0111”st[]=1;when1=>foriin1to3generate--扫描线循环移位outscan[i]=outscan[i-1];outscan0=outscan3;endgenerate;st[]=2;outrsult[]=outrsu

3、lt[];when2=>outscan[]=outscan[];outrsult[]=outrsult[];ifinscan[]!=15thenst[]=3;--判断是否有键按下,若有跳到3,无跳回1elsest[]=1;endif;when3=>outscan[]=outscan[];outrsult[]=outrsult[];ifdelay[]==12thendelay[]=0;st[]=4;elseifinscan[]==15then--键按下延时去抖delay[]=0;elsedelay[]=delay[]+1;

4、endif;st[]=3;endif;when4=>outscan[]=outscan[];outrsult[]=outrsult[];if(!inscan[]==1)or(!inscan[]==2)or(!inscan[]==4)or(!inscan[]==8)thenst[]=5;--多键按下,丢弃elsest[]=1;endif;when5=>outscan[]=outscan[];outrsult[]=mda[]+mdb[];--取结果st[]=6;when6=>outrsult[]=outrsult[];ifd

5、elay[]==12thendelay[]=0;st[]=1;--按键释放去抖elseifinscan[]!=15thendelay[]=0;elsedelay[]=delay[]+1;endif;endif;oe=vcc;st[]=6;--输出指示(oe=vcc)endcase;table!(outscan[])=>mda[];1=>0;2=>1;4=>2;8=>3;endtable;table!(inscan[])=>mdb[];1=>0;2=>4;4=>8;8=>12;endtable;end;

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。