数码管扫描显示 数电实验..pdfVIP

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

实验报告

2016年1月5日成绩:

陈孟春、程

姓名学号班级

平安

专业计算机科学与技术课程名称《数字电路课程设计》

任课老师冯建文指导老师冯建文机位号

实验序号18实验名称数码管扫描显示

实验时间2016.1.5实验地点1教233实验设备号

一、实验程序源代码

(含实验程序源代码及模块设计说明、注释等)

/*

1.实验分工

本实验的代码主要由陈孟春同学完成,程平安同学做了后期的测试工作。

2.程序介绍

本程序分为4个模块,分别为主模块(shiyan18)、显示模块(Display)、分频模块(Timer)、

十进制计数器模块(DecAdder)。

主模块(shiyan18)主要负责连接其他模块以及连接各个管脚。

显示模块(Display)的功能是把4位8421码转换为数码管所需的位选信号和段选信号。

分频模块(Timer)的功能是把100M的时钟转换成其他频率的时钟。比如显示模块每位数

字的刷新时间大约为2.6ms,那就用了分频模块输出的第19、18位作为位选的时钟。数码管的

计数需要较慢的速度,所以选择了第24位作为它的时钟,如果需要更快的增加速度,也可以

选择23或者22位。

十进制计数器模块(DecAdder)的功能是对时钟的脉冲个数进行计数,当来了一个时钟上

升沿时就可以加一。由于本实验的数码管是4位的,所以在主模块中创建了4个十进制计数器

模块的实例,通过级联来实现4位的十进制计数器。

*/

`timescale1ns/1ps

moduleshiyan18(

inputStartStop,

inputclk,

input_clr,

output[3:0]AN,

output[7:0]seg

);

wire[24:0]delay;

wirec0,c1,c2,c3;

wire[15:0]data;

Timertimer(clk,delay);

Displaydisplay(data,delay[19:18],AN,seg);

DecAdderda0(_clr,StartStop,delay[24],data[3:0],c0),

da1(_clr,StartStop,c0,data[7:4],c1),

da2(_clr,StartStop,c1,data[11:8],c2),

da3(_clr,StartStop,c2,data[15:12],c3);

endmodule

moduleTimer(

inputCP,

outputreg[24:0]delay={24{1b0}}

);

always@(posedgeCP)

begin

delay=delay+1b1;

end

endmodule

moduleDisplay(

input[15:0]Data,

input[1:0]Bit_Sel,

outputreg[3:0]

文档评论(0)

176****8616 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档