免费预览已结束,剩余11页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第1章 系统总体设计要求2第2章 系统总体方案32.1简易温度控制系统的整体设计32.2简易温度控制系统的工作原理32.3简易温度控制系统的工作要求3第3章 系统硬件设计43.1 主控芯片介绍43.2 复位电路63.3 时钟电路73.4 键盘电路73.5 显示电路83.6 测温电路93.7 加热电路10第4章 系统软件设计104.1 主程序模块104.2 lcd显示模块124.3 模数转换模块15结论18参考文献19第2章 系统总体设计要求 本设计为自动保温式电热水器,能够按照设定将水烧到指定温度并保持该温度,系统采用单片机控制,使用温度传感器实时监测水温并通过数码管显示出来,当温度大于设定温度时,关闭加热器,当温度小于设定温度时打开加热器,加热至设定温度,若温度超过温度上限,则通过蜂鸣器报警提示,设定温度通过键盘输入。第2章 系统总体方案2.1简易温度控制系统的整体设计温度控制系统是由硬件和软件两部分组成。硬件部分主要由单片机at89s52,温度传感器ds18b20,液晶显示器,按键电路,串行通信电路组成。其硬件总体结构图如图2-1所示。5伏电源 复位电路温度传感器at89s52 单片机晶振电路加热装置按键光电隔离图2-1温度控制系统结构图本设计主要由单片机、温度采集模块、温度显示模块和按键设定模块组成。本系统能实现温度实时测量,同时显示在液晶显示器上;能实现温度的设定;通过串行通信电路,将温度采集数据传送到pc机。2.2简易温度控制系统的工作原理基于at89s52单片机水温控制电路,通过按键电路来设置加热温度,并将设置的温度值在数码管上显示,环境温度由ds18b20来测出,传到单片机进行处理,蜂鸣器用来报警如果温度超过70度,蜂鸣器发出声音,发出警报,为了防止干扰,在单片机接口p1.7接光电隔离。2.3简易温度控制系统的工作要求 基于at89s52单片机水温控制器晶振采用12mhz,此外(1) 初始温度设为50度。(2) 越线报警温度设为70度。(3) 控制精度为1度。.(4) 控制范围为环境温度到70度 。 第3章 系统硬件设计3.1 主控芯片介绍at89s52主要性能1、与mcs-51单片机产品兼容; 2、8k字节在系统可编程flash存储器; 3、1000次擦写周期; 4、全静态操作:0hz-33mhz; 5、三级加密程序存储器; 6、32个可编程i/o口线; 7、三个16位定时器/计数器; 8、六个中断源; 9、全双工uart串行通道; 10、低功耗空闲和掉电模式; 11、掉电后中断可唤醒; 12、看门狗定时器; 13、双数据指针; 14、掉电标识符 。 引脚说明at89s52 是一种低功耗、高性能cmos8位微控制器,具有 8k 在系统可编程 at89s52引脚图 dip封装flash 存储器。使用atmel 公司高密度非 易失性存储器技术制造,与工业80c51 产品指令和引脚完 全兼容。片上flash允许程序存储器在系统可编程,亦适于 常规编程器。在单芯片上,拥有灵巧的8 位cpu 和在系统 可编程flash,使得at89s52为众多嵌入式控制应用系统提 供高灵活、超有效的解决方案。 at89s52具有以下标准功能: 8k字节flash,256字节ram, 32 位i/o 口线,看门狗定时器,2 个数据指针,三个16 位 定时器/计数器,一个6向量2级中断结构,全双工串行口, 片内晶振及时钟电路。另外,at89s52 可降至0hz 静态逻 辑操作,支持2种软件可选择节电模式。空闲模式下,cpu 停止工作,允许ram、定时器/计数器、串口、中断继续工 作。掉电保护方式下,ram内容被保存,振荡器被冻结, 单片机一切工作停止,直到下一个中断或硬件复位为止。 p0 口:p0口是一个8位漏极开路的双向i/o口。作为输出口,每位能驱动8个ttl逻 辑电平。对p0端口写“1”时,引脚用作高阻抗输入。 当访问外部程序和数据存储器时,p0口也被作为低8位地址/数据复用。在这种模式下, p0不具有内部上拉电阻。 在flash编程时,p0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验 时,需要外部上拉电阻。 p1 口:p1 口是一个具有内部上拉电阻的8 位双向i/o 口,p1 输出缓冲器能驱动4 个 ttl 逻辑电平。对p1 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入 口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(iil)。 此外,p1.0和p1.1分别作定时器/计数器2的外部计数输入(p1.0/t2)和定时器/计数器2 的触发输入(p1.1/t2ex)。 在flash编程和校验时,p1口接收低8位地址字节。 引脚号第二功能: p1.0 t2(定时器/计数器t2的外部计数输入),时钟输出 p1.1 t2ex(定时器/计数器t2的捕捉/重载触发信号和方向控制) p1.5 mosi(在系统编程用) p1.6 miso(在系统编程用) p1.7 sck(在系统编程用) p2 口:p2 口是一个具有内部上拉电阻的8 位双向i/o 口,p2 输出缓冲器能驱动对p2 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入 口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(iil)。 在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行movx dptr) 时,p2 口送出高八位地址。在这种应用中,p2 口使用很强的内部上拉发送1。在使用 8位地址(如movx ri)访问外部数据存储器时,p2口输出p2锁存器的内容。 在flash编程和校验时,p2口也接收高8位地址字节和一些控制信号。 p3 口:p3 口是一个具有内部上拉电阻的8 位双向i/o 口,p3 输出缓冲器能驱动4 个 ttl 逻辑电平。对p3 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入 口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(iil)。 p3口亦作为at89s52特殊功能(第二功能)使用,如下表所示。 在flash编程和校验时,p3口也接收一些控制信号。 端口引脚 第二功能: p3.0 rxd(串行输入口) p3.1 txd(串行输出口) p3.2 into(外中断0) p3.3 int1(外中断1) p3.4 to(定时/计数器0) p3.5 t1(定时/计数器1) p3.6 wr(外部数据存储器写选通) p3.7 rd(外部数据存储器读选通) 此外,p3口还接收一些用于flash闪存编程和程序校验的控制信号。 rst:复位输入。当振荡器工作时,rst引脚出现两个机器周期以上高电平将是单片机复位。 ale/prog:当访问外部程序存储器或数据存储器时,ale(地址锁存允许)输出脉冲用于锁存地址的低8位字节。一般情况下,ale仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ale脉冲。对flash存储器编程期间,该引脚还用于输入编程脉冲(prog)。如有必要,可通过对特殊功能寄存器(sfr)区中的8eh单元的d0位置位,可禁止ale操作。该位置位后,只有一条movx和movc指令才能将ale激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ale禁止位无效。 psen:程序储存允许(psen)输出是外部程序存储器的读选通信号,当at89s52由外部程序存储器取指令(或数据)时,每个机器周期两次psen有效,即输出两个脉冲,在此期间,当访问外部数据存储器,将跳过两次psen信号。 ea/vpp:外部访问允许,欲使cpu仅访问外部程序存储器(地址为0000h-ffffh),ea端必须保持低电平(接地)。需注意的是:如果加密位lb1被编程,复位时内部会锁存ea端状态。如ea端为高电平(接vcc端),cpu则执行内部程序存储器的指令。flash存储器编程时,该引脚加上+12v的编程允许电源vpp,当然这必须是该器件是使用12v编程电压vpp。 xtal1:振荡器反相放大器和内部时钟发生电路的输入端。 3.2 复位电路为确保两点间温度控制系统中电路稳定可靠工作,复位电路是必不可少的一部分,复位电路的第一功能是上电复位。一般电路正常工作需要供电电源为5v5%,即4.755.25v。复位是单片机的初始化操作,其目的是使cpu及各专用寄存器处于一个确定的初始状态。如:把pc的内容初始化为0000h,使单片机从0000h单元开始执行程序。除了进入系统的正常初始化之外,当单片机系统在运行出错或操作错误使系统处于死锁状态时,为摆脱困境,也需要复位以使其恢复正常工作状态。rst端的外部复位电路有两种操作方式:上电自动复位和按键手动复位。按键手动复位有电平方式和脉冲方式两种,本系统设计采用脉冲式按键手动复位,如图3-2所示。 5vrst at89s52 图3-2 复位电路按键手动复位电路中,未按下复位按钮时,5v电源对电容进行充电,芯片的rst为低电平;当按下按钮时,电容进行放电,放电结束后,芯片的rst引脚变成高电平;松开按键时,电容再次进行充电,使得芯片复位引脚缓慢变为低电平。3.3 时钟电路单片机的时钟信号用来提供单片机内各种微操作的时间基准,时钟电路用于产生单片机工作所需要的时钟信号。单片机的时钟信号用来提供单片机片内各种微操作的时间基准,时钟信号通常用内部振荡或者外部振荡这两种电路形式得到:。本设计采用内部振荡方式,如图3-3所示。 c1 xtal1xtal2x1c2 图3-3 时钟振荡电路引脚xtall和xtal2分别是系统时钟信号的输入端和输出端,由于采用内部方式时,电路简单,所得的时钟信号比较稳定,实际使用中常采用这种方式。因为选用的是石英晶体振荡器,所以电容选择电容值为30pf的无极性电容。3.4 键盘电路通过检测单片机i/o口引脚电平状态来判别有无按键输入就构成直接输入键盘,如图3-4所示。之所以采用这种键盘电路形式,是因为在此设计中只有少量需要控制的系统。而直接编码输入键盘的接口电路简单,采用它可以简化电路。at89s52 p3.2/int0p3.3/int1 k1k2图3-4 键盘电路在本设计中,主芯片的p1口的四个引脚p1.0,p1.1,p1.2,p1.3分别与四个按键k1,k2,k3,k4相连接,且分别外接了10k的上拉电阻。四个按键在设计中作为设定闭环控制系统的温度时的控制按键,由于本次设计只需要通过按键进行数字加减,故实际应用是只用到k1,k2两个按键,按键k1作为加的按键,k2作为减的按键。3.5 显示电路在单片机应用系统中,对于系统的运行状态和运行结果,通常需要直观交互显示出来。单片机应用系统中最常用的显示器有led和lcd两种。这两种显示器都可以显示数字、字符及系统的状态,本设计采用的是更环保的lcd显示器,通过74ls245芯片来驱动显示器。74ls245的介绍: 74ls245用来驱动led或者其他的设备,它是8路同相三态双向总线收发器,可双向传输数据。 74ls245还具有双向三态功能,既可以输出,也可以输入数据。当8051单片机的p0口总线负载达到或超过p0最大负载能力时,必须接入74ls245等总线驱动器。当片选端/ce低电平有效时,dir=“0”,信号由 b 向 a 传输;(接收) dir=“1”,信号由 a 向 b 传输;(发送)当ce为高电平时,a、b均为高阻态。 由于p2口始终输出地址的高8位,接口时74ls245的三态控制端1g和2g接地,p2口与驱动器输入线对应相连。p0口与74ls245输入端相连,e端接地,保证数据线畅通。8051的/rd和/psen相与后接dir,使得rd且psen有效时,74ls245输入(p0.1d1),其它时间处于输出(p0.1d1)。dfg fe d c b aa0 b0a1 b1a2 b2a3 b3a4 b4a5 b5a6 b6a7 b7ceab/bap0.0/ad0p0.1/ad1p0.2/ad2p0.3/ad3p0.4/ad4p0.5/ad5p0.6/ad6p0.7/ad7 图3-5 显示电路5v9v74ls245at89s523.6 测温电路 为了能够快速准确的获得温度数据,采用ds18b20温度传感器作为测温元件。ds18b20介绍: 1、ds18b20的主要特性 1.1、适应电压范围更宽,电压范围:3.05.5v,在寄生电源方式下可由数 据线供电 1.2、独特的单线接口方式,ds18b20在与微处理器连接时仅需要一条口线即可实现微处理器与ds18b20的双向通讯 1.3、 ds18b20支持多点组网功能,多个ds18b20可以并联在唯一的三线上,实现组网多点测温 1.4、ds18b20在使用中不需要任何外围元件,全部 传感元件及转换电路集成在形如一只三极管的集成电路内 1.5、温范围55+125,在-10+85时精度为0.5 1.6、可编程 的分辨率为912位,对应的可分辨温度分别为0.5、0.25、0.125和0.0625,可实现高精度测温 1.7、在9位分辨率时最多在 93.75ms内把温度转换为数字,12位分辨率时最多在750ms内把温度值转换为数字,速度更快 1.8、测量结果直接输出数字温度信号,以一 线总线串行传送给cpu,同时可传送crc校验码,具有极强的抗干扰纠错能力 1.9、负压特性:电源极性接反时,芯片不会因发热而烧毁, 但不能正常工作。2、ds18b20引脚定义: 21 dq为数字信号输入/输出端; 22 gnd为电源地; 23 vdd为外接供电电源输入端(在寄生电源接线方式时接地)。at89s52p3.7/rd 5vvccdqgnd ds18b20图3-6温度闭环控制电路3.9 加热电路采用220v交流电,通过变压、滤波后化为直流电,为防止干扰和保护主控电路,加入光电隔离,隔离元件采用moc3011。moc3011at89s52ac 220vp1.7加热器5v 3-7加热控制电路图第4章 系统软件设计整个系统的功能是由硬件电路与软件相结合来实现的,当硬件基本定型的时候软件也基本定下来了,从软件的功能不同,可以分为两大类:一是主程序,它是整个软件的核心,专门用来协调各个执行模块和操作者的联系;二是子程序,它是用来完成各种实质性的工作的,如测量、计算、显示、通讯等。每一个执行软件就是一个小的执行模块,这里将每一个模块一一列出来,并为每个执行模块进行功能定义和接口定义。各执行模块规划好以后,就可以规划监控软件了。首先要根据系统的总体功能选择一种最合适的主程序结构,然后根据实时性的条件,合理安排监控软件和执行软件之间的调度关系。本系统软件设计主要包括主程序以及各个模块程序:温度采集模块、温度显示模块、按键设定模块和通信模块等,以及扩展功能的若干个控制子程序。主程序分别调用这些子程序实现对显示器、pc机通信的操作控制。4.1 主程序模块 主程序主要完成硬件初始化,子程序调用等功能,其具体流程图如图4-1所示y开始设定控制温度显示设定温度读取环境温度环境温度和设定温度比较控制温度大于设定温度关闭加热器打开加热器 控制温度小于设定温度n y图4-1主程序流程图主程序函数如下:#include #include lcd.hsbit p1_4=p14;void main (void) double ad_res, temp; p1_4=0; /使三极管导通,从而使r8发热 init_lcd( ); /初始化 clear_lcd( ); /清屏 display_lcd_string(ad result:); /第一行固定显示ad result gotoxy(2,1); / 光标定位到第二行 display_lcd_string(temp:); / 在第二行固定显示temp while(1) /* 无穷循环 */ ad_res = adcselchannel(0);/ad_res为经过模数转换后的十位二进制数值 gotoxy(1,11); display_lcd_number(ad_res);/显示热敏电阻的两端的模拟电压值 temp = temperature(ad_res);/temp为热敏电阻测得的温度值 gotoxy(2,6); display_lcd_number1(temp);/显示温度值 delay100us(200); delay100us(200); delay100us(200); delay100us(200); delay100us(200); delay100us(200); delay100us(200); delay100us(200); delay100us(200); delay100us(200); delay100us(200); delay100us(200); delay100us(200); delay100us(200); delay100us(200);4.2 lcd显示模块lcd1602的显示是编程中非常重要的一部分,其具体流程图如图所示入口初始化延时检测忙信号lcd_busy=0?获得显示ram地址延时写入相应的数据数据显示完毕返回主程序nyny 图4-2 液晶显示流程图lcd液晶显示子程序如下 #include #include #include char code int2charlcd=0123456789;void write_lcd_command(unsigned command) /写指令子程序 rw=write; /write为0,向lcd写入指令 rs=command; /command为0,输入指令enable=enable; /enable为1,读取信息p0=command; delay100us(20);enable=disable; /disenable为0,下降沿执行指令rw=1; /从lcd读取信息void write_lcd_data(unsigned lcddata) /写数据子程序rw=write;rs=data; /data为1,输入数据enable=enable; /enable为1,读取信息p0=lcddata;delay100us(20);enable=disable; rw=1;void init_lcd(void) /初始化write_lcd_command(twoline_8bit); / 0x38 write_lcd_command(cursor_off);/ 0x0cwrite_lcd_command(cursor_right); / 0x06void clear_lcd( ) /清屏write_lcd_command(clear);write_lcd_command(cursor_home);void display_lcd_string(char *p) /显示字符串while(*p)write_lcd_data(*p);p+;void display_lcd_number(double number) /显示ad转换前的电压值unsigned char x,y,z;x = (int)(number*5/1024);y = (int)(number*5/1024*10)%10;z = (int)(number*5/1024*100)%10;write_lcd_data(int2charlcdx);display_lcd_string(.);write_lcd_data(int2charlcdy);write_lcd_data(int2charlcdz);void gotoxy(unsigned x,unsigned y) /光标定位子程序if(x=1) write_lcd_command(goto_line_1+y);else write_lcd_command(goto_line_2+y);double temperature(double num) /计算温度值double t,v;v = num*5/1024;t = 1 / (1 / 298.15 + log(1.2*v/(5-v)/3200) -273.15;return t;void display_lcd_number1(double number) / 显示温度值unsigned char x,y,z;x=(int)(number/10);y=(int)(number-10*x);z=(int)(number*10/10);write_lcd_data(int2charlcdx);write_lcd_data(int2charlcdy);display_lcd_string(.); write_lcd_data(int2charlcdz);4.3 模数转换模块具体程序如下#define wait1us _nop_();#define wait2us _nop_();_nop_();#define wait4us wait2us;wait2us;#define wait8us wait4us;wait4us;#define wait10us wait8us;wait2us;#include intrins.h#include /*定义接口总线*/sbit clock = p26; /时钟口线clksbit datain = p25; /数据输入口线addsbit dataout = p24; /数据输出口线datsbit chipselect = p23; /片选口线cs,低电平选通sbit eoc = p27; /转换完成口线/*接口总线定义结束*/unsigned int adcselchannel(unsigned char channel) /转换指定通道的模拟量为数字量 unsigned int convertvalue; unsigned char i, chan; unsigned char convertvaluel, convertvalueh; unsigned char delay; convertvaluel = convertvalueh = 0; /初始化转换结果 delay = 0; if (eoc) clock = 0; chipselect = 1; wait2us; chipselect = 0; wait2us; channel = channel 4; for (i = 0; i 7; datain = (bit)chan; wait2us; clock = 1; clock = 0; channel = channel 1; for (i = 0; i 6;i +) /输入转换时钟 clock = 1; clock = 0; chipselect = 1; /开始检测转换结束标志,或者转换超时出错 while (!eoc) & (delay 10) wait10us; delay +; if (delay = 10) return (0xffff); /转换超时,返回错误代码 else wait10us; clock = 0; chipselect = 1; wait1us; chipselect = 0; wait1us; for (i = 0; i 2; i +) /读取高二位bit值 clock = 1; dataout = 1; convertvalueh = 1; if (dataout) convertvalueh |= 0x1; clock = 0; wait1us; for (i = 0; i 8; i +) /读取低八位bit值 clock = 1; dataout = 1; convertvaluel = 1; if (dataout) convertvaluel |= 0x1; clock = 0; wait1us; chipselect=1; convertvalue = convertvalueh; convertvalue = 8; convertvalue |= convertvaluel; return (convertvalue); /返回转换结果 结论本次专业课程设计:基于at89s52单片机的温度闭环控制系统的设计,已经基本完成。通过这次毕业设计,我掌握了一些实践性质的设计的基本步骤:首先,明确设计任务,明确设计目标,设计要求,实现功能等。其次,要对整个设计系统做深入的方案论证、计算并且结合现有资料,确立自己的设计方案,进而,就是对自己确立的方案进行具体硬件设计,包括所用原器件选择,以及控制部分整个单片机系统的硬件选择与设计,并绘制出整个系统总体电路图。接着我们就进入到软件编程设计了,要画出各部分的大体流程图,弄清楚各个部分实现的功能,最后对整个系统进行软件编程实现。到此为止,这个系统的设计基本上已经完成了,最后就是要确定我们的设计是否符合设计要求,能否实现应有的功能。虽然到现在为止,有些东西我还是不懂和不理解,但我学会了面对问题,自己尽量解决,先分析,然后解决,一条道通不过然后尝试着其它的方法,最终把问题克服掉。最重要的是锻炼了自己亲自动手论证,查阅资料,进而得出设计成果的能力,提高了自身实践水平。总体来说,经过这次课程设计,我受益良多,也得到了很多经验。我明白了只有自己真正接触尝试了,才知道自己的真实水平。也使我看清了自己的知识水平与各种综合能力,找出了自己的不足和差距。我将明确自己在今后要奋斗的目标与方向,勇往直前。 参考文献【1】张毅坤等.单片微型计算机原理及应用.西安:西安电子科技大学出版社,2004.【2】蔡美琴等mcs-51系列单片机系统及其应用.北京:高等教育出版社,1999.【3】潘永雄.新编单片机原理与应用.西安:西安电子科技大学出版社,2007.【4】王静霞.单片机应用技术.北京:电子工业出版社,2009.【5】何立民.单片机高等教程.北京:北京航空航天大学出版社,2000.【6】雄建云. protel 99 se eda技术及应用.北京:北京机械工业出版社,2007.【7】华永平,陈松.电子线路课程设计.南京:东南大学出版社,2002.【8】林春方电子线路学习指导与实训.北京:北京电子工业出版社,2004.【9】杨宝清,宋文贵.实用电路手册.北京:机械工业出版社, 2002.【10】张存礼,韩爱娟.电子技术综合实训.北京:北京师范大学出版社.2009.【11】杨世兴,郭秀才.监测监控系统.北京:中国电力出版社,2007.【12】丁
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 临床检验类设备组装调试工安全知识水平考核试卷含答案
- 锁具装配工岗前操作知识考核试卷含答案
- 爬行类养殖工安全培训考核试卷含答案
- 飞机特种设备检测与修理工安全检查知识考核试卷含答案
- 工程资料承包协议书
- 海南省海口市2023-2024学年八年级上学期期末地理试题(B卷)
- 广西2025-2026学年八年级上学期期中物理试题(含答案)
- 2025-2031中国吸附分离装置市场现状研究分析与发展前景预测报告 Sample-fzy
- 2025江苏汉匠坊酿酒有限公司招聘人员录用笔试历年参考题库附带答案详解
- 2025四川长虹教育科技有限公司招聘技术支持岗位测试笔试历年参考题库附带答案详解
- 中式快餐的消费者需求分析
- 2025年office办公软件上机操作试题
- 医师证免责协议书
- 医疗手术模拟与评估的数字孪生技术应用
- 票据转让私下协议书
- 《流感用药指导》课件
- 武汉市地铁工程施工质量检验记录统一用表
- 2025年东北三省高三语文4月模拟联考试卷附答案解析
- 成果转化项目协议书
- 《重大电力安全隐患判定标准(试行)》知识培训
- 2024年度中国物流科技投诉数据与典型案例报告-37正式版
评论
0/150
提交评论