单片及控制LCD时钟毕业设计_第1页
单片及控制LCD时钟毕业设计_第2页
单片及控制LCD时钟毕业设计_第3页
单片及控制LCD时钟毕业设计_第4页
单片及控制LCD时钟毕业设计_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

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

文档简介

常州工学院学士学位论文PAGE目录第一部分设计任务与调研…………1.1系统的设计思路 31.2方案选择 31.2.1单片机芯片的选择 31.2.2显示模块及时钟芯片的选择 41.2.3温度系统方案选择 41.2.4报警系统的方案比较 41.2.5键盘控制方案选择4第二部分设计说明………………………2.1电路设计框图 52.2单片机主控制模块的设计 52.3显示模块的设计 92.4时钟电路模块的设计 122.5温度采集模块设计 172.6按键调整系统模块设计 172.7蜂鸣器报警模块 182.8语言编程介绍 192.9硬件及软件问题分析192.10软件程序介绍2.11程序清单第三部分设计成果……………………3.1实物效果图3.2作品原理图第四部分结束语…………第五部分致谢…………第六部分参考文献…………………

第一部分设计任务与调研1.1系统的设计思路本次设计完成电子时钟精确时间的显示、环境温度测量以及定时闹钟的功能。由于DS12887时钟芯片内置一个锂电池,所以即使出现断电情况依然可以运行十年以上不丢失数据,且重新上电后不用校正时钟。硬件电路包括单片机最小系统电路、DS12887实时时钟芯片电路模块、LCD1602液晶显示模块、DS18B20温度传感器模块、按键模块、蜂鸣器报警电路模块;软件部分主要通过c程序的编程实现对时钟芯片进行时间数据的读写,然后通过液晶显示时间、按键操作实现功能转换及屏幕切换[8]。1.2方案选择1.2.1单片机芯片的选择STC89C52单片机的主要特性如下:•与MCS-51产品指令系统完全兼容•全静态工作模式:0~33MHz•4K字节的在线编程Flash存储器,1000次擦写周期•4.0~5.5V的工作电压范围•三级程序存储器锁•128×8字节内部RAM•32个可编程I/O口线•2个16位定时/计数器•6个中断源•低功耗空闲和掉电模式•全双工串行UART通道•中断可从空闲模式唤醒系统•看门狗(WDT)及双数据指针•具有掉电状态下的中断恢复功能•掉电标识和快速编程特性•灵活的在系统编程(ISP字节或页写模式)[9]1.2.2显示模块及时钟芯片的选择采用液晶LCD显示,以电流刺激液晶分子产生点,显示字符的行数和液晶的点阵行。液晶功耗低、体积小、显示简单。采用DS12887实现时钟记时,把时间数据送入单片机,由单片机控制显示。DS12887芯片是一种高性能的时钟芯片,可自动对秒、分、时、日、周、月、年以及闰年补偿的年进行计数,精度非常高,工作电压范围2.5V~5.5V,最小时耗电小于300mA[10]。1.2.3温度系统方案选择采用DS18B20直接进行测温。DS18B20温度传感器是美国DALLAS半导体公司最新推出的一种改进型智能温度传感器,它可以直接读出被测温度,并可根据实际要求通过简单的编程实现9~12位的数字值读数方式。温度实现只能通过外部的温度传感器来实现。经上网查阅及市场考察,DS18b20体积小,电路接法简单。内部含寄存器为设计实现上下限报警功能提供保障。精度为0.5℃,符合我们的设计要求。1.2.4报警系统的方案比较采用蜂鸣器实现闹钟铃声及温度超限报警。蜂鸣器具有成本低,电路结构简单,体积小的特点。基于设计所需功能,蜂鸣器是最佳选择。1.2.5键盘控制方案选择购买单个复位开关做成键盘。因其价格便宜且可以实现所需功能。对此次作品的方案选定:采用STC89C52作为主控制系统;DS12887提供时钟;数字式温度传感器;液晶1602作为显示。

第二部分设计说明2.1电路设计框图初步确定设计系统由单片机主控模块、时钟模块、测温模块、报警模块、显示模块、键盘接口模块共6个模块组成,电路系统框图如图所示。蜂鸣报警模块蜂鸣报警模块STC89C52主STC89C52主控制模块键盘模块液晶1602显示模块键盘模块液晶1602显示模块温度采集模块DS12887时钟模块温度采集模块DS12887时钟模块电路设计框图2.2单片机主控制模块的设计本系统采用的是深圳宏晶科技公司生产的STC89C52单片机,首先我们来熟悉一下STC89C52单片机的外部引脚和内部结构。如图2-1(1)单片机的引脚功能STC89C52单片机有40个引脚。•Vcc:电源电压+5V•GND:接地•P0口:P0口是一组8位漏极开路型双向I/O口。作为输出口用时,每位能驱动8个TTL逻辑门电路,对端口写“1”可作为高阻抗输入端用。在访问外部数据存储器或程序存储器时,这组口线分时转换低8位地址和数据总线服用,在访问期间激活内部上拉电阻。•P1口、P2口:带内部上拉电阻的8位双向I/O,P1的输出缓冲级可以驱动4个TTL逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时为输入口。因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。在访问外部程序存储器或16位地址的外部数据存储器(例如执行MOVX@DPTR指令)时,P2口送出高8位地址数据。图2-1STC89C52管脚图•P3口:带内部上拉电阻的8位双向I/O,P3的输出缓冲级也可以驱动4个TTL逻辑门电路。作输入端时,被外部拉低的P3口将用上拉电阻输出电流。P3口除了作为一般的I/O口线外,还有第二功能,见表2-1所示:表2-1P3口的第二功能图端口引脚第二功能P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2INT0(外中断0)P3.3INT1(外中断1)P3.4T0(定时/计时器0外部输入)P3.5T1(定时/计时器1外部输入)P3.6WR(外部数据存储器写选通)P3.7RD(外部数据存储器读选通)•RST:复位输入端口。当振荡器工作时,RST引脚出现两个以上高电平机器周期将使单片机复位。设置SFRAUXR的DISRT0可打开或关闭该功能。DISRT0位缺省为打开状态。•ALE/PROG:当访问外部程序存储器或数据存储器时,ALE输出脉冲用于锁存地址的低8位字节。即使不访问外部存储器,ALE仍以时钟振荡频率的1/6输出固定的正脉冲信号,所以它可用于定时,每当访问外部数据存储器时将跳过一个ALE脉冲。•EA/VPP:允许外部访问端口。欲使CPU仅访问外部程序存储器(地址为0000H—FFFFH),EA端必须保持低电平。需要注意的是:如果加密位(LB1)被编程,复位时内部会锁存EA端状态。如EA端为高电平,CPU则执行内部程序存储器中的指令。Flash存储器编程时,该引脚加上+12V的变成电压Vpp.•PSEN:程序存储允许(PSEN)输出是外部程序存储器的读选通信号,当AT89C51由外部程序存储器取数据(或指令)时,每个两次PSEN机器周期有效,即输出两个脉冲。当访问外部数据存储器,无两次有效的PSEN信号。•XTAL1:振荡器反相放大器及内部时钟发生器的输入端口。•XTAL2:振荡器反相放大器的输出端口。(2)STC89C52单片机与MCS-51完全兼容•看门狗(WDT):WDT由13位计数器和特殊功能寄存器中的看门狗定时器复位存储器(WDTRST)构成,是一种需要软件控制的复位方式。WDT在默认情况下无法工作;用户必须在WDTRST寄存器(地址:0A6H)中依次写入01EH和0E1H以激活WDT。WDT激活后,晶振工作,WDT在每个机器周期都会增加。除了复位(硬件复位或WDT溢出复位),无法停止WDT工作。当WDT溢出,它将驱动RSR引脚输出一个高电平。•可编程串口(UART)在STC89C52中操作与STC89C51和STC89C52一样。STC89C52系列单片机的串行通信口可以工作于同步和异步通信方式,当工作于异步方式时,可以同时进行数据的发送和接收。串行口内的接收器采用的是双缓冲结构,可以在接收到的第一个字节被读走之前开始接收第二个字节。串行口的发送和接收操作都是在特殊功能寄存器中的数据缓冲寄存器SBUF中进行的,如果将数据写入SBUF,数据会被送入发送寄存器准备发送。如果执行SBUF指令,则读出的数据一定来自接收缓存器。因此,这2个寄存器的功能决不能混淆[11]。•振荡电路:STC89C52系列单片机的内部振荡器,由一个单极反相器组成。XTAL2为反相器的输出,XTAL1反相器的输入。在组成一个单片机应用系统时,常采用的方式是由外部时钟源提供一个时钟信号到XTAL1端输入,而XTAL2端浮空。这种方式结构紧凑,成本低廉,可靠性高。在电路中,如果使用高质的晶振,C1、C2通常都选择30pF。•RAM:高于7FH内部数据存储器的地址是8位的,也就是说其地址空间只有256字节,但内部RAM的寻址方式实际上可提供384字节。低于7fh的直接地址访问同一个存储空间,高于7FH的间接地址访问另一个存储空间。这样,虽然高128字节区分于专用寄存器,即特殊功能寄存器区的地址是重合的,但实际上它们是分开的。访问哪一个区是通过不同的寻址方式加以区分的。•定时/计数器:STC89C52单片机内含有2个16位的定时器/计数器。当用于定时器方式时,它的输入来自内部时钟发生电路,定时器的技术频率为晶振频率的1/12,而计数频率最高为晶振频率的1/24。为了实现定时和计数功能,定时器中含有3种基本的寄存器:控制寄存器、方式寄存器和定时器/计数器。控制寄存器是8位的,用于控制定时器的工作状态,方式寄存器也是一个8位的寄存器,用于确定定时器的工作方式,定时器/计数器是16位的计数器,分为高字节和低字节两部分[12]。•SFR:SFR是具有特殊功能的所有寄存器的集合,共含有22个不同寄存器,它们的地址分配在80H~FFH中。未被占用的单元,内容是不确定的。所以在编程时不应该将数据写入这些未确定的地址单元中,特殊功能寄存器主要有累加器ACC、B寄存器、堆栈指针SP、程序状态字寄存器PSW、数据指针DPTR、I/O端口、串行口数据缓冲器SBUF、捕捉寄存器、定时器寄存器、控制寄存器。•中断系统:STC89C52单片机有6个中断源,中断系统主要由中断允许寄存器IE、中断优先级寄存器IP、优先级结构和一些逻辑门组成。IE寄存器用于允许或禁止中断;IP寄存器用于确定中断源的优先级别;优先级结构用于执行中断源的优先排序;有关逻辑门用于输入中断请求信号。在整个中断响应过程中CPU所执行的操作步骤如下:(1)完成当前指令的操作;(2)将PC内容压入堆栈;(3)保存当前的中断状态;(4)阻止同级的中断请求;(5)将中断程序入口地址送PC寄存器;(6)执行中断服务程序;(7)返回(2)。2.3显示模块的设计(1)LCD1602功能介绍LCD1602各引脚功能如表2-2所示。表2-2LCD1602管脚功能表(2)基本操作时序:LCD1602读写操作时序是直接记忆和总结读写时电平高低和变化,下面就列出典型读写的时序要求,以方便编写程序[13]。读状态--输入:RS=L,R/W=H,E=H输出:D0-D7=状态字写指令--输入:RS=L,R/W=L,D0-D7=指令码,E=高脉冲输出:无读数据--输入:RS=H,R/W=H,E=H输出:D0-D7=数据写数据--输入:RS=H,R/W=L,D0-D7=数据,E=高脉冲输出:无(3)状态字说明:表3-3状态字表对控制器每次进行读写操作之前,都必须进行读写检测,确保STA7为0。(4)指令说明:表3-4显示模式设置表表3-5显示开/关及背光灯设置表(5)数据控制控制器内部有一个数据地址指针,用户可通过它们访问内部的全部80字节RAM[15]。(6)数据指针设置表3-6数据指针设置表(7)其他设置表3-7其他设置指令表(8)LCD1602初始化过程a、延时15ms。b、写指令38H(不检测忙信号)。c、延时5ms。d、写指令38H(不检测忙信号)。e、写指令5ms。f、写指令38H(不检测忙信号)。g、之后每次写指令、读/写数据操作之前均需检测忙信号。h、写指令38H:显示模式设置。i、写指令08H:显示关闭。j、写指令01H:显示清屏幕。k、写指令06H:显示光标移动设置。p、写指令0CH:显示及光标设置。(9)LCD1602的电路设计液晶LCD1602的D0-D7引脚与STC89C52芯片的P2口连接,而控制引脚RS,R/W,CS则分别与P1.6,P1.5,P1.4连接。引脚3接一个1K的电位器来调整对比度,从而达到适合的背光灯对比度[16]。液晶显示模块电路如图2-3所示。图2-3液晶显示模块2.4时钟电路模块的设计(1)DS12887功能特点DS12887是美国达拉斯半导体公司推出的时钟芯片,此芯片是基于CMOS技术的,将所需的晶振和外部锂电池相关电路集于芯片内部,简化了外围电路,同时它与计算机常用的时钟芯片MC146818B和DS1287芯片引脚兼容,可直接进行对等交换。主要功能有:

•内含一个锂电池,断电可以运行十年,并且不会丢失数据,时间功能正常运行。•可计时至2100年前的秒、分、时、星期、日、月、年等日历信息并带有闰年补偿功能。•可通过编程选择BCD码或者二进制数表示日历和定时闹钟。•可通过编程选择12小时或24小时制,12小时时钟模式带有PM和AM提示,此外还有有夏令时功能。•可选择MOTOROLA和INTEL总线时序。•内部共有128个RAM单元,其中14个字节作为时钟和控制寄存器,114字节为通用RAM,所有ARAM单元数据都具有掉电保护功能。

•中断信号输出(IRQ)和总线兼容,定时闹钟中断、周期性中断、时钟更新周期结束中断可分别由软件屏蔽,也可分别进行测试[17]。•三种可供选择的中断方式a、时间性中断b、周期性中断c、时钟更新结束中断(2)DS12887的原理及管脚说明图2-4显示了DS12887管脚排列图。下面说明管脚功能:图2-4DS12887管脚图GND:电源接地VCC:直流电源+5V电压。若外部提供的VCC电源小于4.25V,读写会被禁止,但芯片内部计时仍在继续,重新通上+5V电源后,通过编程即可显示当前时间;若外部提供的VCC电源小于3V,电源方式切换为内部锂电池提供,同样可以保持芯片内部计时仍然继续。MOT(模式选择):接VCC(+5V)时,芯片在MOTOROLA时序下工作,接GND时,芯片在INTEL时序下工作。

SQW(方波信号):通过15个分频器抽头中的13个提供方波输出。AD0~AD7(双向地址/数据复用线):数据和控制指令都通过此8个引脚来于单片机等控制器传输。DS(数据选通或读输入):该引脚有两种操作模式,视该芯片是出于MOTOROLA模式或者INTEL模式,当使用MOTOROLA时序时,DS是一正脉冲,出现在总线周期的后段,称为数据选通;若为INTEL时序,DS称作(RD),RD与典型存贮器的允许信号(OE)的定义相同。R/W(读/写输入):R/W管脚同样也有两种操作模式。此引脚的两种模式与DS相似。CS(片选输入):在访问DS12887的总线周期内,片选信号必须保持为低。RESET(复位输出):若要保证DS12887有效复位,必须让该脚保持低电平时间大于200ms。IRQ(中断申请输入):低电平有效,可作微处理的中断输入。没有中断条件满足时,IRQ处于高阻态。IRQ线是漏极开路输入,要求外接上拉电阻[18]。(3)DS12887的内部功能地址分配图DS12887的存储器分配图如图2-5所示,其中00H-09H为时钟信息和闹钟信息寄存器,0AH-0DH为四个控制寄存器。图2-5DS12887存储器分配图控制寄存器

•寄存器A表2-8DS12887寄存器AUIP:更新位。若UIP为1,实时时钟的更新转换发生的很快,而当UIP为0,更新转换至少在244µs内不会发生。DV0,DV1,DV2:用于晶振和复位分频链的开启。表2-9DS12887周期中断率和方波频率RS3,RS2,RS1,RS0:频率选择位,通过这四个位用户可以:

a、用PIE位允许中断;

b、用SQWE位允许SQAW输出;

c、二者同时允许并用相同的频率;

d、二者都不允许。

•寄存器B表2-10DS12887寄存器BSET:此位为0,时间更新正常进行,每秒计数走时一次,当此位为1,时间更新被禁止,程序可对芯片进行初始化的操作和编程。PIE:周期中断允许位,PIE为1,则允许以选定的频率拉低IRQ管脚,PIE为0,则禁止中断。AIE:定时闹钟中断允许位,AIE为1,允许中断,否则禁止中断。UIE:更新结束中断允许位,AIE为1,允许中断,否则禁止中断。SQWE:方波允许位,置1选定频率方波从SQW脚输出;为0-时,SQW脚为低。DM:数据模式位,DM为1表明为十进制数据,而0表明是BCD码的数据。

24/12:小时格式位,1表明24小时制,而0表明12小时制。DSE:夏令时允许位,当DSE置1时允许两个特殊的更新,在四月份的第一星期日,时间从1:59:59AM时改变为3:00:00AM;在十月的最后一个星期日的1:59:59AM时改变为1:00:00AM。当DSE位为0,这种特殊修正不发生。

•寄存器C表2-11DS12887寄存器CIRQF:中断申请标志位。当下列表达式中一个或多个为真时,置1。PF=PIE=1;AF=AIE=1;UF=UIE=1;

即:IRQF=PF·PIE+AF·AIE+UF·UIE

只要IRQF为1,IRQ管脚输出低,程序读寄存器C以后或RESET管脚为低后,所有标志位清零。

VF:更新周期结束标志位。VF为1表明更新周期结束。AF:定闹中断标志位,只读,AF为1表明现在时间与定闹时间匹配。

BIT0~BIT3:未用状态位,读出总为0,不能写入。

•寄存器DVRT:内部锂电池状态位,平时应总读出1,如出现0,表明内部锂电池耗尽。BIT0~BIT6:未用状态位,读出总为0,不能写入。表2-11DS12887寄存器D(4)DS12887的电路设计本设计中的DS12887芯片AD0-AD7引脚与STC89C52芯片的P2口相连接。MOT引脚接地,为INTEL总线时序方式。因此R/W和DS引脚也为对应INTEL的操作模式[19]。时钟模块电路如图2-6所示。图2-6时钟模块电路图2.5温度采集模块设计温度传感器DS18B20的接法很简单,它的DQ引脚与STC89C52芯片的P1.7引脚相连接。这里只用到一个温度传感器,若要使用多个则只需将所有的DS18B20的I/O口接在一起即可,在具体操作时,通过读取每个芯片的内部序列号来识别。2.6按键调整系统模块设计74LS21芯片为两组4输入与门(正逻辑)。本设计中的四个按键分别接到74LS21芯片的1A,1B,1C,1D,即4输入与门的4个输入。而74LS21的输出1Y则接到STC89C52芯片的P3.2(INT0)引脚,由于该引脚为低电平有效,当警报发生时按下四个按键中任意一个都会使输出1Y变为低电平,则芯片发生中断,报警停止。同时,四个按键key1-key4也接到STC89C52芯片的P1.0-P1.3起到调节时间日期等功能。按键模块电路如图2-7所示。图2-7按键模块2.7蜂鸣器报警模块蜂鸣器报警模块的作用:当定时闹钟时间到时,蜂鸣器发出预设的声音,而发光二极管则会随着音乐闪烁。本模块采用PNP三极管为蜂鸣器放大电流,基极通过4.7k电阻与单片机STC89C52的闲置引脚P3.5相连接,集电极直接接地,发射极接发光二极管和蜂鸣器[22]。报警模块电路如图2-8所示。图2-8报警模块2.8语言编程介绍此程序采用汇编语言编写,用汇编语言编写有两方面的好处:一方面,用汇编语言写和高级语言(C语言)比较起来节省空间,这样对于存储空间仅4K的AT89C51来说是极之有利的,以后如果想再增加程序使实物更美观(如把1个秒灯扩展为5个,使每秒5个秒灯变化一次状态)也是可能的;另一方面,本设计为电子时钟,用汇编语言能够使时钟运行很准确,充分体现一个电子时钟最重要的一面,而用高级语言则较难达到这点。2.9硬件及软件问题分析考虑到本设计外观及其焊接的问题,数码的显示采用静态显示(即用4个4511显示4个数码管),虽然这样做和动态显示(用1个4511显示4个数码管)相比耗电比较大,但一方面却能降低焊线难度及减少线与线的交叉,避免相互干扰,另一方面能使实物外观大方得体。2.10软件程序介绍单片机内寄存器用途分配0.1秒、秒、分、时记录存入片内RAM60H、61H、62H、63H号单元中。65H号单元记录按键按动的次数。单片机工作方式单片机用6M晶振,定时器用16位计数器(1方式)工作。时间初值设0.1秒时间初值为Z,Z的计算方式为(65535-Z)×2=100000,结果Z=15536D=3CB0H2.11程序清单ORG0000HLJMPSTARTORG000BHTOIRQ:MOV7FH,AMOVTL0,#0B0HMOVTH0,#3CHINC60HMOVA,60HCJNEA,#0AH,EXITCPLP1.0MOV60H,#0HMOVA,61HADDA,#1DAAMOV61H,ACJNEA,#60H,EXITMOV61H,#0HMOVA,62HADDA,#1DAAMOV62H,ACJNEA,#60H,EXITMOV62H,#0MOVA,63HADDA,#1DAAMOV63H,ACJNEA,#24H,EXITMOV63H,#0EXIT:MOVA,7FHRETISTART:MOVTMOD,#11HMOVTL0,#0B0HMOVTH0,#3CHSETBEASETBET0SETBTR0SETBP1.0MOV60H,#0MOV61H,#0MOV62H,#00HMOV63H,#12HEAD:JBP1.7,COMPA1LCALLKEYDELAYJNBP1.7,$LCALLKEYDELAYINC65HCOMPA1:MOVA,65HCJNEA,#1,COMPA2CLRTR0SETBP1.0CLRP3.5MOVR0,#62HLCALLMODIFY60LJMPHEADCOMPA2:CJNEA,#2,COMPA3SETBP1.0CLRP3.5MOVR0,#63HLCALLMODIFY24LJMPHEADCOMPA3:SETBTR0MOV65H,#0SETBP3.5LCALLDISPLAYLJMPHEADKEYDELAY:MOVR7,#20HDEL1:MOVR6,#80HDEL2:NOPDJNZR6,DEL2DJNZR7,DEL1RETMODIFY60:JBP1.6,MOEXIT1LCALLKEYDELAYJNBP1.6,$LCALLKEYDELAYMOVA,@R0ADDA,#1DAAMOV@R0,ACJNEA,#60H,MOEXIT1MOV@R0,#0MOEXIT1:LCALLDISPLAYRETMODIFY24:JBP1.6,MOEXIT2LCALLKEYDELAYJNBP1.6,$LCALLKEYDELAYMOVA,@R0ADDA,#1DAAMOV@R0,ACJNEA,#24H,MOEXIT2MOV@R0,#0MOEXIT2:LCALLDISPLAYRETDISPLAY:MOVA,63HSWAPAMOVP0,AMOVP2,62HDIS0:MOVA,65HCJNEA,#1,DIS1MOVP2,62HLCALLDELAYMOVP2,#0FFHLCALLDELAYRETDIS1:MOVA,65HCJNEA,#2,DIENDMOVA,63HSWAPAMOVP0,ALCALLDELAYMOVP0,#0FFHLCALLDELAYRETDELAY:MOVR7,#0B0HDE1:MOVR6,#80HDE2:NOPJNBP1.7,DIENDJNBP1.6,DIENDDJNZR6,DE2DJNZR7,DE1DIEND:RETEND

第三部分设计成果3.1实物效果图

3.2作品原理图电源组成部分电源电路

第四部分结束语经过一个多月的努力,单片机控制LCD时钟的设计终于完成

温馨提示

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

评论

0/150

提交评论