




已阅读5页,还剩7页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
计算机科学学院课程设计报告课程 计算机组成原理 题目 基于ISE防手抖4*3键盘设计 年级 2009级 专业 计算机科学与技术 学号 09061059 学生 蓝潇莹 任课教师 罗铁祥 2012年2 月28日9课程设计题目基于ISE防手抖4*3键盘设计验收时间2012年2月28日星期二验收地点9栋308指导教师罗铁祥小组成员具体分工备注无课题总体设计思想概述利用Xilinx的ISE工具,用verilog语言完成电路的定制,对时钟进行分频,防止手抖动时对于按键的影响。分别进行行列扫描,确定按键的位置,对4个7段显示器进行循环刷新,造成同时显示的现象。课题设计目的和原理实验目的:1、 通过此次实验对Spartan3芯片上的各个功能部件,有更加深刻的理解。2、 更加熟练的使用verilog语言来编写能完成一定功能的硬件实验。3、通过这次实验,学会运用对时钟脉冲的分频来解决不用部件对时钟的不用需求。实验原理:1、8根线都接到FPGA的IO上,其中4根“列”线配置成高阻态,4根行线配置成输入并且下拉(下拉可以内部配,也可以外接)。然后4根列线依次输出高电平1,同时查询4根行线,就知道哪一个按键被按下了。 2、提供4 个LED七段数码管,可显示数字,直接与FPGA相连.其控制方法为扫描式,如图所示,若要控制左边第一个七节灯管输出2的字型,可以先输出”0010010”到CADP,然后输出”0111”到A1A4即可. 其控制方法为扫描式,若要控制左边第一个七段数码管输出2的字型,可以先输出”11011010”到CADP,然后输出”0111”到A1A4 即可.课题设计方案本实验基于的是Xilinx公司的Xilinx_ISE_DS_13.21、 主程序部分module lan(kbrow,scan,data,clk,rst,kbcol,seg7_out);output 3:0 kbrow; /用于行扫描 output 6:0 seg7_out;/用于七段显示器显示output 3:0 scan;/用于七段显示器的定位output 3:0 data;/用于记录数据input clk,rst;input 2:0 kbcol;/用于列扫描reg 3:0 data;reg 3:0 data_reg;reg 3:0 kbrow;reg 6:0 seg7_out;reg 3:0 scan;reg 1:0 sta;/用于循环扫描键盘reg 7:0 seg7;reg cin;reg1:0 count;/用于循环扫描七段显示器reg clk_500khz;/分频后的时钟脉冲reg flag;/有无按键寄存器reg7:0 cnt;/用于分频循环次数reg ins;always (posedge clk)/分频开始beginif(!rst)cnt=8b1111_1111)clk_500khz=clk_500khz;elsecnt=cnt+1;endalways(posedge clk_500khz) beginif(!rst)/复位begin data=4b0000; seg7=b1111111; scan=4b1110; ins=1b0; flag=1;endelsebegincase(scan)/七段显示屏显示4b1110: begin if(ins=1) scan=4b1101;else scan=scan;end4b1101: begin if(ins=1) scan=4b1011; else scan=scan;end4b1011: begin if(ins=1) scan=4b0111; else scan=scan;end4b0111: begin if(ins=1) scan=4b1110; else scan=scan;endendcasecount=count+1; case(count) 2b00:/设置变量循环扫描键盘 begin kbrow=b1110; sta=b00;end 2b01: begin kbrow=b1101; sta=b01; end 2b10: begin kbrow=b1011; sta=b10; end 2b11: begin kbrow=b0111; sta=b11; end endcase case(sta) /键盘扫描开始 2b00: begin case(kbcol) 3b110: begin seg7=b0000110; data_reg=4b0011; flag=0; end 3b101: begin seg7=b0010010; data_reg=4b0010; flag=0; end 3b011: begin seg7=b1001111; data_reg=4b0001; flag=0; end default: begin flag=1; end endcase end 2b01:begin case(kbcol) 3b110: begin seg7=b0100000; data_reg=4b0110; flag=0; end 3b101: begin seg7=b0100100; data_reg=4b0101; flag=0; end 3b011: begin seg7=b1001100; data_reg=4b0100; flag=0; end default: begin flag=1; end endcase end 2b10:begin case(kbcol) 3b110: begin seg7=b0000100; data_reg=4b1001; flag=0; end 3b101: begin seg7=b0000000; data_reg=4b1000; flag=0; end 3b011: begin seg7=b0001111; data_reg=4b0111; flag=0; end default: begin flag=1; end endcase end 2b11:begin case(kbcol) 3b101: begin seg7=b0000001; data_reg=4b0000; flag=0; end default: begin flag=2b1; end endcase end default: begin seg7=7b1111111; data_reg=4b1111; end endcase end if(flag=1) /控制是否按下键 begin ins=1; data=4b0000; seg7_out=seg7;data=data_reg; end else if(flag=0) begin if(ins=1)ins=0; seg7_out=seg7_out; data=data; end endendmodule2、 管脚约束部分Net clk LOC=Y11;Net rst LOC=J4;Net kbrow LOC=Y3;Net kbrow LOC=W4;Net kbrow LOC=T6;Net kbrow LOC=R7;Net kbcol LOC=V5;Net kbcol LOC=U5;Net kbcol LOC=V7;Net scan LOC=M2;Net scan LOC=M3;Net scan LOC=M4;Net scan LOC=M5;Net seg7_out LOC=N1;Net seg7_out LOC=N2;Net seg7_out LOC=N3;Net seg7_out LOC=N4;Net seg7_out LOC=T1;Net seg7_out LOC=T2;Net seg7_out LOC=T3;Net data LOC=D2;Net data LOC=F1;Net data LOC=L1;Net data LOC=K3;课题测试方案1、 运用ise软件,将程序进行语法调试,并改正语法中的错误。2、 运用ise软件,将语法通过的程序进行综合。3、 运用ise软件,将程序进行布线等处理。并改正一些关于管脚分配上的错误。4、 生成bit文件,下载到Spartan3板子上,通过板子上带有的键盘和7段数码管进行调试。错误及结果分析1、 将.bit文件下载到span3中进行调试时,发现结果总是不变,经过检查和反复的调试,最后发现,原来是在错误调试时生成的bit文件,并没有删除。2、 在开始进行调试时,发现7段数码管里显示的数字并不是键盘上输入的数字,经过检查才发现,原来是手抖对键盘的影响,因此,要完成好这个实验,必须要编写去手抖得程序。课题设计心得1. 熟悉了Xilinx的ISE工具的开发流程2. 了解了4*3键盘的工作原理,并能对其输入的数据进行存储。3 了解了7段数码管显示器的工作原理。4.熟悉Spartan3上的各个部件。计 算 机 科 学 学 院本科课程设计量化评分标准 (计算机系统结构类) 学生姓名:黄俊辉指导教师:罗铁祥 年级和专业: 09级 计算机科学与技术 指标最高分评分要素评分方案设计20课题明确;总体功能描述及总体电路框图清楚;课题分工明确,分功能概述及电路接线图清晰;测试方案合理可行,理论结果正确。调试20平台使用熟练;电路信号控制正确;测试数据设置得当;仿真熟练,结果完整。验收20经过自行调试之后,确认一切准备就续即可请求老师给予验收。一次验收通过最高可给20分,两次验收方能通过则最高只能给10分,依次减少。正式报告20报告规范整洁,内容完整;课题设计原理及过程描述清楚;电路总体框图、电路逻辑接线图、
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高中性安全知识培训总结课件
- 高中女生工作课件
- 高一必修走进细胞课件
- 离婚双方房产租赁及物业管理协议范本
- 夫妻离婚房产分割及子女抚养、监护协议模板
- 离婚协议书中关于知识产权归属的详细范本
- 租赁合同担保法律风险防范与违约责任追究
- 教育培训机构租赁合同担保与教育资源整合协议
- 广告创意提案及代理落地合同
- 骨骼知识培训课件
- 明厨亮灶协议书
- 新药研究与开发技术 课件3.新药的工艺与质量研究
- 《小微企业质量管理策略与应用》课件
- 2025-2030中国工程监理行业市场深度调研及竞争格局与发展趋势研究报告
- “厂中厂”安全生产管理协议书(未修改版)7篇
- 《智能制造技术》课件 第4章 智能设计
- 类风湿关节炎健康教育
- 2025年装维智企工程师(三级)复习模拟100题及答案
- 中外建筑(教学设计)浙教版六年级上册综合实践活动
- 购买光驱合同协议
- 部编人教版6年级道德与法治上册全册教学课件
评论
0/150
提交评论