电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

北邮数电实验-数码管扫描显示控制器设计与实现VIP专享VIP免费

北邮数电实验-数码管扫描显示控制器设计与实现_第1页
北邮数电实验-数码管扫描显示控制器设计与实现_第2页
北邮数电实验-数码管扫描显示控制器设计与实现_第3页
北京邮电大学实验报告实验名称:数码管扫描显示控制器设计与实现学院:信息与通信工程学院班级:2011XXXXXX姓名:XXX学号:日期:2013年5月数字电路与逻辑设计·实验报告一.实验目的1.掌握VHDL语言的语法规范,掌握时序电路描述方法2.掌握多个数码管动态扫描显示的原理及设计方法二.实验所用仪器及元器件1.计算机2.直流稳压电源3.数字系统与逻辑设计实验开发板三.实验任务要求1.用VHDL语言设计并实现六个数码管串行扫描电路,要求同时显示0,1,2,3,4,5这六个不同的数字图形到六个数码管上,仿真下载验证其功能。2.用VHDL语言设计并实现六个数码管滚动显示电路。(选作)I.循环滚动,始终点亮6个数码管,左出右进。状态为:012345-123450-234501-345012-450123-501234-012345II.向左滚动,用全灭的数码管充右边,直至全部变灭,然后再依次从右边一个一个地点亮。状态为:012345-12345X-2345XX-345XXX-45XXXX-5XXXXX-XXXXXX-XXXXX0-XXXX01-XXX012-XX0123-X01234-012345,其中’X’表示数码管不显示。四.实验设计思路及过程1.实验原理为使得输入控制电路简单且易于实现,采用动态扫描的方式实现设计要求。动态扫描显示需要由两组信号来控制:一组是字段输出口输出的字形代码,用来控制显示的字形,称为段码;另一组是位输出口输出的控制信号,用来选择第几位数码管工作,称为位码。各位数码管的段线并联,段码的输出对各位数码管来说都是相同的。因此在同一时刻如果各位数码管的位选线都处于选通状态的话,6位数码管将显示第2页数字电路与逻辑设计·实验报告相同的字符。若要各位数码管能够显示出与本位相应的字符,就必须采用扫描显示方式,即在某一时刻,只让某一位的位选线处于导通状态,而其它各位的位选线处于关闭状态。同时,段线上输出相应位要显示字符的字型码。这样在同一时刻,只有选通的那一位显示出字符,而其它各位则是熄灭的,如此循环下去,就可以使各位数码管显示出将要显示的字符。虽然这些字符是在不同时刻出现的,而且同一时刻,只有一位显示,其它各位熄灭,但由于数码管具有余辉特性和人眼有视觉暂留现象,只要每位数码管显示间隔足够短,给人眼的视觉印象就会是连续稳定地显示。总之,多个数码管动态扫描显示,是将所有数码管的相同段并联在一起,通过选通信号分时控制各个数码管的公共端,循环一次点亮多个数码管,并利用人眼的视觉暂留现象,只要扫描的频率大于50Hz,将看不到闪烁现象。6个数码管则需要50*6=300Hz以上才能看到持续稳定点亮的现象。2.设计思路设计时序电路,选用模值为6的计数器,通过一个3线至6线译码器,产生段码,依次控制6个LED的亮灭,使得某一时刻有且仅有一个LED点亮,同时产生对应的,将点亮的LED数码管赋值显示为相应的数码予以显示。由于扫描频率较高,6位LED数码管序列将显示持续稳定的0至5的数码。3.VHDL代码A.实验任务1①实现代码LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYGKY07P14ISPORT(clk,clear:INSTD_LOGIC;q:OUTSTD_LOGIC_VECTOR(6DOWNTO0);第3页数字电路与逻辑设计·实验报告countout:OUTSTD_LOGIC_VECTOR(5DOWNTO0));ENDGKY07P14;ARCHITECTUREbehaveOFGKY07P14ISSIGNALq_temp:STD_LOGIC_VECTOR(6DOWNTO0);SIGNALcount:STD_LOGIC_VECTOR(5DOWNTO0);SIGNALcnt:INTEGERRANGE0TO5;BEGINp1:PROCESS(clk)BEGINIF(clk'EVENTANDclk='1')THENIF(cnt=5)THENcnt<=0;ELSEcnt<=cnt+1;ENDIF;ENDIF;ENDPROCESS;p2:PROCESS(cnt)BEGINIF(clear='0')THENcount<="111111";ELSECASEcntISWHEN1=>count<="101111";q_temp<="0110000";WHEN2=>count<="110111";q_temp<="1101101";WHEN3=>count<="111011";q_temp<="1111001";第4页数字电路与逻辑设计·实验报告WHEN4=>count<="111101";q_temp<="0110011";WHEN5=>count<="111110";q_temp<="1011011";WHEN0=>count<="011111";q_temp<="1111110";ENDCASE;ENDIF;ENDPROCESS;countout<=count;q<=q_temp;ENDbehave;②代码说明通过分频器输入产生选通脉冲,控制0至5号LED数码管依次亮灭,同时使用数码显示信号使得数码管显示相应数码。实现...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部