倒计时数字钟_第1页
倒计时数字钟_第2页
倒计时数字钟_第3页
倒计时数字钟_第4页
倒计时数字钟_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

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

文档简介

1、合肥学院计算机科学与技术系微机原理与接口技术课程设计报告20082009学年第1学期课程微机原理与接口技术课程设计名称倒计时数字钟学生姓名昌 飞 霞学号0604032012专业班级网络工程专业(06网工2)指导教师肖连军老师2009 年 2 月一、题意分析及解决方案1 .题义与需求分析用STAR ES598PCI单板开发机设计一个接口与七段LED显示器,显示一个倒计时数字钟,显示初值为60分00秒,每隔一秒改变一次显示值,60秒为一分钟,LED显示器显示分、秒的动态值。根据题目要求需要考虑以下几方面问题: 初值的设置及输入问题 倒计时时需要从一个固定的值开始倒计时,这个初值需要用输入一个输入设

2、备输入。 接口设计 当初值设置完毕,应将时间信息传送到外设中,即设计CPU与外设之间传送信息的接口。 动态值的显示 从初始值开始每隔一秒就要动态的改变这个初值,并且把这个值用显示设备显示出来。 显示设备 为了使用者能够清楚方便的使用该产品,倒计时数字钟要把每隔一秒后相应数值动态的显示出来,这样才会使得设计出来的产品有应用价值。 一秒的控制 倒计时钟需要每隔一秒改变一下显示值,所以需要一个操作来控制一秒这个固定延时。需要注意的是,在选择芯片或选择其它元器件时,应当考虑所选器件在设计中所起的实验效果、产品成本、产品可靠性、可行性以及使用的难易程度等等,这都是我们在设计过程中需要考虑的因素。 2 .

3、解决问题的方法与思路1) 硬件部分初值的设置及输入问题倒计时钟是从初值开始一秒一秒的倒计时,可以使用一组八位二进制逻辑开关作为输入设备。需要输入的有秒个位、秒十位、分个位、分十位、时个位、时十位,用K7K5来选择要输入的是哪位,000时表示设置的是秒个位,001时设置的是秒十位,010时设置的是分个位,011时设置的是分十位,100时设置的是时个位,101时设置的是时十位。K4K1用来表示需要设置位的具体值,00001001分别表示十进制数的09。K8作为主控开关,为1时表示需要设置初值,为0时不需设置初值及开始倒计时。接口设计接口芯片是CPU与外设之间的界面,一方面要接收CPU进行输入/输出

4、所发出的一系列信息,另一方面又要与外设交换数据以及一些联络信号等。为增加本设计的灵活性,在接口的选择上要求是可编程的输入/输出接口,而可编程的输入/输出接口又分为可编程并行接口(8255A)和可编程串行接口(8251A)。8255A芯片是一种可编程通用并行接口芯片,它有24条可编程的I/O引脚,采用40脚双列直插式封装,单一+5V电源,全部输入/输出均与TTL电平兼容。在8255A中有A、B、C三个并行输入/输出端口,其功能全部由程序设定,每个端口都有自己的特点。A口、B口通常作为独立的I/O端口使用,C口也可以作为一般的I/O端口使用,但当A口、B口作为应答式的I/O端口使用时,C口分别以来

5、为A口、B口提供应答控制信号。8251A芯片是一种可编程通用串行接口芯片,是通用的同步异步接收/发送器,它的作用是把计算机的并行数据转换成串行数据发送出去,把接收到的外部串行数据转换成并行数据送入计算机内部,它可以通过编程选用同步/异步通信方式,它具有独立的发送器和接收器,能够以单工、半双工或全双工方式进行通信,并提供相应的控制信号。如果采用8251A作为计时时钟的输入/输出接口,那么就需要把计算机的并行数据转换成串行数据发送出去,把接收到的外部串行数据转换成并行数据送入计算机内部,这个过程是需要时间的,所以从时间效率方面来说并没有8255A芯片合适;另外,可编程并行接口(8255A)的是数据

6、传输速度快,虽然使用的通信线多,但是传输距离并不算远,所以在解决接口问题时,采用可编程并行接口(8255A)是比较合适的。采用8255A作为计时时钟的输入/输出接口,那么8255A的三个端口设置如下:PA口工作与方式0,作为输出口,其PA0PA3分别与外设的位选码相连,用以确定显示的是秒还是分的值;PB口工作与方式0,作为输出口,其PB0PB7分别与外设相连,作为段选线;PC口用来为PA口、PB口提供应答控制信号。显示设备倒计时钟的显示问题可以通过LED数码管来解决,LED是发光二级管(Light-Emitting Diode)的简称,它是将七个发光管进行组合,排列成数字图形8,再根据需要控制

7、七个管的亮与灭,即可显示出定义数字在本设计中采用7段数字发光二级管,做为终端显示,因为它的成本低,可靠性高,从显示的效果上来说也可以满足显示计时时钟的需要。2) 软件部分(汇编语言编写程序)动态值控制问题该部分可通过软件编程来实现。首先将秒个位减一判断结果是否小于0,如果小于0则置秒个位为9,否则直接显示。再将秒十位减一判断结果是否小于0,如果小于0则置秒十位为5,否则直接显示。同理再判断分个位、分十位、时个位、时十位直到减为00:00:00。一秒的控制可以通过做N次空操作来实现。可以先将循环部分每句程序的时钟周期从参考资料中查到再相加,算出该部分运行的时间T。最后用1S除以T就得到了N。二、

8、硬件设计1选择芯片8255A1) 8255A在本设计中的作用PA口、PB口作为作为输出口,PA口的低4位与LED显示器的位选信号LED0到LED3相连作为位选码的输出口,高4位禁止。PB口与LED0LED3的段选信号相连作为段选码的输出口。PC口与逻辑开关相连把读入的二进制数送8086CPU。PA、PB、PC三口均工作在方式状态。PC0PC7与逻辑开关18相连。当控制程序运行到读开关变量时,逻辑开关状态经PC口送8086CPU。PA0PA3与LED0LED3相连当控制呈现运行至显示16进制数时送出位选码选中相应位,对应的七段LED显示器显示16进制数的字型,PB0PB3与LED的段选信号相连,

9、对显示位进行控制。在使用8255前首先要对它进行初始化设置,设置它的方式选择控制字。2) 8255A的功能分析 图2-1 8255A的内部框图8255A是可编程并行接口,内部有3个相互独立的8位数据端口,即A口、口和口。三个端口都可以作为输入端口或输出端口。口有三种工作方式:即方式、方式和方式,而口只能工作在方式或方式下,而口通常作为联络信号使用。8255A的工作只有当片选CS效时才能进行。而控制逻辑端口实现对其他端口的控制。8255有三种工作方式。方式0:基本输入输出,端口与外设之间无联络信号,只能使用无条件传送方式输入输出数据;方式1:是选通输入输出方式,PC口用作联络信号;方式2:双向数

10、据传送方式,仅A口有此功能。本设计用到工作方式0。表2-1 8255A的操作功能 A1 A0操 作数 据 传 送 方 式 0 0 1 0 0读 A 口A口数据 数据总线 0 0 1 0 1读 B 口B口数据 数据总线 0 0 1 1 0读 C 口C口数据 数据总线 0 1 0 0 0写 A 口数据总线数据 A口 0 1 0 0 1写 B 口数据总线数据 B口 0 1 0 1 0写 C 口数据总线数据 C口 0 1 0 1 1写控制口数据总线数据 控制口3) 8255A的技术参数 与外设相连的PA7PA0:A口数据信号线。PB7PB0:B口数据信号线。PC7PC0:C口数据信号线。 与CPU相连

11、的RESET:复位信号。当此信号来时,所有寄存器都被清除。同时三个数据端口被自动置为输入端口。D7D0:它们是8255A的数据线和系统总线相连。CS:片选信号。在系统中,一般根据全部接口芯片来分配,若低位地址(比如A5、A4、A3)组成各种芯片选择码,当这几位地址组成某一个低电平,8255A被选中。只有当其有效时,读信号写才对8255A进行读写。 RD:读信号。当此信号有效时,CPU可从8255A中读取数据。WR:写信号。当此信号有效时,CPU可向8255A中写入数据。A1、A0:端口选择信号。8255A内部有3个数据端口和1个控制端口,共4个端口。规定:A1、A0为00时,选中A端口;A1、

12、A0为01时,选中B端口;A1、A0为10时,选中C端口;A1、A0为11时,选中控制口。 参数说明:输入最低电压:min-0.5V,max0.8 V输入最高电压:2.0 V输出最低电压:0.45 V输出最高电压:2.4 V 8255A的方式控制字D7 D6 D5 D4 D3 D2 D1 D0100010011:工作方式 A口方式0输出 B口方式0输出 C口高4位输入 C口低4位输入图2-2 8255A的方式控制字表方式0的工作特点:这种方式通常不用联络信号,不使用中断,三个通道中的每一个都有可以由程序选定作为输入或输出。通道的功能为:两个8位通道:通道A和B。两个四位通道:通道C高4位和低四

13、位,任何一个通道可以作输入/输出,输入是不锁存的,输出是锁存的,在方式0时各个通道的输入/输出可有16种不同的组合。D7 D6 D5 D4 D3 D2 D1 D00XXX写入位编码写入内容 写入位 编码 0写入0 D0-D7 000-111 1写入1图2-3 8255A的置位/控制字表8255主要用作数据的输入输出端口,电源为5V,输入最低电压:-0.5V0.8V,输入最高电压:2.0 V,输出最低电压:0.45 V,输出最高电压:2.4 V。8255的达林顿驱动电流最大4.0mA表22 8255A技术参数8255A技术参数测试条件规范值单位大小输入低电平电压IL.输入高电平电压IHCC.输出

14、低电平电压OL(数据端口)OL.输出低电平电压OL(外围端口)OL.输出高电平电压OH(数据端口)OR.输出高电平电压OH(外围端口)OH.达林顿驱动电流OAR.mA电源电流CCmA输入负载电流ILINmA输出浮动电流OFOR.VmA2选择芯片LED1) LED在本设计中的作用LED为发光二极管(Light-Emitting Diode),在本设计中采用7段数字发光二级管,做为终端显示,主要是作为动态显示计时的秒个位、秒十位、分个位、分十位、时个位、时十位的值。2) LED的功能分析LED发光二级管,采用砷化镓、镓铝砷、和磷化镓等材料制成,其内部结构为一个PN结,具有单向导电性。当在发光二极管

15、PN结上加正向电压时,PN结势垒降低,载流子的扩散运动大于漂移运动,致使P区的空穴注入到N区,N区的电子注入到P区,这样相互注入的空穴与电子相遇后会产生复合,复合时产生的能量大部分以光的形式出现。将七个发光管进行组合,排列成数字图形8,再根据需要控制七个管的亮与灭,即可显示出定义数字。有段选码和位选码确定数字18的输出并在延时程序中保持复位。它是一种当外加电压超过额定电压时发生击穿,并因此而产生可见光的器件。这种数码管是有7段或8段笔画显示器组成一个字符而形成的。图2-4LED数码管内部结构表2-3 LED显示管段选码编码表dpgfedcba显示数码二进制编码0011111103FH00000

16、0111O6H0101101125BH0100111134FH01100110466H0110110156DH0111110167DH00000111707H0111111187FH0110111196FH(1)静态:数码管显示过程持续得到信号,与数码管接口的I/O口线为专用。特点是无闪烁,元器件多,占I/O线多,无须扫描,节省CPU时间,编程简单。(2)动态:数码管显示过程轮流得到信号,与各数码管接口的I/O口线为共用。特点是有闪烁,元器件少,占I/O线少,必须扫描,花费CPU时间,编程复杂 (有多个LED时尤为突出)。3) LED的技术参数消耗功率 PM150mW 最大工作电流 IFM10

17、0mA 正常工作电流 IF40mA 正向压降 VF 1.8V 燃亮电压为5V共阴极LED的PM300mW,IFM200 mA,IF60mA,VF 1.8V,VR5V,发红光。发光颜色有:红色光、黄色光、绿色光、红外光等。发光二极管应用电路有四种,即直流驱动电路、交流驱动电路、脉冲驱动电路、变色发光驱动电路。表2-4LED技术参数PCWIFVrIrIfP对应型号散射 颜色BT235-2702551.52.5200SEL-10红色BT14415291004050.52.5565绿色BT13415291004050.52.5585蓝色3选择芯片逻辑开关1)逻辑开关在本设计中的作用4位开关作为倒计时的

18、初始值的设定,3位开关作为位选,1位作为主控开关。开关K4K1位设置输入的时间数字(09),K7K5用来控制对时分秒位数的修改,k8控制程序的运行与否,仅当K8为1时即程序停止运行时才可以修改时间。表2-5开关设置的位K5 K6 K7对应的操作0 0 0修改秒的个位0 0 1修改秒的十位0 1 0修改分的个位0 1 1修改分的十位1 0 0修改时的个位1 0 1修改时的十位表2-6开关编码表K4 K3 K2 K1数 字0 0 0 000 0 0 110 0 1 020 0 1 130 1 0 040 1 0 150 1 1 060 1 1 171 0 0 081 0 0 192)逻辑开关的功能

19、分析逻辑电平开关可以进行简单的高电平和低电平信号的输入。在8255A可编程并行口的实验中,它作为一种简单的输入设备,当开关拨上时为1,拨下时为0。3)逻辑开关的技术参数当K接VCC=+5V时为1,接地时输出为0。4、硬件总逻辑图及其说明图2-5硬件总逻辑图PC机的AD0AD19经数据总线与8255A的D0D7相连,地址线A1、A0与8255的A0、A1相连,即偶地址有效。控制总线RD、WR、RESET分别与8255相应的控制信号线连接。片选信号CS0与8255的CS信号连接,则8255的端口地址为04A004A6。8255的PA口用于存放位选码,使用的是高四位,分别连接到四个七段LED显示器上

20、。使用的是共阴极接;PB口用于存放段选码,八位全部连接到八个二极管上;PC口用作信号输入。三、控制程序设计1 .控制程序设计思路说明本课程设计用到了6片LED显示器,分别显示倒计时时钟的秒个位、秒十位、分个位、分十位、时个位、时十位。为节省硬件,所以采用动态扫描显示方式,每次只使一位LED显示器公共端的电平有效,因而每次只有一位LED显示器发光。但由于人眼的视觉暂留的效应,只要间隔的时间足够短,则依次从右向左显示时就感觉是6位LED是同时点亮一样。用8255的PA口接LED显示器的公共端作位选择,用PB口接LED的各片的发光二极管作段选择的控制,用PC口接二进制开关作初始值的控制输入。同时要解

21、决每隔一秒变化一次显示的问题,所以需要一个时间控制定时。在本程序中用了一个延时子程序来完成这个功能的。在LED显示器上显示的数字是从09共十个字符,将其相应的转换代码存入一个缓冲区中,用查表转换的方式来控制编程调用。2 控制程序流程图开始读入8位开关量判断K8是否为1进入setlen进行修改初始值调用display1进行显示判断延时时间是否为1秒调用alter进行减1秒操作(修改数据缓冲区内容)YNYN倒计到00:00:00时结束图3-1程序流程图DI=DI+1开始设初值DI=50H读数据缓冲区首地址SI设置位选选中要显示的 位数从秒各位到时十位查段表转换AL+BX->AL送段选PB口地

22、址送位选PA口地址CX!=0DI!=0结束SI=SI+1YNYN图3-2显示子程序流程图3 控制程序.MODELTINYPCIBAR3EQU1CH;8位I/O空间基地址(它就是实验仪的基地址, 也为DMA & 32 BIT RAM板卡上的8237提供基地址) Vendor_IDEQU 10EBH;厂商ID号Device_IDEQU8376;设备ID号.STACK100.DATAIO_Bit8_BaseAddressDW?msg0DB'BIOS不支持访问PCI $'msg1DB'找不到Star PCI9052板卡 $'msg2DB'读8位I/O空间

23、基地址时出错$'COM_ADDDW00F3H ;控制口偏移量PA_ADDDW00F0H ;PA口偏移量PB_ADDDW00F1H ;PB口偏移量PC_ADDDW00F2H ;PC口偏移量len db 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh ;段码表time db 00h,00h,00h,00h,04h,02hlen0 db 00h,10h,20h,30h,40h,50h;00:秒个位,10:秒十位,20:分个位,30:分十位,len1 db 09h,05h,09h,05h,09h,09h.CODESTART:MOVAX,DATAMOVDS,AXN

24、OPCALLInitPCICALLModifyAddress ;根据PCI提供的基地址,将偏移地址转化为实地址;* MOV al,89h ;10001001b初始化工作方式控制字 MOV dx,COM_ADD ;工作方式寄存器端口地址 OUT dx,alloop3: MOV dx,PC_ADD ;PC口端口地址 IN al,dx ;读入八位开关量 AND al,80h ;判断最高位K8是否为1 CMP al,80h ;为1时设置数据缓冲区初值 JE setlen CALL display1 ;调用显示子程序,显示一秒 CALL alter ;调用数据缓冲区修改子程序 JMP loop3 set

25、len: MOV bx,offset time ;数据缓冲区送BX MOV dx,PC_ADD ;PC口端口地址 IN al,dx ;读八位开关量 MOV ah,al ;AH=AL 保存数据,下面的操作会改变al的值 AND ax,0f70h ;选取5 6 7进行输入选择判断,并保留ah中的低四位 MOV si,offset len0 ;ah=要设置的具体的值,al=对哪位进行设置loop0: MOV cl,byte ptr si CMP al,cl JNE loop00;不是要修改的位 MOV byte ptr bx,ah ;读入的开关量低四位存入缓冲 CALL display1 ;调用显示

26、子程序 JMP loop3loop00: INC si;指针指向下一个需要修改的位 INC bx;指针指向下一个需要修改的数值 JMP loop0 ;*display1 PROC ;显示子程序 PUSH si ;保护SI PUSH dx ;保护DX PUSH cx ;保护CX PUSH bx ;保护BX PUSH ax ;保护AX PUSH di ;保护DI MOV di,50h ;控制1s的计时loop1: MOV si,offset time ;数据缓冲区首地址送SI MOV cx,6 MOV ah,0feh ;设置位选 选中秒的个位loop2: MOV al,byte ptr si ;位

27、移量 MOV bx,offset len ;查表转换 XLAT ;查数据段表,al+bx->al MOV dx,PB_ADD ;PB口地址 OUT dx,al ;送段选码 MOV al,ah ;位选码AL MOV dx,PA_ADD ;PA口地址 OUT dx,al CALL delay ;调用延时子程序 MOV al,0ffh ;禁止显示 OUT dx,al ADD si,1 ; ROL ah,1 ;选中前一位进行操作 LOOP loop2 DEC di ;控制显示一秒 JNE loop1;总共循环50h次每次是一个delay时间 POP di POP ax POP bx POP cx

28、 POP dx POP si RETdisplay1 ENDP;*alter PROC ;数据缓冲区子程序 PUSH si PUSH ax PUSH bx PUSH dx MOV si,offset time ;数据缓冲区首值送BX MOV bx,offset len1;将每位要借位后下一次的初值读入bxloop7:MOV ax,si ;缓冲区中的秒值取入ax MOV dx,bx SUB al,1 CMP al,-1 JG loop6 MOV al,dl SUB ah,1 CMP ah,-1 JG loop6 MOV ah,dh MOV si,ax INC si INC si INC bx I

29、NC bx JMP loop7 loop6:MOV si,ax ;修改后的值再保存回缓冲区 POP dx POP bx POP ax POP si RETalter ENDP;*delay PROC ;延时子程序 PUSH cx MOV cx,0ffffhloop5: LOOP loop5 POP cx RET delay ENDP;*InitPCIPROCNEARMOVAH,00HMOVAL,03HINT10H;清屏MOVAH,0B1HMOVAL,01HINT1AHCMPAH,0JZInitPCI2LEADX,msg0InitPCI1:MOVAH,09HINT21HJMPExitInitPC

30、I2:MOVAH,0B1HMOVAL,02HMOVCX,Device_IDMOVDX,Vendor_IDMOVSI,0INT1AHJNCInitPCI3;是否存在Star PCI9052板卡LEADX,msg1JMPInitPCI1InitPCI3:MOVDI,PCIBAR3MOVAH,0B1HMOVAL,09HINT1AH;读取该卡PCI9052基地址JNCInitPCI4LEADX,msg2JMPInitPCI1InitPCI4:ANDCX,0FFFCHMOVIO_Bit8_BaseAddress,CXRETInitPCIENDPModifyAddressPROCNEARADDCOM_AD

31、D,CXADDPA_ADD,CXADDPB_ADD,CXADDPC_ADD,CXRETModifyAddressENDPExit:MOVAH,4CHINT21HENDSTART四、上机调试过程1 硬件调试硬件调试时,要检查实验箱的连线是否正确,这是最基本的,否则,后面的一切努力都是白费。同时也要认真仔细,不要把排线的高低位接反了(高位对高位,低位对低位)。还有要注意的就是在调试过程中不要带电插拔,这样很容易损坏实验设备。只要连线正确,硬件调试基本没有什么问题。2 软件调试 由于此次实验的设备原因,在正式编程之前要加入一段设备的初始化程序,检查设备,读取设备的一些信息,然后是自己设计代码完成实验

32、要求,在后来添加的新的任务中要求初始值可以通过逻辑开关随意设置,这就要对C口的PC0PC7另外编写一段程序进行相应的判断和控制。这些都不是很困难,关键是编写的程序既要完成些功能又要简短才行。若程序太长,虽然可以编译并且链接成功,但显得很烦琐,看起来也很费力。所以,修改的程序时尽量使用循环控制语句来完成的。因为有太多的判断,再根据判断转去执行不同的操作,这就需要使用标号,但同样的标号如果使用太多就又会给程序产生逻辑上的混乱,所以我使用查表法将要判断的值存入缓冲区中,要判断时就于与缓冲区中的值比较,这样就使得程序简单明了。有语法错误修改起来就比较容易了。3 联机调试硬件和软件调试成功之后,就是联机

33、调试了。联机调试就相当于是程序完善性的调试。在调试过程中,程序所有的功能都可以实现,但在动态显示倒计时间时不稳定,LED闪烁得很厉害,这是因为刷新的频率太慢的原因,只要将控制刷新频率的次数改大一点就可以了。4 调试结果及问题的提出所有调试结束以后,在上位机中编译链接完毕,可以在提示框中看到程序下传成功。然后通过逻辑开关预设一个初值,将逻辑开关的K8拨到0,则倒计时显示开始。通过四位数码显示管可以观察到时间动态显示。但是由于开始设计程序时考虑不周,存在在设置初值时不能提示出错问题,即可以设置如时间25:68:84。五、设计总结及问题讨论1 总结 首先预设初值,K8为主控开关,为1时则开始时间初始

34、值的设置。K7、K6、K5为时间的位选控制,000代表秒的个位,001代表秒的十位,010代表分的个位,011代表分的十位,100代表时的个位,101代表时的十位。K1、K2、K3、K4为每一位值的设置,代表着8421码值。例如,当要求时间从08时12分34秒开始倒计时时,则秒的个位应设置为:00100001、秒的十位应设置为:11000011、分的个位应设置为:01000101、分的十位应设置位:10000111,时的个位应设置为:01001001、时的十位应设置位:10001011。至此,时间的初始值就保存到time缓冲区中了。接着,将主控开关K8置为0运行,则通过四位数码显示管可以观察到

35、时间从08时12分34秒开始倒计时显示,直到最后显示为00时00分00秒。2.问题讨论 由于考虑不周,刚开始没有想到输入错误值的情况,而选用了8255。但是8279不仅具有按键处理功能,还有自动显示功能。如果用8279时,程序开始就判断是否有按键,当按键按下,8279状态字低三位为此时按键按下次数,由此判断是否从8279数据端口读入数据,当有按键按下时,从8279读数据到内存中,同时COUNT变量加一,当COUNT增加到7时,停止检查是否有按键按下。数据存入内存的六个字节单元中,每个单元对应一个数据,首先判断输入的时分秒是否在合理的范围内,如果不在,显示出错信息,并跳回到程序初始化部分,等待重新输入。如果输入正确,则开始倒计时,3.体会与建议为期两周的课程设计在紧张与忙碌中拉下了帷幕。我在这当中感受了许多,至今任然记忆犹新。那些天我们不断的商讨着每一个

温馨提示

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

评论

0/150

提交评论