




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、6位LED显示单片机控制电子钟/计数器 这是我们设计的单片机电子钟/计时器学习板,它采用6位LED数码管显示时、分、秒,以24小时计时方式。可以通过按键实现时分调整、秒表时钟功能转换、省电(关闭显示)等功能。我们能提供的完整的汇编语言源程序清单及电路原理设计图有助于学习者进行分析和进行实验验证 产品1:6位LED显示单片机控制电子钟/计数器成品板 成品每套84元 硬件参数板上资源:MCU STC89C52、6位Led显示、3位按键。电源部分为5V直流电压,需要稳压、滤波电路,不能接反!
2、60; 51单片机做的电子钟在很多地方都有介绍, 对于单片机学习者来说这个程序基本上是一道门槛,掌握了电子钟程序, 基本上可以说51单片机就掌握了80%。常见的电子钟程序由显示部分、计算部分、时钟调整部分构成,本产品硬件上完全支持倒计时器,客户只要自己修改程序就能实现倒计时功能。 为了实现LED显示器的数字显示,可以采用静态显示法和动态显示法。由于静态显示法需要数据锁存器等硬件,接口复杂一些。考虑时钟显示只有六位,且系统没有其它复杂的处理任务,所以决定采用动态扫描法实现LED的显示。单片机采用易购的AT89S51系列,这样单片机可具有足
3、够的空余硬件资源实现其它的扩充功能,硬件系统的总体构成如下图所示: 该板采用AT89S51单片机,最小化应用设计,采用共阳七段LED显示器,P0口输出段码数据,P2.0P2.5做列扫描输出,P1.0,P1.2,P1.3,接三个按键开关,用以调时及功能设置。为了提高共阳数码管的驱动电压,用9012做电源驱动输出。采用12M晶振,有利于提高秒计时的精度。 本设计中,计时采用定时器T0中断完成,其余状态循环调用显示子程序,当端口开关按下时,转入相应功能程序。其主程序执行流程图见下左图:
4、; 数码管显示的数据存放在内存单元70H75H中。其中70H71H存放秒数据,72H73H存放分数据,74H75H存放时数据,每一地址单元内均为十进制BCD码。由于采用软件动态扫描实现数据显示功能,显示用十进制BCD码数据的对应段码存放在ROM表中。显示时,先取出70H75H某一地址中的数据,然后查得对应的显示用段码,并从P0口输出,P2口将对应的数码管选中供电,就能显示该地址单元的数据值。 定时器T0用于时间计时。定时溢出中断周期可分别设为50mst和10ms。中断进入后,先判断是时钟计时还是秒
5、表计时,时钟计时累计中断20次(即1s)时,对秒计数单元进行加1操作,秒表计时每10ms进行加1操作。时钟计数单元地址分别在70H71H(秒)、76H77H(分)和78H79H(时),最大计时值为23时59分59秒。而秒表计数单元地址也在70H71H(0.01毫秒)、76H77H(秒)和78H79H(分),最大计时值为99分59.99秒。7AH单元内存放“熄灭符”数据(#0AH)。在计数单元中采用十进制BCD码计数,满60(秒表功能时有100)进位,T0中断服务程序执行流程见上图右 T1中断服务程序用于指示调整单元数字的亮闪。在时间调整状态下,每
6、过0.3S将对应单元的显示数据换成“熄灭符”数据(#0AH)。这样在调整时间时,对应调整单元的显示数据会间隔闪亮。 调时功能程序的设计方法是:按下P1.0口按键,若按下时间短于1 s则进入省电状态(数码管不亮,时钟不停);否则进入调分状态,等待操作,此时计时器停止走动。当再按下按钮时,若按下时间短于0.5s,则时间加1分;若按下时间长于0.5s,则进入小时调整状态。在小时调整状态下,当按键按下的时间长于0.5s时,退出调整状态,时钟继续走动。P1.1口按键在调时状态下可实现减1功能。 使用方法:按下K1按键,如果
7、按下时间小于1秒,就会进入省电模式,这时数码管熄灭但是时钟仍然运行。如果按下K1按键时间大于1秒,就会进入调分状态,此时计时器停止走动等待操作,这时中间的两位00会闪烁,这时当按下K1按键时间小于0.5秒时,时间信息就会加1(单位分钟);若时间大于0.5秒,这时左边的两位00会闪烁,进入小时调整,在小时调整状态下按下S6按键时间小于0.5秒时,时间信息就会加1(单位小时),如果按下按键时间大于0.5S时,就会退出调整状态,时钟继续走动。配件:采用PL2303芯片的USB转TTL串口模块 每个15元 含一根4芯杜邦连接线 你还可以另外购买我们的PL2303模块,就能实现ST
8、C芯片的在线程序下载。只要连接3根线:一根串口入R连接单片机的P3.1TXD、一根串口出D连接单片机的P3.0 RXD、一根地线-连接单片机的电源地即可。 然后将PL2303的USB转串口模块插入电脑的USB口(已经安装好2303的驱动),然后在STC编程软件界面中选择单片机型号STC89C52RC,选择COM6(具体按电脑实际虚拟出的串口号)波特率选择9600,点击“OPEN FILE”选择你的烧写文件,点击“下载”按钮,然后接通超声波测距成品学习板的电源,3秒左右就能完成程序下载并运行。以下是部分汇编源程序,购买我们产品后我们可以通过电子邮件将
9、完整的单片机汇编源程序和烧写文件发送给客户。 ; AT89S51时钟程序 ;(该程序不全,不要直接使用。购买产品后提供全部程序和图纸); 定时器T0、T1溢出周期为50MS,T0为秒计数用, T1为调整时闪烁用,; P1.0、P1.1、P1.2为调整按钮,P0口 为字符输出口,采用共阳显示管。; 中断入口程序 ;ORG 0000H ;程序执行开始地址LJMP START ;跳到标号START执行ORG 0003H ;外中断0中断程序入口RETI ;外中断0中断返回ORG 000BH ;定时器T0中断程序入口LJMP INTT0 ;跳至INTTO执行ORG 0013H ;外中断1中断程序入口RE
10、TI ;外中断1中断返回ORG 001BH ;定时器T1中断程序入口LJMP INTT1 ;跳至INTT1执行ORG 0023H ;串行中断程序入口地址RETI ;串行中断程序返回 ; 主 程 序 ;START: LCALL ST ;上电显示年月日及班级学号MOV R0,#70H ;清70H-7AH共11个内存单元MOV R7,#0BH ;CLEARDISP: MOV R0,#00H ;INC R0 ;DJNZ R7,CLEARDISP ;MOV 20H,#00H ;清20H(标志用)MOV 7AH,#0AH ;放入"熄灭符"数据MOV TMOD,#11H ;设T0、T1为
11、16位定时器MOV TL0,#0B0H ;50MS定时初值(T0计时用)MOV TH0,#3CH ;50MS定时初值MOV TL1,#0B0H ;50MS定时初值(T1闪烁定时用)MOV TH1,#3CH ;50MS定时初值SETB EA ;总中断开放SETB ET0 ;允许T0中断SETB TR0 ;开启T0定时器MOV R4,#14H ;1秒定时用初值(50MS×20)START1: LCALL DISPLAY ;调用显示子程序JNB P1.0,SETMM1 ;P1.0口为0时转时间调整程序JNB P1.1,FUNSS ; 秒表功能,P1.1按键调时时作减1加能JNB P1.2,
12、FUNPT ;STOP,PUSE,CLRSJMP START1 ;P1.0口为1时跳回START1SETMM1: LJMP SETMM ;转到时间调整程序SETMMFUNSS: LCALL DS20MSJB P1.1,START1WAIT11: JNB P1.1,WAIT11CPL 03HMOV 70H,#00HMOV 71H,#00HMOV 76H,#00HMOV 77H,#00HMOV 78H,#00HMOV 79H,#00HAJMP START1FUNPT: LCALL DS20MSJB P1.2,START1WAIT22: JNB P1.2,WAIT21CLR ET0CLR TR0WA
13、IT33: JB P1.2,WAIT31LCALL DS20MSJB P1.2,WAIT33WAIT66: JNB P1.2,WAIT61MOV R0,#70H ;清70H-79H共10个内存单元MOV R7,#0AH ;CLEARP: MOV R0,#00H ;INC R0 ;DJNZ R7,CLEARP ;WAIT44: JB P1.2,WAIT41LCALL DS20MSJB P1.2,WAIT44WAIT55: JNB P1.2,WAIT51SETB ET0SETB TR0AJMP START1WAIT21: LCALL DISPLAYAJMP WAIT22WAIT31: LCALL
14、DISPLAYAJMP WAIT33WAIT41: LCALL DISPLAYAJMP WAIT44WAIT51: LCALL DISPLAYAJMP WAIT55WAIT61: LCALL DISPLAYAJMP WAIT66 ; 1秒计时程序 ;T0中断服务程序INTT0: PUSH ACC ;累加器入栈保护PUSH PSW ;状态字入栈保护CLR ET0 ;关T0中断允许CLR TR0 ;关闭定时器T0JB 03H,FSSMOV A,#0B7H ;中断响应时间同步修正ADD A,TL0 ;低8位初值修正MOV TL0,A ;重装初值(低8位修正值)MOV A,#3CH ;高8位初值修正A
15、DDC A,TH0 ;MOV TH0,A ;重装初值(高8位修正值)SETB TR0 ;开启定时器T0DJNZ R4, OUTT0 ;20次中断未到中断退出ADDSS: MOV R4,#14H ;20次中断到(1秒)重赋初值MOV R0,#71H ;指向秒计时单元(71H-72H)ACALL ADD1 ;调用加1程序(加1秒操作)MOV A,R3 ;秒数据放入A(R3为2位十进制数组合)CLR C ;清进位标志CJNE A,#60H,ADDMM ;ADDMM: JC OUTT0 ;小于60秒时中断退出ACALL CLR0 ;大于或等于60秒时对秒计时单元清0MOV R0,#77H ;指向分计时
16、单元(76H-77H)ACALL ADD1 ;分计时单元加1分钟MOV A,R3 ;分数据放入ACLR C ;清进位标志CJNE A,#60H,ADDHH ;ADDHH: JC OUTT0 ;小于60分时中断退出ACALL CLR0 ;大于或等于60分时分计时单元清0MOV R0,#79H ;指向小时计时单元(78H-79H)ACALL ADD1 ;小时计时单元加1小时MOV A,R3 ;时数据放入ACLR C ;清进位标志JB 03H,OUTT0 ;秒表时最大数为99CJNE A,#24H,HOUR ;HOUR: JC OUTT0 ;小于24小时中断退出ACALL CLR0 ;大于或等于24
17、小时小时计时单元清0OUTT0: MOV 72H,76H ;中断退出时将分、时计时单元数据移MOV 73H,77H ;入对应显示单元MOV 74H,78H ;MOV 75H,79H ;POP PSW ;恢复状态字(出栈)POP ACC ;恢复累加器SETB ET0 ;开放T0中断RETI ;中断返回;秒表计时程序(10MS加1),低2位为0.1、0.01秒,中间2位为秒,最高位为分。;最大计数值为99FSS: MOV A,#0F7H ;中断响应时间同步修正,重装初值(10ms)ADD A,TL0 ;低8位初值修正MOV TL0,A ;重装初值(低8位修正值)MOV A,#0D8H ;高8位初值
18、修正ADDC A,TH0 ;MOV TH0,A ;重装初值(高8位修正值)SETB TR0 ;开启定时器T0MOV R0,#71H ;指向秒计时单元(71H-72H)ACALL ADD1 ;调用加1程序(加1秒操作)CLR C ;MOV A,R3 ;JZ FSS1 ;加1后为00,C=0SETB C ;加1后不为00,C=1FSS1: AJMP ADDMM ;省略; 加1子 程 序 ;ADD1: MOV A,R0 ;取当前计时单元数据到ADEC R0 ;指向前一地址SWAP A ;A中数据高四位与低四位交换ORL A,R0 ;前一地址中数据放入A中低四位ADD A,#01H ;A加1操作DA
19、A ;十进制调整MOV R3,A ;移入R3寄存器ANL A,#0FH ;高四位变0MOV R0,A ;放回前一地址单元MOV A,R3 ;取回R3中暂存数据INC R0 ;指向当前地址单元SWAP A ;A中数据高四位与低四位交换ANL A,#0FH ;高四位变0MOV R0,A ;数据放入当削地址单元中RET ;子程序返回省略; 延时程序 ;1MS延时程序,LED显示程序用DL1MS: MOV R6,#14H #产品2:采用AT89C2051的6位LED电子钟(计数器)一、原理说明:1、显示原理: 显示部分主要器件为2位共阳红色数码管,驱动采用
20、PNP型三极管驱动,各端口配有限流电阻,驱动方式为扫描,占用P1.0P1.6端口。冒号部分采用4个3.0的红色发光,驱动方式为独立端口驱动,占用P1.7端口。2、键盘原理: 按键S1S3采用复用的方式与显示部分的P3.5、P3.4、P3.2口复用。其工作方式为,在相应端口输出高电平时读取按键的状态并由单片机支除抖动并赋予相应的键值。3、迅响电路及输入、输出电路原理: 迅响电路由有源蜂鸣器和PNP型三极管组成。其工作原理是当PNP型三极管导通后有源蜂鸣器立即发出定频声响。驱动方式为独立端口驱动,占用P3.
21、7端口。输出电路是与迅响电路复合作用的,其电路结构为有源蜂鸣器,5.1K定值电阻R6,排针J3并联。当有源蜂鸣器无迅响时J3输出低电平,当有源蜂鸣器发出声响时J3输出高电平,J3可接入数字电路等各种需要。驱动方式为迅响复合输出,不占端口。 输入电路是与迅响电路复合作用的,其电路结构是在迅响电路的PNP型三极管的基极电路中接入排针J2。引脚排针可改变单片机I/O口的电平状态,从而达到输入的目的。驱动方式为复合端口驱动,占用P3.7端口。4、单片机系统: 本产品采用AT89C2051为核心器件(AT89C2
22、051烧写程序必须借助专用编程器,我们提供的单片机已经写入程序),并配合所有的必须的电路,只具有上电复位的功能,无手动复位功能。二、使用说明:1、功能按键说明: S1为功能选择按键,S2为功能扩展按键,S3为数值加一按键。2、功能及操作说明:操作时,连续短时间(小于1秒)按动S1,即可在以上的6个功能中连续循环。中途如果长按(大于2秒)S1,则立即回到时钟功能的状态。1、时钟功能:上电后即显示10:10:00 ,寓意十全十美。2、校时功能:短按一次S1,即当前时间和冒号为闪烁状态,按动S2则小时位加1,按动S3则分钟位加1,秒时不可调。3、闹钟功能:短按二次S1,显示状态为22:10:00,冒
23、号为长亮。按动S2刚小时位加1,按动S3则分钟位加1,秒时不可调。当按动小时位超过23时则会显示-:-:-,这个表示关闭闹钟功能。闹铃声为蜂鸣器长鸣3秒钟。4、倒计时功能:短按三次S1,显示状态为 0,冒号为长灭。按动S2则从低位依此显示高位,按动S3则相应位加1,当S2按到第6次时会在所设定的时间状态下开始倒计时,再次按动S2将再次进入调整功能,并且停止倒计时。5、秒表功能:短按四次S1,显示状态为00:00:00,冒号为长亮。按动S2则开始秒表计时,再次按动S2则停止计时,当停止计时的时候按动S3则秒表清零。6、计数器功能:短按五次S1,显示状态为00:00:00,冒号为长灭,按动S2则计
24、数器加1,按动S3则计数器清零。采用AT89C2051的6位LED电子钟(计数器)散件每套28元以下是部分C语言源程序,购买产品后可以向我们索要完整的单片机C语言源程序、烧写文件和说明书。#include<REG2051.H>code senen_seg10=0x81,0xe7,0x92,0xa2,0xe4,0xa8,0x88,0xe3,0x80,0xa0; /P1.7(冒号)口高电平bit key1_enter=0,key2_enter=0,key3_enter=0,countdown_mark=0,stopwatch_mark=0,count_mark=0,bell_mark=
25、0; /状态标志unsigned char program=0,program_variable=0,count_bit=0,count=0;unsigned char hour=10,minute=10,second=0; /时间变量unsigned char delayed_hour=22,delayed_minute=10,delayed_second=0; /定时变量 unsigned char count_hour=0,count_minute=0,count_second=0; /计时计数变量unsigned int count_time=0,count_count=0; void
26、 delay(unsigned int t) /延时子程序 unsigned int i,j;for(i=0;i<t;i+)for(j=0;j<10;j+); void time0_init(void) /定时计数0器初始化EA=0; TR0=0;TMOD=0x02;TH0=0x4;TL0=0x4;ET0=1;TR0=1;EA=1;static void timer0_isr(void) interrupt TF0_VECTOR using 1 /定时计数0器中断函数count_time+; /时钟计时程序if(count_time>=4020)count_time=0;se
27、cond+;if(second>=60)second=0;minute+;if(minute>=60)minute=0;hour+;if(hour>=24)hour=0;if(delayed_hour=hour && delayed_minute=minute && second<4) P3_7=0;else P3_7=1;if(countdown_mark=1) /倒计时程序count_count+;if(count_count>=4000 && (count_second!=0|count_minute!=0|c
28、ount_hour!=0)count_count=0;count_second-;if(count_second>=60)count_second=59;count_minute-;if(count_minute>=60)count_minute=59;count_hour-;if(count_hour>=100) count_hour=99;if(count_second=0&&count_minute=0&&count_hour=0&&count_count<=12000) P3_7=0;else P3_7=1;if(
29、count_count>=15000) count_count=14000; if(stopwatch_mark=1) /秒表程序count_count+;if(count_count>=40)count_count=0;count_second+;if(count_second>=100)count_second=0;count_minute+;if(count_minute>=60)count_minute=0;count_hour+;if(count_hour>=60) count_hour=0;unsigned char show_key (void)un
30、signed char x=0,y=0;switch (program)case 0: P1&=senen_segsecond%10; /时钟秒的个位break;case 1: if(count_time>=2000) P1&=senen_segsecond%10; /校正秒的个位break;case 2: if(delayed_hour=24) P1=0xfe; /闹钟秒的个位else P1&=senen_segdelayed_second%10; break;case 3: if(count_bit>=0) P1&=senen_segcount_
31、second%10;/倒计时秒的个位else P1=0xff;break;case 4: P1&=senen_segcount_second%10; /秒表秒的个位break;case 5: P1&=senen_segcount_second%10; /计数器个位break;P3_3=0;delay(10);if(P3_5=0) /功能键1识别key1_enter=1;if(count<=254)count+;if(P3_4=0) key2_enter=1; /功能键2识别if(P3_2=0) key3_enter=1; /功能键3识别 P3_3=1;P1|=0xff;s
32、witch (program) case 0: P1&=senen_segsecond/10; /时钟秒的十位break;case 1: if(count_time>=2000) P1&=senen_segsecond/10; /校正秒的十位break;case 2: if(delayed_hour=24) P1=0xfe; /闹钟秒的十位else P1&=senen_segdelayed_second/10; break;case 3: if(count_bit>=1) P1&=senen_segcount_second/10;/倒计时秒的十位el
33、se P1=0xff;break;case 4: P1&=senen_segcount_second/10; /秒表秒的十位break;case 5: P1&=senen_segcount_second/10; /计数器十位break; P3_1=0;delay(10);P3_1=1;P1|=0xff;switch (program) case 0: P1&=senen_segminute%10; /时钟分的个位break;case 1: if(count_time>=2000) P1&=senen_segminute%10; /校正分的个位break;c
34、ase 2: if(delayed_hour=24) P1=0xfe; /闹钟分的个位else P1&=senen_segdelayed_minute%10; break;case 3: if(count_bit>=2) P1&=senen_segcount_minute%10;/倒计时分的个位else P1=0xff;break;case 4: P1&=senen_segcount_minute%10; /秒表分的个位break;case 5: P1&=senen_segcount_minute%10; /计数器百位break;P3_2=0;delay(
35、10);P3_2=1;P1|=0xff;switch (program)case 0: P1&=senen_segminute/10; /时钟秒的个位break;case 1: if(count_time>=2000) P1&=senen_segminute/10; /校正秒的个位break;case 2: if(delayed_hour=24) P1=0xfe; /闹钟秒的个位else P1&=senen_segdelayed_minute/10; break;case 3: if(count_bit>=3) P1&=senen_segcount_
36、minute/10;/倒计时秒的个位else P1=0xff;break; case 4: P1&=senen_segcount_minute/10; /秒表秒的个位break;case 5: P1&=senen_segcount_minute/10; /计数器千位break;P3_5=0;delay(10);P3_5=1;P1|=0xff;switch (program)case 0: P1&=senen_seghour%10; /时钟时的个位break;case 1: if(count_time>=2000) P1&=senen_seghour%10;
37、 /校正时的个位break;case 2: if(delayed_hour=24) P1=0xfe; /闹钟时的个位else P1&=senen_segdelayed_hour%10; break;case 3: if(count_bit>=4) P1&=senen_segcount_hour%10;/倒计时时的个位else P1=0xff;break;case 4: P1&=senen_segcount_hour%10; /秒表时的个位break;case 5: P1&=senen_segcount_hour%10; /计数器万位break;P3_0=0
38、;delay(10);if(P3_4=1 && key2_enter=1)x=3; /确认功能键2识别,返回3key2_enter=0;P3_0=1;P1|=0xff;switch (program) case 0: P1&=senen_seghour/10; /时钟时的个位break;case 1: if(count_time>=2000) P1&=senen_seghour/10; /校正时的个位break;case 2: if(delayed_hour=24) P1=0xfe; /闹钟时的个位else P1&=senen_segdelayed
39、_hour/10; break;case 3: if(count_bit>=5)P1&=senen_segcount_hour/10; /倒计时时的个位else P1=0xff;break;case 4: P1&=senen_segcount_hour/10; /秒表时的个位break;case 5: P1&=senen_segcount_hour/10; /计数器万位break;P3_4=0;delay(10);if(P3_5=1 && key1_enter=1) /确认功能键1识别,执行退出或进入下一个功能if(count>=127) x
40、=1; /确认功能键1为长按,返回1else x=2; /确认功能键1为短按,返回2key1_enter=0;count=0;if(P3_2=1 && key3_enter=1)x=4; /确认功能键3识别,返回4key3_enter=0; P3_4=1;P1|=0xff;if(program<=1 && count_time>=2000) P1&=0xff; /校时和显示功能时钟时冒号闪烁if(program<=1 && count_time<=2000) P1&=0x7f;if(program=2) P
41、1&=0x7f; /设置闹钟功能时冒号长亮if(program=3) P1&=0xff; /设置倒计时功能时冒号长灭if(program=4) P1&=0x7f; /设置秒表功能时冒号长亮if(program=5) P1&=0xff; /设置计数时冒号长灭y=x;x=0;return y;void main() /主程序P1=0xff; P3=0xff;time0_init();while(1)switch(program)case 0: while(program=0) /时钟菜单switch(show_key()case 0: break;case 1: p
42、rogram=0;break;case 2: program=1;break;break; /校时菜单case 1: while(program=1)switch(show_key()case 0: break;case 1: program=0;break;case 2: program=2;break;case 3: hour+;if(hour>=24)hour=0;break;case 4: minute+;if(minute>=60)minute=0;break;break;case 2: while(program=2) /闹钟菜单switch(show_key()cas
43、e 0: break;case 1: program=0;break;case 2: program=3;break;case 3: delayed_hour+;if(delayed_hour>=25)delayed_hour=0;break;case 4: delayed_minute+;if(delayed_minute>=60)delayed_minute=0;break;break;case 3: while(program=3) /倒计时菜单switch(show_key()case 0: break;case 1: program=0;break;case 2: program=4;break;case 3: count_bit+;if(count_bit>=7)count_bit=0;break;case 4: swi
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 企业财务人员担保责任与义务合同
- 语音增强与降噪-洞察阐释
- 餐厅破产清算后资产重组及经营权转让协议
- 线控插座采购与远程控制技术合同
- 车位经营权及广告使用权转让合同
- 文化创意产业园区厂房出租及知识产权保护协议
- 荒漠野生植物生态修复-洞察阐释
- 车贷贷款逾期罚息及还款期限合同
- 跨界合作活动策划与推广合同
- 多模型协同部署-洞察阐释
- 23秋国家开放大学《汉语基础》期末大作业(课程论文)参考答案
- 高压氧治疗注意事项及操作规范指南
- 职业中等专业学校新能源汽车运用与维修专业人才培养方案
- 圆锥式破碎机施工方案
- 中职英语技能大赛模拟试题(一)
- 自来水厂调试方案
- 高速铁路-轨道控制网CPIII测量课件
- 全过程造价咨询投资控制目标承诺及保证措施
- 第七版外科护理学-骨折病人的护理课件
- 三级医院危重症和疑难复杂疾病目
- 分数的加法和减法教材分析课件
评论
0/150
提交评论