单片机课程设计-篮球计时计分器_第1页
单片机课程设计-篮球计时计分器_第2页
单片机课程设计-篮球计时计分器_第3页
单片机课程设计-篮球计时计分器_第4页
单片机课程设计-篮球计时计分器_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

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

文档简介

单片机课程设计报告

篮球比赛计时计分器设计

2009年6月18日

摘要

本设计是采用AT89C52单片机为核心设计的一个用于赛场的篮球计时计分器。本设计

采用定时器TO中断计时,显示局部分为计时和计分显示两局部,均采用共阴极LED显示。

计时局部计时范围宽,而且可定时设定与小时、分钟调整;计分局部调整灵活,显示范

围宽,足以满足各种规模赛程需要。两个显示模块均采用动态扫描方式显示。

在本设计中P3口(P3.0一一P3.3)是计时计分显示共用的扫描口,P0口是计时数据

输出口,P2口是计分数据输出口,计时计分均设有显示缓汨区(40H一一43H计分显示缓

冲区,30H——33H计时显示缓冲区)。本设计共有K1——KE六个设置按键,K1是甲加分

建(按一次加一分),K2是乙加分键(按一次加一分),K3是定时切换键(定时设置与计

时调时切换),K4是分钟调整键(计时与定时分钟调整),K5是分数位置交换键(交换甲、

乙两队比分的位置)。按键与P1口相接,低电平输入有效报警局部由扬声器组成,当

计时时间到时.,输出低电平有效,由P1.3口输出脉冲信号驱动扬声器发出声音。计时定

时的原理与定时闹钟相同,为定时设置定时分钟计数单元,通过比拟定时与计时的分计

数单元判断比赛是否结束是否掴警,定时与计时共用一个显示缓冲去,通过K3(定时切

换键)进行显示切换,本设计可通过定时显示的秒位判断定时是否有效,如果秒位显示

00说明无效(上次用过的定时),显示11说明有效(本次定时)。定时时间到,扬声器报

警,比赛结束,按K3键可停止报警(否则一直报警)。

关键词:单片机篮球计时计分器数码管按键报警器

目录

1概述...............................................................1

1.1单片机简介...................................................1

1.2课程设计的意义...............................................2

1.3任务与要求...................................................2

2系统总体方案与硬件设计............................................2

2.1、系统总体方案设计............................................2

2.2、硬件系统设计................................................3

单片机的选择.................................................3

、时钟电路模块...............................................3

、复位电路模块...............................................3

、按键控制模块...............................................4

、数码管显示原理.............................................4

、定时报警模块...............................................5

3、软件设计..........................................................5

3.1、程序流程图..................................................5

3.2、程序分析....................................................5

4PROTEUS软件仿真..................................................5

4.1、简介.........................................................5

4.2、仿真过程....................................................6

5、调试分析..........................................................6

6、课程设计心得体会.................................................7

参考文献:...........................................................7

附1、源程序代码.....................................................8

附2、系统原理图.....................................................14

1概述

1.1单片机简介

单片机是指一个集成在一块辿1上的完整计算机抽。尽管他的大局部功能集

成在一块小芯片上,但是它具有一个完整计算机所需要的大局部部件:CPU,内存、

内部和外部总线系统,目前大局部还会具有外存。同时集成诸如通讯接口、定时器,

实时时钟等外围设备。而现在最强大的单片机系统甚至可以将声音、图像、网络、

复杂的输入输出系统集成在一块芯片上。

单片机也被称为微控制器(Microcontroller),是因为它最早被用在工业控

制领域。单片机由芯片内仅有CPU的专用处理器开展而来。最早的设计理念是通过

将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂

的而对体积要求严格的控制设备当中。INTEL的Z80是最早按照这种思想设计出的

处理器,从此以后,单片机和专用处理器的开展便分道扬镀。

早期的单片机都是8位或4位的.其中最成功的是INTEL的8031,因为简单可

靠而性能不错获得了很大的好评。此后在8031上开展出了MCS51系列单片机系统。

基于这一系统的单片机系统直到现在还在广泛使用。随着工业控制领域要求的提

高,开始出现了16位单片机,但因为性价比不理想并未得到很广泛的应用。90年

代后随着消费电子产品大开展,单片机技术得到了巨大的提高。随着INTELi960

系列特别是后来的ARM系列的广泛应用,32位单片机迅速取代16位单片机的高端

地位,并且进入主流市场。而传统的8位单片机的性能也得到了飞速提高,处理能

力比起80年代提高了数百倍。目前,高端的32位单片机主频已经超过300MHz,性

能直追90年代中期的专用处理器,而普通的型号出厂价格跌落至1美元,最高端

的型号也只有10美元。当代单片机系统已经不再只在裸机环境下开发和使用,大

量专用的嵌入式操作系统被广泛应用在全系列的单片机上。而在作为掌上电脑和

核心处理的高端单片机甚至可以直接使用专用的Windows和Linux操作系统。

1.2课程设计的意义

课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实

践能力的重要环节,是对学生实际工作能力的具体训练和考察过程.随着科学技术开展的

日新日异,单片机已经成为当今计算机应用中空前活泼的领域,在生活中可以说得是无

处不在。因此作为二十一世纪的大学来说掌握单片机的开发技术是十分重要的。

1.3任务与要求

设计一个单片机系统用于篮球比赛计时计分,满足以下功能要求:

(1)能记录整个赛程的比赛时间,并能修改比赛时间。

(2)能随时刷新甲、乙两队在整个比赛过程中的比分。

(3)中场交换比赛场地时,能交换甲、乙两队比分的位置。

(4)比赛结束时,能发出报警声。

2系统总体方案与硬件设计

2.1、系统总体方案设计

本设计是采用AT89c52单片机为核心设计的一个用于赛场的篮球计时计分器。本

设计采用定时器T0中断计时,显示局部分为计时和计分显示两局部,均采用共阴极LED

显示。单片机P3口(P3.0——P3.5)是计时计分显示共用的扫描口,P0口是计时数据输

出口,P2口是计分数据输出口。计时局部计时范围宽,而且可定时设定与小时、分钟调

整;计分局部调整灵活,显示范围宽,足以满足各种规模赛程需要。两个显示模块均采

用动态扫描方式显示。

2.2、硬件系统设计

单片机的选择

AT89c52单片机是美国A7MEL公司生产的低功耗,高性能CMOS8位单片机,片内含

4Kbyles的可系统编程的Flash只读程序存储器,器件采用ATMEL公司的高密度,非易

失性存储技术生产,兼容标准8051指令系统与引脚。具有如下特点:40个引脚,4kBytes

Flash片内程序存储器,128bytes的随机存取数据存储器(RAM),32个外部双向

输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计

数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器它集Flash

程序存储器,既可在线编程(1SP)也可用传统方法进行编程与通用8位微处理器于单片

芯片中,ATMEL公司的功能强大,低价单片机可为您提供许多高性价比的应用场合,可灵

活应用于各种控制领域。

由于AT89c52的上述优点,结合本设计的功能要求和降低本钱,故本设计采用单

片机AT89C52o

AT89C52管脚图

、时钟电路模块

MCS-51内部有一个用于构成振荡器的高增益反相放大器,此放大器的输入和

输出端分别是引脚XTAL1和XTAL2,在XTAL1和XTAL2上外接时钟源即可构成时钟

电路。有内部和外部两种时钟产生方式。

本设计采用的是外部方式,原理图如下图:

参数选择:C1、C2对频率有微调作用,当外接晶振时,C1和C2通常选择10一一30pF;

当外接陶瓷谐振器时,C1和C2的典型值约为40+/70pF,在设计印刷电路板时,

晶体或陶瓷谐振器和电容应尽可能安装在单片机芯片附近,以减少寄生电容,保证

振荡器稳定和可靠的工作。为提高稳定性,应采用NPO电容。本设计采用的震荡频

率是12MH

、复位电路模块

复位电路的根本功能是:系统上电时提供复位信号,直至系统电源稳定后,撤销复

位信号。为可靠起见,电源稳定后还要经一定的延时才撤销复位信号,以防电源开关或

电源插头分-合过程中引起的抖动而影响复位。MCS-51单片机通常采用上电自动复

位、按钮电平复位、外部脉冲复位、上电+按钮电平复位、程序运行监视熨位等方式C

上电复位设利用电容充电来实现的,即上电瞬间RST/¥pd端的电位与Vcc相同,随着充

电电流的减少,RST/Vpd的电位下降,最后被嵌位在0V。按钮电平复位是当按下按钮后,

电源Vcc通过电阻R施加在单片机复位端RST/Vpd上,实现单片机复位。本设计采用的

是上电+按钮电平复位电路,是上电自动复位与按钮电平复位电路的组合,当振荡频率选

11.0592MH时。电容C取10uF,R取10K,Rs取1K。电路如下列图:

、按键控制模块

本设计采用的是用查询方式的,也就是把按键接在P1□,用程序查询方式查

询那个按键按下,执行相应的操作。图如下:

、数码管显示原理

数码管实际上是由7个发光管组成8字形构成的,加上小数点就是8个。我们分别

把他命名为A,B,C,D,E,F,G,H«

图2.2数码管内部结构图

假设我们要显示一个数字2,那么A、B、G、E、D这5个段的发光管亮就可以了,C、

F、H不亮,同时由于接法为共阳接法,那么为低电平是亮,为高电平是灭。从高往低排

列,PL7-PLO写成二进制为01111110,把他转化为16进制则为A2H。我们可以根据

硬件的接线把数码管显示数字编制成一个表格,见下表,以后直接调用就行了。

数码管的接口有静态接口和动态接口两种。静态接口为固定显示方式,无闪烁,其

电路可采用一个并行口接一个数码管,数码管的公共端按共阳接VCC,本次课程设计由于

所需数码管较少,故可用些种方法接线。这种接法占用接口多,仅能接少量数码管。动

态接口采用各数码管循环轮流显示的方法,当循环显示的频率较高时,利用人眼的暂留

特性,看不出闪烁显示现象,这种显示需要一个接口完成字形码的输出,另一接口完成

各数码管的轮流点亮。

本设计采用的是数码管动态显示。

、定时报警模块

3、软件设计

3.1、程序流程图

篮球比赛中,得分可分为1分、2分、3分三种情况,但为了方便我们在这只设置加

1分,得2分、3分的情况可用按2次、3次加1分得到。还设置了定是报警键。根据这

样的设计要求,结合数码管的显示以与52单片机中计数器的工作实现方式、接口应用、

中断控制等可设计出程序流程图如卜.:

3.2、程序分析

本设计采用AT89S52单片机中的一个16位的定时/计数器To,分别由THo和TLo组成,

它们均是8位存放器,在特殊功能存放器中占地址8AH-8DH。它们用于存放定时或计数的

初始值。此外,内部还有一个8位的方式存放器TMOD和一个8位的控制存放器TCONc

用于选择和控制定时/计数器的工作。

篮球比赛计分器利用单片机的计数器进行工作,计数器对外部脉冲的下降沿进行加1

计数,直至计满回零。作为可编程器件,单片机中的定时/计数器初始化编程步骤如下:

根据定时时间要求或计数要求计算计数器初值;

将工作方式控制字写入TMOD存放器;

将计数初值写入THx和TLx存放器;

启动定时器/计数器,即将TRx置位。

如果工作于中断方式,需置位EA(中断总开关)与ET(允许定时/计数器中断),并

编写中断效劳程序。其设计中断子程序图如下:

4PROTEUS软件仿真

4.1、简介

Proteus软件是英国Labcenlerelectronics公司出版的EDA工具软件。它不仅具有其

它EDA工具软件的仿真功能,还能仿真单片机与外围器件,它是目前最好的仿真单片机

与外围器件的工具。

Protucs提供了丰富的资源:仿真元器件资源:仿真数字和模拟、交流和直流等数千

种元器件,有30多个元件库。仿真仪表资源:示波器、逻辑分析仪、虚拟终端、SPI

调试器、12c调试器、信号发生器、模式发生器、交直流电压表、交直流电流表。理论上

同一种仪器可以在一个电路中随意的调用。Proteus还提供了一个图形显示功能,可以将

线路上变化的信号,以图形的方式实时地显示出来,其作用与示波器相似,但功能更多。

这些虚拟仪器仪表具有理想的参数指标。另外Proteus还提供了比拟丰富的测试信号用于

电路的测试。这些测试信号包括模拟信号和数字信号。

在Prolues中进行电路仿真时,先绘制好原理图,再调入已编译好的FI标代码文件:

*.HEX,随后便可在PROTEUS的原理图中模拟的实物运行状态和过程,进行观察从而改

正自己的设计方案。操作简单,非常适合初学者进行单片机的仿真,进而了解其原理,

增强实践。

4.2、仿真过程

在计算机中翻开PROTEUS软件,建立新的工程,在元件库中选择相应的元件,放在

编辑窗口中,依次连线,组成为真原理图。

在用Protucs进行仿真之前,先要用WAVE软件将我们编写好的汇编程序编译。具

体方法是在WAVE中先新建一工程,之后输入编写的程序,输入完成后保存然后执行工程、

编译,在目标文件夹内生成编译好的程序文件,其中礼HEX文件就是我们所需要的,在之

后电路设计好后用于放入AT89S51中执行其功能。

检查连接好的电路,确保无误后,在电路连接好的PROTEUS窗口中双击AT89s51,在

弹出的对话框中选择单片机中要输入的程序。

用鼠标点击仿真键进行仿真,在仿真过程中点击按键,观察数码管的显示情况,看

是否符合设计的要求,假设与要求不符,检查电路是否连线正确,实在找不出错误所在,

可以请教老师或请同学帮助检查,直到正确为止。

计时工作仿真状态图:

甲乙两队计分工作仿真状态图:

计时计分工作状态图:

5、调试分析

在仿真成功之后,便可进夕亍实践了。实物和仿真还是有一定的差异的,制作实物时

要考虑的方面比仿直多的多.做实物时,不仅要考虑到电路正确同时也要注意版面的设

计,不仅设计功能要求实现,版面的美观也是必不可少的一方面,这就要注意尽量少的

接线。

在电路板刚刚焊好后,与以前制作的单片机板连接在一起,接好电路,烤入程序后

发现第一个数码管的C段一直处于亮的状态,经检查后确定不是硬件出现的问题,但在

仿真时能正确显示也证明程序也是正确的,找不到问题所在让我非常郁闷。想着原因可

能程序读入时出现错误,试着重新将程序烤入单片机中,显示结果果然变得正常,实践

成功。

6、课程设计心得体会

这次课程设计历时二个星期左右,通过这两个星期的学习,发现了自己的很多缺乏,

自己知识的很多漏洞,看到了自己的实践经验还是比拟缺乏,理论联系实际的能力还急需

提高。

回忆起此次单片机课程设计,我仍感慨颇多,确实,从选题到定稿,从理论到实践,

在接近两星期的日子里,可以说得是苦多于甜,但是可以学到很多很多的的东西,同时不

仅可以稳固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这

次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有

把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会效劳,从而提

高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重

重,这毕竟第一次做的,难免会遇到过各种各样的问题,问时在设计的过程中发现了自己

的决乏之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,比方说不懂一些元

器件的使用方法,对单片机汇编语言掌握得不好……通过这次课程设计之后,一定把以前

所学过的知识重新温故。

这次课程设计终于顺利完成了,在设计中遇到了很多编程问题,最后在XXX、XXX.XXX老

师的辛勤指导下,终于游逆而解。同时,在XXX、XXX、XXX老师那里我学得到很多实用的

知识,在次我表示感谢!同时,对给过我帮助的所有同学和各位指导老师再次表示忠心的

感谢!

参考文献:

[工余发山.单片机原理与应用技术.徐州:中国矿业大学出版社,2003.

[21佟云峰,等.单片机原理与其应用.重庆:重庆大学出版社,2004,1.

[3:吴金戌,等.8051单片机实践与应用.北京:清华大学出版社,20C1.8.

[4;刘瑞新.单片机原理与应用教程.北京:机械工业出版社,2005.

[5]聂毅.宏汇编语言程序设计教程.北京:电子工业出版社,1998.

⑹周航慈.单片机应用程序设计技术.北京:北京航空航天大学出版社,2002.

附1、源程序代码

scoreDisplayBufferequ40h;设置计分显示缓冲区的地址为40h-45h

ascoreequ47h;设置.中队的计分地址

bscoreequ49h;设置乙队的计分地址

akeybitpl.O;设置甲加分键(按一次加一分)

bkeybitpl.1;设置乙加分键(按一次加一分)

abkeybitpl.6;设置分数位置交换键(交换比分位置)

DisplayBufferequ30h;设置计、定时显示缓冲区地址30h-35h

OniiSecondCoiinterequ3911;设置1秒计数地址

Minuteequ3bh;设置分钟计数地址

Secondequ3ch;设置秒计数地址

ClockModcequ20h.0;设置模式(计时/定时)存放器地址

AkirmOnOffequ20h.l;设置报警开启/关闭标志

AkirmTimcOnequ20h.2;设置计时时间到标志

DispMinutcequ22h;设置分钟显示存放器的地址

DispSecondequ23h;设置秒显示存放器的地址

AlarmMinuteequ2fh;设置定时分钟计数地址

AlarniSetKeybitpl.2;定义设置定时设置切换键

MinuteKeybitpl.5;定义分设置键

RelayOutequpl.3;定义报警发声输出引脚

;@@@@@@@@@@@@@@L口断入口程序@@@@@@@@@

orgOOh

ajmpReset;程序开始

orgObh;T0中断地址

ajmpTimelnt;调到中断效劳程序

:@@@@@@@@@@@@@@程序开始@@@@@@@@@@@

org0020h

Reset:

movsp,#70h;工作状态'地址初始化

setbRelayOut

movOneSecondCounter,#125

movMinute,#00

movSecond,#(X)

movAlarmMinute,#00

movascore,#(X)

movbscore,#00

clrAlarmOnOff

clrClockMode

clrAlarmTimeOn

setbRelayOut

movtmod,#00000001b

movthO.#OEOh

movtlO,#OCOh

movie.#82h;开全局中断

sctbtrO;定时器TO开始工作

:@@@@@@@@@@@@@@@以下为主程序@@@@@@@@@@@@@@@@@

MainLoop:

jnbakey,bbbl;如甲加分键按下,执行bbbl后的语句,完成甲分数加一

jnbbkey,bbb2;如乙加分键按下,执行bbb2后的语句,完成乙分数加一

jnbabkey,bbb3;如显示交换键按下,执行bbb3后的语句,交换显示

ajmpXXX;如果没有分数设置键按下,跳到XXX语句

bbbl:jnbakey,bbb1;等待按键释放

mova,ascore

adda,#l;完成甲分数加一

movascore.a

callConvertoBuffer;调用转换到显示缓冲区子程序

ajmpXXX;跳到XXX语句

bbb2:jnbbkcy.bbb2;与bbbl的功能类似,完成乙分数加一

mova.bscorc

adda,#l

movbscore,a

callConvertoBuffer

ajmpXXX

bbb3:jnbabkey,bbb3;完成显示交换

mova,ascore

mov48h,a

mova.bscore

movascore.a

mova,48h

movbscore.a

callConvertoBuffer;调用转换到显示缓冲区子程序

XXX:

jbAlannSctKcy.ChcckMinutcKcy;定时设置键按下了吗?没有则检测分钟设置键

callDelay

jbAlarmSetKey.CheckMinuteKey;延时去抖动

setbClockMode

callAlarmSet

CheckMinuteKey:

JbMinuteKey,CheckAlarm;分设置键按下了吗?没有则转去检测小时设置键

niova,Minute

adda,#l

movMinute,a

cjnca.#3ch,No(Overl;到60分钟了吗?

movMinute,#。;到60分钟则将分钟清0

NotOverl:

jnbMinuteKey,$

CheckAlarm:

jnbAlarmTimeOn.ToReturn

callAlarmProcess

ToReturn:

ajmpMainLoop;跳回主程序

;@@@@@@@@@@@@@定时器TimerO中断效劳程序@@@@@@@@@@@

Timelnt:

movthO,#OEOh;重新加载定忖参数

movH0,#0C0h

pushacc

pushpsw

sctbrsO

clrrsl

djnzOneSecondCounter.NotoneSecond;即够1秒了吗?

movOneSecondCounter,#125;如够1秒则重新设置"On新econdCounter"计数器

callClock;调用将时钟内容加1秒的子程序

callConvertoBuffer;调用转换到显示缓冲区了•程序

NotoneSecond:

callScanDisplay;调用扫描显示子程序

poppsw

popacc

reti;中断返回

:@@@@@@@@@@@@扫描显示子程序@@@@@@@@@@@@@@@@@@

ScanDisplay:

MOVRl,#DisplayBuffer;指向计(定)时显示数据首址

MOVRO,#scorcDisplayBuffcr:指向分数显示数据首址

MOVR4,#lllllll0b;扫描控制字初值

PLAY:MOVA,R4;扫描字放入A

MOVp3,AAp3口输出

MOVA,@RI;取计时显示数据到A

MOVDPTR,#TAB;取段码表地址

MOVCA,@A+DPTR;查显示数据对应段码

MOVP0,A;段码放入POU

MOVA,@R0;取计分显示数据到A

MOVDPTR,#TAB;取段码表地址

MOVCA,@A+DPTR;查显示数据对应段码

MOVP2.A;段码放入P2口

LCALLDelay

INCRI;指向下一地址

INCRO

MOVA,R4;扫描控制字放入A

JNBACC.4,ENDOUT;扫到第六位时结束

RLA;A中数据循环左移

MOVR4,A;放回R4内

AJMPPLAY

ENDOUT:SETBp3.7

MOVPO.#OFFH

MOVP2.#0FFH

RET;子程序返回

TAB:DB3FH.06H.5BH.4FH.66H

DB6DH5DH.07H,7FH,6FH,77H.7CH,39H.5EH,79H.71H.40H.80H.00H

:@@@@@@@@@@@@@计时加I秒的子程序@@@@@@@@@@@@@@

Clock:

mova,Second;将原秒值送入a

suba,#l;加1秒

movSecond,a

cjnea,#(X)H,NotOverFlow;够6()秒了吗?

movSecond,#59;够了则将秒值清0

mova,Minute

suba,#l

movMinute.a;分钟加1

cjnea.#OOH.NotOverFlow;够60分了吗?

movMinute,#59;够了则将分值清0

NolOverFlow:

jnb?MannOnOff,No(Akirm

mova.Sccond

jnzNotAlarm;秒为零吗?

mova,Minutc

cjnea,AlarmMinute,NotAlarm;计时分钟值和定时设置分钟值相等吗?

setbAlarmTimeOn;到了闹时时间则将“闹时时间到"标志设为I

NotAlarm:

ret

;@@@@@@@计时定时值与计分转换到显示缓冲区子程序@@@@@@@@@@

ConvertoBuffer:

movrl,#DisplayBuffer;将计(定)时缓冲区地址赋给rl

movRO.#scoreDisplayBuffer;将计分缓冲区地址赋给rO

jnbakcy,Convert1

jnbbkcy.ConvertI

jbabkey,zzz1

ajmpConvert1

zzzl:

jbClockMode.DispAlarmSet;判断计时模式,以决定是显示计时时间还是定时时间

mova,Second;将计时数据转到显示存放器

movDispSecond,a

mova,Minute

movDispminute,a

ajmpConvert

DispAlarmSet:

jbAlarniOnOff.AlarniOn;将定时数据转到显示存放器

movDispSecond,#OOh;秒位显示00说明无效(上次用过的定时)

ajmpNext

AkirmOn:

movDispSccond,#11;显示11说明有效(本次定时)

Next:

mova,AlarniMinute

movDispminute,a

Convert:

mova,DispSecond;将计(定)时显示存放器中的内容赋值给a

movb,#10;令b=10

温馨提示

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

评论

0/150

提交评论