数电实验考试 verilogHDL语言及参考程序Word文档格式.docx

上传人:b****1 文档编号:5936108 上传时间:2023-05-05 格式:DOCX 页数:15 大小:18.77KB
下载 相关 举报
数电实验考试 verilogHDL语言及参考程序Word文档格式.docx_第1页
第1页 / 共15页
数电实验考试 verilogHDL语言及参考程序Word文档格式.docx_第2页
第2页 / 共15页
数电实验考试 verilogHDL语言及参考程序Word文档格式.docx_第3页
第3页 / 共15页
数电实验考试 verilogHDL语言及参考程序Word文档格式.docx_第4页
第4页 / 共15页
数电实验考试 verilogHDL语言及参考程序Word文档格式.docx_第5页
第5页 / 共15页
数电实验考试 verilogHDL语言及参考程序Word文档格式.docx_第6页
第6页 / 共15页
数电实验考试 verilogHDL语言及参考程序Word文档格式.docx_第7页
第7页 / 共15页
数电实验考试 verilogHDL语言及参考程序Word文档格式.docx_第8页
第8页 / 共15页
数电实验考试 verilogHDL语言及参考程序Word文档格式.docx_第9页
第9页 / 共15页
数电实验考试 verilogHDL语言及参考程序Word文档格式.docx_第10页
第10页 / 共15页
数电实验考试 verilogHDL语言及参考程序Word文档格式.docx_第11页
第11页 / 共15页
数电实验考试 verilogHDL语言及参考程序Word文档格式.docx_第12页
第12页 / 共15页
数电实验考试 verilogHDL语言及参考程序Word文档格式.docx_第13页
第13页 / 共15页
数电实验考试 verilogHDL语言及参考程序Word文档格式.docx_第14页
第14页 / 共15页
数电实验考试 verilogHDL语言及参考程序Word文档格式.docx_第15页
第15页 / 共15页
亲,该文档总共15页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

数电实验考试 verilogHDL语言及参考程序Word文档格式.docx

《数电实验考试 verilogHDL语言及参考程序Word文档格式.docx》由会员分享,可在线阅读,更多相关《数电实验考试 verilogHDL语言及参考程序Word文档格式.docx(15页珍藏版)》请在冰点文库上搜索。

数电实验考试 verilogHDL语言及参考程序Word文档格式.docx

P16

表示3号抢答者

S4

按键开关S4

P15

表示4号抢答者

S5

按键开关S5

M15

表示5号抢答者

S6

按键开关S6

N16

表示6号抢答者

S7

按键开关S7

N15

表示7号抢答者

DOUT0

LED模块D1

L14

表决结果亮为通过

LEDAG0

数码管模块A段

N4

抢答成功者

号码显示

LEDAG1

数码管模块B段

G4

LEDAG2

数码管模块C段

H4

参考答案:

moduleliu(s,dout0,ledag);

input[6:

0]s;

outputdout0;

output[6:

0]ledag;

reg[6:

0]led;

reg[2:

0]k;

regclk_en;

regdout;

always@(s)

begin

k<

=s[1]+s[2]+s[3]+s[4]+s[5]+s[6]+s[0];

if(k>

=4)

begin

dout<

=1;

end

else

=0;

end

always@(k)

case(k)

3'

d0:

led<

=7'

b0111111;

d1:

b0000110;

d2:

b1011011;

d3:

b1001111;

d4:

b1100110;

d5:

b1101101;

d6:

b1111101;

d7:

b0000111;

default:

b0000000;

endcase

assign

ledag=led;

assign

dout0=dout;

endmodule

题目二:

数字电子实验设计题目:

彩灯循环电路设计

所谓彩灯循环就是对于一组彩灯(16盏),通过不同的工作模式可按照一定的规律来点亮或者熄灭。

我们所要求的彩灯循环电路共分4个节拍,四个节拍按照一定的顺序依次循环执行。

系统设有一个复位键,当按下复位键后,系统从第一节拍开始执行直到第四节拍结束,然后从第一节拍重新开始新的循环。

第一节拍:

16盏灯(Q1~Q16)从Q1开始依次点亮,直到Q16为止。

每盏灯点亮的时间间隔为一秒,即Q1点亮后,间隔一秒后Q2点亮,然后依次点亮。

(下面类似间隔时间都为1秒)

第二节拍:

在第一节拍的基础上,16盏灯(Q1~Q16)从Q16开始依次熄灭,直到Q1为止。

每盏灯熄灭的时间间隔为一秒,即Q16熄灭后,间隔一秒后Q15熄灭,然后依次熄灭直到全部熄灭为止。

第三节拍:

16盏灯(Q1~Q16)从两端开始依次点亮,即(Q1、Q16先点亮,然后Q2、Q15再点亮,直到全部16盏等点亮为止)。

每盏灯点亮的时间间隔为一秒。

第四节拍:

在第三节拍的基础上,16盏灯(Q1~Q16)从中间开始依次熄灭,即(Q8、Q9先熄灭,然后Q7、Q10再熄灭,直到全部16盏灯熄灭为止)。

每盏灯熄灭的时间间隔为一秒。

表示复位按键

Q1

Q2

M14

Q3

N14

Q4

N13

Q5

P12

moduleliu2(clk,ret,led);

inputclk,ret;

output[16:

1]led;

wireret_en;

reg[16:

1]led1;

reg[5:

0]i,j,k,l,m;

reg[31:

0]cout;

ret_en=ret;

always@(posedgeclkornegedgeret_en)

if(~ret_en)

begin

led1<

=16'

b0000000000000000;

i<

end

else

cout<

=(cout==32'

d50000000)?

32'

(cout+32'

d1);

clk_en<

1'

(1'

d0);

if(clk_en)

j<

k<

i<

=i+1;

if(i<

=16)

begin

//dex<

=i;

//l<

//m<

led1[i]<

//led1[i-j]<

end

elseif(i>

16&

&

i<

=32)

j<

=k*2+1;

k<

=k+1;

led1[i-j]<

=dex-1;

32&

=40)

=dex+1;

=2*m+17;

led1[i-32]<

led1[49-i]<

40&

=48)

else

i<

led1<

end

led=led1;

题目三:

汽车尾灯控制电路设计

假设汽车尾部左右两侧各有3个指示灯,

(1)汽车正常运行时,指示灯全灭。

(2)左转弯时,左侧3个指示灯按照左循环顺序点亮(1HZ)。

(3)右转弯时,右侧3个指示灯按照右循环顺序点亮(1HZ)。

(4)临时刹车时,所有指示灯同时闪烁(1HZ)。

尾灯与汽车运行状态表开关控制

运行状态

左尾灯

右尾灯

S1S0

D1D2D3

D4D5D6

00

正常运行

灯灭

01

左转弯

按照D3,D2,D1顺序循环点亮

10

右转弯

按照D4,D5,D6顺序循环点亮

11

临时停车

1HZ频率同时闪烁

1HZ频率同时闪烁

在此实验中数码管、LED、拨动开关与FPGA的连接电路和管脚连接在以前的实验中都做了详细说明,这里不在赘述。

端口名

D1

D2

LED模块D2

D3

LED模块D3

D4

LED模块D4

D5

LED模块D5

D6

LED模块D6

N12

脉冲源50MHZ

CP

J3

参考程序:

modulelwf(clk,ledag,s);

inputclk;

input[1:

output[5:

reg[5:

reg[1:

0]i,j,k;

reg[31:

always@(posedgeclk)

cout<

clk_en<

if(clk_en)

if(s==2'

b00)

j<

k<

led<

=6'

b000000;

elseif(s==2'

b01)

if(i==2'

led<

b001000;

b10)

b010000;

b11)

b100000;

=j+1;

if(j==2'

b000100;

b000010;

b000001;

if(k==2'

b111111;

题目四:

数字电子实验设计题目:

抢答器电路设计

抢答器在各类竞赛性质的场合得到了广泛的应用,它的出现,消除了原来由于人眼的误差而未能正确判断最先抢答的人的情况。

抢答器的原理比较简单,首先必须设置一个抢答允许标志位,目的就是为了允许或者禁止抢答者按按钮;

如果抢答允许位有效,那么第一个抢答者按下的按钮就将其清除,同时记录按钮的序号,也就是对应的按按钮的人,这样做的目的是为了禁止后面再有人按下按钮的情况。

总的说来,抢答器的实现就是在抢答允许位有效后,第一个按下按钮的人将其清除以禁止再有按钮按下,同时记录清楚抢答允许位的按钮的序号并显示出来,这就是抢答器的实现原理。

本实验的任务是设计一个四人抢答器,用按键模块的S8来作抢答允许按钮,用S1~S4来表示1号抢答者~4号抢答者,同时用LED模块的LED1~LED4分别表示于抢答者对应的位子。

具体要求为:

按下S8一次,允许一次抢答,这时S1~S4中第一个按下的按键将抢答允许位清除,同时将对应的LED点亮,用来表示对应的按键抢答成功。

数码管显示对应抢答成功者的号码。

在此实验中数码管、LED、按键开关与FPGA的连接电路和管脚连接在以前的实验中都做了详细说明,这里不在赘述。

S8

按键开关S12

开始抢答按键

1号抢答者灯

DOUT1

2号抢答者灯

DOUT2

3号抢答者灯

DOUT3

4号抢答者灯

moduleliu1(s1,s2,s3,s4,s8,led,ledag);

inputs1,s2,s3,s4;

inputs8;

output[3:

reg[3:

regk;

0]ledag1;

//initial

//k<

always@(s8)

if(s8==0)begink<

=4'

b0000;

ledag1<

else

if(k==1)

if(~s1)

b1000;

ledag1<

elseif(~s2)

b0100;

elseif(~s3)

led<

b0010;

end

elseif(~s4)

b0001;

ledag=ledag1;

endmodule

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2