




免费预览已结束,剩余27页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
目 录第一章 设计要求及目的31.1 设计要求31.2 设计目的3第二章 系统总方案选择与说明42.1 系统总方案选择42.2 系统总方案说明4第三章 系统方框图与工作原理63.1 系统方框图63.2 工作原理6第四章 各单元硬件设计电路及说明7 4.1 音乐播放电路设计74.2 显示电路设计74.3 按键电路设计8第五章 主要器件说明105.1 单片机105.3 数据锁存器13第六章 软件设计与说明146.1 程序设计流程图146.2 软件使用说明156.3 单片机音乐演奏16第七章 调试步骤 结果 使用说明17第八章 总结18第九章 参考文献19附录A 总图20附录B 程序21第一章 设计要求及目的1.1 设计要求 本课题要求以单片机为核心器件,设计一个音乐提示定时器。要求音乐提示定时器具备倒数计时、时间设置、音乐演奏等功能。设计60分钟、20分钟、10分钟、5分钟的设置开关或按键,例如20分钟,显示为“20 .00”。内定倒数计时时间为5分钟,显示为05.00(开机状态)。一旦按键后则开始倒计时,当计时为00.00则演奏一曲音乐。 要求音乐提示定时器设计4个按键设置现在想要倒数的时间:K1-可调整倒数时间为1-60分钟;K2设置倒数计时时间为5分钟,显示为“0500”;K3设置倒数计时时间为10分钟,显示为“1000”;K4设置倒数计时时间为20分钟,显示为“2000”。 1.2 设计目的 通过此实践教学环节的训练,其目的就是使同学们具备构建单片机应用系统的技能,掌握单片机组成应用系统的设计方法。 通过课程设计,掌握以单片机为核心的电路设计的基本方法和技术,了解有关电路参数的计算方法。 通过实际程序的设计和调试,逐步掌握模块化程序设计方法和调试技术。了解程序设计总体功能及结构,对各子模块的功能以及个子模块之间的关系有较详细的描述。 通过完成一个电路设计和程序开发的完整过程,通过实际操作,将理论勇于实践,提高对本课程的实际运用能力,再设计的过程中发现问题、解决问题、掌握更多的知识。第二章 系统总方案选择与说明2.1 系统总方案选择 本系统以51单片机为核心器件,实现了对不同音符定时/延时常数和定时时间显示控制,并即时播放音乐实时有效控制。充分利用单片机丰富的I/O资源和定时功能,采用LED数码动态显示定时时间,按键独立编码方式,实现了单片机对按键操作的实时响应。本系统采用单片机内部资源定时/计数器的定时功能实现音频产生等功能,可靠性高,成本低廉。由此可见,本设计是一种高可靠性、低成本、实时的音乐提示定时器控制方案。2.2 系统总方案说明 通过控制单片机定时器的定时时间产生不同频率的音频脉冲,经放大后驱动蜂鸣器发出不同音节的声音。用软件延时来控制发音时间的长短,控制节拍。把乐谱中的音符和相应的节拍变换为定时常数和延时常数,作为数据表格存放在存储器中,由程序查表得到定时常数和延时常数,分别用来控制定时器产生的脉冲频率和发出该音频脉冲的持续时间。利用p2口的管脚,对应按键,分别启动不同的倒计时程序。P1引脚作为显示输出连接至数码显示管,其对应的四位分别作为位选信号,控制不同位的数码管。程序中使用定时器0方式1 产生歌谱中各音符对应频率的音频脉冲,由p3.7通过放大输出。总体设计步骤如下:(1) 先把乐谱中的音符找出不来,根据表1给出定时值按乐谱的 音符顺序建立编码表TABLE。 定时值为十六进制4位数,拆开分为两组,如5对应的定时值FD80H,拆分为FDH和80H两组。前组装入定时器的高位TH0,后组装入定时器低位TL0,程序中将进行两次查表来完成一个音符对应的定时初值的装入。(2)在程序中使用定时器T0方式1来产生歌谱中各音符对应频率的音频脉冲,由P3.7输出,再经三极管将信号放大后驱动蜂鸣器发出不同音节的声音。(3)程序中节拍的控制是通过调用延时子程序Delay的次数来实现,1拍为748ms(=187*4),即需要调用4次Delay;3/4拍需要调用3次Delay;2/4拍需要调用2次Delay。(4)节拍的控制码在表TABLE中位于音符码的后面。如第一行“DB 0FDH,80H,03H”中,0FDH和80H是音符5的音符码,其后边的03H是节拍码,即3/4拍的时间。(5)当一个音符的发音时间到时,再查下一个音符的定时常数和时间常数,依此进行下去,就可演奏出悦耳动听的乐曲。 第三章 系统方框图与工作原理3.1 系统方框图 单 片 机LED数码管驱动和显示电路电源电路蜂鸣器音频功率放大电路时钟电路复位电路按键输入电路3.2 工作原理仿真启动时,由于内定时间是5分钟,所以当此时按下k5键时,数码显示管显示的是5分钟的倒计时。K1k4的按键分别对应设计要求的时间。当时间倒计时到达0时,则蜂鸣器响起音乐。 通过控制单片机定时器的定时时间产生不同频率的音频脉冲,经放大后驱动蜂鸣器发出不同音节的声音。用软件延时来控制发音时间的长短,控制节拍。把乐谱中的音符和相应的节拍变换为定时常数和延时常数,作为数据表格存放在存储器中,由程序查表得到定时常数和延时常数,分别用来控制定时器产生的脉冲频率和发出该音频脉冲的持续时间。 产生音乐通过单片机的I/O口输出高低不同的脉冲信号来控制蜂鸣器发音。要想产生音频脉冲信号,需要算出某一音频周期(1/频率),然后将此周期除以2,即为半周期的时间。利用单片机定时器计时这个半周期时间,每当计时到后就将输出脉冲的I/O口反相,然后重复计时此半周期时间再对I/O口反相,就这样能在此I/O口上得到此频率的脉冲。第4章 各单元硬件设计电路及说明4.1 音乐播放电路设计 蜂鸣器有长声有短声两种,可以根据需要进行选择,通过软件编程控制。在程序里可以设计不同的歌曲来通过播放器进行播放,所以,在这个设计里,是可以有不同的铃声的。在这个设计中我用的是单片机的17号管脚P3.7控制蜂鸣器,在倒计时的时间到达0后蜂鸣器就会发出声音响起音乐,音乐是一段两只蝴蝶。4.2 显示电路设计 数码管动态显示是单片机中应用最为广泛的一种显示方式之一。在这里我用单片机的P1口与数码显示管的A B C D E F G H 分别对应连接,而且还用到数据锁存器74HC573连接在“1 2 3 4”控制输出时间的显示。锁存器的使用可以大大的缓解处理器在这方面的压力。当处理器把数据传输到锁存器并将其锁存后,锁存器的输出引脚便会一直保持数据状态直到下一次锁存新的数据为止。这样在数码管的显示内容不变之前,处理器的处理时间和IO引脚便可以释放。可以看出,处理器处理的时间仅限于显示内容发生变化的时候,这在整个显示时间上只是非常少的一个部分。而处理器在处理完后可以有更多的时间来执行其他的任务。这就是锁存器在LED和数码管显示方面的作用:节省了宝贵的MCU时间。4.3 按键电路设计 在这个设计中我用了5个按键控制。KEY5是用来启动和暂停的,上电后,若按此键则显示器上的时间会从默认的5分钟开始倒计时,再按下这个键则会暂停,这个键是由P3.1控制。KEY1是用来调整时间的,调整范围是160,当按下此键一次,则时间分钟会增加1,当到达60,在按此键分钟会变成0,秒钟的时间是不会变的,此键是由P2.0控制。KEY2是设置成5分钟,当需要时间显示的分钟需要变成5时可按下此键,秒钟并不会变成0,只是分钟变化,此键是由P2.1控制。KEY3是10分的倒计时,当需要分钟变成10分时则可按下此键,分钟则会相应的变成10,同样秒钟不变,此键是由P2.2控制。KEY4由P2.3控制,是20分钟的时间设置,当需要分钟是20则可按下此键。第五章 主要器件说明5.1 单片机 AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪烁可编程可擦除只读存储器的单片机。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。 1、主要特性: (1) 与MCS-51 兼容 (2) 4K字节可编程闪烁存 储器 寿命:1000写/擦环 数据保留时间:10年 (3) 全静态工作: 0Hz-24Hz (4) 三级程序存储器锁定 (5) 128*8位内部RAM (6) 32可编程I/O线 (7) 两个16位定时器/计 数器 (8) 5个中断源 (9) 可编程串行通道(10)低功耗的闲置和掉电模式(11)片内振荡器和时钟电路 2、管脚说明: VCC:供电电压。 GND:接地。 P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。 P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接 收输出4TTL门电流。 P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。 P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。P3口也可作为AT89C51的一些特殊功能口。3、振荡器特性: XTAL1和XTAL2分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。4、芯片擦除: 整个PEROM阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持ALE管脚处于低电平10ms 来完成。在芯片擦操作中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前,该操作必须被执行。此外,AT89C51设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。在闲置模式下,CPU停止工作。但RAM,定时器,计数器,串口和中断系统仍在工作。在掉电模式下,保存RAM的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。5.2 LED数码显示管 数码管动态显示揭露是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管得8个显示比划“a b c d e f g dp”的同名端连在一起,另外为每个数码管的公共极COM增加为宣统控制电路,位选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都收到相同的字型码,但究竟是那个数码管会显示出字形,取决于单片机对位选通COM端电路的控制,所以我们只要将需要显示的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。通过分时轮流控制各个数码管的COM端,就使各个数码管轮流受控显示,这就是动态驱动。在轮流显示过程中,每位数码管的点亮时间为12ms,由于人的视觉暂留现象及发光二级管的余晖效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的I/O端口,而且功耗更低。5.3 数据锁存器 在LED和数码管显示方面,要维持一个数据的显示,往往要持续的快速的刷新。尤其是在四段八位数码管等这些要选通的显示设备上。在人类能够接受的刷新频率之内,大概每三十毫秒就要刷新一次。这就大大占用了处理器的处理时间,消耗了处理器的处理能力,还浪费了处理器的功耗。 锁存器的使用可以大大的缓解处理器在这方面的压力。当处理器把数据传输到锁存器并将其锁存后,锁存器的输出引脚便会一直保持数据状态直到下一次锁存新的数据为止。这样在数码管的显示内容不变之前,处理器的处理时间和IO引脚便可以释放。可以看出,处理器处理的时间仅限于显示内容发生变化的时候,这在整个显示时间上只是非常少的一个部分。而处理器在处理完后可以有更多的时间来执行其他的任务。这就是锁存器在LED和数码管显示方面的作用:节省了宝贵的MCU时间。 锁存器就是把当前的状态锁存起来,使CPU送出的数据在接口电路的输出端保持一段时间锁存后状态不再发生变化,直到解除锁定。还有些芯片具有锁存器,比如芯片74LS244就具有锁存的功能,它可以通过把一个引脚置高后,输出就会保持现有的状态,直到把该引脚清0后才能继续变化。 第六章 软件设计与说明开始6.1 程序设计流程图 初始化主程序设置定时器初值存入乐曲代码表读取音符(定时常数)A=FFH?Y读取节拍(延时常数)延时常数存入R2 调用延时子程序NR2=0?N结束中断子程序 T 0 重装定时值 P3.7输出P1口LED闪烁返回6.2 软件使用说明我们用的是keil软件进行编程。打开软件后通过新建工程,再建立主程序和子程序,以控制其功能达到设计要求。程序完成后就进行调试,若编译没有错误就可以进行仿真。 Proteus是我们用来仿真使用的,在程序编写完成并无误后通过仿真可以确切的看到功能是否是符合设计要求。 通电以后,显示窗显示默认设定时间“0500”,计时5分钟。按要求设计时间设定按键。设定时间后,启动按键,定时器开始工作。定时时间到,音乐播放就会开始,按键5便会暂停。在任何情况下,按复位键,定时器重新回到初始状态,显示默认时间。若按其他键,则时间分钟会相应变化。6.3 单片机音乐演奏1、单片机发声原理 通过控制单片机定时器的定时时间产生不同频率的音频脉冲,经放大后驱动蜂鸣器发出不同音节的声音。用软件延时来控制发音时间的长短,控制节拍。把乐谱中的音符和相应的节拍变换为定时常数和延时常数,作为数据表格存放在存储器中,由程序查表得到定时常数和延时常数,分别用来控制定时器产生的脉冲频率和发出该音频脉冲的持续时间。 2、定时常数(计数值)与延时常数的确定(1)定时常数确定 产生音乐通过单片机的I/O口输出高低不同的脉冲信号来控制蜂鸣器发音。要想产生音频脉冲信号,需要算出某一音频周期(1/频率),然后将此周期除以2,即为半周期的时间。利用单片机定时器计时这个半周期时间,每当计时到后就将输出脉冲的I/O口反相,然后重复计时此半周期时间再对I/O口反相,就这样能在此I/O口上得到此频率的脉冲。 利用AT89C52单片机的内部定时器0,工作在方式1下,改变计数初值TH0和TL0来产生不同的频率。若单片机采用12MHz晶振,要产生频率为587Hz的音频脉冲时,其音频脉冲信号的周期T=1/587=1703.577us,约1704us,半周期的时间852us,因此只要令计数器计数=852us/1us=852,在每计数852次时将I/O口反相,就可得C调中音Re。第七章 调试步骤 结果 使用说明 输入源程序,对源程序进行汇编和纠错。调试程序前认真分析源程序,确定各功能程序运行的预期结果然后结合源程序应达到的结果,通过某些关键参数和实验现象检验程序运行结果正确与否。并针对具体的分析和观察对象选择合适的调试方式。 调试子程序:由于程序比较多,整体调试不容易发现和改正错误,故采取子程序调试的方法,但要明确子程序的具体功能。确定子程序无误后在调试完整的程序,要注意各自程序之间的衔接以及和主程序之间的调用和返回。运行后观察现实的结果是否正确,若不对,再根据判断去逐一的修改排故障。 按下按键5启动仿真,此时是默认的时间5分钟的倒计时,若此时按下其他键则会相映的变化,按下按键1则时间的分钟会加1,按一下则加1,当到达60后再按则会变成0。按下按键2则时间变成5分钟开始倒计时。若按下按键3 则时间会变成10分倒计时。若按下按键4则会变成20分钟倒计时。 若再次按下按键5则会暂停,时间不在倒计时。当倒计时的时间到达0则音乐会响起来。第八章 总结 每次课程设计都能让我学到很多专业知识,加深对课本内容的理解,虽然会遇到很多困难,却总能得到收获。课程设计是培养学生综合运用所学知识,发现、提出、分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程。随着科学技术发展的日新日异,单片机已经成为当今计算机应用中空前活跃的领域,在生活中可以说得是无处不在。作为电子信息工程专业的学生来说掌握单片机的开发技术是十分重要的。 我的题目是音乐提示定时器的设计,对于我们工科学生来说,课程设计是一次学习也是考验。怎么才能找到课堂所学与实际应用的最佳结合点,怎样让自己的计划更具有序性,而不会忙无一用,这都是我们所要考虑和努力的。这次的课程设计让我学到了很多的东西,学会了怎么样去制定计划,怎么样去实现这个计划,并掌握了在执行过程中怎么样去克服心理上的不良情绪。不仅巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识,掌握了一种系统的研究方法,可以进行一些简单的编程。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正提高自己的实际动手能力和独立思考的能力。 在设计的过程中发现了自己的不足之处,以及对以前所学过的知识理解得不够深刻,掌握得不够牢固,对单片机汇编语言掌握得不够熟练等。这次课程设计通过自己的努力,同学的帮助,还有老师的耐心指导,终于顺利完成了。 最后,在这里非常感谢老师和同学的耐心指导和帮助!第九章 参考文献51系列单片机应用与实践教程 周向红 编 北航出版社单片机应用系统设计 何立民 编 北航出版社单片机原理及应用 王迎旭 主编 机械工业出版社51系列单片机设计实例 楼然苗 等编 北航出版社单片微型计算机原理及接口技术 陈光东 等编 华中科技 大学出版社附录A 总图附录B 程序#include#include#define Seg_D P1 /定义数码管段码驱动输出sbit Seg_W1=P30; /定义数码管分钟十位驱动输出sbit Seg_W2=P31; /定义数码管分钟个位驱动输出sbit Seg_W3=P34; /定义数码管秒钟十位驱动输出sbit Seg_W4=P33; /定义数码管秒钟个位驱动输出sbit Speak=P37;bit Dis_Flag=0;bit F_Speak=0;char Minute=05,Second=0, K_Value=0;unsigned char m,n; /*数码管09显示代码*/unsigned char code SEG10=0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,;/*两只蝴蝶音乐代码*/unsigned char code T492=0,0,0xF8,0x8B,0xF8,0xF2,0xF9,0x5B,0xF9,0xB7,0xFA,0x14,0xFA,0x66,0xFA,0xB9,0xFB,0x03,0xFB,0x4A,0xFB,0x8F,0xFB,0xCF,0xFC,0x0B,0xFC,0x43,0xFC,0x78,0xFC,0xAB,0xFC,0xDB,0xFD,0x08,0xFD,0x33,0xFD,0x5B,0xFD,0x81,0xFD,0xA5,0xFD,0xC7,0xFD,0xE7,0xFE,0x05,0xFE,0x21,0xFE,0x3C,0xFE,0x55,0xFE,0x6D,0xFE,0x84,0xFE,0x99,0xFE,0xAD,0xFE,0xC0,0xFE,0x02,0xFE,0xE3,0xFE,0xF3,0xFF,0x02,0xFF,0x10,0xFF,0x1D,0xFF,0x2A,0xFF,0x36,0xFF,0x42,0xFF,0x4C,0xFF,0x56,0xFF,0x60,0xFF,0x69,0xFF,0x71,0xFF,0x79,0xFF,0x81;unsigned char code music2=0,4,23,4,21,4,23,16,23,4,21,4,23,4,21,4,19,16,16,4,19,4,21,8,21,4,23,4,21,4,19,4,16,4,19,4,14,24,23,4,21,4,23,16,23,4,21,4,23,4,21,4,19,24,16,4,19,4,21,8,21,4,23,4,21,4,19,4,16,4,19,4,21,24,23,4,21,4,23,16,23,4,21,4,23,4,21,4,19,16,16,4,19,4,21,8,21,4,23,4,21,4,19,4,16,4,19,4,14,24,23,4,26,4,26,16,26,4,28,4,26,4,23,24,21,4,23,4,21,8,21,4,23,4,21,4,19,4,16,4,16,2,19,2,19,24;0,20,26,4,26,4,28,4,31,4,30,4,30,4,28,4,23,4,21,4,21,4,23,16,0,4,23,4,23,4,26,4,28,8,28,12,16,4,23,4,21,4,21,24,23,4,26,4,26,4,23,4,26,8,0,4,31,8,30,4,28,4,30,4,23,8,0,4,28,4,28,4,30,4,28,4,26,4,23,4,21,8,23,4,21,4,23,4,26,16,0xFF,0xFF;void Timer0_Init(void)TMOD=0x11;ET0=1;IT0=1;EX0=1;ET1=1;TR1=1;EA=1;TH1=(65536-1000)/256;TL1=(65536-1000)%256;/*数码管显示时、分、秒*(动态扫描)*/*数码管逐个扫描,延时显示*/void Display(char i) switch(i) case 0:Seg_D=0xff;Seg_W4=1;Seg_W3=0;Seg_W2=0;Seg_W1=0;Seg_D=SEGSecond%10; /显示秒个位 break; case 1:Seg_D=0xff;Seg_W4=0;Seg_W3=1;Seg_W2=0;Seg_W1=0;Seg_D=SEGSecond/10;/显示秒十位 break; case 2:Seg_D=0xff;Seg_W4=0;Seg_W3=0;Seg_W2=1;Seg_W1=0;Seg_D=SEGMinute%10; /显示分个位break; case 3:Seg_D=0xff;Seg_W4=0;Seg_W3=0;Seg_W2=0;Seg_W1=1;Seg_D=SEGMinute/10; /显示分十位 break;void pause() unsigned char i,j; for(i=150;i0;i-) for(j=150;j0;j-);void Voice_Out(void) unsigned char i;m=musici0;n=musici1; if(m=0x00) TR0=0;delay(n);i+; else if(m=0xFF) TR0=0;delay(30);i=0; else if(m=musici+10) TR0=1;delay(n);TR0=0;pause();i+;else TR0=1;delay(n);i+;void main(void)Timer0_Init();while(1)if(Key1_Scan()Minute+;if(Minute=60)Minute=0;if(Key2_Scan()Minute=5;Second=0;if(Key3_Scan()Minute=10;Second=0;if(Key4_Scan()Minute=20;Second=0;/if(Key5_Scan()K_Value+;if(K_Value=1)Dis_Flag=1;else TR0=0;Dis_Flag=0;F_Speak=0;K_Value=0;if(F_Speak)Voice_Out(); /*定时器中断服务子程序*/void Timer1_Interrupt(void)interrupt 3static int Count_Ms=0,Count_1S=0,Count_Speak=0;TH1=(65536-1000)/256;TL1=(65536-1000)%256;/*定时扫描*/Count_Ms+;if(Count_Ms=4)Count_Ms=0;Display(Count_Ms);/*/*一秒计时*/if(Dis_Flag)Count_1S+;if(Count_1S=1000)Count_1S
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 钒铁浸滤工设备维护与保养考核试卷及答案
- 职业教育课程定制与服务创新创业项目商业计划书
- 精准数据分类系统创新创业项目商业计划书
- 农产品价格风险管理服务创新创业项目商业计划书
- 自动驾驶汽车网络安全防护创新创业项目商业计划书
- 2025年安全知识竞赛试题及答案
- 6岁儿童学习与发展指南学习测试题(附答案)
- 医务人员手卫生知识考试题(有答案)
- 衢州广告收费管理办法
- 潍坊市2026届高三开学调研监测考试物理试题及答案
- 2025年三类人员安全员C证继续教育题库及参考答案
- 2025内蒙古锡林郭勒盟公安局招聘警务辅助人员95人考试参考题库附答案解析
- 急性肾小球肾炎
- 工程管理面试题目及答案
- 《一年级开学第一课》课件
- 2025秋人教版(2024)八年级上册英语一学期教学计划
- 会展推广的合同范本
- 武消院火灾调查B讲义01电气火灾调查
- 起搏器植入患者全程护理要点
- (2025年标准)会议代办协议书
- 工贸企业企业安全检查表
评论
0/150
提交评论