哈工大数电大作业.doc_第1页
哈工大数电大作业.doc_第2页
哈工大数电大作业.doc_第3页
哈工大数电大作业.doc_第4页
哈工大数电大作业.doc_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

哈尔滨工业大学数字电子技术基础大作业Harbin Institute of Technology数字电子技术基础大作业课程名称: 数字电子技术基础 设计题目: 血型与状态机 院 系:班 级: 设 计 者: 学 号: 哈尔滨工业大学血型逻辑电路设计一 实验目的1. 掌握采用可编程逻辑器件实现数字电路与系统的方法。2. 掌握采用Xilinx_ISE软件开发可编程逻辑器件的过程。3. 学会设计血型能否输血的数字电路。4. 掌握Verilog HDL描述数字逻辑电路与系统的方法。二 设计要求1. 采用BASYS2开发板开关,LED,数码管等制作验证能否输血的电路。2. 采用Xilinx_ISE软件进行编程、仿真与下载设计到BASYS2开发板。三 电路图1. 电路模块图(简化)应用:2. 内部电路组成(简化)四 编程1.源程序module xuexing(M, N, P, Q, E,F,G,OUT,CTL,clk,bi);input M; input N; input P; input Q;input clk; output E;output3:0 F;output3:0 G;output7:0 OUT;output3:0 CTL; reg E;reg3:0 F;reg3:0 G;reg7:0 OUT;reg7:0 OUT1;reg7:0 OUT2;reg7:0 OUT3;reg7:0 OUT4;reg3:0 CTL=4b1110;output bi;reg bi;integer clk_cnt;reg clk_400Hz;always (posedge clk)/400Hz扫描信号if(clk_cnt=32d100000)begin clk_cnt = 1b0;clk_400Hz = clk_400Hz;endelseclk_cnt = clk_cnt + 1b1;/位控制reg clk_1Hz;integer clk_1Hz_cnt; /1Hz发声信号always (posedge clk)if(clk_1Hz_cnt=32d25000000-1)begin clk_1Hz_cnt = 1b0;clk_1Hz = clk_1Hz;endelseclk_1Hz_cnt = clk_1Hz_cnt + 1b1;always (posedge clk_400Hz)CTL = CTL2:0,CTL3;/段控制always (CTL)case(CTL)4b0111:OUT=OUT1;4b1011:OUT=OUT2;4b1101:OUT=OUT3;4b1110:OUT=OUT4;default:OUT=4hf;endcasealways (M or N or P or Q)beginE=(P&Q)|(M&N)|(M&Q)|(N&P); /选择能否输血case(E)1:beginOUT1=8b10001001;OUT2=8b01100001;OUT3=8b01001001;OUT4=8b11111111;bi=clk_400Hz;end0:beginOUT1=8b00010011;OUT2=8b00000011;OUT3=8b11111111;OUT4=8b11111111;bi=clk_1Hz;endendcaseendalways (M or N or P or Q) /显示输入输出血型beginif(M=1&N=0)F=4b1000;else if(M=0&N=1)F=4b0100;else if(M=1&N=1)F=4b0010;elseF=4b0001;endalways (M or N or P or Q) /显示输入输出血型beginif(P=1&Q=0)G=4b1000;else if(P=0&Q=1)G=4b0100;else if(P=1&Q=1)G=4b0010;elseG=4b0001;endendmodule 2.管脚定义程序NET M LOC=N3;NET N LOC=E2;NET P LOC=L3;NET Q LOC=P11;NET E LOC=B2;NET OUT7 LOC = L14;NET OUT6 LOC = H12;NET OUT5 LOC = N14;NET OUT4 LOC = N11;NET OUT3 LOC = P12;NET OUT2 LOC = L13;NET OUT1 LOC = M12;NET OUT0 LOC = N13;NET CTL3 LOC = K14;NET CTL2 LOC = M13;NET CTL1 LOC = J12;NET CTL0 LOC = F12;NET clk LOC=B8;NET F3 LOC=G1;NET F2 LOC=P4;NET F1 LOC=N4;NET F0 LOC=N5;NET G3 LOC=P6;NET G2 LOC=P7;NET G1 LOC=M11;NET G0 LOC=M5;NET bi LOC=B6;五 仿真图六 下载设计到BASYS2开发板与实物图实物图:附:程序流程:1.基本电路设计用MN表示输入血型,PQ表示受血者血型其中10表示A型,01表示B型,11表示AB型,00表示O型。用E表示能否输血,1表示能,0表示不能。MNPQEMNPQE00001100000001110010001011010100111101110100011000010111101001100111000111111111则卡诺图为:MN PQ00011110001000011100111111101001表达式为: 则设计一个四输入一输出的电路其逻辑电路图为通过此电路图,编写程序,把输入引脚定位到开关上,把输出引脚定位到一个LED上便可以完成设计任务。2.项目创新(1)仅使用一个LED的亮与灭来表示能否输血效果不明显,为了加入一个更明显显示能否输血的指示,所以就用到了Basys2板子上自带的数码管,使其在能够输血时显示yes,不能输血时显示no。观察硬件电路图发现,数码管只由一个片选端控制,所有如果使数码管显示不同字母,则需要利用人类的视觉暂留效应进行循环扫描,来使数码管来显示不同的信息。(2)为了增强能否输血的提示效果,所以加入一个蜂鸣器,用声音提示能否输血。当系统开启切能输血时,蜂鸣器输出一低音震荡,当不能输血时,蜂鸣器输出高音报警,提示不能输血。(3)在加入蜂鸣器报警与数码管之后,使用LED来表示能否输血已经多余,而且别人无法判断输血与受血分别是什么血型,所以把8个LED分成两组,其中第一组表示输血血型,第二组表示受血血型,第一个灯表示A型,第二个灯表示B型,第三个灯表示AB型,最后一个灯表示O型。时序逻辑电路设计一 实验目的1.掌握采用可编程逻辑器件实现数字电路与系统的方法。2.掌握采用Xilinx_ISE软件开发可编程逻辑器件的过程。3.学会设计状态机时序逻辑电路。4.掌握Verilog HDL描述数字逻辑电路与系统的方法。二 设计要求1.采用BASYS2开发板开关,LED,数码管等制作验证能否输血的电路。2.采用Xilinx_ISE软件进行编程、仿真与下载设计到BASYS2开发板。三 电路图1.电路模块图2.内部电路组成四 编程1.源程序module Shixu(clk,op,din,B,C,D,E,F,G,H,I,BI,OUT,CTL);input clk;input din;output BI,op;output7:0 OUT;output3:0 CTL;output B,C,D,E,F,G,H,I;reg7:0 OUT;reg7:0 OUT1;reg7:0 OUT2;reg7:0 OUT3;reg7:0 OUT4;reg3:0 CTL=4b1110;reg B,C,D,E,F,G,H,I;reg1:0 current_state,next_state;reg op,BI;parameter S0=2b00,S1=2b01,S2=2b10,S3=2b11;reg clk_1Hz,clk_400Hz; integer clk_1Hz_cnt,clk_cnt; always (posedge clk) if(clk_1Hz_cnt=32d25000000-1) begin clk_1Hz_cnt = 1b0; clk_1Hz = clk_1Hz; end else clk_1Hz_cnt = clk_1Hz_cnt + 1b1;always (posedge clk)if(clk_cnt=32d100000)begin clk_cnt = 1b0;clk_400Hz = clk_400Hz;endelseclk_cnt = clk_cnt + 1b1;reg clk_05Hz;integer clk_05Hz_cnt;always (posedge clk)if(clk_05Hz_cnt=32d50000000-1)begin clk_05Hz_cnt = 1b0;clk_05Hz = clk_05Hz;endelseclk_05Hz_cnt = clk_05Hz_cnt + 1b1;reg clk_2Hz;integer clk_2Hz_cnt;always (posedge clk)if(clk_2Hz_cnt=32d12500000-1)begin clk_2Hz_cnt = 1b0;clk_2Hz = clk_2Hz;endelseclk_2Hz_cnt = clk_2Hz_cnt + 1b1;reg clk_4Hz;integer clk_4Hz_cnt;always (posedge clk)if(clk_4Hz_cnt=32d6250000-1)begin clk_4Hz_cnt = 1b0;clk_4Hz = clk_4Hz;endelseclk_4Hz_cnt = clk_4Hz_cnt + 1b1;reg clk_40Hz;integer clk_40Hz_cnt;always (posedge clk)if(clk_40Hz_cnt=32d1250000-1)begin clk_40Hz_cnt = 1b0;clk_40Hz = clk_40Hz;endelseclk_40Hz_cnt = clk_40Hz_cnt + 1b1;always (posedge clk_400Hz)CTL = CTL2:0,CTL3;always (posedge clk_05Hz)begincurrent_state=next_state;endalways (CTL)case(CTL)4b0111:OUT=OUT1;4b1011:OUT=OUT2;4b1101:OUT=OUT3;4b1110:OUT=OUT4;default:OUT=4hf;endcasealways (current_state or din)begincase(current_state)S0:beginop=0;B=1;C=1;D=0;E=0;F=0;G=0;H=0;I=0;OUT1=8b01001001;OUT2=8b00000011;OUT3=8b11111111;OUT4=8b00000011;BI=clk_1Hz;if(din=0)next_state=S0;else next_state=S1;endS1:beginop=0;B=0;C=0;D=1;E=1;F=0;G=0;H=0;I=0;OUT1=8b01001001;OUT2=8b10011111;OUT3=8b11111111;OUT4=8b00000011;BI=clk_2Hz;if(din=0)next_state=S0;else next_state=S2;endS2:beginop=0;B=0;C=0;D=0;E=0;F=1;G=1;H=0;I=0;OUT1=8b01001001;OUT2=8b00100101;OUT3=8b11111111;OUT4=8b00000011;BI=clk_4Hz;if(din=0)next_state=S0;else next_state=S3;endS3:beginop=1;B=0;C=0;D=0;E=0;F=0;G=0;H=1;I=1;OUT1=8b01001001;OUT2=8b00001101;OUT3=8b11111111;OUT4=8b10011111;BI=clk_40Hz;if(din=0)beginnext_state=S0;endelse next_state=S3;enddefault:beginop=0;B=1;C=1;D=0;E=0;F=0;G=0;H=0;I=0;next_state=S0;endendcaseendendmodule2.管脚定义程序NET din LOC=N3;NET op LOC=C6;NET B LOC=G1;NET C LOC=P4;NET D LOC=N4;NET E LOC=N5;NET F LOC=P6;NET G LOC=P7;NET H LOC=M11;NET I LOC=M5;NET clk LOC=B8;NET BI LOC=B6;NET OUT7 LOC = L14;NET OUT6 LOC = H12;NET OUT5 LOC = N14;NET OUT4 LOC = N11;NET OUT3 LOC = P12;NET OUT2 LOC = L13;NET

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论