版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、数字电路综合实验报告简易智能密码锁一、实验课题及任务要求设计并实现一个数字密码锁,密码锁有四位数字密码和一个确认开锁按键,密码输入正确,密码锁翻开,密码输入错误进展警示。根本要求:1、密码设置:通过键盘进展4位数字密码设定输入,在数码管上显示所输入数字。通过密码设置确定键BTN键进展锁定。2、开锁:在闭锁状态下,可以输入密码开锁,且每输入一位密码,在数码管上显示"-',提示已输入密码的位数。输入四位核对密码后,按“开锁键,假设密码正确那么系统开锁,假设密码错误系统仍然处于闭锁状态,并用蜂鸣器或led闪烁报警。3、在开锁状态下,可以通过密码复位键BTN键来去除密码,恢复初始密码
2、“0000”。闭锁状态下不能去除密码。4、用点阵显示开锁和闭锁状态。提高要求:1、输入密码数字由右向左依次显示,即:每输入一数字显示在最右边的数码管上,同时将先前输入的所有数字向左移动一位。2、密码锁的密码位数46位可调。3、自拟其它功能。二、系统设计2.1 系统总体框图2.2 逻辑流程图程序主要分为6个模块:键盘模块,数码管模块,点阵模块,报警模块,防抖模块,控制模块。以下进展详细介绍。1.键盘模块本模块主要完成是4X4键盘扫描,然后获取其键值,并对其进展编码,从而进展按键的识别,并将相应的按键值进展显示。键盘扫描的实现过程如下:对于4X4键盘,通常连接为4行、4歹U,因此要识别按键,只需要
3、知道是哪一行和哪一列即可,为了完成这一识别过程,我们的思想是,首先固定输出高电平,在读入输出的行值时,通常高电平会被低电平拉低,当当前位置为高电平“1时,没有按键按下,否那么,如果读入的4行有一位为低电平,那么对应的该行肯定有一个按键按下,这样便可以获取到按键的行值。同理,获取列值也是如此,先输出4列为高电平,然后在输出4行为低电平,再读入列值,如果其中有哪一位为低电平,那么肯定对应的那一列有按键按下。由此可确定按键位置。X789X456X123XX0xX为无效按键按键储存键盘译码. word.zl-2数码管模块本实验采用六位七段共阴极数码管,通过选通6个位选管脚,向相应的IO口送低电平来点亮
4、其中任何一位数码管,因为现在采用四位密码锁,所以只是用了其中四个,最高位两位数码管位选全部置1.如下附上7段共阴极数码管真值表3 .点阵模块点阵模块,共由8*8*2个发光二极管组成,行低电平有效,列高电平有效。要求在开锁模式和闭锁模式显示不同的图案,那么先将要显示的每幅图像画8*8个小方格的矩形框中,再在有图案下落处的小方格里填上“,无图案处填上“0,这样就形成了与图案所对应的二进制数据在该矩形框上的分布。当闭锁时以红色点阵显示,此时绿色点阵全部置0,反之亦然。4 .报警模块当报警程序被调用,蜂鸣器输出高电平进展报警,表示输入密码错误5 .防抖按键输入只有为15ms以上的高电平时才会读出按键值
5、从而消除电路中的抖动。6 .控制中心lockmode='1表示关锁,此时点阵显示落锁,按任何键都不会显示密码,清零或者开锁,在此时输入密码kwei从0开场不断加1,输入的密码位数在数码管上依次左移,当输入密码m与存放器中预设密码mm一样时,按下确认键btn2切换为开锁状态,lockmode=0,此时按下btnl表示清零,恢复为初始密码0000,按set键存放器密码,按下btnloc切换为关锁状态。三、仿真波形分析在QUARTUS2中应用系统自带的功能进展波形仿真,这里采用了分模块仿真。主程序仿真在主要功能程序方面波形如下,在初始化模式按下set键系统进入修改密码状态,setmode波形
6、显示高电平。为仿真方便,仅使kbin即行输入信号在1011和1111两个状态下相互转换,在不同的kbout即列扫描输出信号下分别对应4、5、6、7四个数字,故密码存放器m冈为输入的修改后的密码。按下btn2确认键确认密码后,setmode变为低电平,即修改密码状态完毕。按下btn1时清零,密码存放器取值复原为0000,至此均为开锁状态下的操作,lockmode一直为低电平。按下闭锁键btnloc后,lockmode从0跳变到1,由此进入闭锁模式。按键消抖模块仿真当按下键时得到的高电平为输入x,持续一定时间前方可输出一个高电平,而无论按下的时间多长,都只输出一个高电平y,从而实现消除按键电路中的
7、抖动。pinxjliriQn分频模块仿真为仿真方便,改变分频比。原程序在50Mhz时钟输入下,输出分别为1Mhz、200hz1000hz、500hz,分别用于键盘扫描、消抖模块输入、点阵扫描以及数码管扫描。数码管模块仿真由smgcatout输出可以看出低四位数码管依次选通。第i位选通时,smgzf为mi的七段数码管的译码值。点阵模块仿真当lockmode=1时dzcolr全部为0仅dzcolg显示图案;当lockmode=0时dzcolg全部为0由dzcolr显示图案;而dzrow一直在进展行扫描,形成了两种不同颜色点阵。报警模块仿真当bj=0时,fmq为0;bj=1时,fmq将clk分频后输
8、出,即蜂鸣器发出声响。四、源程序顶层文件libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entitylockisport(clk:instd_logic;setmode:outstd_logic;lockmode:outstd_logic;set:instd_logic;btn1,btn2,btnloc:instd_logic;smgzf:outstd_logic_vector(6downto0);smgcatout:outstd_logic_vector(5downto0);kbin:instd_lo
9、gic_vector(3downto0);kbout:bufferstd_logic_vector(3downto0);dzrow,dzcolr,dzcolg:outstd_logic_vector(7downto0);fmq:outstd_logic);endlock;architecturebehaveoflockissignalsetm:std_logic;signallockm:std_logic;signallbj:std_logic;signallkwei:integerrange0to4;signallm1,lm2,lm3,lm4:integerrange0to9;signalc
10、lk_1:std_logic;-1MHzsignalclk_2:std_logic;-200Hzsignalclk_3:std_logic;-1000Hzsignalclk_4:std_logic;-500Hzponentkbis键盘模块port(clk:instd_logic;set:instd_logic;btn1,btn2,btnloc:instd_logic;kbin:instd_logic_vector(3downto0);kbout:bufferstd_logic_vector(3downto0);bj:outstd_logic;setmod:outstd_logic;lockmo
11、d:outstd_logic;kbwei:outintegerrange0to4;m1x,m2x,m3x,m4x:outintegerrange0to9);endponent;ponentsmgis数码管显示模块port(clk:instd_logic;setmode:instd_logic;lockmode:instd_logic;kwei:inintegerrange0to4;m1,m2,m3,m4:inintegerrange0to9;smgzf:outstd_logic_vector(6downto0);smgcatout:outstd_logic_vector(5downto0);e
12、ndponent;ponentdzis点阵模块port(clk:instd_logic;-set:instd_logic;lockmode:instd_logic;dzrow,dzcolr,dzcolg:outstd_logic_vector(7downto0);endponent;ponentalarmis报警模块port(clk:instd_logic;bj:instd_logic;fmq:outstd_logic);endponent;ponentfenpinis分频模块port(clk:instd_logic;clk_out1:outstd_logic;clk_out2:outstd_
13、logic;clk_out3:outstd_logic;clk_out4:outstd_logic);endponent;begina1:fenpinportmap(clk=>clk,clk_out1=>clk_1,clk_out2=>clk_2,clk_out3=>clk_3,clk_out4=>clk_4);u1:kbportmap(clk=>clk,set=>set,btn1=>btn1,btn2=>btn2,btnloc=>btnloc,kbin=>kbin,kbout=>kbout,bj=>lbj,setm
14、od=>setm,lockmod=>lockm,kbwei=>lkwei,m1x=>lm1,m2x=>lm2,m3x=>lm3,m4x=>lm4);u2:smgportmap(clk=>clk_4,setmode=>setm,lockmode=>lockm,kwei=>lkwei,m1=>lm1,m2=>lm2,m3=>lm3,m4=>lm4,smgzf=>smgzf,smgcatout=>smgcatout);u3:dzportmap(clk=>clk_3,lockmode=>l
15、ockm,dzrow=>dzrow,dzcolr=>dzcolg,dzcolg=>dzcolr);u4:alarmportmap(clk=>clk,bj=>lbj,fmq=>fmq);setmode<=setm;lockmode<=lockm;end;键盘模块libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entitykbisport(clk:instd_logic;set:instd_logic;btn1,btn2,btnloc:instd_logic;
16、kbin:instd_logic_vector(3downto0);kbout:bufferstd_logic_vector(3downto0);bj:outstd_logic;setmod:outstd_logic;lockmod:outstd_logic;kbwei:outintegerrange0to4;m1x,m2x,m3x,m4x:outintegerrange0to9);endkb;architecturebehaveofkbissignaljpout:integerrange0to10;signalalarm:std_logic;signaltmp4:integerrange0t
17、o2499999;signalclkfd:std_logic;signalm1,m2,m3,m4,mm1,mm2,mm3,mm4:integerrange0to9;signalwei:integerrange0to3;signalkwei:integerrange0to4;signalsetmode:std_logic;signallockmode:std_logic;signalset1:std_logic;signalclear:std_logic;signalsure:std_logic;signallock:std_logic;signalen,finish:std_logic;sig
18、nalbtn1_out,btn2_out,btnloc_out,set_out:std_logic;signalclk_1:std_logic;-1MHzsignalclk_2:std_logic;-200Hzponentscanisport(clk_1:instd_logic;clk_2:instd_logic;row:instd_logic_vector(3downto0);col:bufferstd_logic_vector(3downto0);en_up:bufferstd_logic;y:outintegerrange0to10);endponent;ponentfenpinispo
19、rt(clk:instd_logic;clk_out1:outstd_logic;clk_out2:outstd_logic;clk_out3:outstd_logic;clk_out4:outstd_logic);endponent;ponentdebounceisport(clk,x:instd_logic;y:outstd_logic);endponent;beginsetmod<=setmode;lockmod<=lockmode;bj<=alarm;kbwei<=kwei;m1x<=m1;m2x<=m2;m3x<=m3;m4x<=m4;
20、u1:scanportmap(clk_1=>clk_1,clk_2=>clk_2,row=>kbin,col=>kbout,en_up=>en,y=>jpout);u2:fenpinportmap(clk=>clk,clk_out1=>clk_1,clk_out2=>clk_2,clk_out3=>open,clk_out4=>open);u3:debounceportmap(clk=>clk_2,x=>btn1,y=>btn1_out);u4:debounceportmap(clk=>clk_2,x=&
21、gt;btn2,y=>btn2_out);u5:debounceportmap(clk=>clk_2,x=>btnloc,y=>btnloc_out);u6:debounceportmap(clk=>clk_2,x=>set,y=>set_out);process(clk)beginif(clk'eventandclk='1')thenif(tmp4=2499999)thentmp4<=0;clkfd<=notclkfd;elsetmp4<=tmp4+1;endif;endif;endprocess;proce
22、ss(clk_1,en,jpout)beginif(clk_1'eventandclk_1='1')thenif(lockmode='1')then闭锁状态下输入密码并读入按键值后存入mmwei<=0;if(jpout/=10)thenif(kwei=3)thenmm4<=jpout;kwei<=kwei+1;elsif(kwei=2)thenmm3<=jpout;kwei<=kwei+1;elsif(kwei=1)thenmm2<=jpout;kwei<=kwei+1;elsif(kwei=0)thenmm1&
23、lt;=jpout;kwei<=kwei+1;endif;endif;if(sure='1')then确认后判断密码是否正确if(mm1=m1)and(mm2=m2)and(mm3=m3)and(mm4=m4)thenlockmode<='0'alarm<='0'正确开锁elsekwei<=0;alarm<='1'错误报警endif;endif;elsekwei<=0;开锁状态下if(lock='1')then上锁lockmode<='1'elseif(se
24、t1='1')thensetmode<='1'修改密码elsesetmode<='0'endif;if(clear='1')then清零m1<=0;m2<=0;m3<=0;m4<=0;-mm1<=0;mm2<=0;mm3<=0;mm4<=0;wei<=0;kwei<=0;alarm<='0'elsif(setmode='1')thenif(jpout/=10)then修改密码状态下读入按键值存入m并移位if(wei=0)t
25、henm1<=m2;m2<=m3;m3<=m4;m4<=jpout;wei<=wei+1;elsif(wei=1)thenm1<=m2;m2<=m3;m3<=m4;m4<=jpout;wei<=wei+1;elsif(wei=2)thenm1<=m2;m2<=m3;m3<=m4;m4<=jpout;wei<=wei+1;elsif(wei=3)thenm1<=m2;m2<=m3;m3<=m4;m4<=jpout;wei<=0;endif;endif;if(sure='
26、1')then确认后完毕修改密码状态setmode<='0'alarm<='0'endif;endif;endif;endif;endif;endprocess;process(set,sure)修改密码键beginif(clkfd'eventandclkfd='1')thenif(set='1')thenset1<='1'endif;if(sure='1')thenset1<='0'endif;endif;endprocess;process
27、(btn1)清零键beginif(btn1='1')thenclear<='1'elseclear<='0'endif;endprocess;process(btn2)确认键beginif(btn2='1')thensure<='1'elsesure<='0'endif;endprocess;process(btnloc)闭锁键beginif(btnloc='1')thenlock<='1'elselock<='0'
28、endif;endprocess;end;键盘扫描libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entityscanisport(clk_1:instd_logic;-高频(forscan)1Mhzclkout1clk_2:instd_logic;-低频(fordebounce)200hzclkout2row:instd_logic_vector(3downto0);col:bufferstd_logic_vector(3downto0);en_up:outstd_logic;y:outinteger
29、range0to10);endscan;architectureaofscanissignalen:std_logic;ponentdebounceisport(clk,x:instd_logic;y:outstd_logic);endponent;begin. word.zl-u1:debounceportmap(clk=>clk_2,x=>en,y=>en_up);process(clk_1)beginif(clk_1'eventandclk_1='1')then列扫描if(en='1')thencol<="1000
30、"elsecasecoliswhen"1110"=>col<="1101"when"1101"=>col<="1011"when"1011"=>col<="1110"whenothers=>col<="1110"endcase;endif;endif;endprocess;process(clk_1,col,row)beginif(clk_1'eventandclk_1='1'
31、;)thencasecoliswhen"1000"=>if(row(3)androw(2)androw(1)androw(0)='1')thenen<='0'endif;when"1110"=>caserowis-when"1110"=>y<="1111"when"1101"=>y<=1;en<='1-1when"1011"=>y<=4;en<='1'-4
32、when"0111"=>y<=7;en<='1'-7whenothers=>y<=10;endcase;when"1101"=>caserowiswhen"1110"=>y<=0;en<='1'-0when"1101"=>y<=2;en<='1-2when"1011"=>y<=5;en<='1-5when"0111"=>y<=8
33、;en<='1'-8whenothers=>y<=10;endcase;when"1011"=>caserowis-when"1110"=>y<="1111"when"1101"=>y<=3;en<='1'-3when"1011"=>y<=6;en<='1'-6when"0111"=>y<=9;en<='1'-9whenot
34、hers=>y<=10;endcase;whenothers=>null;endcase;endif;endprocess;enda;消抖libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entitydebounceisport(clk,x:instd_logic;200hz低频时钟y:outstd_logic);enddebounce;architectureaofdebounceistypestateis(s0,s1,s2,s3,s4);5个状态signalpre_s,next_s:
35、state;beginprocess(clk)beginif(clk'eventandclk='1')thenpre_s<=next_s;endif;endprocess;process(pre_s,x)输入为连续3个或以上的高电平时,输出一个高电平begincasepre_siswhens0=>初始状态s0if(x='1')thennext_s<=s1;elsenext_s<=s0;endif;y<='0'whens1=>if(x='1')thennext_s<=s2;elsen
36、ext_s<=s0;endif;y<='0'whens2=>if(x='1')thennext_s<=s3;elsenext_s<=s0;endif;y<='0'whens3=>连续3个高电平,输出一个高电平y<='1'next_s<=s4;whens4=>3个以上高电平,不再继续输出高电平y<='0'if(x='1')thennext_s<=s4;elsenext_s<=s0;endif;endcase;endproce
37、ss;enda;分频模块libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entityfenpinisport(clk:instd_logic;clk_out1:outstd_logic;clk_out2:outstd_logic;clk_out3:outstd_logic;clk_out4:outstd_logic);endfenpin;architecturedivoffenpinisconstantdiv1:integer:=24;-1Mhz,用于键盘扫描constantdiv2:integer:=
38、124999-200hz,用于消抖constantdiv3:integer:=24999;-1000hz,用于点阵扫描constantdiv4:integer:=49999;-500hz,用于数码管扫描signalc1:integerrange0todiv1;signalc2:integerrange0todiv2;signalc3:integerrange0todiv3;signalc4:integerrange0todiv4;signaltemp1:std_logic;signaltemp2:std_logic;signaltemp3:std_logic;signaltemp4:std_l
39、ogic;beginprocess(clk)beginif(clk'eventandclk='1')thenif(c1=div1)thentemp1<=nottemp1;c1<=0;elsec1<=c1+1;endif;if(c2=div2)thentemp2<=nottemp2;c2<=0;elsec2<=c2+1;endif;if(c3=div3)thentemp3<=nottemp3;c3<=0;elsec3<=c3+1;endif;if(c4=div4)thentemp4<=nottemp4;c4<
40、;=0;elsec4<=c4+1;endif;endif;endprocess;clk_out1<=temp1;clk_out2<=temp2;clk_out3<=temp3;clk_out4<=temp4;enddiv;数码管libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entitysmgisport(clk:instd_logic;-500hzclkout4setmode:instd_logic;lockmode:instd_logic;kwei:inintegerr
41、ange0to4;m1,m2,m3,m4:inintegerrange0to9;四位密码的值smgzf:outstd_logic_vector(6downto0);编码值smgcatout:outstd_logic_vector(5downto0);endsmg;architecturebehaveofsmgissignalsmgcat:integerrange0to5;signalm1y,m2y,m3y,m4y:std_logic_vector(6downto0);beginprocess(clk)位选码beginif(clk'eventandclk='1')then
42、if(smgcat=5)thensmgcat<=0;elsesmgcat<=smgcat+1;endif;endif;endprocess;process(setmode,lockmode,smgcat)beginif(lockmode='0')thencasesmgcatis输入密码值在数码管显示,从左到右when0=>smgcatout<="110111"smgzf<=m1y;when1=>smgcatout<="111011"smgzf<=m2y;when2=>smgcatout
43、<="111101"smgzf<=m3y;when3=>smgcatout<="111110"smgzf<=m4y;when4=>smgcatout<="111111"when5=>smgcatout<="111111"endcase;else. word.zl-smgzf<="0000001"输入密码在数码管显示“if(kwei=1)thensmgcatout<="111110"elsif(kwei=2)th
44、ensmgcatout<="111100"elsif(kwei=3)thensmgcatout<="111000"elsif(kwei=4)thensmgcatout<="110000"elsesmgcatout<="1111H"endif;endif;endprocess;process(m1七段数码管真值表begincasemliswhen0=>m1y<="1111110"when1=>m1y<="0110000"when2
45、=>m1y<="1101101"when3=>m1y<="1111001"when4=>m1y<="0110011when5=>m1y<="1011011"when6=>m1y<="1011111"when7=>m1y<="1110000"when8=>m1y<="1111111"when9=>m1y<="1111011"whenothers=>
46、m1y<="0000000"endcase;endprocess;process(m2)begincasem2iswhen0=>m2y<="1111110"when1=>m2y<="0110000"when2=>m2y<="1101101when3=>m2y<="1111001"when4=>m2y<="0110011when5=>m2y<="1011011"when6=>m2y<=&q
47、uot;1011111"when7=>m2y<="1110000"when8=>m2y<="1111111"when9=>m2y<="1111011"whenothers=>m2y<="0000000"endcase;endprocess;process(m3)begincasem3iswhen0=>m3y<="1111110"when1=>m3y<="0110000"when2=>m3y
48、<="1101101"when3=>m3y<="1111001"when4=>m3y<="0110011"when5=>m3y<="1011011"when6=>m3y<="1011111"when7=>m3y<="1110000"when8=>m3y<="1111111"when9=>m3y<="1111011"whenothers=>m3
49、y<="0000000"endcase;endprocess;process(m4)begincasem4iswhen0=>m4y<="1111110"when1=>m4y<="0110000"when2=>m4y<="1101101"when3=>m4y<="1111001"when4=>m4y<="0110011"when5=>m4y<="1011011"when6=>
50、m4y<="1011111"when7=>m4y<="1110000"when8=>m4y<="1111111"when9=>m4y<="1111011"whenothers=>m4y<="0000000"endcase;endprocess;end;点阵libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entitydzisport(clk:instd_
51、logic;-1000hzclkout3lockmode:instd_logic;dzrow,dzcolr,dzcolg:outstd_logic_vector(7downto0);enddz;architecturebehaveofdzissignaldzcat:integerrange0to7;beginprocess(clk)计数器输出dzcat用于行扫描beginif(clk'eventandclk='1')thenif(dzcat=7)thendzcat<=0;elsedzcat<=dzcat+1;endif;endif;endprocess;pr
52、ocess(lockmode,clk)beginif(lockmode='1')then点阵显示闭锁图形casedzcatiswhen0=>dzrow<="01111111"dzcolr<="00000000"dzcolg<="00011000"when1=>dzrow<="10111111"dzcolr<="00000000"dzcolg<="00100100"when2=>dzrow<="
53、;11011111"dzcolr<="00000000"dzcolg<="00100100"when3=>dzrow<="11101111"dzcolr<="00000000"dzcolg<="01111110"when4=>dzrow<="11110111"dzcolr<="00000000"dzcolg<="01111110"when5=>dzrow<
54、="11111011"dzcolr<="00000000"dzcolg<="01111110"when6=>dzrow<="11111101"dzcolr<="00000000"dzcolg<="01111110"when7=>dzrow<="11111110"dzcolr<="00000000"dzcolg<="00000000"endcase;else点
55、阵显示开锁图形casedzcatiswhen0=>dzrow<="01111111"dzcolr<="00000110"dzcolg<="00000000"when1=>dzrow<="10111111"dzcolr<="00001001"dzcolg<="00000000"when2=>dzrow<="11011111"dzcolr<="00001001"dzcolg&
56、lt;="00000000"when3=>dzrow<="11101111"dzcolr<="11111100"dzcolg<="00000000"when4=>dzrow<="11110111"dzcolr<="11111100"dzcolg<="00000000"when5=>dzrow<="11111011"dzcolr<="11111100"d
57、zcolg<="00000000"when6=>dzrow<="11111101"dzcolr<="11111100"dzcolg<="00000000"when7=>dzrow<="11111110"dzcolr<="00000000"dzcolg<="00000000"endcase;endif;endprocess;end;蜂鸣报警libraryieee;useieee.std_logic_1164.all;useieee.std_logic_u
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030中国进口沙发市场深度调查研究报告
- 2025年事业单位卫生类专业知识试卷(卫生组织与卫生政策研究与实践)试题及答案
- 【8英RJ期中】六安市霍邱县2025-2026学年度第二学期期中考试八年级英语试卷
- 2025新国家开放大学电大本科《计算机应用基础》网络课网考形考任务作业试题与答案
- 2026冷冻食品家庭消费增长驱动因素与市场预测报告
- 2025新初级社会工作者社工实务试题附答案
- 2026农业科技商业化应用与投资机会研究报告
- 2026中国葡萄干产业劳动力成本变化与自动化转型研究
- 2026中国期货交易所金属品种创新与流动性提升策略
- 2025中信证券融资测试题及答案
- DB4205∕T 89-2021 小流域暴雨洪水经验公式法洪峰流量计算规范
- 徐矿集团历年校园招聘笔试必刷题
- 五四表彰大会通知
- 《中华人民共和国环境保护法》测试题库及答案
- 中考专项复习魔壶的秘密反应后溶液中溶质成分的探究
- 铁路运输企业固定资产全生命周期管理创新研究
- TCANSI1742024造修船企业安全生产标准化基本要求
- 电梯配件储备方案(3篇)
- 四川省巴中市恒通香料有限公司年产1000吨柏木香精香料生产线项目环境影响报告书
- 西藏航空面试常见问题及答案解析
- 皮肤慢病管理专家共识(2025版)解读 2
评论
0/150
提交评论