电子温度计的设计_第1页
电子温度计的设计_第2页
电子温度计的设计_第3页
电子温度计的设计_第4页
电子温度计的设计_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选优质文档-倾情为你奉上目 录电子温度计的设计摘 要:该设计介绍了DS18B20型数字温度传感器内部结构及工作时序,并提出了以 DS18B20和 AT89C51为核心设计的数字温度计设计方案。实践证明,该数字式温度计的测温范围为-50+110,精度误差在 0.1以内,具有测温精度高,控制性能良好等特点。设计还介绍了一种基于51单片机和DS18B20数字温度传感器来进行温度测量的方法,包括温度传感器芯片的选取、单片机与温度传感器接口电路的设计,以及实现温度信息采集和数据传输的软件设计。该温度计完全适用于一般的应用场合,也可在高低温报警、远距离多点测温控制等方面进行应用。关键词: 数字温度计,单

2、片机,温度传感器专心-专注-专业The Design of Electronic ThermometerAbstract: This paper introduced the inner structure and job sequence of the digital temperature sensor DS18B20,and put forward a digital temperature design of the core design according to DS18B20 and AT89C51Practice testifies that the digital tempe

3、rature's measurement range is-50+ 110,and accuracy error is within 0.1. It has high measurement temperature accuracy,fine controlling characteristic,and so onA practical temperature measuring method based on microcontroller and DS18B20 digital temperature sensor was presentedThe selection of tem

4、perature sensor chip was discussed and the design of hardware interface circuit and related software were dealt with in more detailsThe temperature completely fits to be used for the average application,also may be used to the field of high or low temperature alarm,controlling of the remote and mult

5、iple spot's temperature measurement,and so onKEY WORDS: Digital Thermometer , Microcontroller , Temperature sensor 引言 在传统的温度测量系统中,一般采用热电偶或铂电阻进行温度测量。在这些电路中,有这样一些问题必须解决:为了进行准确的温度测量,必须给铂电阻提供一个良好的恒流源;由于热电偶出来的信号是模拟信号,所以此信号在送给CPU之前必须先进行A/D转换,然后再送给CPU进行处理;并且热电偶的信号很微弱,只有十几个mA,因此在A/D转换之前通常还需要进行增益放大。因此,采用

6、热电偶和铂电阻进行温度测量,需要考虑很多问题,构成的系统也比较复杂。DALLAS公司推出的数字式温度传感器DS18B20很好地解决了这样一些问题,DS18B20采用一线接口,只需占用单片机的一个I/O口位,其外围电路也非常简单;并且DS18B20将测得的温度信号转换为数字量输出,可以与单片机直接相连,而不需进行信号放大和A/D转换,大大简化了电路的设计,因此系统采用了DS18B20作为温度传感器进行温度采集。1.概述1.1 设计的目的及意义单片机实现的电子温度计的毕业设计是在学习单片机,汇编语言,PROTEUS软件等基础上,综合应用所学的理论知识完成。虽然该设计题目类似于课程设计题目,但因涉及

7、原理图、硬件的选型、软件语言的选择等的要求,已经符合毕业设计的要求。设计目的:整个系统以单片机AT89C51为核心,结合数字温度传感器DS18B20,数码管显示等,实现温度的示数。单片机应用系统具有体积小、功耗低、功能强、性能价格比高、易于开发和推广等优点,在自动化控制、仪器仪表和家用电器等领域中得到了广泛的应用。单片机应用系统设计主要包含以下两方面内容:(1)深入研究单片机的芯片功能,掌握与其相关的接口电路,熟练掌握与其相关的软件语言和设计方法,学习和了解现有系统的设计原理和方法。(2)学习和掌握传感器技术,掌握电子技术的一般设计原理和方法。1.2 单片机简介微型计算机可分为普通微型计算机和

8、单片微型计算机,前一种指我们通常所用的PC机,后者正是这次设计所使用的,简称单片机。所谓单片机(Single Chip Micro-computer)就是把中央处理器CPU、随机存储器RAM、只读存储器ROM、定时器/计数器及I/O接口等主要功能部件集成在一片大规模或超大规模集成电路芯片上的微型计算机,即在一个芯片上实现一台微型计算机的基本功能。近年来随着超大规模集成电路工艺的发展,单片机作为微型计算机的一个分支而获得飞速发展。由于它具有体积小、价格低、功能强、应用方便、可靠性高等优点,因而广泛渗透于实时控制、智能报警(如汽车防撞报警器)、仪器仪表、通讯导航、家用电器等各个领域,从尖端科学到日

9、常用具,单片机几乎无处不在。随着设备向小型智能化方向的发展和计算机在控制系统中的作用,单片机作为高新技术之一,发展空间是相当大的。如果是简单控制对象,只需利用这样的单片机作为控制核心,不需要增加别的外部设备和扩展某些接口就能实现;对于复杂的系统,单片机的应用和接口扩展也很方便。单片机系统归纳起来有以下特点:(1) 由于系统规模较小,本身不具有自我开发能力,需借助专用开发工具进行系统的开发和调试,使得实际应用系统简单实用,成本低,效果好。(2) 系统配置以满足对象的控制要求为出发点,使得系统有较高的性能价格比。(3) 应用系统通常将程序驻留在ROM中,无需软硬磁盘作软件载体,使系统不易受到干扰,

10、可靠性高,使用方便。(4) 应用系统所用存储器芯片可选用EPROM、EEROM、OTP芯片或利用掩膜形式生产,便于成批开发和应用。(5) 由于系统小巧玲珑,控制能力强,体积小,便于安装于被控设备之内,大大推动了机电一体化产品的开发。(6) 系统是超大规模集成电路,它的工作电压10V左右,功耗小,使得系统具有更好的性价比。2.方案论证方案一:热电偶的实现办法,需要比较多的外部硬件支持,电路复杂,软件调试复杂,制作成本高。实现上需要温度的补偿,在满足精度时有一定的难度。方案二:智能传感器DS18B20作为检测元件,测温范围-55125,分辨率最大可达0.0625。DS18B20可以直接读出被测温度

11、值。而且采用3线制与单片机相连,减少了外部硬件电路,具有低成本和易使用的特点。LED数码管作为显示器件,通过89C51构建最小系统。综上所述,权衡各方面的利弊,我采用方案二。3系统元件选择3.1 主控制器选择AT89C513.2温度传感器DS18B203.2.1 DS18B20的特性 (1)适应电压范围更宽,电压范围:3.05.5V,寄生电源方式下可由数据线供。 (2)独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯。 (3)DS18B20支持多点组网功能,多个DS18B20可以并联在唯一的三线上,实现组网多点测温。 (4)DS18B

12、20在使用中不需要任何外围元件,全部传感元件及转换电路集成在形如一只三极管的集成电路内。 (5)温范围55125,在-10+85时精度为±0.5。 (6)可编程的分辨率为912位,对应的可分辨温度分别为0.5、0.25、0.125和0.0625,可实现高精度测温。 (7)在9位分辨率时最多在93.75ms内把温度转换为数字,12位分辨率时最多在750ms内把温度值转换为数字,速度更快。 (8)测量结果直接输出数字温度信号,以“一线总线”串行传送给CPU,同时可传送CRC校验码,具有极强的抗干扰纠错能力。 (9)负压特性:电源极性接反时,芯片不会因发热而烧毁,但不能正常工作。 3.2.

13、2 DS18B20的外形和内部结构 DS18B20内部结构主要由四部分组成:64位光刻ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。DS18B20的管脚排列如图3-1: 引脚定义: (1) DQ为数字信号输入/输出端; (2)  GND为电源地; (3)  VDD为外接供电电源输入端(在寄生电源接线方式时接地)。 内部结构如下图  DS18B20内部结构图3.2.3 DS18B20与单片机的接口电路确保DS18B20在其变换期得到足够的电源电流,在I/O线上提供一强的上拉。连接图如下图而此处采用外部电源供电方式,即在DQ与单片机接口处必须填加上

14、拉电阻,该电阻一般为4.7K。3.3 数码管常见的LED显示具有清晰明亮的特点。是显示接口也是绝大多数单片机应用系统必备的部件之一。发光二极管组成的显示器是单片机应用产品中最常用的廉价输出设备。它由若干个发光二极管按一定的规律排列而成。当某一个发光二极管导通时,相应的一个点或一笔画被点亮,控制不同组合的二极管导通,就能显出各种字符。 显示器的结构常用的7段显示器的结构如图所示,发光二极管的阳极连在一起的称为共阳极显示器,阴极连在一起的成为共阴显示器。1位显示器由8个发光二极管组成,其中7个发光二极管ag控制7个笔画的亮或暗,另一个控制一个小数点的亮和暗,这种笔画的七段显示器能显示的字符较少,字

15、符的形状有些失真,但失控简单,使用方便。4.系统硬件设计4.1总体设计 该系统是以AT89C51芯片为核心,通过检测DS18B20的工作与否,然后将其内部的数字量温度读到单片机,通过相应的数码管显示,当温度超出设定的温度时用蜂鸣器报警。其外围电路包括复位电路、晶振电路。系统框图如下图:控制器晶振电路复位电路温度采集部分数据显示部分超限报警系统框图 4.2 各部分电路分析4.1.1 温度采集部分 a).温度采集电路的功能是采集传感器周围的温度,并将其转换成数字信号输出 b). 电路原理图4.2.2复位电路 a).电路的功能是完成对单片机的复位,具有上电复位功能和按键复位功能。 b).电路原理图

16、单片机的复位就是对单片机的初始化,就是让程序重新开始执行,也就是说让单片机的PC寄存器初始化为0000H。一般的初始化是指进入程序的正常初始化,但是当程序出错或者操作错误使系统处于死锁状态时,为了摆脱困境也需要按复位键使系统重新启动。复位方式有自动复位和手动。我们在本设计中采用自动复位的上电复位方式。晶振为12MHZ。复位电路如图4.2.3晶振电路 a).电路功能是产生稳定的时钟脉冲供单片机工作, b).电路原理图AT89C5l中有一个用于构成内部振荡器的高增益反相放大器,引脚XTAL1和XTAL2分别是该放大器的输入端和输出端。这个放大器与作为反馈元件的片外石英晶体或陶瓷谐振器一起构成自激振

17、荡器。外接石英晶体(或陶瓷谐振器)及电容C1、C2接在放大器的反馈回路中构成并联振荡电路。对外接电容C1、C2虽然没有十分严格的要求,但电容容量的大小会轻微影响振荡频率的高低、振荡器工作的稳定性、起振的难易程序及温度稳定性,如果使用石英晶体,我们推荐电容使用30pF±10pF,而如使用陶瓷谐振器建议选择40pF±10F。用户也可以采用外部时钟。采用外部时钟的电路如下图所示。这种情况下,外部时钟脉冲接到XTAL1端,即内部时钟发生器的输入端,XTAL2则悬空。 4.2.4 超限报警电路报警电路设置的原因是,该电子温度计的限定范围为0100度。当超出这个范围时就要求有报警指示。

18、该处采用PNP三极管9015进行驱动蜂鸣器,三极管工作在开关状态。原理图如下图4.2.5 数据显示数码管电路部分 a).数据显示电路电路的功能是显示传感器检测到的温度数据。 b).因为要显示0100,分辨率0.1,该部分至少有四个数码管来显示数值。单片机的资源有限,在这里只能采用动态扫描的方法。在该接法中,单片机使用的口线为P0口,作为输出口,需要上拉,图中的电阻均为10K。数码管采用共阳管。电路接口电路如下图4.2.6 电源部分 a)电源部分的功能是使单片机工作稳定,各时序要求严格,所以其电源要求比较高。最好采用开关电源,这里使用的是自制电源。 b)变压器变压输出,把高电压变成低电压,输出的

19、电压值是正弦图形。桥堆全桥整流后输出的电压是波浪一样的图形,就是把正弦的负半周转到正半周,C1整流后输出一个衰减的波浪图形,因为C1充电了,7805是稳压模块,输出一个恒定的5V电压,C3和C2滤出杂散波和公频,7805的输出端不能高于输入端,所以加二极管保护7805。原理图如下 电源原理图5 系统软件部分的设计软件部分主要有三部分构成:(1) 温度的采集;(2) 温度数据的处理(3) 数值的显示。5.1 温度的采集5.1.1 时序及协议该部分设计时主要考虑DSl8B20工作过程及时序DSl8B20工作过程中的协议如下: 初始化ROM操作命令存储器操作命令处理数据 (1) 初始化 单总线上的所

20、有处理均从初始化开始 (2) ROM操作品令 总线主机检测到DSl820的存在便可以发出ROM操作命令之一 (3) 存储器操作命令 指令 代码 Write Scratchpad(写暂存存储器) 4EH Read Scratchpad(读暂存存储器) BEH Copy Scratchpad(复制暂存存储器) 48H Convert Temperature(温度变换) 44H Recall EPROM(重新调出) B8H Read Power supply(读电源) B4H (4) 时 序 主机使用时间隙(time slots)来读写DSl8B20的数据位和写命令字的位 a).初始化 时序见下图.

21、主机总线发送一复位脉冲(最短为480us的低电平信号)接着在释放总线并进入接收状态,DSl8B20在检测到总线的上升沿之后等待15-60us,接着DS18B20发出存在脉冲(低电平持续60-240 us)如图中虚线所示 :初始化时序b).写时间隙 当主机总线从高拉至低电平时就产生写时间隙,从开始15us之内应将所需写的位送到总线上DSl8B20,在15-60us间对总线采样若低电平写入的位是0见下图4-2左;若高电平写入的位是1见下图4-2右,连续写2位间的间隙应大于1us 写时隙图c).读时间隙 见下图4-3主机总线从高拉至低电平时总线只须保持低电平l5s之后在t1时刻将总线拉高产生读时间隙

22、读时间隙在t1时刻后t2时刻前有效tz距to为15s也就是说tz时刻前主机必须完成读位并在to后的60s-120s内释放总线 读时隙图5.1.2 设计流程该设计软件部分的灵魂就在于DS18B20的使用:温度读取,需严格时序。该模块的设计主程序流程图如下图;温度转换子程序下图:初始化温度调用温度子程序将读出的温度格式化,并转化成BCD码显示温度开始初始化跳过ROM匹配写DS18B20发出温度转换指令跳过ROM匹配读DS18B20主程序框图 温度转换子程序5.2 温度数据的处理该部分是在将温度传感器的数字量读入单片机后的处理内容。主要包括正负号的处理、负数、正数、小数点的处理以及温度的比较,最终决

23、定是否报警。5.3 数值的显示P0口接数码管的七段显示及小数点,P2的前四个口接数码管的公共端,作为片选信号。这里采用动态扫描的方式,在软件仿真时比较容易通过,但硬件焊接后难以出结果。总结本次毕业设计是对以往知识的综合应用,不但了解了AT89C51型单片机及其相关芯片的系统结构、工作原理,设计是按照单片机应用系统的开发步骤,开发硬件电路和软件开发的基本思路和方法进行的。硬件系统的设计完成后,就要在其基础上设计系统所需要的软件系统,系统功能是软硬件共同实现的,两者缺一不可。由于软件的可伸缩性,最终实现的系统功能可强可弱,差别很大。因此,在硬件结构确定后,软件是系统功能强弱的决定性因素。对于单片机

24、如果没有软件系统,系统功能无法实现。所以软件系统的正确与否是实现系统功能的关键。软件系统不仅要正确还要能准确实现系统的功能要求。本设计的软件系统采用模块化的设计思想来实现。模块化设计是将一个大的程序按功能分割成一些小的模块,各个模块相对独立、结构清晰、接口简单。利用这种模块化设计有许多优点;减少了程序设计的复杂性;提高了元件的可靠性;缩短了开发周期;避免程序开发的重复劳动;易于维护和功能扩展。本设计的软件功能模块分为:温度采集,温度数据处理,主程序模块,延时子程序等。在整个系统设计过程中,严格按照硬件电路的设计规程,各个步骤都按计划有条不紊的进行,做到了设计工作分配合理,进程安排得当,文档资料

25、充分,使整个系统的设计获得了圆满的成功。总体来说这次所设计的电子温度计符合设计要求,能够达到预期的目标。同时我也看到,由于时间和技术上的一些原因,系统中还有很多需要完善的地方,有待于以后工作中改进。致谢在本设计即将完成之际,首先我要对导师致意和衷心的感谢!在整个毕业设计的过程中,翻阅了大量有关论文的书籍和相关资料,一点一点的分类、整理,丰富了自己的知识,也拓宽了视野。从整理资料到形成论文的过程不是件容易的事情。在撰写论文中,也遇到了很多不懂的知识点和失误,但是都得到了解决。毕业设计的过程是一个自我总结,自我学习的过程,但也和老师、同学的帮助分不开的。最后,再次感谢本次毕业设计的导师,使我完成了

26、这次毕业设计。感谢各位同学对我的帮助,只要我们不断的努力,不断的学习,我们的前途就是美好的! 参考文献:1马忠梅等.单片机的C语言应用程序设计(第三版).北京航空航天大学出版社.2004.2先锋工作室.单片机程序设计实例.清华大学出版社.2003. 3万光毅等.单片机实验与实践教程. 北京航空航天大学出版社.2004.4李叶紫等.MCS-51单片机应用教程. 清华大学出版社.2004.5潘永雄著.新编单片机原理与应用.西安电子科技大学出版社.2005.6汪德彪著.MCS-51单片机原理及接口技术.电子工业出版社.2003.7汪建校、杨建国等.51系列单片机及C51程序设计.科学出版社.2002

27、.8何宏等、单片机原理与接口技术.国防工业出版社.2006.附录附录一 源程序#include <reg52.h>/头函数#include <intrins.h>#define uchar unsigned char#define uint unsigned intuchar code LED_CODE=0xc0,0xf9,0xa4,0xb0,0x99,/0-4 0x92,0x82,0xf8,0x80,0x90,/5-90xbf;/ '-'uchar code LED_POINT_CODE=0x40,0x79,0x24,0x30,0x19,/0.-4.

28、0x12,0x02,0x78,0x00,0x10;/5.-9.uchar Temp_H,Temp_L;uchar disp_ds18b206;uchar num;uchar alarm_num;char temp_max;char temp_min;sbit DQ=P37;sbit SPEAK = P10;sbit motor=P11;sbit led=P12;bit alarm_flag;void display(void);float ds18b20_float_date(uchar templ);void disp_float(float date);/*初始化*/voidinit(vo

29、id)num=0;alarm_flag=0;alarm_num=0; temp_max=99; /设置温度上限值 temp_min=0; /设置温度下限值TMOD=0x01; /定时器T0工作于方式1TH0=(65536-50000)/256; /定时器T0赋初值TL0=(65536-50000)%256;EA=1; /开总允许中断ET0=1; /开定时器T0中断TR0=1; /启动定时器T0 /*1us的延时(12M)延时子程序*/void delay_us(uchar x) /when crystal is 12M ,a*2+5 us , / 子程序调用要5us,while 就等于DJNZ

30、指令while (-x); /x取值1255;/*1ms的延时(12M)延时子程序*/void delay_ms(uchar x) uchar i,j;for (i=0; i<x; i+)for (j=0; j<200; j+)_nop_(); /一个nop约1us_nop_();/*dds18b20初始化*/void init1820(void) DQ = 1; /复位 _nop_(); /稍做延时 DQ = 0; /拉低数据线,准备Reset OneWire Bus; delay_us(125); /延时要大于480us小于960us,延时510us,释放总线 delay_us

31、(125); DQ = 1; /提升数据线; delay_us(15); /延时35us;ds18b20要等待15-16us while(DQ) /等待器件信号,检测应答脉冲信号 _nop_(); delay_us(60); /延时125us; DQ = 1; /提升数据线,准备数据传输;/*写数据的一个字节,满足写1和些0的时隙要求*/ void write1820(uchar a) uchar i; for(i=0;i<8;i+) if(a & 0x01) / 写1,低位在前; DQ = 0; /拉低电平,结束Recovery time; _nop_(); /延时,使得15u

32、s以内拉高电平_nop_();_nop_(); DQ = 1; /发送数据; else /写0 DQ = 0; _nop_();_nop_();_nop_(); delay_us(30); /等待Slave Device采样; DQ = 1; /复位; _nop_(); /短延时; a >>= 1; /右移一位 uchar read1820(void) uchar i; uchar temp=0; DQ = 1; _nop_(); /准备读; for(i=0;i<8;i+) temp >>= 1; /低位先发; DQ = 0; /读开始脉冲; _nop_(); /

33、延时; DQ = 1; /必须写1,否则读出来的将是不预期的数据; delay_us(2); /延时9us; _nop_(); if(DQ) /在12us处读取数据; temp |= 0x80; delay_us(30); /延时65us; DQ = 1; /拉高电平 _nop_(); /恢复总线; return temp; void Rdtemp(void) uchar k,tmp_int; uint tp; float m=1.0, tmp_float; init1820(); /初始化DS1820 display(); write1820(0xcc); /跳过ROM/delay_ms(2

34、); write1820(0x44); /温度转换命令 / _nop_(); / DQ=1; / delay_ms(250); /多个1820时要延时,单个就不用 / delay_ms(250); / delay_ms(250); init1820(); /初始化DS1820 display(); write1820(0xcc); /跳过ROM write1820(0xbe); /读占存器命令 display(); Temp_L=read1820(); /温度值低位字节(其中低4位为二进制的小数部分) Temp_H=read1820(); /高位值高位字节(其中5位为符号位) init1820

35、(); display(); tp=Temp_H*256+Temp_L;/* 正负号处理 */ num=0; k=Temp_H>>4; if(k>0)tp=(tp)+1);Temp_L=tp%256;disp_ds18b20num+=LED_CODE10;/* 正数处理 */ display(); tp=tp>>4; tmp_int=(tp&0x7f); if(tmp_int<10) disp_ds18b20num+=LED_POINT_CODEtmp_int; else if(tmp_int<100)disp_ds18b20num+=LED_

36、CODE(tmp_int/10);disp_ds18b20num+=LED_POINT_CODE(tmp_int%10); elsedisp_ds18b20num+=LED_CODE(tmp_int/100);disp_ds18b20num+=LED_CODE(tmp_int%100)/10);disp_ds18b20num+=LED_POINT_CODE(tmp_int%100)%10);/* 负数处理 */display();tmp_float=ds18b20_float_date(Temp_L);display();disp_float(tmp_float);if(num>=6)n

37、um=0;float ds18b20_float_date(uchar tmpl)uchar i,a,b,k;float m=1.0,p;p=0.0;b=0;k=(tmpl&0x0f);if( k=0 )return (p);for(i=0;i<4;i+)a=(k&0x01);b=(a|b);b=(b<<1);k=(k>>1); b=(b>>1); p=(m/b)/2);return (p); /*温度值小数显示部分处理函数*/void disp_float(float date) uchar g,s;uint b,q;g=(date*

38、10); /个分位 disp_ds18b20num+=LED_CODEg; /送个分位s=date*100;s=s%10; / 十分位disp_ds18b20num+=LED_CODEs; /送十分位b=date*1000;b=(b%100)%10; /百分位disp_ds18b20num+=LED_CODEb; /送百分位q=date*10000;q=(q%1000)%100)%10; /千分位disp_ds18b20num+=LED_CODEq; /送千分位/*显示函数*/void display(void) uchar i; P2=0x01; /P2口赋初值控制数码管的位 for(i=0;i<6;i+) P0=disp_ds18b20i; /数码管段显示delay_ms(1); /1ms延时P2=(P2<<1); /数码管位控制 /*温度比较函数*/void Compare_Temp(char temp_min,char temp_max) /比较温度 uchar tl_temp; /定义变量 uchar y; uint tp; init1820();/初始化DS1820 display(); write1820(0xcc);/skip rom命令 display(); write1820(0x44

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论