09EDA实验指导书
电子设计自动化(eda)实验指导书

电子设计自动化(EDA)实验指导书前言近些年来,电子设计自动化(EDA)技术发展迅速。
一方面,各种大容量、高性能、低功耗的可编程逻辑器件不断推出,使得专用集成电路(ASIC)的生产商感受到空前的竞争压力。
另一方面,出现了许多EDA设计辅助工具,这些工具大大提高了新型集成电路的设计效率,使更低成本、更短周期的复杂数字系统开发成为可能。
于是一场ASIC与FPGA/CPLD之争在所难免。
然而PLD器件具有先天的竞争优势,那就是可以反复编程,在线调试。
EDA技术正是这场较量的推动引擎之一。
一般来说,EDA技术就是以计算机为平台,以EDA软件工具为开发环境,以HDL为设计语言,以可编程器件为载体,以ASIC、SOC芯片为目标器件,以电子系统设计为应用方向的电子产品自动化设计过程。
设计者只需编写硬件描述语言代码,然后选择目标器件,在集成开发环境里进行编译,仿真,综合,最后在线下载调试。
整个过程,大部分工作由EDA软件完成。
全球许多著名的可编程器件提供商都推出了自己的集成开发工具软件,如Altera 公司的MAX+PLUSⅡ、Quartus Ⅱ软件;Xilinx公司的Foundation 、ISE软件,Lattice公司的ispExpert软件,Actel公司的Libero 软件等。
这些软件的推出,极大地促进了集算法设计、芯片编程、电路板设计于一体的EDA技术的发展。
另外,在以SOC芯片为目标器件的电子系统设计要求下,可编程器件的内部开始集成高速的处理器硬核、处理器软核、DSP模块、大量的存储资源、高速的串行收发模块、系统时钟管理器、多标准的I/O接口模块,亦使得设计者更加得心应手,新一轮的数字革命由此引发。
EDA技术是一门实践性很强的学科,要培养出具有竞争力的一流IC设计人才,动手能力是关键。
只有通过理论学习,加上现场实验,在使用软件编程加硬件调试的过程中真正获得锻炼,增长技能。
ZY11EDA13BE型实验系统采用主板加适配板加扩展板的灵活结构,可方便进行基于不同PLD芯片的实验开发,并易于升级,符合当前高校在此方面对人才培养的要求。
EDA实验指导书

EDA技术实验指导书2012.09第一章针对HDL设计的EDA基本实验与设计实验1.计数器设计(1) 实验目的:熟悉Quartus II的Verilog/VHDL文本设计流程全过程,学习计数器的设计、仿真和硬件测试。
掌握原理图与文本混合设计方法。
(2) 实验原理:参考教材[1]3.3节。
实验程序为例(3) 实验内容1:根据教材[1]的4.1节在Quartus II上对例3-22进行编辑、编译、综合、适配、仿真。
说明例中各语句的作用。
给出其所有信号的时序仿真波形,根据波形详细描述此设计的功能特点,包括RST、EN、LOAD、DA TA,CLK等信号等异步和同步特性。
查阅编译后的计数器的时序特点,从时序仿真图和编1 原理图示意图译报告中了解计数时钟输入至计数数据输出的延时情况,包括设定不同优化约束后的改善情况以及当选择不同FPGA后的延时情况,给出分析报告。
(4) 实验内容2:用教材[1]第4章介绍的不同方式锁定引脚并硬件下载测试。
引脚锁定后进行编译、下载和硬件测试实验。
将实验过程和实验结果写进实验报告。
硬件实验中,注意测试所有控制信号和显示信号,包括RST、EN、LOAD、DA TA等的同步、异步特性,进位信号等。
时钟CLK换不同输入:手动有抖动或无抖动键输入,1Hz或4Hz时钟脉冲输入,这需要附录1.3的模块B4板才能获得,或直接使用KX_DN5/7系列EDA/SOPC实验系统。
(5) 实验内容3:使用SignalTap II对此计数器进行实时测试,流程与要求参考教材[1]第4章,给出报告。
(6) 实验内容4:从设计中去除SignalTap II,要求全程编译后,将生成的SOF文件转变成用于配置器件EPCS4的压缩的间接配置文件*. jic,并使用USB-Blaster对实验板上的EPCS4进行编程,最后进行验证。
编程和全程编译前,按教材[1]图4-6所示,设定所有控制和参数。
(7) 实验内容5:为此项设计加入一个可用于SignalTap II采样的独立的时钟输入端CLK0。
EDA实验指导书(已改)

10-11学年第二学期《EDA实验指导书》(试用)学时:12班级:机电811、812指导教师:孙立香盐城纺织职业技术学院机电系电子教研室目录实验一 Protel 99 SE 启动、建库、文件环境参数设置 (3)实验二熟悉元器件库,编辑简单原理图 (5)实验三电路原理图设计 (6)实验四原理图元件制作 (9)实验五 PCB 设计基础 (11)实验六 PCB 图元件制作 (12)附加印制电路板设计 (14)实验一 Protel 99 SE 启动、建库、文件环境参数设置一、实验目的1 .熟悉 scH 99 的基本界面。
2 .学会文件环境参数设置。
二、实验内容1. 启动 Protel99SE ,建立名为 MYPRO 的文件夹,并在文件夹中建立名为MYFIRST 的设计数据库文件。
提示:单击桌面上的 Protel99SE 快捷图标,进入 Protel99SE 设计环境。
若环境中已经有设计数据库文件,就执行菜单 File/Close Design 将其关闭。
若环境中没有设计数据库文件,就执行菜单 File/New ,在弹出的窗口中,单击Browse 按钮,在弹出的文件名输入窗口中建立 MYPRO 的文件夹,并在文件夹中建立 MYFIRST 的设计文件。
2. 在练习 1 的基础上,建立名为 FIRSCH 的原理图文件,并进入原理图设计窗口。
提示:执行 File/New 菜单,在弹出的窗口中选择 Schematic Document 图标。
3. 设置原理图的图纸尺寸为 A0 ,去掉可视栅格,去掉标题栏。
提示:在原理图设计环境中,执行菜单 Design/Options ,在弹出的窗口中选择 Sheet Options 页面,在页面右上角的 Standard Styles 下拉框中选择A0 。
4. 把光标设置成大十字,并把光标移动到图纸边沿时的移动速度设置为 Auto Pan Recenter 。
提示:设置光标:在原理图设计环境中,执行菜单 Tools/Preferences ,在弹出的窗口中选择 Graphical Editing 页面,然后在该页面 Cursor/Grid Options 区域的 Cursor Type 下拉列表框中选择 Large Cursor 90 。
EDA设计实践实验指导书

集成电路设计实践实验指导书教师:黄小平西北工业大学软件与微电子学院第一部分集成电路设计实践实验计划及总目标一、课程的性质、教育目标及任务:集成电路设计实践的主要目的是进一步提高学生全正向设计数字集成电路的能力,能理解流程的概念和要求,能熟练运用相关EDA工具进行设计,验证,调试,实现等。
为进一步进行复杂SOC设计奠定基础。
本实验以FPGA全正向设计流程为蓝本进行实践。
二、教学计划及基本要求:(15学时)1.调试工具的使用(3学时)内容:练习使用debussy进行代码调试分析,使用nilint进行代码规范检查。
基本要求:熟练使用debussy工具。
能运用debussy提供的ntrace,nwave,nschematic,nstate 等功能进行IP的调试,波形的快速定位,状态机的分析等。
熟练使用nlint工具。
能运用nlint检查代码是否符合可综合规范,对简单的代码规范错误要能够分析定位并进行纠正,能读懂相关的report 等。
2.综合工具的使用(2学时)内容:练习使用synplify工具,掌握综合的基本流程,能进行简单约束的设置。
基本要求:理解综合的基本过程,通过使用synplify工具理解综合的输入文件和综合约束,综合后的输出文件,能读懂时序报告,会分析关键路径等。
3.FPGA布局布线工具的使用(4学时)内容:练习使用Altera 公司的Quartus工具,掌握布局布线工具的基本流程。
基本要求:理解布局布线的基本过程,通过使用Quartus工具理解FPGA布局布线的输入文件和时序约束,布局布线后的输出文件,能读懂布局布线后时序报告,会分析关键路径等。
能够使用SingalTap进行FPGA调试,会进行带时序的后仿真。
能够使用Quartus工具提供的Megafunction 生成IP。
进一步学习Xilinx公司的ISE的使用。
4.FPGA全正向流程实践(6学时)内容:从提供的4道题目中选做一道,严格按照FPGA全正向设计流程完成实践。
EDA实验箱实验指导书

实验二流水灯1.实验目的通过本实验让学生进一步了解、熟悉和掌握CPLD/FPGA开发软件的使用方法及VHDL 语言的编程方法;学习简单的时序电路的设计和硬件测试。
2.实验内容本实验的内容是控制实验箱上的发光二极管LED1—LED8,使之实现流水灯显示。
3.实验原理在LED1~LED8引脚上周期性地输出流水数据,即输出的数据依次为11111111、11111110、11111100、11111000、11110000、11100000、11000000、10000000、00000000,如此循环显示,输出数据“0”,表示点亮相应的LED小灯。
为了方便观察,流水的速率控制在2Hz左右。
在核心板上有一个48MHz的标准时钟源,该时钟源与芯片EP2C5的23脚相连。
为了产生2Hz的时钟源,在此调用了分频模块int_div。
4.实验步骤(1)启动Quartus II,建立一个空白工程,然后命名为led_waterflow.qpf。
(2)新建ledwater.vhd源程序文件,源代码如下。
然后进行综合编译。
若在编译过程中发现错误,则找出并更正错误,直到编译成功为止。
生产符号文件ledwater.bsf (File→ Create/_Update → Create Symbol Files for Current File)。
流水灯程序参考LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_Arith.ALL;USE IEEE.STD_LOGIC_Unsigned.ALL;ENTITY ledwater ISPORT(clk: IN STD_LOGIC;led: OUT STD_LOGIC_VECTOR(7 DOWNTO 0));END;ARCHITECTURE one OF ledwater ISSIGNAL led_r:STD_LOGIC_VECTOR(8 DOWNTO 0);BEGINled<=led_r(7 DOWNTO 0);PROCESS(clk)BEGINIF clk’event and clk=’1’ THENled_r<=led_r(7 DOWNTO 0) & '0';IF led_r="000000000" THEN --循环完毕吗?led_r<="111111111"; --是,则重新赋初值END IF;END IF;END PROCESS;END;(3)将实验模块库里的int_div.vhd和int_div.bsf拷贝到工程目录下。
EDA实训指导书

EDA实训指导书根据课程教学大纲中实训教学大纲的具体要求,为了更好地开展实训教学工作,特制定本实训指导书。
《EDA实训》是一门实践操作性很强的技术基础课,主要培养学生电子线路设计工作以及对Protues设计软件的掌握能力,并可以独立实现电路原理图设计以及仿真。
教学中除了讲授必要的基本理论,基本知识外,主要是上机实践环节,它对学生掌握基本理论,运用基本知识,训练基本技能,增强实验能力、综合应用能力和创新意识都有着至关重要的作用。
本指导书适用于我院汽电、机电等专业。
一:实验目的学习Proteus仿真环境二:实验原理仿真环境三:实验设备Windows XP 软硬件开发平台Proteus四:实验过程1. Proteus 仿真与分析1、Proteus软件的安装与运行先按要求把软件安装到计算机上,安装结束后,在桌面的“开始”程序菜单中,单击运行原理图(ISIS 7 Professional)或PCB (ARE 7 Professional)设计界面。
ISIS 7 Professional在程序中的位置如图1所示。
图1 ISIS 7 Professional 在程序中的位置2、Proteus 的主界面简介3. 元件的拾取在桌面上选择【开始】→【程序】→“Proteus 7 Professional ”,单击蓝色图标“ISIS 7 Professional ”打开应用程序。
ISIS Professional 的编辑界面如图3所示图3用鼠标左键单击界面左侧预览窗口下的“P”按钮,如图4所示,会弹出“Pick Device”(元件拾取)对话框,如图5所示。
图5 元件拾取对话框ISIS 7 Professional的元件拾取就是把元件从元件拾取对话框中拾取到图形编辑界面的对象选择器中4、下面把元件从对象选择器中放置到图形编辑区中。
用鼠标单击对象选择区中的某一元件名,把鼠标指针移动到图形编辑区,双击鼠标左键,元件即被放置到编辑区中。
Altium Designer 09实验指导书

实验一熟悉Altium Designer 09软件及原理图工作环境设置一、实验目的(1)掌握Altium Designer软件的安装激活及中文转化方法。
(2)掌握Altium Designer软件的文件系统的创建方法。
(3)了解Altium Designer软件的工作界面。
(4)掌握原理图编辑的操作界面设置。
(5)掌握原理图图纸及工作环境的设置。
(6)学会原理图图纸模板的创建及调用。
二、实验原理参看《Altium Designer Summer 09》教材第1章和第2章。
三、实验设备个人计算机、Altium Designer软件。
四、实验内容(1)Altium Designer 09软件的安装及激活:找到Altium Designer 09 文件夹,执行setup.exe文件,完成软件安装,然后打开AltiumDesigner09破解文件夹,将ad80.alf和dxp.exe文件拷贝到安装目录下激活软件。
(由于机房已经安装好了软件,此小题大家可回去在自己的电脑上完成,也可以将机房电脑上的软件先卸载再完成安装)(2)PCB项目文件及原理图文件的创建及保存:在E盘或者F盘以自己的学号为文件名新建一个文件夹,然后建立一个新的项目文件和一个原理图文件,要求两个文件都以自己姓名的首字母(如张三,则用ZS)命名保存到学号文件夹中。
(实验报告要求:将学号文件夹打开进行截图打印粘贴)(3)熟悉窗口界面、主菜单、各工具栏及图纸参数的设置:A:反复尝试各项窗口和菜单设置命令,如工作区面板的切换等。
B:新建一个原理图文件,将原理图图纸大小设为Letter、标题栏设为ANSI,图纸底色设为浅绿色,设计者设为自己姓名,设计单位设为湖工商贸。
(实验报告要求:将B内容进行截图打印粘贴)C:如何设置在移动具有电气意义的对象位置时,将保存对象的电气连接状态,系统会自动调整导线的长度和形状?(实验报告要求:将操作步骤描述在实验报告上)。
EDA技术基础实验指导书

实验一EDA工具基本操作与应用一、实验目的1、通过一个简单的D触发器的设计,让学生掌握QUARTUSII设计工具进行电子设计的基本流程。
2、初步了解可编程器件设计的全过程。
二、主要仪器设备EDA实验系统一台,EDA/SOPC实验系统一台三、实验步骤QUARTUSII软件的基本操作与应用1、运行QUARTUSII软件。
2、选择File/New Project Wizard,新建一个工程,并点击Next。
图:1-13、指定工作目录及工程顶层设计实体名称,如图1-1所示,并点击2次Next。
4、选择FPGA器件,如图1-2所示,并点击Finish,工程文件建立结束。
图:1-25、点击File/New,新建一个VHDL文件,如图1-3所示。
图:1-36、点击Ok,并保存,无需任何修改,点击Ok即可。
7、按照自己的想法在新建的VHDL文件中编写VHDL程序,如D触发器程序代码,如图1-4所示。
图:1-48、代码书写结束后,选择Processing/Start Compilation对编写的程序代码进行编译,直至编译通过,否则对程序代码进行修改。
9、编译通过后,选择File/New,在弹出的对话框中点击Other Files,选择Vector WaveformFile,并点击OK,建立一个波形文件,如图1-5所示,保存波形文件。
10、在波形文件加入输入输出端口,如图1-6所示。
图:1-611、对加入到波形文件中的输入端口进行初始值设置,并点击Processing/Start Simuliation 进行仿真。
查看仿真结果是否符合要求。
12、仿真无误后,选择Assignments/Assing Pins对实验中用到的管脚进行绑定分配,如图1-7所示。
图1-713、对于复用的引脚,需做进一步处理,使其成为通用I/O。
14、最后再编译一次,编译无误后,用下载电缆通过JTAG接口将对应的dff2.sof文件下载到FPGA中。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
EDA实验指导书目录实验一基于QUARTUSII图形输入电路的设计 (2)实验二含异步清零和同步使能的加法计数器 (5)实验三图形和VHDL混合输入的电路设计 (7)实验四矩阵键盘接口电路的设计 (10)实验五交通灯控制电路实验 (16)附图EP1K10TC100管脚图 (24)主芯片:ACEX 1K 系列的EP1K10TC100-3下载电缆:Byte Blaster II实验一基于QUARTUSII图形输入电路的设计一、实验目的1、通过一个简单的3线—8线译码器的设计,掌握组合逻辑电路的设计方法。
2、初步了解QUARTUSII原理图输入设计的全过程。
3、掌握组合逻辑电路的静态测试方法。
二、实验原理3线-8线译码器三输入,八输出。
当输入信号按二进制方式的表示值为N时,输出端标号为N的输出端输出高电平表示有信号产生,而其它则为低电平表示无信号产生。
因为三个输入端能产生的组合状态有八种,所以输出端在每种组合中仅有一位为高电平的情况下,能表示所有的输入组合。
其真值表如表1-1所示输入输出D2 D1 D0 Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y00 0 0 0 0 0 0 0 0 0 10 0 1 0 0 0 0 0 0 1 00 1 0 0 0 0 0 0 1 0 00 1 1 0 0 0 0 1 0 0 01 0 0 0 0 0 1 0 0 0 01 0 1 0 0 1 0 0 0 0 01 1 0 0 1 0 0 0 0 0 01 1 1 1 0 0 0 0 0 0 0表1-1 3线-8线译码器真值表译码器不需要像编码器那样用一个输出端指示输出是否有效。
但可以在输入中加入一个输出使能端,用来指示是否将当前的输入进行有效的译码,当使能端指示输入信号无效或不用对当前信号进行译码时,输出端全为高电平,表示无任何信号。
本例设计中没有考虑使能输入端,自己设计时可以考虑加入使能输入端时,程序如何设计。
三、实验内容在本实验中,用三个拨动开关来表示3线-8线译码器的三个输入(D2-D0);用八个LED来表示3线-8线译码器的八个输出(Y0-Y7)。
通过输入不同的值来观察输入的结果与3线-8线译码器的真值表(表1-1)是否一致。
实验箱中的拨动开关当开关闭合(拨动开关的档位在下方)时其输出为低电平,反之输出高电平。
LED灯与其对应的端口为高电平时LED就会发光,反之LED灯灭。
四、实验步骤1、打开QUARTUSII软件,新建一个工程。
2、建完工程之后,再新建一个图形设计文件Schematic File。
并输入3线-8线译码器电路图1-1所示。
图1-1 设计文件的输入3、编译仿真无误后,根据用户自己的要求进行管脚分配。
分配完成后,再进行全编译一次,以使管脚分配生效。
4、根据实验内容用实验导线将上面管脚分配的FPGA管脚与对应的模块连接起来。
如果是调用的本书提供的VHDL代码,则实验连线如下:D2-D0:编码输入端,接3个拨动开关S1-S3。
Y0-Y7:编码输出信号,接8个LED灯D1-D8。
5、用下载电缆将对应的sof文件加载到FPGA中。
观察实验结果。
6、用VHDL语言设计上述3线-8线译码器,新建VHDL设计文件,输入程序如下:(其中增加了en使能输入端,低电平有效)五、实验现象与结果文件加载到目标器件后,拨动拨动开关,LED灯会按表1-1所示的真值表对应的点亮。
六、实验报告1、进一步熟悉和理解QUARTUSII软件的使用方法。
实验二含异步清零和同步使能的加法计数器一、实验目的1、了解二进制计数器的工作原理。
2、进一步熟悉QUARTUSII软件的使用方法和VHDL输入。
3、时钟在编程过程中的作用。
二、实验原理二进制计数器中应用最多、功能最全的计数器之一,含异步清零和同步使能的加法计数器的具体工作过程如下:在时钟上升沿的情况下,检测使能端是否允许计数,如果允许计数(定义使能端高电平有效)则开始计数,否则一直检测使能端信号。
在计数过程中再检测复位信号是否有效(低电平有效),当复位信号起作用时,使计数值清零,继续进行检测和计数。
其工作时序如图2-1所示:图2-1 计数器的工作时序三、实验内容本实验要求完成的任务是在时钟信号的作用下,通过使能端和复位信号来完成加法计数器的计数。
实验中时钟信号使用数字时钟源模块的1HZ信号,用一位拨动开关S1表示使能端信号,用复位开关K1表示复位信号,用LED模块的D1~D4来表示计数的二进制结果。
实验LED亮表示对应的位为‘1’,LED灭表示对应的位为‘0’。
通过输入不同的值模拟计数器的工作时序,观察计数的结果。
四、实验步骤1、打开QUARTUSII软件,新建一个工程。
2、建完工程之后,再新建一个VHDL File,打开VHDL编辑器对话框。
3、按照实验原理和自己的想法,在VHDL编辑窗口编写VHDL程序。
注意:要求有异步清零信信号ret,低电平有效;同步时能信号en,高电平有效4、编写完VHDL程序后,保存起来。
方法同实验一。
5、对自己编写的VHDL程序进行编译并仿真,对程序的错误进行修改。
6、编译仿真无误后,根据用户自己的要求进行管脚分配。
分配完成后,再进行全编译一次,以使管脚分配生效。
7、根据实验内容用实验导线将上面管脚分配的FPGA管脚与对应的模块连接起来。
8、用下载电缆将对应的sof文件加载到FPGA中。
观察实验结果是否与自己的编程思想一致。
9、思考:把该设计改成是加减法可控的计数器,增加控制输入端M,当M=0时,进行加法计数,当M=1时,进行减法计数。
五、实验现象与结果六、实验报告1、绘出仿真波形,并作说明。
2、写出在VHDL编程过程中需要说明的规则。
3、将实验原理、设计过程、编译仿真波形和分析结果、硬件测试结果记录下来。
4、改变时钟频率,看实验现象会有什么改变,试解释这一现象。
实验三图形和VHDL混合输入的电路设计一、实验目的1、学习在QUARTUSII软件中模块符号文件的生成与调用。
2、掌握模块符号与模块符号之间的连线规则与方法。
3、掌握从设计文件到模块符号的创建过程。
二、实验原理在层次化的设计文件中,经常需要将已经设计好的工程文件生成一个模块符号文件作为自己的功能模块符号在顶层调用,该符号就像图形设计文件中的任何其它宏功能符号一样可被高层设计重复调用。
三、实验内容在实验中,时钟信号选取12KHZ做为数码管的扫描时钟,拨动开关输入一个预置的八位数据,经过数控分频电路分频后得到一个较低的频率做为加法计数器(实验一)的时钟频率进行计数器的加法运算。
得到的值给数码显示译码电路在数码管上显示出来。
四、实验步骤1、打开QUARTUSII软件,新建一个工程。
2、其中,本实验的三个组成模块,分别为:计数器模块(exp1.vhd),实验一。
数码显示译码器模块(ymq.vhd),;数控分频器的设计(fpq.vhd)3、对设计文件(exp1.vhd;ymq.vhd;fpq.vhd)进行模块符号文件的创建。
4、新建一个图形编辑文件,调用3中创建的模块符号,输入设计电路如图3-1所示。
图3-1 实验三的设计电路5、编译仿真无误后,根据用户自己的要求进行管脚分配。
分配完成后,再进行全编译一次,以使管脚分配生效。
如果是调用的本书提供的VHDL代码,则实验连线如下:CLK:FPGA时钟信号,接数字时钟CLOCK3,并将这组时钟设为1024HZ。
DATA[7..0]:分频数据输入信号,分别接拨动开关的S8-S1。
COUT:计数进位输出信号,接一个LED灯D1。
RET:计数复位信号,接一个按键开关K1。
LEDAG[6..0]:数码管显示信号,接数码管的G、F、E、D、C、B、A。
SEL[2..0]:数码管的位选信号,接数码管的SEL2、SEL1、SEL0。
6、根据实验内容用实验导线将上面管脚分配的FPGA管脚与对应的模块连接起来。
7、用下载电缆将对应的sof文件加载到FPGA中。
观察实验结果是否与自己的编程思想一致。
五、实验现象与结果以设计的参考示例为例,当设计文件加载到目标器件后,拨动八位拨动开关,使其为一个数值,则八位数码管按一定的速率开始显示“0-F”,当数码管显示A-F时LED 灯LED1开始被点亮,显示其它数值时熄灭。
按S1键显示的数值又从0开始,拨动八位拨动开关,置于其它数据,数码管的显示速率会发生改变。
六、实验报告1、出仿真波形,并作说明。
2、自己设计文件,然后通过设计文件到模块符号文件的转换,设计自己的电路并在实验系统中验证。
进一步掌握这种方法。
3、写出在软件中通过其它方法从设计文件到模块符号文件的转换过程。
实验四矩阵键盘接口电路的设计一、实验目的1、了解普通4×4键盘扫描的原理。
2、进一步加深七段码管显示过程的理解。
3、了解对输入/输出端口的定义方法。
一、实验原理实现键盘有两种方案:一是采用现有的一些芯片实现键盘扫描;再就是用软件实现键盘扫描。
作为一个嵌入系统设计人员,总是会关心产品成本。
目前有很多芯片可以用来实现键盘扫描,但是键盘扫描的软件实现方法有助于缩减一个系统的重复开发成本,且只需要很少的CPU 开销。
嵌入式控制器的功能能强,可能充分利用这一资源,这里就介绍一下软键盘的实现方案。
图4-1 简单键盘电路通常在一个键盘中使用了一个瞬时接触开关,并且用如图4-1 所示的简单电路,微处理器可以容易地检测到闭合。
当开关打开时,通过处理器的I/O 口的一个上拉电阻提供逻辑1;当开关闭合时,处理器的/IO 口的输入将被拉低得到逻辑0。
可遗憾的是,开关并不完善,因为当它们被按下或者被释放时,并不能够产生一个明确的1 或者0。
尽管触点可能看起来稳定而且很快地闭合,但与微处理器快速的运行速度相比,这种动作是比较慢的。
当触点闭合时,其弹起就像一个球。
弹起效果将产生如图4-2 所示的好几个脉冲。
弹起的持续时间通常将维持在5ms∼30ms 之间。
如果需要多个键,则可以将每个开关连接到微处理器上它自己的输入端口。
然而,当开关的数目增加时,这种方法将很快使用完所有的输入端口。
图4-2 按键抖动键盘上阵列这些开关最有效的方法(当需要5 个以上的键时)就形成了一个如图4-3 所示的二维矩阵。
当行和列的数目一样多时,也就是方型的矩阵,将产生一个最优化的布列方式(I/O 端被连接的时候)。
一个瞬时接触开关(按钮)放置在每一行与线一列的交叉点。
矩阵所需的键的数目显然根据应用程序而不同。
每一行由一个输出端口的一位驱动,而每一列由一个电阻器上拉且供给输入端口一位。
图4-3 矩阵键盘键盘扫描的实现过程如下:对于4×4键盘,通常连接为4行、4列,因此要识别按键,只需要知道是哪一行和哪一列即可,为了完成这一识别过程,我们的思想是,首先固定输出4行为高电平,然后输出4列为低电平,在读入输出的4行的值,通常高电平会被低电平拉低,如果读入的4行均为高电平,那么肯定没有按键按下,否则,如果读入的4行有一位为低电平,那么对应的该行肯定有一个按键按下,这样便可以获取到按键的行值。