




已阅读5页,还剩46页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于STC89C52、DS18B20、LCD1602、AT24C02 温度警报器的单片机课程设计院 系: 光电与通信工程学院年级专业: 姓 名: 指导教师: 学 号: 日 期: 摘要:随着传感器在生产和生活中的更加广泛的应用,利用新型单总线式数字温度传感器实现对温度的测试与控制得到更快的开发,且温度的检测与控制是工业生产过程中比较典型的应用之一。本文设计了一种基于STC89C52的温度检测及报警系统。该系统将多个单总线温度传感器DS18B20并接在控制器的一个端口上,对各个传感器温度进行循环采集,将采集到的温度值与设定值进行比较,当超出设定的上限温度时,通过蜂鸣器提示及报警信号,还提供时间显示,調时功能。并且能够存储到AT24C02中随时调出数据进行查看。本文中给出了系统实现的硬件原理图及软件流程图。经实验测试表明,该系统测量精度高、扩展方便,在大型仓库,工厂以及智能化建筑等领域的多点温度检测中有广阔的应用前景。关键词:STC89C52、AT24C02、LCD1602、DS18B20、数码管、蜂鸣器、报警系统目录一、系统的主要功能及工作流程 1.1各元器件 1.2控制部分 1.3测量部分 1.4存储部分 1.5显示部分 1.6报警部分二、硬件设计:硬件电路原理(附原理图)三、软件设计:软件设计流程(附流程图)四、总结与心得体会五、参考文献六、附录 6.1系统总硬件电路原理图 6.2系统源程序代码一、系统的主要功能及工作流程1.1各元器件表1 各个及其对其对应元器件模块元器件模块元器件单片机STC89C52串行口下载电路MAX232DB9公头时钟电路11.0592M晶振0.1u电解电容30p瓷片电容0.1u瓷片电容复位电路10u瓷片电容矩阵键盘电路按键10K欧电阻1K欧电阻按键液晶显示LCD1602数据存储AT24C02温度传感器DS18B20稳压电路直流电源插座蜂鸣器报警5V有源蜂鸣器0.1u瓷片电容100欧电阻10u瓷片电容1.2控制部分 控制部分采用的是STC89C52 1.2.1 芯片STC89C52简介 STC89C52是STC公司生产的一种低功耗、高性能CMOS8位微控制器,具有 8K 在系统可编程Flash存储器。STC89C52使用经典的MCS-51内核,但做了很多的改进使得芯片具有传统51单片机不具备的功能。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。 具有以下标准功能: 8k字节Flash,512字节RAM, 32 位I/O 口线,看门狗定时器,内置4KB EEPROM,MAX810复位电路,3个16 位定时器/计数器,4个外部中断,一个7向量4级中断结构(兼容传统51的5向量2级中断结构),全双工串行口。另外 STC89C52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。最高运作频率35MHz,6T/12T可选。 1.2.2芯片STC89C52参数 1. 增强型8051单片机,6 时钟/机器周期和12 时钟/机器周期可以任意 选择,指令代码完全兼容传统8051.2 2. 工作电压:5.5V3.3V(5V单片机)/3.8V2.0V(3V 单片机) 3.工作频率范围:040MHz,相当于普通8051 的080MHz,实际工作 频率可达48MHz 4. 用户应用程序空间为8K字节 5. 片上集成512 字节RAM 6. 通用I/O 口(32 个),复位后为:P0/P1/P2/P3 是准双向口/弱上拉, P0 口是漏极开路输出,作为总线扩展用时,不用加上拉电阻,作为 I/O 口用时,需加上拉电阻。 7. ISP(在系统可编程)/IAP(在应用可编程),无需专用编程器,无 需专用仿真器,可通过串口(RxD/P3.0,TxD/P3.1)直接下载用户程 序,数秒即可完成一片 8. 具有EEPROM 功能 9. 共3 个16 位定时器/计数器。即定时器T0、T1、T2 10.外部中断4 路,下降沿中断或低电平触发电路,Power Down 模式可 由外部中断低电平触发中断方式唤醒 11. 通用异步串行口(UART),还可用定时器软件实现多个UART 12. 工作温度范围:-40+85(工业级)/075(商业级) 13. PDIP封装1.3测量部分测量部分采用的是DS18B20,是一款由美国DALLAS公司生产的温度传感器。1.3.1温度传感器DS18B20简介 DS18B20数字温度传感器接线方便,封装成后可应用于多种场合,如管道式,螺纹式,磁铁吸附式,不锈钢封装式,型号多种多样,有LTM8877,LTM8874等等。主要根据应用场合的不同而改变其外观。封装后的DS18B20可用于电缆沟测温,高炉水循环测温,锅炉测温,机房测温,农业大棚测温,洁净室测温,弹药库测温等各种非极限温度场合。耐磨耐碰,体积小,使用方便,封装形式多样,适用于各种狭小空间设备数字测温和控制领域。1.3.2温度传感器DS18B20工作方式 DS18B20的测温原理如图所示,图中低温度系数晶振的振荡频率受温度的影响很小,用于产生固定频率的脉冲信号送给减法计数器1,高温度系数晶振随温度变化其震荡频率明显改变,所产生的信号作为减法计数器2的脉冲输入,图中还隐含着计数门,当计数门打开时,DS18B20就对低温度系数振荡器产生的时钟脉冲后进行计数,进而完成温度测量。计数门的开启时间由高温度系数振荡器来决定,每次测量前,首先将-55所对应的基数分别置入减法计数器1和温度寄存器中,减法计数器1和温度寄存器被预置在-55所对应的一个基数值。减法计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当减法计数器1的预置值减到0时温度寄存器的值将加1,减法计数器1的预置将重新被装入,减法计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到减法计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。图2中的斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正减法计数器的预置值,只要计数门仍未关闭就重复上述过程,直至温度寄存器值达到被测温度值,这就是DS18B20的测温原理。另外,由于DS18B20单线通信功能是分时完成的,他有严格的时隙概念,因此读写时序很重要。系统对DS18B20的各种操作必须按协议进行。操作协议为:初始化DS18B20(发复位脉冲)发ROM功能命令发存储器操作命令处理数据。1.4存储部分 本次课程设计采用的数据存储模块是EEPROM AT24C021.4.1 AT24C02简介AT24C02是美国Atmel公司的低功耗CMOS型E2PROM,内含256*8位存储空间,具有工作电压宽(2.5V5.5V),擦写次数多(大于10000次),写入速度快(小于10ms),抗干扰能力强,数据不易丢失,体积小等特点。并且它是采用I2C总线式进行数据读写的串行操作,只占用很少的资源和I/O线。AT24C02有一个16字节页写缓冲器,该器件通过I2C总线接口进行操作,还有一个专门的写保护功能。AT24C02支持I2C总线数据传送协议,I2C总线协议规定:任何将数据传送到总线的器件作为发送器,任何从总线接收数据的器件为接收器。数据传送是由产生串行时钟和所有起始停止信号的主器件控制的,主器件和从器件都可以作为发送器或接收器,但由主器件控制传送数据发送或接收的模式。I2C总线协议定义如下: 1、只有在总线空闲时才允许启动数据传送。 2、在数据传送过程中,当时钟线为高电平时,数据线必须保持稳定状态,不允许有跳变,时钟线为高电平时,数据线的任何电平变化将被看作总线的起始或停止信号。1.4.2 AT24C02的工作原理 AT24C02起始/停止时序如图所示,时钟线保持高电平期间,数据线电平从高到低的跳变作为I2C总线的起始信号。时钟线保持高电平期间,数据线电平从低到高的跳变作为I2C总线的停止信号。 主器件通过发送一个起始信号启动发送过程,然后发送它所要寻址的从器件的地址。8位从器件地址的高4位固定为1010(见表3-7),接下来的3位A2、A1、A0为器件的地址位,用来定义哪个器件以及器件的哪个部分被主器件访问。从器件8位地址的最低位作为读写控制位。1表示对从器件进行读操作,0表示对从器件进行写操作。在主器件发送起始信号和从器件地址字节后,AT24C02监视总线并当其地址与发送的从地址相符时响应一个应答信号。通过SDA线AT24C02再根据读写控制位R/W的状态进行读或写操作。 AT24C02控制字 I2C总线数据传送时,每成功地传送一个字节数据后,接收器都必须产生一个应答信号(下图)。应答的器件在第9个时钟周期时将SDA线拉低,表示其已收到一个8位数据。AT24C02在接收到起始信号和从器件地址之后响应一个应答信号,如果器件已选择了写操作,则在每接收一个8位字节之后响应一个应答信号。当AT24C02工作于读模式时,在发送一个8位数据后释放SDA线并监视一个应答信号。一旦接收到应答信号,AT24C02继续发送数据,如主器件没有发送应答信号,器件停止传送数据且等待一个停止信号。AT24C02的写模式有字节写和页写两种。本设计中选择字节写模式,其时序见图3-12。该模式下,主器件发送起始命令和从器件地址信息(R/W位置零)给从器件。在从器件产生应答信号后,主器件发送AT24C02的字节地址,主器件在收到从器件的另一个应答信号后,再发送数据到被寻址的存储单元。 AT24C02应答时序 AT24C02字节写时序 AT24C02再次应答,并在主器件产生停止信号后开始内部数据的擦写。在内部擦写过程中AT24C02不再应答主器件的任何请求。对AT24C02读操作的初始化方式和写操作时一样,仅把R/W位置为1。有三种不同的读操作方式:立即地址读、选择读和连续读。 连续读操作可通过立即读或选择性读操作启动,在AT24C02发送完一个8位字节数据后,主器件产生一个应答信号来响应,告知AT24C02主器件要求更多的数据。对应每个主机产生的应答信号,AT24C02将发送一个8位数据字节;当主器件不发送应答信号而发送停止位时结束此操作。1.5显示部分 本次课程设计显示部分采用的是LCD1602 1.5.1 LCD1602简介 工业字符型液晶,能够同时显示16x02即32个字符。(16列2行)注:为了表示的方便 ,后文皆以1表示高电平,0表示低电平。1602液晶也叫1602字符型液晶,它是一种专门用来显示字母、数字、符号等的点阵型液晶模块。它由若干个5X7或者5X11等点阵字符位组成,每个点阵字符位都可以显示一个字符,每位之间有一个点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用,正因为如此所以它不能很好地显示图形(用自定义CGRAM,显示效果也不好)。1602LCD是指显示的内容为16X2,即可以显示两行,每行16个字符液晶模块(显示字符和数字)。市面上字符液晶大多数是基于HD44780液晶芯片的,控制原理是完全相同的,因此基于HD44780写的控制程序可以很方便地应用于市面上大部分的字符型液晶。1.5.2 LCD的工作方式1602液晶模块内部的控制器共有11条控制指令,如下所示:序号指令 RSR/WD7D6D5D4D3 D2D1 D01清显示 0 0 0 0 0 0 0 0 0 12光标返回 0 0 0 0 0 0 0 0 1 *3置输入模式 0 0 0 0 0 0 0 1 I/D S4显示开/关控制 0 0 0 0 0 0 1 D C B5光标或字符移位 0 0 0 0 0 1 S/CR/L* *6置功能 0 0 0 0 1 DLN F * *7置字符发生存贮器地址 0 0 0 1字符发生存贮器地址8置数据存贮器地址 0 0 1 显示数据存贮器地址9读忙标志或地址 0 1 BF计数器地址10写数到CGRAM或DDRAM)1 0要写的数据内容11从CGRAM或DDRAM读数 1 1 读出的数据内容 1602液晶模块的读写操作、屏幕和光标的操作都是通过指令编程来实现的。(说明:1为高电平、0为低电平)指令1:清显示,指令码01H,光标复位到地址00H位置。指令2:光标复位,光标返回到地址00H。指令3:光标和显示模式设置I/D:光标移动方向,高电平右移,低电平左移S:屏幕上所有文字是否左移或者右移。高电平表示有效,低电平则无效。指令4:显示开关控制。D:控制整体显示的开与关,高电平表示开显示,低电平表示关显示C:控制光标的开与关,高电平表示有光标,低电平表示无光标B:控制光标是否闪烁,高电平闪烁,低电平不闪烁。指令5:光标或显示移位S/C:高电平时移动显示的文字,低电平时移动光标。指令6:功能设置命令DL:高电平时为4位总线,低电平时为8位总线N:低电平时为单行显示,高电平时双行显示F:低电平时显示5x7的点阵字符,高电平时显示5x10的点阵字符。指令7:字符发生器RAM地址设置。指令8:DDRAM地址设置。指令9:读忙信号和光标地址BF:为忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如果为低电平表示不忙。指令10:写数据。指令11:读数据。与HD44780相兼容的芯片时序表如下:读状态输入RS=L,R/W=H,E=H输出D0D7=状态字写指令输入RS=L,R/W=L,D0D7=指令码,E=高输出 无脉冲读数据输入RS=H,R/W=H,E=H输出D0D7=数据写数据输入RS=H,R/W=L,D0D7=数据,E=高脉输出无1.6报警部分1.61 蜂鸣器的分类 蜂鸣器主要分为压电式蜂鸣器和电磁式蜂鸣器两种类型。 1、压电式蜂鸣器 压电式蜂鸣器主要由多谐振荡器、压电蜂鸣片、阻抗匹配器及共鸣箱、外壳等组成。有的压电式蜂鸣器外壳上还装有发光二极管。多谐振荡器由晶体管或集成电路构成。当接通电源后(1.515V直流工作电压),多谐振荡器起振,输出 1.52.5kHZ的音频信号,阻抗匹配器推动压电蜂鸣片发声。 压电蜂鸣片由锆钛酸铅或铌镁酸铅压电陶瓷材料制成。在陶瓷片的两面镀上银电极,经极化和老化处理后,再与黄铜片或不锈钢片粘在一起。 2电磁式蜂鸣器电磁式蜂鸣器由振荡器、电磁线圈、磁铁、 振动膜片及外壳等组成。接通电源后,振荡器产生的音频信号电流通过电磁线圈,使电磁线圈产生磁场。振动膜片在电磁线圈和磁铁的相互作用下,周期性地振动发声。 本实验采用TMB12A05蜂鸣器,TMB12A05是有源电磁式蜂鸣器。1.6.2工作流程 D18B20传感器采集到的温度用数字量传给单片机,在单片机内用程序控制温度的报警。当温度大于上限阈值或者低于下限阈值时,通过蜂鸣器发出警报。当温度高于下限阈值但低于上限阈值时,不发生警报。二、硬件设计:硬件电路原理(附原理图)DS18B20与单片机之间用单总线传输;DS18B20的数据口与单片机的P3.7相连。工作流程图LCD显示DS18B20芯片STC89C52 AT24C02报警系统阀值设定、时间调节(按键)三、软件设计:系统软件程序基于Keil uvsion4开发平台,采用C51语言编写。本程序采用模块化程序方法,主要分为以下四个模块: LCD1602初始化显示模块 DS18B20数据采集模块 AT24C02数据存储模块 温度报警上下限设置、时间设置模块程序流程图: 温度时间显示四、总结与心得体会本次课程设计总得来说真的是受益匪浅,以前在学习理论知识的时候总是眼高手低,感觉老师讲的自己都懂了,也会写个小程序什么的有了小小的满足。可真当让自己去设计,自己去写程序的时候却又是另一番模样。刚拿到课题时,我就准备开始做,默默的告诉自己多长时间做出来,可是并没有按照自己想象的那样做到。跟同学探讨一下,然后静下心来把整个课题所要完成的目标分析清楚,确定要用到哪些模块,然后一个模块一个模块的去写程序,当然这其中也免不了走了许多弯路。当自己解决一些问题后再回头看下原来自己所犯的错误真的好低级,自己的粗心跟大意浪费了很多时间,这些都可以避免的。各个模块之间的相互嵌用是最难调试的一部分,在此期间也闹出了许多笑话,不管过程再怎样艰难,我们只要一步一个脚印的去做就好了,这种事情急不来的。还有就是很多在课堂上听到的玄而又玄的一些知识,真正拿到实验室来上上手练习一下理解的可以快很多。感谢林峰老师的耐心答疑。5、 参考文献1STC89C52 /view/d91a61da50e2524de5187e00.html74hc5732赵福图等编. 现代传感器集成电路人民邮电出版社2000.13 /info/7439.html 数码管4 慧净电子免费资料 WWW.HLMCU.COM 蜂鸣器的介绍 5徐敏编.单片机原理及应用.机械工业出版社.2012.8六、附录6.1系统总硬件电路原理图 6.2系统源程序代码 #include #include #include #include #define PCF8591 0x90 /PCF8591 地址 #define AT24C02 0xa0 / AT24C02 地址 sfr AUXR = 0x8E; #define uchar unsigned char #define uint unsigned int sbit sda=P20; /I2C总线的使能端 sbit scl=P21; sbit DQ = P37; sbit K8=P15; sbit K7=P17; sbit K6=P16; sbit K2=P12; sbit K1=P11; sbit K3=P13; sbit beep=P15; sbit LED=P14; sbit RS=P26; sbit RW=P25; sbit EN=P27;/LCD的位定义 int M1,dz1=0,dz2=0; unsigned long M2; uint high,low; uint tem1,tem2,tem3; uint temp,temp1,temp2; uint QWE; uchar adc; uchar num=0; /quan ju bian liang char V1,V2,V3,ho1,ho2,mi1,mi2,s1,s2,h1,h2,L1,L2;/定义电压、时、分、秒 uint t1,t2,t3; /定义温度 最高温度 最低温度 char Hou1=0,Hou2,Min1,Min2;/定义时、分、 uchar code table_Digital=0123456789; uchar code table= -:.THLV; uchar code table1=0123456789; /*LCD液晶显示部分*/ void delay(uint z) uint x,y; for(x0;x-) for(y=0;y9)s2=0;s1+;if(s15)s1=0;mi2+;if(mi29)mi2=0;mi1=mi1+1;if(mi15)mi1=0;ho2+;if(ho19)ho2=0;ho1+;if(ho1=2)if(ho23)ho2=0;ho1=0;Calendar();/*以上是液晶显示部分*/*按键调整时间和温度上下限*/key()if(K1=0) delay(500); if(K1=0) QWE+; while(!K1) if(QWE=1) write_com(0x86); write_com(0x0e); if(QWE=2) write_com(0x87); write_com(0x0e); if(QWE=3) write_com(0x89); write_com(0x0e); if(QWE=4) write_com(0x8A); write_com(0x0e); if(QWE=5) write_com(0xC6); write_com(0x0e); if(QWE=6) write_com(0xC7); write_com(0x0e); if(QWE=7) write_com(0xCA); write_com(0x0e); if(QWE=8) write_com(0xCB); write_com(0x0e); if(QWE=9) QWE=0; if(QWE!=0) if(K2=0) delay(5000); if(K2=0) while(!K2);/bulijie if(QWE=1) ho1+;if(ho12)ho1=0; write_com(0x86); write_date(table_Digitalho1); if(QWE=2) ho2+;if(ho29)ho2=0; write_com(0x87); write_date(table_Digitalho2); if(QWE=3) mi1+; if(mi1=6)mi1=0; write_com(0x89); write_date(table_Digitalmi1); if(QWE=4) mi2+; if(mi29) mi2=0; write_com(0x8a); write_date(table_Digitalmi2); if(QWE=5) h1+; if(h19)h1=0; write_com(0xc6); write_date(table_Digitalh1); if(QWE=6) h2+;if(h29)h2=0; write_com(0xc7); write_date(table_Digitalh2); if(QWE=7) L1+;if(L19)L1=0; write_com(0xCA); write_date(table_DigitalL1); if(QWE=8) L2+;if(L29)L2=0; write_com(0xCB); write_date(table_DigitalL2); if(K3=0) delay(500); if(K3=0) while(!K3); if(QWE=1) ho1-; if(ho10) ho1=2; write_com(0x86); write_date(table_Digitalho1); if(QWE=2) ho2-;if(ho20)ho2=9; write_com(0x87); write_date(table_Digitalho2); if(QWE=3) mi1-;if(mi10)mi1=5; write_com(0x89); write_date(table_Digitalmi1); if(QWE=4) mi2-; if(mi20) mi2=9; write_com(0x8a); write_date(table_Digitalmi2); if(QWE=5) h1-;if(h10)h1=9; write_com(0xc6); write_date(table_Digitalh1); if(QWE=6) h2-; if(h20) h2=9; write_com(0xc7); write_date(table_Digitalh2); if(QWE=7) L1-; if(L10) L1=9; write_com(0xCA); write_date(table_DigitalL1); if(QWE=8) L2-; if(L20;i-) DQ = 0; / 给脉冲信号 dat=1; DQ = 1; / 给脉冲信号 if(DQ) dat|=0x80; delay_18B20(10); return(dat);/*ds18b20写一个字节*/ void WriteOneChar(uchar dat) unsigned char i=0; for (i=8; i0; i-) DQ = 0; DQ = dat&0x01; delay_18B20(10); DQ = 1; dat=1; /*读取ds18b20当前温度*/ uint Te1,Te2,Te3,Te4; ReadTemperature()unsigned char a=0;unsigned char b=0;unsigned char t=0;Init_DS18B20();WriteOneChar(0xCC); / 跳过读序号列号的操作WriteOneChar(0x44); / 启动温度转换delay_18B20(1000); / this message is very very wery importantInit_DS18B20();WriteOneChar(0xCC); /跳过读序号列号的操作WriteOneChar(0xBE); /读取温度寄存器等(共可读9个寄存器) 前两个就是温度delay_18B20(1000);a=ReadOneChar(); /读取温度值低位b=ReadOneChar(); /读取温度值高位temp1=b4;temp2=a&0x0f; /temp=(b*256+a)4); /当前采集温度值除16得实际温度值 Te2=(temp1%100)/10;Te3=temp1%10;Te4=temp2%10;temp=(Te1*1000)+(Te2*100)+(Te3*10)+Te4;return (temp);/*以上是温度传感器*/*PCF8591*/*ADC发送字节命令数据函数 */bit ISendByte(unsigned char sla,unsigned char c) Start_I2c(); /启动总线 SendByte(sla); /发送器件地址 if(ack=0)return(0); SendByte(c); /发送数据 if(ack=0)return(0); Stop_I2c(); /结束总线 return(1);/*ADC读字节数据函数 */unsigned char IRcvByte(unsigned char sla) unsigned char c; Start_I2c(); /启动总线 SendByte(sla+1); /发送器件地址 if(ack=0)return(0); c=RcvByte(); /读取数据0
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025咖啡供货合同模板
- 2017年设计合同范本
- 企业现金赠与合同范本
- 2025授权销售合同范本
- 2025股票配资合同样本
- 汽车靠背广告合同范本
- 盒装水果售卖合同范本
- 展会合展合同范本
- 设备供应合同范本
- 德国卖房合同范本
- 物业消防改造服务方案(3篇)
- 海南省白沙县等两地2024-2025学年七年级下学期期末考试数学试卷(含详解)
- 产品交付流程管理办法
- 二零二五版知识产权保护与保密协议
- 电影行业人才需求与培养策略报告
- 全域土地综合整治实施方案
- 2021-2025高考数学真题分类汇编专题16圆锥曲线(选填题)16种常见考法归类(全国版)(原卷版)
- 美容中医课件模板
- 地方政府债务和隐性债务口径及认定标准
- 气排球工会活动方案
- 2025内蒙古巴彦淖尔市能源(集团)有限公司招聘48人笔试参考题库附带答案详解
评论
0/150
提交评论