哈工大_数电大作业

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

H a r b i n I n s t i t u t e o f T e c h n o l o g y

数电大作业

院系:航天学院

班级:

姓名:

学号:

©哈尔滨工业大学

1.血型匹配判断

源程序:

module ABO1(

IN1,IN2,S

);

input [1:0] IN1;//IN1 IS TO GIVE

input [1:0] IN2;//IN2 IS TO GET

output S;

reg S;

always

case(IN1)

2'b00:

case(IN2)

2'b00:S=1;

2'b01:S=0;

2'b10:S=1;

2'b11:S=0;

endcase

2'b01:

case(IN2)

2'b00:S=0;

2'b01:S=1;

2'b10:S=1;

2'b11:S=0;

endcase

2'b10:

case(IN2)

2'b00:S=0;

2'b01:S=0;

2'b10:S=1;

2'b11:S=0;

endcase

2'b11:

case(IN2)

2'b00:S=1;

2'b01:S=1;

2'b10:S=1;

2'b11:S=1;

endcase

endcase endmodule

电路图:

2.计数器(0-211)

此计数器为八进制计数器,采用数码管显示源程序:

module js5(clc,clk,ca,an,led

);

input clc,clk;

output [3:0]an;

output[6:0]ca;

output[7:0]led;

reg [15:0] p;

reg [3:0] digit;

wire[3:0]aen;

wire[3:0]s;

reg[3:0]an;

reg [6:0]ca;

reg [22:0] clkdiv;

assign s=clkdiv[19:18];

/*

assign aen[3]=p[15]|p[14]|p[13]|p[12]; assign aen[2]=p[15]|p[14]|p[13]|p[12] |p[11]|p[10]|p[9]|p[8];

assign aen[1]=p[15]|p[14]|p[13]|p[12] |p[11]|p[10]|p[9]|p[8]

|p[7]|p[6]|p[5]|p[4];

assign aen[0]=1;

*/

assign aen[3]=p[11]|p[10]|p[9]; assign aen[2]=p[11]|p[10]|p[9]|p[8]

|p[7]|p[6]|p[5];

assign aen[1]=p[11]|p[10]|p[9]|p[8]

|p[7]|p[6]|p[5]|p[4]|p[3];

assign aen[0]=1;

always@(posedge clk or posedge clc)

begin

if(clc==1)

clkdiv<=0;

else

clkdiv<=clkdiv+1;

end

always@(posedge clk or posedge clc)

begin

if(clc)

p<=0;

else if(clkdiv==0)

begin

p<=p+1;

if(p==211)

p<=0;

end

end

always@(*)

case(s)

0:digit=p[2:0];

1:digit=p[5:3];

2:digit=p[8:6];

3:digit=p[11:9];

default:digit=p[3:0]; endcase

always@(*)

case(digit)

0:ca=7'b0000001; 1:ca=7'b1001111; 2:ca=7'b0010010; 3:ca=7'b0000110; 4:ca=7'b1001100; 5:ca=7'b0100100; 6:ca=7'b0100000; 7:ca=7'b0001111;

8:ca=7'b0000000;

9:ca=7'b0000100;

'hA:ca=7'b0001000;

'hB:ca=7'b1100000;

'hC:ca=7'b0110001;

'hD:ca=7'b1000010;

'hE:ca=7'b0110000;

'hF:ca=7'b0111000;

default:ca=7'b0000001;

endcase

always@(*)

begin

an=4'b1111;

if(aen[s]==1)

an[s]=0;

end

assign led=p[7:0]; endmodule

相关文档
最新文档