课程设计(论文)-基于at89c51单片机的测温系统_第1页
课程设计(论文)-基于at89c51单片机的测温系统_第2页
课程设计(论文)-基于at89c51单片机的测温系统_第3页
课程设计(论文)-基于at89c51单片机的测温系统_第4页
课程设计(论文)-基于at89c51单片机的测温系统_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

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

文档简介

目录引言1设计目的1设计背景11设计方案211度计软件设计流程图212元器件的选取213系统仿真图22设计框图321硬件电路框图322硬件电路概述323显示电路324温度传感器DS18B2043软件设计831主程序832读出温度子程序933计算温度子程序1034显示数据刷新子程序10351602的液晶显示程序设计1036PROTEUS程序设计114总结与体会12参考文献13附录114附录215附录316课程设计说明书1引言设计目的本文主要介绍了一个基于AT89C51单片机的测温系统,详细描述了利用数字温度传感器DS18B20开发测温系统的过程,重点对传感器在单片机喜爱的硬件连接,软件编程以及各模块系统流程进行了详尽分析,对各部分的电路也进行一一介绍,该系统可以方便的是实现温度采集和显示。可满足以下要求1能够测量的温度范围是50C到110C。2测量误差在05C之内。3在PROTEUS软件上进行仿真,修改。设计背景随着时代的进步和发展,单片机技术已经普及到我们生活,工作,科研,各个领域,已经成为一种比较成熟的技术,本文将介绍一种基于单片机控制的数字温度计,本温度计属于简易温度计,只提供了温度的测量及LCD1602液晶显示功能。本设计使用起来方便,具有精度高、量程宽、灵敏度高、体积小、功耗低等优点,适合我们日常生活和工农业生产中的温度测量,也可以当做温度处理模块嵌入其他系统中,作为其他主系统的辅助扩展。DS18B20和AT89C51结合实现最简温度检测系统,该系统结构简单,抗干扰能力强,适合与恶劣环境下进行现场温度测量,有广泛的应用前景。本设计首先是确定目标,然后是各个功能模块的设计,还在PROTEUS软件上进行仿真,修改,仿真。本设计思路简洁明了,分块化模式使得程序灵活性大大增强。通过本次设计,是我们所学的知识得以实践的验证,对将来顺利走向工作岗位或者科研事业将发挥重要意义。课程设计说明书21设计方案11度计软件设计流程图温度计软件设计流程图见附录11温度计软件设计流程图12元器件的选取1单片机芯片的选取AT89C51单片机片内程序存储器采用闪存,使程序的写入更加方便,整个硬件电路的体积更小,管脚数目为40个。本课设中单片机芯片正是采用AT89C51。2温度传感器的选取采用DS18B20温度传感器。DS18B20的内部3脚(或8脚)封装;使用特有的温度测量技术,将被测温度转换成数值信号;3055V的电源供电方式和寄生电源供电方式;ROM由64位二进制数字组成,共分为8个字节;RAM由9个字节的高速暂存器和非易失性电擦写ROM组成。3本设计显示电路采用1602液晶显示模块芯片。综上各方案所述,对此次课设的方案选定采用AT89C51作为主控制系统1602液晶显示模块芯片作为温度数据显示装置而智能温度传感器DS18B20器件作为测温电路主要组成部分。至此,系统最终方案确定。13系统仿真图系统仿真连线图见附录21。连线比较简洁,简易温度计操作简单,可以直接用来上电读取温度。课程设计说明书32设计框图温度计电路设计总体设计方框图如图21所示,控制器采用单片机AT89C51,温度传感器采用DS18B20,用1602液晶显示屏以串口传送数据实现温度显示。21硬件电路框图晶振控制1602显示器温度检测电路DS18B20图21总体设计方框图22硬件电路概述本电路是由AT89C2051单片机为控制核心,具有与MCS51系列单片机完全兼容,程序加密等功能,带2KB字节可编程闪存,工作电压范围为276V,全静态工作频率为024MHZ;显示电路由1602液晶显示模块芯片,可以进行多行显示;温度报警按键设为五个,可以显示华氏温度,调节高低报警温度;温度传感器电路主要由DS18B20测温器件构成,该器件主要功能有采用单总线技术;每只DS18B20具有一个独立的不可修改的64位序列号;低压供电,电源范围为35V;测温范围为20125,误差为05;复位电路是10K电阻构成的上电自动复位。23显示电路本设计显示电路采用1602液晶显示模块芯片,该芯片可现实16X2个字符,比以前的七段数码管LED显示器在显示字符的数量上要多得多。另外,由于1602芯片编程比较简单,界面直观,因此更加易于使用者的操作和观测。1602A芯片的接口信号说明如下表单片机芯片AT89C51课程设计说明书4表211602A芯片的接口信号说明引脚号引脚名电平输入/输出作用1VSS电源地2VCC电源(5V)3VEE对比调整电压4RS0/1输入0输入指令1输入数据5R/W0/1输入0向LCD写入指令或数据1从LCD读取数据4E1,下降沿(1到0)输入使能信号,1时读取数据,下降沿时执行指令图22液晶显示24温度传感器DS18B20DS18B20温度传感器是美国DALLAS半导体公司最新推出的一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现912位的数字值读数方式。DS18B20的性能特点如下(1)独特的单线接口仅需要一个端口引脚进行通信,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯。(2)DS18B20支持多点组网功能,多个DS18B20可以并联在惟一的三线上,实现多点组网测温;(3)无须外部器件,全部传感元件及转换电路集成在形如一只三极管的集成电路内;(4)可通过数据线供电,电压范围为3055;(5)零待机功耗;(6)温度以9或12位数字,对应的可分辨温度分别为05、025、0125和00625,可实现高精度测温;课程设计说明书5(7)用户可定义报警设置;(8)报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件;(9)负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作;(10)测量结果直接输出数字温度信号,以“一线总线“串行传送给CPU,同时可传送CRC校验码,具有极强的抗干扰纠错能力DS18B20采用3脚PR35封装或8脚SOIC封装,其引脚排列及内部结构框图如图及测温原理图如下所示图23引脚排列预置斜率累加器比较低温度系数振荡器计数器1温度寄存器TX预置0高温度系数振荡器0计数器2T1加1停止T2图24DS18B20测温原理图64位ROM的结构开始8位是产品类型的编号,接着是每个器件的惟一的序号,共有48位,最后8位是前面56位的CRC检验码,这也是多个DS18B20可以采用一线进行通信的原因。温度报警触发器TH和TL,可通过软件写入户报警上下限。DS18B20温度传感器的内部存储器还包括一个高速暂存RAM和一个非易失性的DS18B20123GNDI/OVCC课程设计说明书6可电擦除的EERAM。高速暂存RAM的结构为8字节的存储器,结构如图26所示。图26高速暂存RAM(1)、温度LSB,温度MSB字节包含测得的温度信息(2)、第3和第4字节TH和TL的拷贝,是易失的,每次上电复位时被刷新(3)、最后8位是前面56位的CRC检验码(4)、第5个字节,为配置寄存器,它的内容用于确定温度值的数字转换分辨率。该字节各位的定义如图27所示。图27DS18B20的字节定义DS18B20工作时寄存器中的分辨率转换为相应精度的温度数值。低5位一直为1,TM是工作模式位,用于设置DS18B20在工作模式还是在测试模式,DS18B20出厂时该位被设置为0,用户不要去改动,R1和R0决定温度转换的精度位数,来设置分辨率。DS18B20的分辨率定义如表22所示表22分辨率设置表R0R1分辨率最大温度转移时间009位9675MS0110位1875MS1011位375MS1112位750MS由表1可见,DS18B20温度转换的时间比较长,而且分辨率越高,所需要的温度LSB温度MSBTH用户字节1TL用户字节2配置寄存器保留保留保留CRCTMR1R011111课程设计说明书7温度数据转换时间越长。因此,在实际应用中要将分辨率和转换时间权衡考虑。主机控制DS18B20完成温度转换过程是每一次读写之前都要对DS18B20进行复位,即将数据总线下拉500US,然后释放,DS18B20收到信号后等待1660US左右,之后发出60240US的存在低脉冲,主CPU收到此此信号表示复位成功;复位成功后发送一条ROM指令,然后发送RAM指令,这样才能对DS18B20进行预订的读写操作。表2ROM指令集指令约定代码功能读ROM33H读DS18B20中的编码符合ROM55H发出此命令后,接着发出64位ROM编码,访问单线总线上与该编辑相对应的DS18B20使之做出响应,为下一步对该DS18B20的读写作准备搜索ROM0F0H用于确定挂接在同一总线上的DS18B20个数和识别64位ROM地址,为操作各器件作准备跳过ROM0CCH忽略64位ROM地址,直接向DS18B20发送温度变换指令告警搜索命令0ECH执行后,只有温度跳过设定值上限或下限的片子才能做出反应表3RAM指令集指令约定代码功能温度转换44H启动DS18B20进行温度转换读暂存器0BEH读暂存器9个字节内容写暂存器4EH将数据写入暂存器的TH、TL字节复制暂存器48H把暂存器的TH、TL字节写到E2RAM中重调E2RAM0B8H把E2RAM中的TH、TL字节写到暂存器TH、TL字节读供电方式0B4H启动DS18B20发送电源供电方式的信号给主CPUDS18B20的测温原理器件中低温度系数晶振的振荡频率受温度的影响很小,用于产生固定频率的脉冲信号送给减法计数器1;高温度系数晶振随温度变化其振荡频率明显改变,所产生的信号作为减法计数器2的脉冲输入。器件中还有一个计数门,当计数门打开时,DS18B20就对低温度系数振荡器产生的时钟脉冲进行计数进而完成温度测量。计数门的开启时间由高温度系数振荡器来决定,每次测量前,首先将最低温所对应的一个基数分别置入减法计数器1、温度寄存器中,计数器1和温度寄存器被预置在最低温所对应的一个基数值。课程设计说明书8减法计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当减法计数器1的预置值减到0时,温度寄存器的值将加1,减法计数器1的预置将重新被装入,减法计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到减法计数器计数到0时,停止温度寄存器的累加,此时温度寄存器中的数值就是所测温度值。其输出用于修正减法计数器的预置值,只要计数器门仍未关闭就重复上述过程,直到温度寄存器值大致被测温度值。3软件设计整个系统是由硬件配合软件来实现的,在硬件确定后,编写的软件的功能也就基本定型了。所以软件的功能大致可分为两个部分一是监控,这也是系统的核心部分,二是执行部分,完成各个具体的功能。系统程序主要包括主程序,读出温度子程序,温度转换命令子程序,计算温度子程序,显示数据刷新子程序等。31主程序主程序的主要功能是负责温度的实时显示、读出并处理DS18B20的测量的当前温度值,温度测量每1S进行一次。这样可以在一秒之内测量一次被测温度,其程序流程见图31所示。图31主程序流程图初始化调用显示子程序1S到初次上电读出温度值温度计算处理显示数据刷新发温度转换开始命令NYNYY发DS18B20复位命令发跳过ROM命令发读取温度命令读取操作,CRC校验9字节完CRC校验正确移入温度暂存器结束NNY课程设计说明书9发DS18B20复位命令发跳过ROM命令发温度转换开始命令结束图32读温度流程图主程序如下,它包含和编程的准备工作和调用子程序功能。这种模块化编成结构对于程序的移植再用提供了很大的方便。只要我们提供相应的子程序,系统就可以算作是完成了。下面我们重点分析几个比较重要的子程序编程(1)DS18B20复位子程序初始化这段程序算是必要的准备工作之一。(2)DS18B20数据读取操作子程序其流程图如图32所示。(3)温度值BCD码处理子程序这部分比较重要,很核心,是处理数据的关键部分。它把各个数据位进行了分离,只要经过二十进制转换子程序便可用于数据显示。流程如图34,图33所示。(4)BCD码温度值刷新子程序流程图如图35所示。32读出温度子程序读出温度子程序的主要功能是读出RAM中的9字节,在读出时需进行CRC校验,校验有错时不进行温度数据的改写。温度转换命令子程序流程图如图33所示图33温度转换流程图课程设计说明书10图34温度流程图图35示数据刷新流程图33计算温度子程序计算温度子程序将RAM中读取值进行BCD码的转换运算,并进行温度值正负的判定,其程序流程图如图34所示。34显示数据刷新子程序显示数据刷新子程序主要是对显示缓冲器中的显示数据进行刷新操作,当最高显示位为0时将符号显示位移入下一位。程序流程图如图35所示。351602的液晶显示程序设计液晶显示流程如图36所示。温度值显示程序如下开始温度零下温度值补码置“”标志计算小数位温度BCD值计算整数位温度BCD值结束置“”标志NY温度数据移入显示寄存器十位数0百位数0十位数显示符号百位数不显示百位数显示数据结束NNYY课程设计说明书11初始化1602开始延时调用子程序设置第一行显示位置与内容调用子程序设置第二行显示位置与内容图361602液晶显示流程图36PROTEUS程序设计本设计是在PROTEUS环境下进行仿真的,仿真所用到的器件有单片机AT89C51,DS1820温度传感器,液晶显示器,一些电阻,电容等。仿真结果见附录2系统原理图。课程设计说明书124总结与体会经过这一周的单片机课程设计,我们完成了数字温度计的设计,虽然还有很多不足与欠缺之处,但感觉自己还是取得了很大进步。从没有尝试读写这么长的程序,应该说这是自己学习单片机以来第一次具有现实意义的尝试吧在本次设计的过程中,我发现很多的问题,虽然以前还做过这样的设计但这次设计真的让我长进了很多,单片机课程设计重点就在于软件算法的设计,需要有很巧妙的程序算法,虽然以前写过几次程序,但我觉的写好一个程序并不是一件简单的事,举个例子,以前写的那几次,数据加减时,我用的都是BCD码,这一次,我全部用的都是16进制的数直接加减,显示处理时在用除法去删分,感觉效果比较好,有好多的东西,只有我们去试着做了,才能真正的掌握,只学习理论有些东西是很难理解的,更谈不上掌握。从这次的课程设计中,我真真正正的意识到,在以后的学习中,要理论联系实际,把我们所学的理论知识用到实际当中,学习单机片机更是如此,程序只有在经常的写与读的过程中才能提高,这就是我在这次课程设计中的最大收获。通过这次对数字温度计的设计与制作,让我了解了设计电路的程序,也让我了解了关于数字温度计的原理与设计理念,要设计一个电路总要先用仿真仿真成功之后才实际接线的。但是最后的成品却不一定与仿真时完全一样,因为,再实际接线中有着各种各样的条件制约着。而且,在仿真中无法成功的电路接法,在实际中因为芯片本身的特性而能够成功。所以,在设计时应考虑两者的差异,从中找出最适合的设计方法。通过这次学习,让我对汇编语句有了更深的了解,也相信这对自己以后的工作学习都有很大意义。会以此为契机,不断开发自己创造能力,开发自己对软件硬件设计的兴趣,力争做一个身怀技能的人。课程设计说明书13参考文献1肖看,李群芳单片机原理、接口及应用清华大学出版社,201092楼然苗单片机课程设计指导北京北京航空航天大学出版社,20023阎石数字电子技术基础(第三版)北京高等教育出版社,19894孙育才主编MCS51系列单片微型计算机及其应用东南大学出版社5张毅刚单片机原理与应用设计M电子工业出版社,2008年课程设计说明书14设置堆栈指针将温度转换为BCD码发读存储器命令读温度数据复位DS18B20发跳过ROM命令显示缓冲区初始化更新数据缓冲区延时发温度转换命令复位DS18B20发跳过ROM命令开始附录1附录图11温度计软件设计流程图课程设计说明书15附录2附录图21PROTEUS仿真系统图附录图22PROTEUS仿真系统结果图课程设计说明书16附录3简易温度计完整程序(模块化设计)TEMP_ZHEQU24H实测温度值存放单元TEMPLEQU25HTEMPHEQU26HTEMPHCEQU29H正、负温度值标记TEMPLCEQU2AHTEMPFCEQU2BHSIT_XEQU2FHLCD字符显示位置RSEQUP20LCD寄存器选择信号RWEQUP21LCD读写信号ENEQUP22LCD允许信号DQEQUP33DS18B20数据信号ORG0000HMAINMOVSP,50HMOVA,00HMOVR0,20H将20H2FH单元清零MOVR1,10HCLEARMOVR0,AINCR0DJNZR1,CLEARLCALLSET_LCDSTARTLCALLRST调用18B20复位子程序LCALLMENU_OKDS1820存在,调用显示正确信息子程序LCALLTEMP_BJ显示温度标记JMPSTART2START2LCALLRST调用DS18B20复位子程序MOVA,0CCH跳过ROM匹配命令LCALLWRITEMOVA,44H温度转换命令LCALLWRITELCALLRSTMOVA,0CCH跳过ROM匹配LCALLWRITEMOVA,0BEH读温度命令课程设计说明书17LCALLWRITELCALLREAD调用DS18B20数据读取操作子程序LCALLCONVTEMP调用温度数据BCD码处理子程序LCALLDISPBCD调用温度数据显示子程序LCALLCONV调用LCD显示处理子程序SJMPSTART2循环显示温度标记子程序TEMP_BJMOVA,0CBHLCALLWCOMMOVDPTR,BJ1指针指到显示消息MOVR1,0MOVR0,2BBJJ1MOVA,R1MOVCA,ADPTRLCALLWDATAINCR1DJNZR0,BBJJ1RETBJ1DB00H,“C“显示正确信息子程序MENU_OKMOVDPTR,M_OK1指针指到显示消息MOVA,1显示在第一行LCALLLCD_PRINTMOVDPTR,M_OK2指针指到显示消息MOVA,2显示在第一行LCALLLCD_PRINTRETM_OK1DB“4090208315“,0M_OK2DB“TEMP“,0DS18B20复位子程序初始化RSTSETBDQNOPCLRDQMOVR0,6BH主机发出延时复位低脉冲MOVR1,04H课程设计说明书18TSR1DJNZR0,MOVR0,6BHDJNZR1,TSR1SETBDQ拉高数据线NOPNOPNOPTSR5MOVR0,06BHTSR6DJNZR0,时序要求延时一段时间TSR7SETBDQRET将自定义字符写入LCD的CGRAM中STORE_DATAMOVA,40HLCALLWCOMMOVR2,08HMOVDPTR,D_DATAMOVR3,00HS_DATAMOVA,R3MOVCA,ADPTRLCALLWDATA写入数据INCR3DJNZR2,S_DATARETD_DATADB0CH,12H,12H,0CH,00H,00H,00H,00HDS18B20数据写入操作子程序WRITEMOVR2,8一共8位数据CLRCWR1CLRDQ开始写入DS18B20总线要处于复位(低)状态MOVR3,07DJNZR3,总线复位保持16微妙以上RRCA把一个字节DATA分成8个BIT环移给CMOVDQ,C写入一位MOVR3,3CH课程设计说明书19DJNZR3,等待100微妙SETBDQ重新释放总线NOPDJNZR2,WR1写入下一位SETBDQRETDS18B20数据读取操作子程序READMOVR4,4将温度低位、高位、TH、TL从DS18B20中读出MOVR1,TEMPL存入25H、26H、27H、28H单元RE00MOVR2,8RE01CLRCYSETBDQNOPNOPCLRDQ读前总线保持为低NOPNOPNOPSETBDQ开始读总线释放MOVR3,09延时18微妙DJNZR3,MOVC,DQ从DS18B20总线读得一位MOVR3,3CHDJNZR3,等待100微妙RRCA把读得的位值环移给ADJNZR2,RE01读下一位MOVR1,AINCR1DJNZR4,RE00RET温度值BCD码处理子程序CONVTEMPMOVA,TEMPH判温度是否零下ANLA,08HJZTEMPC1温度零上转课程设计说明书20CLRCMOVA,TEMPL二进制数求补(双字节)CPLA取反加1ADDA,01HMOVTEMPL,AMOVA,TEMPHCPLAADDCA,00HMOVTEMPH,AMOVTEMPHC,0BH负温度标志MOVTEMPFC,0BHSJMPTEMPC11TEMPC1MOVTEMPHC,0AH正温度标志MOVTEMPFC,0AHTEMPC11MOVA,TEMPHCSWAPAMOVTEMPHC,AMOVA,TEMPLANLA,0FH乘00625MOVDPTR,TEMPDOTTABMOVCA,ADPTRMOVTEMPLC,ATEMPLCLOW小数部分BCDMOVA,TEMPL整数部分ANLA,0F0H取出高四位SWAPAMOVTEMPL,AMOVA,TEMPH取出低四位ANLA,0FHSWAPAORLA,TEMPL重新组合MOVTEMP_ZH,ALCALLHEX2BCD1MOVTEMPL,AANLA,0F0HSWAPA课程设计说明书21ORLA,TEMPHCTEMPHCLOW十位数BCDMOVTEMPHC,AMOVA,TEMPLANLA,0FHSWAPATEMPLCHI个位数BCDORLA,TEMPLCMOVTEMPLC,AMOVA,R4JZTEMPC12ANLA,0FHSWAPAMOVR4,AMOVA,TEMPHCTEMPHCHI百位数BCDANLA,0FHORLA,R4MOVTEMPHC,ATEMPC12RET二十进制转换子程序HEX2BCD1MOVB,064HDIVABMOVR4,AMOVA,0AHXCHA,BDIVABSWAPAORLA,BRETTEMPDOTTABDB00H,00H,01H,01H,02H,03H,03H,04H小数部分码表DB05H,05H,06H,06H,07H,08H,08H,09HLCD显示子程序SHOW_DIG2HMOVB,100DIVABADDA,30HPUSHBMOVB,SIT_X课程设计说明书22LCALLLCDP2POPBMOVA,0AHXCHA,BDIVABADDA,30HINCSIT_XPUSHBMOVB,SIT_XLCALLLCDP2POPBINCSIT_XMOVA,BMOVB,SIT_XADDA,30HLCALLLCDP2RETSHOW_DIG2LMOVB,100DIVABMOVA,0AHXCHA,BDIVABADDA,30HPUSHBMOVB,SIT_XLCALLLCDP2POPBINCSIT_XMOVA,BMOVB,SIT_XADDA,30HLCALLLCDP2RET显示区BCD码温度值刷新子程序课程设计说明书23DISPBCDMOVA,TEMPLCANLA,0FHMOV70H,A小数位MOVA,TEMPLCSWAPAANLA,0FHMOV71H,A个位MOVA,TEMPHCANLA,0FHMOV72H,A十位MOVA,TEMPHCSWAPAANLA,0FHMOV73H,A百位RETLCD显示数据处理子程序CONVMOVA,73H加载百位数据MOVSIT_X,6设置位置CJNEA,1,CONV1JMPCONV2CONV1CJNEA,0BH,CONV11MOVA,“号显示JMPCONV111CONV11MOVA,“0“号不显示CONV111MOVB,SIT_XLCALLLCDP2JMPCONV3CONV2LCALLSHOW_DIG2显示数据CONV3INCSIT_XMOVA,72H十位LCALLSHOW_DIG2INCSIT_XMOVA,71H个位LCALLSHOW_DIG2INCSIT_X课程设计说明书24MOVA,MOVB,SIT_XLCALLLCDP2MOVA,70H加载小数点位INCSIT_X设置显示位置LCALLSHOW_DIG2显示数据RET第二行显示数字子程序SHOW_DIG2ADDA,30HMOVB,SIT_XLCALLLCDP2RET第二行显示数字子程序LCDP2PUSHACCMOVA,B设置显示地址ADDA,0C0H设置LCD的第二行地址LCALLWCOM写入命令POPACC由堆栈取出ALCALLWD

温馨提示

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

评论

0/150

提交评论