




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选优质文档-倾情为你奉上 XINYU UNIVERSITY课程设计报告题 目 二级学院 专 业 班级学号 学生姓名 指导教师 专心-专注-专业目 录122224 335摘 要随着科学技术的发展和普及,各种各样的竞赛越来越多,其中抢答器的作用也越来越重要。本文设计出以AT89S51单片机为核心的八路抢答器,采用了数字显示器直接指示,自动锁存显示结果,并自动复位的设计思想,它能根据不同的抢答输入信号,经过单片机的控制处理并产生不同的与输入信号相对应的输出信号,最后通过LED数码管显示相应的路数,即使两组的抢答时间相差几微秒,也可分辨出是哪组优先按下的按键,充分利用了单片机系统结构简单、功能强大、
2、可靠性好、实用性强的特点。第1章 方案的概述1.1 设计内容利用单片机实现8路智能抢答器功能。先在Proteus软件上画出系统的各部分硬件电路设计框图,并且在Keil软件上完成对应的软件程序设计,实现系统的主要功能。硬件设计内容主要包括:复位电路,晶振电路,矩阵键盘输入,LED显示模块,报警电路部分。软件设计内容主要包括:键盘扫描,编码显示,抢答选手扫描,中断程序控制,定时器的使用。抢答器要求可同时供8名选手或8个代表队参加抢答比赛。此外,设置一个控制开关,用来控制系统的清零、抢答开始及定时器的预置等。抢答器具有数据锁存和显示功能。1.2 设计要求(1) 抢答器同时供8名选手或8个代表队比赛,
3、分别用8个按钮S0S5表示。(2) 设置一个系统清除和抢答控制开关s,该开关由主持人控制。(3) 抢答器具有锁存与显示功能。即选手按动按钮,锁存相应的编号,并在LED数码管上显示,同时扬声器发出警报声响提示。选手抢答实行优先锁存, 优先抢答选手的编号一直保持到主持人将系统清零为止。(4) 抢答器具有定时抢答功能,且一次抢答的时间由主持人设定(如30秒)。当主持人启动“开始”键后,定时器进行减计时,同时扬声器发出短暂的声响,声响持续时间0.5秒左右(5) 参赛选手在设定的时间内进行抢答,抢答有效,定时器停止工作,显示器上显示选手的编号和抢答的时间,并保持到主持人将系统清除为止。(6) 如果定时时
4、间已到,无人抢答,本次抢答无效,系统报警并禁止抢答,定时显示器上显示00.1.3抢答器的总体框图第2章 硬件电路设计2.1 Proteus软件介绍Proteus软件是英国公司出版的一款EDA软件。此软件不仅具有一般EDA软件的仿真功能,而且能仿真单片机及其外围电路。它是目前最好的仿真单片机及外围电路软件。在进行各种电路设计之前,必须要进行电路原理图的仿真,只有在软件仿真成功才可能在实际电路中实现。并且由于实验室器件的有限,有些电路无法在实际中设计出来,所以我们必须要通过Proteus仿真电路。Proteus软件是世界上唯一将电路仿真、PCB设计和虚拟模型仿真三合一的设计平台,在单片机电路设计中
5、使用更为广泛。42.2总电路原理为使硬件电路设计尽可能合理,应注意以下几方面:(1) 尽可能采用功能强的芯片,以简化电路,功能强的芯片可以代替若干普通芯片,随着生产工艺的提高,新型芯片的的价格不断下降,并不一定比若干普通芯片价格的总和高。(2) 留有设计余地。在设计硬件电路时,要考虑到将来修改扩展的方便。因为很少有一锤定音的电路设计,如果现在不留余地,将来可能要为一点小小的修改或扩展而被迫进行全面返工。(3) 程序空间,选用片内程序空间足够大的单片机,本设计采用AT89C51单片机。(4) RAM空间,AT89S51内部RAM不多,当要增强软件数据处理功能时,往往觉得不足。如果系统配置了外部R
6、AM,则建议多留一些空间。如选用8155作I/O接口,就可以增强256字节RAM.如果有大批数据需要处理,则应配置足够的RAM,如6264,62256等。(5) I/O端口:在样机研制出来后进行现场试用时,往往会发现一些被忽视的问题,而这些问题不是靠单纯的软件措施来解决的。如有些新的信号需要采集,就必须增加输入检测端;有些物理量需要控制,就必须增加输出端。如果在硬件电路设计就预留出一些I/O端口,虽然当时空着没用,那么用的时候就派上用场了。P2.4为开始抢答9,P2.5为加分,P2.6为减分,P1.0-P1.7为六八抢答输入,数码管段选P0口,位选P2口低3位,蜂鸣器输出为P2.7口。、2.3
7、 时钟频率电路设计时钟电路是计算机的心脏,它控制着计算机的工作节奏。MCS-51单片机允许的时钟频率是因型号而异的。晶振的选择:6MHz的晶振,其机器周期是2us。12MHz的晶振,其机器周期是1us, 也就是说在执行同一条指令时用6MHz的晶振所用的时间是12MHz晶振的两倍。为了提高整个系统的性能我选择了12MHz的晶振。振荡方式的选择:内部振荡方式,MCS-51内部都有一个反相放大器,XTAL1、XTAL2分别为反相放大器输入和输出端,外接定时反馈元件以后就组成振荡器,产生时钟送至单片机内部的各个部件。这样就构成了内部振荡方式外部振荡方式是把已有的时钟信号引入单片机内。这种方式适合用来使
8、单片机的时钟与外部信号一致。 单片机必须在时钟的驱动下才能工作.在单片机内部有一个时钟振荡电路,只需要外接一个振荡源就能产生一定的时钟信号送到单片机内部的各个单元,决定单片机的工作速度。一般选用石英晶体振荡器。此电路在加电大约延迟10ms后振荡器起振,在XTAL2引脚产生幅度为3V左右的正弦波时钟信号,其振荡频率主要由石英晶振的频率确定。电路中两个电容 C1,C2的作用有两个:一是帮助振荡器起振;二是对振荡器的频率进行微调。C1,C2的典型值为30PF。单片机在工作时,由内部振荡器产生或由外直接输入的送至内部控制逻辑单元的时钟信号的周期称为时钟周期。其大小是时钟信号频率的倒数,常用fosc表示
9、。如时钟频率为12MHz,即fosc=12MHz,则时钟周期为1/12µs。2.4复位电路设计 在抢答器电路中,难免会出现操作失误,使得程序跑偏,或者出错,所以需要复位电路来使得在出错时使电路恢复正常工作。复位电路是单片机的初始化操作,使单片机从0开始执行程序。复位不仅能使单片机进入系统正常初始化,而且当程序运行出错或操作不当使系统死锁时,按下复位按钮重新启动,使单片机正常工作。 复位方式有以下四种:上电自动复位、按键电平复位、外部脉冲复位、和自动复位。即外部产生复位信号由单片机的9脚(RST)输入,从而使单片机完成复位操作。复位信号是高电平有效,有效时间应持续两个机器周期以上。2.
10、5人工复位设计除上电自动复位以外,常常需要人工复位,将一个按钮开关并联于上电自动复位电路,按一下开关就RST端出现一段时间的高电平,即使器件复位。如图所示2.6 显示电路设计显示电路是最常用的输出设备。为观察单片机的运行状态,往往需要显示器来直观的表现出来。抢答器电路需要通过显示电路,来显示抢答选手的标号,和倒计时显示。本系统采用四位一体共阴数码管显示,数码管前两位显示倒计时,后两位显示抢答选手的标号。2.7 按键输入电路设计在抢答器电路中每位选手会通过手中的抢答按键来获得优先答题权。每位选手的按键就构成抢答器电路的键盘输入。键盘输入电路是单片机外围电路中最常见的一种电路。键盘有两种形式,编码
11、键盘和非编码键盘。当有键盘被按下时,通过一种专用的硬件编码器来识别按键闭合,并且确定出键盘编码号码,这种键盘称为编码键盘,如计算机键盘。而通过软件编程方式来确定某个按键的闭合的键盘称为非编码键盘,在单片机组成的各种系统中,用的比较多的是非编码键盘。非编码键盘又分为:独立键盘和行列式键盘(或称矩阵键盘)。对于每一个按键需要与单片机的I/O口相连,从而读出键盘的状态。单片机可以通过软件编程读出哪个键按下,从而做出对应的操作。2.7.1 独立式键盘电路设计独立式键盘是单片机电路中用的最多的键盘输入,独立键盘是由键盘的两端直接和单片机的I/O口与接地相连。当键盘按下时,对应端口与地相连,则直接将对应的
12、端口变成低电平,然后做出相应的操作。每个独立键盘需要单独使用一根I/O线,所以当一个电路中键盘输入较多时采用独立键盘设计就会造成I/O口的大量浪费,从而造成I/O口不够用。所以,只有按键数量不多时,采用独立键盘输入。电路中的开始抢答按键和开始答题按键采用的就是独立式键盘输入。独立键盘的好处就是:每个按键单独使用一根I/O线,键盘扫描容易,且独立键盘每个按键互不影响。本电路中用到的独立键盘有下面几处。当按下开始抢答按键时候,P2.0口被硬件置为低电平,控制整个电路开始,开始抢答;当按下开始答题按键时候,P2.1被硬件置为低电平,显示答题时间。2.7.2 矩阵键盘电路设计 在矩阵键盘中,每4个键盘
13、构成一行,一共四行四列。每一行按键的一端连接起来,每一列按键的另一端连接起来,总共构成8路,所以,一个单片机的P3口就可以构成16个键盘电路的输入端口了。 在本次设计中,有16个选手或代表队参加比赛,每一个代表队需要一个抢答按键,就需要16个按钮。在设计中发现,如果采用独立键盘连接电路,则需要一个端口连接一个按键,所以需要占用16个I/O口,就会造成资源的浪费,成本增高。所以当有16位选手参加抢答比赛时,需要16个键盘,采用4 X 4矩阵键盘只需要8个I/O口,从而大大减少了I/O口资源的浪费。当键盘个数超过8个,采用矩阵键盘是最为合适的。相比独立键盘,矩阵键盘的特点是:电路的I/O口需要相对
14、较少,能有效节省I/O口资源浪费;但是硬件电路相对复杂,键盘扫描比独立键盘扫描繁琐,需要独立软件编程,完成键盘扫描,从而确定那个按键按下,做出相应操作,矩阵键盘更适合多按键电路。矩阵键盘接好以后,就要对应的键盘扫描工作,判断出那个按键按下,从而做出对应操作。当没有按键按下的时候所有行线和列线是开路的。当键盘上的一个按键被按下的时候,该按键的行线和列线就会被短路。将所有的列线都置为高电平,行线逐个置为低电平。例如当把第一行线置为低电平,第一行有按键按下时该按键的列线也会变成低电平,从而判断第一行的某个按钮被按下,以此类推,单片机根据电平的变化从而扫描出键盘操作。键盘的扫描分为循环扫描工作方式和中
15、断扫描工作方式。循环扫描工作方式,是在单片机工作的过程中调用键盘扫描子程序来响应按键输入。此种扫描方式缺点是,不管键盘有无按下,单片机都会扫描键盘,然而在工作的过程中不需要按键按下,此时系统处于空扫描状态。为了提高单片机的工作效率,采用中断扫描,即只有按键按下时,才发送中断申请,进行键盘扫描。本次设计采用了循环扫描的工作方式。按键在按下的过程中有可能会产生抖动,此时逻辑电平是不稳定,所以在键盘扫描过程中,一定要在软件设计过程加入去抖部分。在本次设计中,我们通过在软件编程过程中,对按键扫描进行延时的方法中来去除抖动。在按下按键并处理完相应操作时,可以在软件编程中增加键盘释放的程序。2.8 报警电
16、路设计在抢答器系统里,当抢答时间快要结束时或者答题时间快要结束时,需要一个报警电路来提示抢答选手,所以在本次设计中添加了报警电路部分。当答题时间和抢答时间小于5秒后,则会启动报警电路第3章 软件设计3.1 Keil C51软件简介在硬件设计完毕后,就要通过软件编程,将设计的功能逐一实现。写单片机软件语言时,我们可以采用汇编语言和C语言来完成,二者殊途同归。汇编语言是机器语言,而C语言是中级语言。汇编语言的特点是执行效率高,对单片机中的寄存器直接操作,但是开发周期长,移植性不强。C语言具有使用范围广,可移植性强,开发周期短,但是执行效率较汇编语言低。在本系统的软件开发中,我们采用C语言在Keil
17、软件上来完成软件编程。3.2 主程序系统结构软件设计分为以下五个部分:主程序设计,开始键扫描子程序,抢答键盘扫描子程序,显示程序,定时器中断。系统初始化键盘控制抢答模块倒计时中断数码显示3.3 程序流程图任何一个C语言程序,都先从主程序开始执行,从主程序执行开始键扫描程序,若开始键按下,则触发定时器中断1,并扫描键盘,若有抢答选手按下按键,则显示剩余答题时间,并显示锁存抢答选手号码,并且伴随提示音。此外,当有选手按下后,就要封锁电路,禁止其他选手抢答。若无选手抢答,则倒计时,当剩余五秒时,触发报警程序,即定时器中断2。当主持人按下开始键,活着复位键时,复位电路。重新开始电路。开始键按下?选手键
18、按下?选手作答否?开始初始化判断那位选手先抢答,显示选手号并出声提示按下限时答题,开始倒计时倒计时剩余时间到按下复位键倒计时时间到NYNYNY3.4程序设计 OK EQU 20H;抢答开始标志位 RING EQU 22H;响铃位 ORG 0000H AJMP MAIN
19、; ORG 0003H AJMP INT0SUB ORG 000BH AJMP T0INT ORG 0013H AJMP INT1SUB
20、0; ORG 001BH AJMP T1INT ORG 0040HMAIN: MOV R1,#30;初设抢答时间为30s MOV R2,#60;初设答题时间为60s MOV TMOD,#11H
21、;设置未定时器/模式1 MOV TH0,#0F0H MOV TL0,#0FFH;越高发声频率越高,越尖 MOV TH1,#3CH MOV TL1,#0B0H;50ms为一次溢出中断
22、 SETB EA SETB ET0 SETB ET1 SETB EX0 SETB EX1;允许四个中断,T0/T1/INT0/INT1 CLR OK CLR RING SETB TR1 &
23、#160; SETB TR0;一开始就运行,以开始显示FFF.如果想重新计数,重置TH1/TL1就可以了;=程序=START: MOV R5,#0BH MOV R4,#0BH MOV R3,#0BH ACALL DISPLAY;未开始抢答时候显示FFF &
24、#160; JB P3.0,NEXT;ddddddd ACALL DELAY JB P3.0,NEXT;去抖动,如果"开始键"按下就向下执行,否者跳到非法抢答查询 ACALL BARK;按键发声 &
25、#160; MOV A,R1 MOV R6,A;送R1->R6,因为R1中保存了抢答时间 SETB OK;抢答标志位,用于COUNT只程序中判断是否查询抢答 MOV R7,#01H ;读抢答键数据信号,这里表示只读一次有用信号 MOV R3,#0AH;抢答只显示计时,灭号数 AJMP COUNT;进入倒计时程序,"有效抢答的程序&
26、quot;在COUNT里面NEXT: JNB P1.0,FALSE1 JNB P1.1,FALSE2 JNB P1.2,FALSE3 JNB P1.3,FALSE4 JNB P1.4,FALSE5 JNB P1.5,FALSE6 JNB P1.6,FALSE7 JNB P1.7,FALSE8
27、0; AJMP START;=非法抢答处理程序=FALSE1: MOV R3,#01H AJMP ERRORFALSE2: MOV R3,#02H AJMP ERRORFALSE3: MOV R3,#03H AJMP ERRORFALSE4: MOV R3,#04H
28、; AJMP ERRORFALSE5: MOV R3,#05H AJMP ERRORFALSE6: MOV R3,#06H AJMP ERRORFALSE7: MOV R3,#07H AJMP ERRORFALSE8: MOV R3,#08H AJMP ERROR
29、;=INT0(抢答时间R1调整程序)=INT0SUB:MOV A,R1 MOV B,#0AH DIV AB MOV R5,A MOV R4,B &
30、#160; MOV R3,#0AH ACALL DISPLAY;先在两个时间LED上显示R1 JNB P3.4,INC0;P3.4为+1s键,如按下跳到INCO JNB P3.5,DEC0;P3.5为-1s键,如按下跳到DECO
31、 JNB P3.1,BACK0;P3.1为确定键,如按下跳到BACKO AJMP INT0SUBINC0: MOV A,R1CJNE A,#63H,ADD0;如果不是99,R2加1,如果加到99,R1就置0,重新加起。 MOV R1,#00H ACALL DELAY1AJMP INT0SUBADD0: INC R1
32、0; ACALL DELAY1 AJMP INT0SUBDEC0: MOV A,R1 JZ SETR1;如果R1为0, R1就置99, DEC R1 ACALL DELAY1 AJMP INT0SUBSETR1: MOV R1,#63H
33、160; ACALL DELAY1 AJMP INT0SUBBACK0: RETI =INT1(回答时间R2调整程序)=INT1SUB:MOV A,R2 MOV B,#0AH DIV ABMOV R5,A MOV R4,B MOV R3,#0AH
34、0; ACALL DISPLAY JNB P3.4,INC1 JNB P3.5,DEC1 JNB P3.1,BACK1 AJMP INT1SUBINC1: MOV A,R2 CJNE A,#63H,ADD1 MOV R2,#00H
35、; ACALL DELAY1AJMP INT1SUBADD1: INC R2 ACALL DELAY1 AJMP INT1SUBDEC1: MOV A,R2 JZ SETR2 DEC R2 ACALL DELAY1 AJMP I
36、NT1SUBSETR2: MOV R2,#63H ACALL DELAY1 AJMP INT1SUBBACK1: RETI =倒计时程序(抢答倒计时和回答倒计时都跳到改程序)=REPEAT:MOV A,R2 ;使用锦囊时重新计时 MOV R6,A
37、0; CLR RING COUNT: MOV R0,#00H;重置定时器中断次数 MOV TH1,#3CH MOV TL1,#0B0H;重置RECOUNT:MOV A,R6;R6保存了倒计时的时间,之前先将抢答时间或回答时间给R6 MOV B,#0AH
38、DIV AB;除十分出个位/十位 MOV 30H,A;十位存于(30H) MOV 31H,B;个位存于(31H) MOV R5,30H;取十位 MOV R4,31H;取个位 MOV A,R6 SUBB A,#07H JNC LARGER;大于5s跳到LARGER,小于等于5s会提醒 MOV A,R0
39、 CJNE A,#0AH,FULL;1s中0.5s向下运行 CLR RING AJMP CHECKFULL: CJNE A,#14H,CHECK;下面是1s的情况,响并显示号数并清R0,重新计 SETB RING MOV A,R6
40、; JZ QUIT;计时完毕 MOV R0,#00H DEC R6;一秒减1 AJMP CHECKLARGER: MOV A,R0 CJNE A,#14H,CHECK;如果1s向下运行,否者跳到查"停/显示" DEC R6;计时一秒R6自动减1 MOV R0,#00HCHECK: JNB P3.1,QU
41、IT;如按下停止键退出 JNB OK,CHECKK ;只在回答倒计时才有效 AJMP NEXTTCHECKK:JNB P3.0,REPEAT ;判断是否使用锦囊NEXTT: ACALL DISPLAY JB OK,ACCOUT;如果是抢答倒计时,如是则抢答,否者跳过查询继续倒数(这里起到锁抢答作用)
42、 AJMP RECOUNTACCOUT: MOV A,36H JNB ACC.0,TRUE1 JNB ACC.1,TRUE2 JNB ACC.2,TRUE3 JNB ACC.3,TRUE4
43、160; JNB ACC.4,TRUE5 JNB ACC.5,TRUE6 JNB ACC.6,TZ1 JNB ACC.7,TZ2 AJMP RECOUNT TZ1:JMP TRUE7 TZ2:JMP TRUE8 QUIT:
44、 CLR OK;如果按下了"停止键"执行的程序 CLR RING AJMP START;=正常抢答处理程序=TRUE1: ACALL BARK MOV A,R2 MOV R6,A;抢答时间R2送R6 MOV R3,#01H CLR OK;因为答题的计时不再抢答,所以就锁了抢答 AJMP COUNTTRUE2:ACALL BARK
45、; MOV A,R2 MOV R6,A MOV R3,#02H CLR OK AJMP COUNTTRUE3:ACALL BARK MOV A,R2 MOV R6,A MOV R3,#03H CLR OK AJMP COUNTTRUE4:ACALL BARK MOV A,R2 MOV R6,A
46、60; MOV R3,#04H CLR OK AJMP COUNTTRUE5:ACALL BARK MOV A,R2 MOV R6,A MOV R3,#05H CLR OK AJMP COUNTTRUE6: ACALL BARK
47、 MOV A,R2 MOV R6,A MOV R3,#06H CLR OK AJMP COUNTTRUE7:ACALL BARK MOV A,R2 MOV R6,A MOV R3,#07H CLR OK&
48、#160; AJMP COUNTTRUE8:ACALL BARK MOV A,R2 MOV R6,A MOV R3,#08H CLR OK AJMP COUNT;=犯规抢答程序=ERROR: MOV R0,#00H MOV TH1,#3CH
49、 MOV TL1,#0B0H MOV 34H,R3;犯规号数暂存与(34H)HERE: MOV A,R0 CJNE A,#06H,FLASH;0.3s向下运行->灭并停响 CLR RING MOV R3,#0AH
50、; MOV R4,#0AH MOV R5,#0AH;三灯全灭 AJMP CHECK1FLASH: CJNE A,#0CH,CHECK1;下面是0.8s的情况,响并显示号数并清R0,重新计 SETB RING MOV R0,#00H MOV R3,34H;取回号数&
51、#160; MOV R5,#0BH MOV R4,#0BH;显示FF和号数 AJMP CHECK1CHECK1: JNB P3.1,QUIT1 ACALL DISPLAY AJMP HEREQUIT1: CLR RING CLR OK
52、60; AJMP START;=显示程序=DISPLAY:MOV DPTR,#DAT1;查表显示程序,利用P0口做段选码口输出/P2低三位做位选码输出, MOV A,R3 MOVC A,A+DPTR MOV P2,#0feH MOV P0,A ACALL DELAY2 MOV DPTR,#DAT2 MOV A,R5 MOVC A,A+DPTR MOV P2,#0fdH&
53、#160; MOV P0,A ACALL DELAY2 MOV A,R4 MOVC A,A+DPTR MOV P2,#0fbH MOV P0,A ACALL DELAY2 RETDAT1:DB 00h,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh,00H,71H "灭","1","2","3","4","5","6",&quo
54、t;7","8","9","灭","F"DAT2:DB 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh,00H,71H;第一个为零,其他与上相同,因为十位如果为零显示熄灭;=加减时间延时(起到不会按下就加N个数)=DELAY1: MOV 35H,#08HLOOP0: ACALL DISPLAY DJNZ 35H,LOOP0
55、; RET;=延时4236个机器周期(去抖动用到)=DELAY: MOV 32H,#12HLOOP: MOV 33H,#0AFHLOOP1: DJNZ 33H,LOOP1 DJNZ 32H,LOOP RET;=延时4236个机器周期(显示用到)=DELAY2: MOV 32H,#43HLOOP3: MOV 33H,#1EH
56、 MOV A,R7 ;每隔6070个机器周期读一次P1口,全为1时为无效数据,继续读,有一个不为1时,转到正常抢答处理 JNZ AAAA1 ;没读到有效数据时继续转到AAAA1LOOP2: DJNZ 33H,LOOP2 DJNZ 32H,LOOP3 RET;=读抢答按键数据口程序=;由于在读抢答数据口的时候,首先进入倒计时程序,再调用显示程序,最后才检测按键口;然而在按键口时动态扫描要调用三
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 变电站行业市场全景评估及未来投资趋势预测报告(咨询)
- 商业计划书摘要范文2
- 牛羊寄生虫病程序化防治模式及应用
- 2024-2030全球一次性内窥镜阀门行业调研及趋势分析报告
- 2025年古马隆树脂项目可行性评估方案
- 2025年中国轴向型波纹管膨胀节行业市场前景预测及投资价值评估分析报告
- 油菜花旅游风景区项目可行性报告
- 代理办理抵押合同范例
- 江苏无锡江阴市2025年七下生物期末统考模拟试题含解析
- 个人厂房搭建合同范例
- 家具与室内设计(山东联盟)知到智慧树章节测试课后答案2024年秋潍坊学院
- DB45T 1750-2018 液化石油气储罐检修安全规程
- 酒店团队协议合同范例
- 华中师范大学第一附中2025届高考仿真模拟数学试卷含解析
- 【MOOC】质量管理-南京邮电大学 中国大学慕课MOOC答案
- GB/T 20977-2024糕点质量通则
- 《民航礼仪》课件-5.2 交谈礼仪
- 2024-2030年中国餐饮连锁行业发展状况及投资经营模式分析报告
- 中储粮安全生产培训
- 2024年江西省公务员录用考试《行测》试题及答案解析
- 2024年财会业务知识竞赛题库及答案(600题)
评论
0/150
提交评论