北邮数电实验电子沙漏实验报告Word格式文档下载.docx
- 文档编号:19191978
- 上传时间:2023-01-04
- 格式:DOCX
- 页数:27
- 大小:490.04KB
北邮数电实验电子沙漏实验报告Word格式文档下载.docx
《北邮数电实验电子沙漏实验报告Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《北邮数电实验电子沙漏实验报告Word格式文档下载.docx(27页珍藏版)》请在冰豆网上搜索。
每颗沙粒的移动时间为1秒,当移动到图3的16时,若SW1仍为低电平,则保持沙粒不动,但计时继续,直到SW1的电平发生变化或者BTN0计时停止。
4 设计实现一个60秒计时器,当按键BTN0启动时开始工作,用于在沙粒移动过程中进行计时校准,并用数码管DISP0~DISP1显示计时结果。
3、提高要求:
1 可以调节控制电子沙漏的流动速度。
2 用多种方式呈现电子沙漏界面。
3 自行设定沙粒的移动路径,显示每颗沙粒的移动过程。
4 外接重力感应器,实现真实的电子沙漏功能。
5 自拟其它功能。
2、系统设计:
总体框图:
分块设计:
1 输入模块:
由btn按钮和拨码开关构成。
采用序列存储的方式存储相应的输入。
2 输入译码模块:
将输入的符号序列转化成先用状态,以便选取对应的计算方法;
将输入的8421bcd码转化成相应的两位十进制数。
3 数码管、点阵显示模块:
将寄存器内的数进行输出到数码管上。
4 防抖模块:
在用按键输入时,所得到的信号可能会有抖动,因此加入此抖动电路。
流程图:
3、仿真波形及波形分析:
点阵显示采用行扫描模式
四、源程序:
----------------------------------------
--FileName:
ShaLou.vhd
--System:
QuartusII9.1
--Author:
WangHongjie2012210176
--Revision:
Version1.0,2014-11-3
libraryieee;
useieee.std_logic_1164.all;
entityshalouis
port(
clk:
instd_logic;
--系统时钟
sw:
--拨码开关SW1控制沙粒移动方向
bto:
--启动暂停
bt1:
--复位
bt2:
--速度
lieh:
outstd_logic_vector(7downto0);
--RED
liel:
--GREEN
hang:
--行扫描
a:
outstd_logic_vector(6downto0);
--七段数码管
cat:
outstd_logic_vector(5downto0));
--数码管选择
endentity;
Architectureaofshalouis
signaltemp:
integerrange0to49999;
signalclktmp:
std_logic;
signalclkout:
std_logic;
signaltemp1:
integerrange0to199;
signalclktmp1:
signalclkout1:
signaltemp2:
integerrange0to299;
signalclktmp2:
signalclkout2:
signalqt:
integerrange0to5;
signalbto_tmp:
signalbto_out:
signalqt1:
signalbto_tmp1:
signalbto_out1:
signalqt2:
signalbto_tmp2:
signalsudu:
integerrange0to2;
signalsudu_t:
signalq:
integerrange0to60;
signalp:
integerrange0to16;
signalge:
integerrange0to9;
signalshi:
signaldz_kongzhi:
integerrange0to7;
signalcat_kongzhi:
integerrange0to1;
begin
p1:
process(clk)--时钟
ifclk'
eventandclk='
1'
then
iftemp=49999then
temp<
=0;
clktmp<
=notclktmp;
else
=temp+1;
endif;
endprocessp1;
clkout<
=clktmp;
p2:
process(clkout)--分频
begin
ifclkout'
eventandclkout='
0'
iftemp1=199then
temp1<
clktmp1<
=notclktmp1;
else
=temp1+1;
endprocessp2;
clkout1<
=clktmp1;
p3:
process(clkout1)
ifcat_kongzhi=0thencat_kongzhi<
=1;
elsecat_kongzhi<
ifdz_kongzhi=7thendz_kongzhi<
elsedz_kongzhi<
=dz_kongzhi+1;
endprocessp3;
p4:
process(clkout,qt,bto,qt1,bt1,qt2,bt2)
ifclkout'
ifbto='
ifqt=5then
qt<
=qt+1;
ifqt=4then
bto_tmp<
='
;
ifbt1='
ifqt1=5then
qt1<
=qt1+1;
ifqt1=4then
bto_tmp1<
ifbt2='
ifqt2=5then
qt2<
=qt2+1;
ifqt2=4then
bto_tmp2<
endprocess;
p5:
process(bto_tmp,bto_tmp1)
if(bto_tmp'
eventandbto_tmp='
)then
bto_out<
=notbto_out;
=bto_out;
if(bto_tmp1'
eventandbto_tmp1='
bto_out1<
=notbto_out1;
=bto_out1;
if(bto_tmp2'
eventandbto_tmp2='
if(sudu=2)thensudu<
elsesudu<
=sudu+1;
p6:
process(sudu)
casesuduis
when0=>
sudu_t<
=199;
when1=>
=99;
when2=>
=299;
endcase;
p7:
process(clkout,sudu_t)--fenpin
iftemp2=sudu_tthen
temp2<
clktmp2<
=notclktmp2;
=temp2+1;
endprocess;
clkout2<
=clktmp2;
p8:
process(bto_out,clkout1,sw)--jishuqi
if(bto_out='
)then
elsif(bto_out1='
)then
q<
p<
--q:
miaozhongjishu,p:
dianzhenzhuangtaijishu
elsif(q=60)then
if(clkout1'
eventandclkout1='
)THEN
=q+1;
if(clkout2'
eventandclkout2='
if(sw='
)then
if(p<
16)then
p<
=p+1;
elsif(sw='
if(p>
0)then
=p-1;
endprocess;
shi<
=q/10;
ge<
=qrem10;
p9:
process(cat_kongzhi,ge,shi)
begin
ifcat_kongzhi=0then
cat<
="
011111"
casegeis
a<
1111110"
--0
0110000"
--1
1101101"
--2
when3=>
1111001"
--3
when4=>
0110011"
--4
when5=>
1011011"
--5
when6=>
1011111"
--6
when7=>
1110000"
--7
when8=>
1111111"
--8
when9=>
1111011"
--9
--whenothers=>
0000000"
elsifcat_kongzhi=1then
101111"
caseshiis
p10:
process(p)
casepis
casedz_kongzhiis
hang<
01111111"
lieh<
11111110"
liel<
00000000"
10111111"
01111100"
11011111"
00111000"
11101111"
00010000"
11110111"
11111011"
11111101"
whenothers=>
11111111"
11101110"
11001110"
00110000"
11000110"
10000110"
01111000"
10000010"
00000010"
1111
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 北邮数电 实验 电子 沙漏 报告