版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、EDA 实验报告学院:物信学院专业:电信一班小组成员:杨义,王祺,陈鹏,秦成晖指导老师:漆为民目录实验题目3实验目的 3实验原理 3实验内容 5实验程序 .5实验步骤 10实验结果 .10实验体会 1011附录一. 实验题目:矩阵键盘显示电路设计二. 实验目的:1. 了解普通4X 4键盘扫描的原理。2. 进一步加深七段码管显示过程的理解3. 了解对输入/输出端口的定义方法。三. 实验原理:软键盘的工作方式:VCCTAnnK> 口L通常在一个键盘中使用了一个瞬时接触开关,并且用 如图所示的简单电路,微处理器可以容易地检测到闭合。 当开关打开时,通过处理器的I/O 口的一个上拉电阻提供逻辑1
2、;当开关闭合时,处理器的 /io 口的输入将被拉低 得到逻辑0。可遗憾的是,开关并不完善,因为当它们被 按下或者被释放时,并不能够产生一个明确的1或者0。尽管触点可能看起来稳定而且很快地闭合,但与微处理器 快速的运行速度相比,这种动作是比较慢的。当触点闭合 时,其弹起就像一个球。弹起效果将产生如图10-2所示的好几个脉冲。弹起的持续时间通常将维持在5ms-30ms之间。如果需要多个键,则可以将每个开关连接到微处理 器上它自己的输入端口。然而,当开关的数目增加时,这 种方法将很快使用完所有的输入端口。键盘上阵列这些开关最有效的方法(当需要5个以上的键时)就形成了一个如图10-3所示的二维矩阵。当
3、行和列的数目一样多时,也就是方型的矩阵,将产生一个最 优化的布列方式(i/o端被连接的时候)。一个瞬时接触开 关(按钮)放置在每一行与线一列的交叉点。矩阵所需的 键的数目显然根据应用程序而不同。每一行由一个输出端 口的一位驱动,而每一列由一个电阻器上拉且供给输入端 口一位。+5V:£: I n n n键盘扫描的实现过程如下:对于4X4键盘,通常连接为4行、4列,因此要识别按键,只需要知道是哪一行 和哪一列即可,为了完成这一识别j过程,我们的思想是, 首先固定输出4行为高电平,然后输出 4列为低电平,在 读入输出的4行的值,通常高电平会被低电平拉低,如果 读入的4行均为高电平,那么肯定
4、没有按键按下,否则, 如果读入的4行有一位为低电平,那么对应的该行肯定有 一个按键按下,这样便可以获取到按键的行值。同理,获 取列值也是如此,先输出 4列为高电平,然后在输出 4行 为低电平,再读入列值,如果其中有哪一位为低电平,那 么肯定对应的那一列有按键按下。获取到行值和列值以后,组合成一个8位的数据,根据实现不同的编码在对每个按键进行匹配,找到键值后在 7段码管显示。四.实验内谷:本实验要求完成的任务是通过编程实现对4X4矩阵键盘按下键的键值的读取,并在数码管上完成一定功能(如 移动等)的显示。按键盘的定义,按下“* ”键则在数码管是显示“ E”键值。按下“ #”键在数码管上显示“ F”
5、 键值。其它的键则按键盘上的标识进行显示。在此实验中数码管与 FPGA的连接电路和管脚连接在 以前的实验中都做了详细说明,这里不在赘述。本实验箱 上的4X4矩阵键盘的电路原理如图所示五实验程序:Module key(clk, reset,row, col, key_value );input clk,reset;input 3:0 row;output 3:0 col;output 3:0 key_value;reg 3:0 col;reg 3:0 key_value;reg 5:0 count;/delay_20msreg 2:0 state; / 状态标志reg key_flag; / 按
6、键标志位reg clk_500khz; /500KHZ 时钟信号reg 3:0 col_reg; / 寄存扫描列值reg 3:0 row_reg; / 寄存扫描行值always (posedge clk or negedge reset) if(!reset) begin clk_500khz<=0; count<=0; end elsebeginif(count>=50) begin clk_500khz<=clk_500khz;count<=0;endelse count<=count+1;endalways (posedge clk_500khz or
7、 negedge reset) if(!reset) begin col<=4'b0000;state<=0;end elsebegincase (state)0: begin 三骂者星者拥祥 II pue!g=>e)e)s uiBeq (l4“qR=io:£MO)j! uiBeqpue 马三骂聊Ef pue! k kOkq1fr=>0:£|oo!£=>e)e)s uiBeq aspU二骂者星者拥祥 II pue!g=>e)e)s uiBeq (l4“qR=io:£MO)j! uiBeq 'Z pue
8、马二骂聊Ef pue! tok kq1fr=>0:£|oo!z=>e)e)s uiBeq asp骂者星者拥祥 II pue!g=>e)e)s uiBeq (l4“qR=io:£MO)j! uiBeq4 pue :0=>e 冋 s asp 马一骂聊母”丄纵勝战 pueio k k kq.fr=>0:£|oo! k=>e)B)s uiBeq (l4“qR=i0:£MO)j!:()qj=>6E| 厂冋:0000q.fr=>0:£|OOe-se begin s5rfecH4oo-c36AH4b0111CD
9、nd /BffiME3 end4 -beginif(rowc3ojH4b1111) begin sSTfecH5CDnd />雪珈>>3e-se ssrfecHOend5-beginif(rowc3ojH4b1 111)co 一regcHCO 一; =fflas rowIregcHrow; /甘蛊3扇 ssrfecGkeylf-agcH-ibl;=血WT ende-sebegin sETfecHOCDndendendcaseendalways (clk_500khz or col_reg or row_reg)beginif(key_flag=1'b1)beginca
10、se (col_reg,row_reg)8'b1110_1110:key_value<=0;8'b1110_1101:key_value<=1;8'b1110_1011:key_value<=2;8'b1110_0111:key_value<=3;8'b1101_1110:key_value<=4;8'b1101_1101:key_value<=5;8'b1101_1011:key_value<=6;8'b1101_0111:key_value<=7;8'b1011_1110
11、:key_value<=8;8'b1011_1101:key_value<=9;8'b1011_1011:key_value<=10;8'b1011_0111:key_value<=11;8'b0111_1110:key_value<=12;8'b0111_1101:key_value<=13;8'b0111_1011:key_value<=14;8'b0111_0111:key_value<=15; endcaseendend endmodule六实验步骤1、打开 QUARTUSII 软件
12、,新建一个工程。2、建完工程之后,再新建一个 VHDL File ,打开 VHDL 编辑器对话框。3、按照实验原理和自己的想法,在VHDL 编辑窗口编写VHDL 程序,用户可参照光盘中提供的示例程序。4、编写完 VHDL 程序后,保存起来。方法同实验一。5、对自己编写的 VHDL 程序进行编译并仿真,对程序 的错误进行修改。编译仿真无误后,依照 4X4 矩阵键、数码管与 FPGA 的管脚连接表或参照附录进行管脚分配。管脚分配完成 后,再进行全编译一次,以使管脚分配生效。七实验结果: 以设计的参考示例为例,当设计文件加载到目标器件 后,将数字信号源模块的时钟选择为 2048HZ ,按下矩阵 键盘
13、的某一个键, 则在数码管上显示对应的这个键标识的 键值。按下“ *”键则在数码管是显示“ E”键值。按下 “ #”键在数码管上显示“ F ”键值。八实验体会:刚刚开始接触这门课的时候,我们小组什么都不知道,只知道按照老师您打得程序来抄。然后一步步按步骤做,经过一 段时间的学习,学会了程序的运行和管脚的输入及在仪器上 的运行,通过阅读简单的程序,来增加自己的知识,然后通 过改写成程序来增加对程序的理解。感觉这次能都把这串代码打出来还是很不容易的,不过大家都有收获就行。九附录:相关管脚:端口名使用模块信 号对应FPGA管脚说明CLK数字信号源PIN_M1时钟为2048HZKR04*4钜阵键 盘R0PIN_J19钜阵键盘行 信号KR14*4钜阵键 盘R1PIN_P15KR24*4钜阵键 盘R2PIN_J17KR34*4钜阵键盘R3PIN_H11KC04*4钜阵键盘C0PIN_R14钜阵键盘列 信号KC14*4钜阵键盘C1PIN_R16KC24*4钜阵键盘C2PIN_V 佃KC34*4钜阵键盘C3PIN_H15A数码管模块A段B数码管模块B段C数码管模块C段D数码管模块D段E数码管模块E段F数码管模块F段G数码管模块G段SEL0数码管模块
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 现代企业如何通过公关活动吸引目标客户
- 理论与实践在文化传承中寻求创新发展
- 国庆节鲜奶活动方案策划
- Module5 Unit1 He is playing the suona,but the phone rings(说课稿)-2023-2024学年外研版(三起)英语六年级下册
- 8《上课了》说课稿-2023-2024学年道德与法治一年级上册统编版001
- 2023九年级数学上册 第23章 图形的相似23.4 中位线说课稿 (新版)华东师大版
- 9 知法守法 依法维权 说课稿 -2023-2024学年道德与法治六年级上册(统编版)
- 2024年四年级英语上册 Module 4 The world around us Unit 11 Shapes说课稿 牛津沪教版(三起)
- Unit8 I can do this for you 第三课时(说课稿)-2024-2025学年译林版(三起)(2024)英语三年级上册
- 3 光的传播会遇到阻碍吗 说课稿-2024-2025学年科学五年级上册教科版
- GB 12710-2024焦化安全规范
- 青岛版二年级数学下册(六三制)全册课件【完整版】
- 马蹄焰玻璃窑炉设计技术培训-课件
- 2023年主治医师(中级)-眼科学(中级)代码:334考试历年真题集锦附答案
- 电力安全工作规程-(电网建设部分)
- 新加坡小学二年级英语试卷practice 2
- 小学五年级英语20篇英文阅读理解(答案附在最后)
- 2023年辽宁铁道职业技术学院高职单招(英语)试题库含答案解析
- GB/T 23800-2009有机热载体热稳定性测定法
- T-SFSF 000012-2021 食品生产企业有害生物风险管理指南
- 水库工程施工组织设计
评论
0/150
提交评论