周国运单片机原理及应用(C语言版)7.ppt_第1页
周国运单片机原理及应用(C语言版)7.ppt_第2页
周国运单片机原理及应用(C语言版)7.ppt_第3页
周国运单片机原理及应用(C语言版)7.ppt_第4页
周国运单片机原理及应用(C语言版)7.ppt_第5页
已阅读5页,还剩84页未读 继续免费阅读

下载本文档

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

文档简介

单片机原理及应用 C语言版 第7章MCS 51单片机串行口 主编 周国运本章制作 鲁庆宾中国水利水电出版社 第7章MCS 51单片机串行口 目录7 1串行通信基本知识7 2串行口结构及控制7 3串行口工作方式7 4串行口应用举例7 5单片机与PC机通信的接口电路 本章要点本章主要讲述MCS 51单片机串行口的结构 工作原理以及应用 主要内容包括串行通信基本知识 MCS 51单片机串行口结构 串行口工作方式以及单片机与PC机通信的接口电路 7 1串行通信基本知识 主要内容7 1 1数据通信7 1 2异步通信和同步通信7 1 3波特率7 1 4通信方向7 1 5串行通信接口种类 7 1 1数据通信 计算机与外界的信息交换称为通信 基本的通信方式有并行通信和串行通信两种 1 并行通信单位信息 通常指一个字节 的各位数据同时传送的通信方法称为并行通信 2 串行通信单位信息的各位数据被分时一位一位依次顺序传送的通信方式称为串行通信 7 1 1数据通信 图7 1并行通信示意图 两种通信特点 并行通信连线多 速度快 适合近距离通信 串行通信连线少 速度慢 适合远距离通信 图7 1并行通信示意图 图7 2串行通信示意图 RXD TXD 89 C 52 GND TXD RXD GND 外 部 设 备 1 异步通信异步通信中 传送的数据可以是一个字符代码或一个字节数据 数据以帧的形式一帧一帧传送 7 1 2异步通信和同步通信 图7 3异步通信的一帧数据格式 2 同步通信在同步通信中 每一数据块发送开始时 先发送一个或两个同步字符 使发送与接收取得同步 然后再顺序发送数据 数据块的各个字符间取消起始位和停止位 所以通信速度得以提高 7 1 2异步通信和同步通信 图7 4同步通信数据帧格式 7 1 3波特率 在串行通信中 对数据传送速度有一定要求 波特率表示每秒传送的位数 单位为b s 记作波特 例如 数据传送速率为每秒钟10个字符 若每个字符的一帧为11位 则传送波持率为 11b 字符 10字符 s 110b s异步通信的传送速率一般在50 19200b s之间 7 1 4通信方向 单工方式 一对传输线只允许单方向传送数据 半双工方式 一对传输线允许向两个方向中的任一方向传送数据 但不能同时进行 全双工方式 用两对传输线连接在发送器和接收器上 发送和接收能同时进行 7 1 4通信方向 图7 5串行通信传输方式 7 1 5串行通信接口种类 根据串行通信格式及约定 如同步方式 通信速率 数据块格式等 不同 形成了许多串行通信接口标准 如常见的 UART 通用异步串行通信接口 USB 通用串行总线接口 I2C 集成电路间的串行总线 SPI 同步串行外设总线 485总线 CAN总线接口等 7 2串行口结构及控制 主要内容7 2 1MCS 51串行口结构7 2 2与串行口有关的特殊功能寄存器7 2 3波特率设计 7 2 1MCS 51串行口结构 图7 6串行口方式1 3内部结构示意简图 7 2 2与串行口有关的特殊功能寄存器 1 控制状态寄存器SCON功能 设置串行口的工作方式和标识串行口状态 字节地址 98H 可位寻址 复位值 00000000B 格式如下 SM0和SM1 SCON 7 SCON 6 串行口工作方式选择位 7 2 2与串行口有关的特殊功能寄存器 SM2 SCON 5 多机通信控制位 在方式2或3中使用 REN SCON 4 允许接收控制位 设置1 允许接收 清0 禁止接收 TB8 SCON 3 发送数据的第9位 RB8 SCON 2 接收数据的第9位 TI SCON 1 发送中断标志 RI SCON 0 接收中断标志 7 2 2与串行口有关的特殊功能寄存器 关于TI和RI 串行发送中断标志TI和接收中断RI是同一个中断源 CPU不知道是发送中断标志TI还是接收中断标志RI产生的中断请求 所以 在全双工通信时 必须由软件来判别 多机通信实现的原理 SM2设置为1 TB8发送1表明是地址 选择接收机 TB8发送0为数据 1 实现的条件 各个从机的SM2设置为1 当SM2 1时 RB8 1 则保留接收到的数据 RB8 0则丢弃 2 实现的方法 主机先发送从机地址 并且TB8为1 这时各个从机均可接收此地址 目标从机 则对自己的SM2清0 其它从机保留SM2 1 主机再发送数据 并且TB8为0这时目标从机正常接收数据 其它从机均丢弃 7 2 2与串行口有关的特殊功能寄存器 2 电源控制寄存器PCON电源控制寄存器PCON 地址为87H 中只有SMOD位与串行口工作有关 7 2 2与串行口有关的特殊功能寄存器 SMOD PCON 7 波特率倍增位 串行口工作于方式1 方式2和方式3时 SMOD 1 串行口波特率加倍 复位值 00000000B 不能进行位寻址 7 2 3波特率设计 方式0和方式2的波特率是固定的 方式1和方式3的波特率是由定时器T1的溢出率来决定的 在增强型单片机中 也可以使用T2作波特率发生器 1 方式0的波特率方式0为同步移位寄存器方式 固定为振荡频率的1 12 并不受PCON寄存器中SMOD位的影响 方式0的波特率 fosc 12 2 方式2的波特率方式2是波特率只有两种 fosc 64或fosc 32 11位的异步通信 可多机通信 时钟 接收与发送的时钟直接来自振荡频率fosc 是fosc 2 并且还与PCON中SMOD位有关 其波特率为 当SMOD 0时 波特率为fosc的1 64 若SMOD 1 则波特率为fosc的1 32 即方式2的波特率 2SMOD fosc 64 7 2 3波特率设计 3 方式1和方式3的波特率 1 T1作波特率发生器在最典型应用中 定时器T1选用模式2定时 此时n 8 设定时器的初值为X 于是 X 256 方式1 3的波特率 T1溢出速率 即波特率 2n 初值 7 2 3波特率设计 2 T2作波特率发生器设寄存器T2CON的位TCLK 1和 或 RCLK 1时 允许串行口从T2获得发送和 或 接收的波特率 串行口方式1 3的波特率 T2溢出率 16定时器2作波特率发生器时 计数在每个状态周期递增 这样 方式1 3的波特率 RCAP2H RCAP2L 65536 fosc fB 32控制字 模式字 T2CON 00110100B 34HT2MOD 00H 7 2 3波特率设计 主要内容7 3 1串行口方式07 3 2串行口方式17 3 3串行口方式2和方式3 7 3串行口工作方式 7 3 1串行口方式0 方式0为同步移位寄存器输入 输出方式 常用于扩展I O口 RXD为数据输入或输出 TXD输出移位时钟 作为外接部件的同步信号 方式0不适用于两个89C52之间的数据通信 主要用于外接移位寄存器来实现单片机的接口扩展 在这种方式下 收 发的数据为8位 低位在前高位在后 无起始位 奇偶校验位及停止位 波特率是固定的 为fosc 12 即机器周期频率 启动发送 写SBUF启动接收 允许接收位REN置1 7 3 1串行口方式0 发送电路 接收电路 7 SH LD 7 3 1串行口方式0 并出 并入 串出 串入 并出 7 3 2串行口方式1 方式1真正用于串行发送或接收 TXD与RXD分别用于发送 接收数据 帧格式 1位起始位 8位数据位 低位在前 1位停止位 共10位 在接收时 停止位进入SCON的RB8此方式的波特率可调 由T1控制 SCON 01010000b 0 x50方式1发送只要写SBUF就启动发送 7 3 2串行口方式1 方式1接收1 接收条件 SCON中的REN置12 接收过程 REN置1后 串行口对接收引脚RXD检测 当RXD由高变低时开始移位接收 接收完后将停止位装入RB8中 3 接收的数据有效的条件 a RI 0 b SM2 0 或者SM2 1并且RB8 1满足以上2条 则将8位数据装入SBUF 且RI置1 有以下情况之一则数据无效 a RI 1 b SM2 1并且RB8 0注意 除了方式2 3的多机通信之外 SM2应清0 7 3 3串行口方式2和方式3 串行口工作在方式2和方式3均为每帧11位异步通信格式 由TXD和RXD发送与接收 方式2和3的操作是完全一样的 不同的只是特波率 每帧11位 即1位起始位 8位数据位 低位在前 1位可编程的第9数据位和1位停止位 发送时 第9数据位 TB8 可以设置为1或0 在校验时可将奇偶位装入TB8 接收时 第9数据位进入SCON的RB8 SCON 10010000b 0 x90方式2接收SCON 11010000b 0 xD0方式3接收 7 4串行口应用举例 主要内容7 4 1同步方式应用7 4 2异步方式应用 7 4 1同步方式应用 MSC 51单片机的串行口在方式0时 以同步方式操作 外接串入 并出或并入 串出器件 可实现I O口的扩展 例7 2用89C52串行口外接164串入 并出移位寄存器扩展8位并行输出口 外接165并入 串出移位寄存器扩展8位并行输入口 8位并行输出口的每位都接一个发光二极管 要求从8位并行输入口读入开关的状态值 使闭合开关对应的发光二极管点亮 如下页图所示 7 4 1同步方式应用 图7 13方式0扩展输入输出电路 解 数据的输入输出通过RXD接收和发送 移位时钟通过TXD送出 74HC164用于串 并转换 74HC165用于并 串转换 C语言程序清单 includesbitP1 0 P1 0 unsignedcharcc voidmain P1 0 0 P1 0 1 165装载数据SCON 0 x10 串口方式0 启动 165发送 164和单片机接收ES 1 允许串行口中断EA 1 7 4 1同步方式应用 while 1 等待中断 voids srv interrupt4 中断服务程序 if TI 发送中断TI 0 else 接收中断 cc SBUF 读取接收的数据P1 0 0 165装载数据P1 0 1 准备移位SCON 0X10 启动165发送 164与单片机接收 7 4 1同步方式应用 汇编语言程序清单 ORG0000HSJMPMAINORG0023HSJMPS SRV 串行口中断服务程序MAIN MOVSP 0DFH 串行口方式0初始化CLRP1 0 装载165数据SETBP1 0MOVSCON 10H 串行口方式0 启动接收SETBESSETBEASJMP 等待中断 7 4 1同步方式应用 S SRV JBCTI EXITMOVA SBUFCLRP1 0 装载165SETBP1 0 允许165时钟MOVSCON 10H 启动接收EXIT RETI 7 4 1同步方式应用 7 4 1同步方式应用 MSC 51单片机的串行口在方式0时 以同步方式操作 外接串入 并出或并入 串出器件 可实现I O口的扩展 例7 2用89C52串行口外接164串入 并出移位寄存器扩展8位并行输出口 外接165并入 串出移位寄存器扩展8位并行输入口 8位并行输出口的每位都接一个发光二极管 要求从8位并行输入口读入开关的状态值 使闭合开关对应的发光二极管点亮 如下页图所示 74LS32 7 4 1同步方式应用 89C52 RXD TXD P1 1 A B 74HC164 CLK CLR 74HC165 CLK P1 0 P1 2 时钟禁止 高禁止时钟作用 正确电路 5v 7 4 1同步方式应用 分析 1 对74HC164 P1 0 0 TXD时钟起作用 数据移入164 2 对74HC165 P1 1 0 TXD时钟起作用P1 2 0 74HC165装载 P1 2 1 74HC165移位输出 3 单片机收发作用启动接收 1 使74HC165移位输出2 若P1 0 0 使164同时移位输入启动发送 使74HC164移位输入 4 发光二极管 对应165键按下的亮 C语言程序清单 includesbitP1 0 P1 0 sbitP1 1 P1 1 sbitP1 2 P1 2 unsignedcharcc voidmain P1 0 1 P1 1 0 禁止164 允许165工作P1 2 0 P1 2 1 165并行装载SCON 0 x10 串口方式0 启动接收 ES 1 165发 单片机接收EA 1 允许串行口中断while 1 等待中断 7 4 1同步方式应用 voids srv interrupt4 中断服务程序 if RI RI 0 cc SBUF 读取接收的数据P1 0 0 允许164时钟P1 1 1 禁止165时钟SBUF cc 串口发送 164接收 else 接收中断 TI 0 发送中断P1 0 1 禁止164时钟P1 1 0 允许165时钟P1 2 0 165并行装载P1 2 1 REN 1 启动接收 165发送 7 4 1同步方式应用 汇编语言程序清单 ORG0000HSJMPMAINORG0023HSJMPS SRV 串行口中断服务程序MAIN MOVSP 0DFH 设置堆栈指针SETBP1 0 禁止164CLRP1 1 运行165CLRP1 2 并行装载165SETBP1 2MOVSCON 10H 串口方式0 允许接收SETBES 串口开中断SETBEASJMP 等待中断 7 4 1同步方式应用 S SRV JNBRI SENDCLRRIMOVA SBUFCLRP1 0 允许164SETBP1 1 禁止165MOVSBUF A 发送给164RETISEND CLRTISETBP1 0 禁止164CLRP1 1 允许165CLRP1 2 并行装载165SETBP1 2SETBREN 启动 165发RETI 单片机接收 7 4 1同步方式应用 7 4 2异步方式应用 串行口方式1与方式3很近似 波特率设置一样 不同之处在于方式3比方式1多了一个数据附加位 即特征位 也叫程控位 方式2与方式3基本一样 只是波特率不同 接收 发送11位信息 开始为1位低电平的起始位 中间8位数据位 之后为1位程控位 由发送的TB8决定 最后是1高电平的停止位 例7 3将片内RAM50H 5FH中的数据串行发送 用第9个数据位作奇偶校验位 设晶振为11 0592MHz 波特率为2400b s 编写串行口以方式3的发送程序 解 用TB8作奇偶校验位 在数据写入发送缓冲器之前 先将数据的奇偶位P写入TB8 这时 第9位数据作奇偶校验用 发送采用中断方式 用T1做波特率发生器 T1模式2定时初值X 256 244 7 4 2异步方式应用 C语言程序清单 includeunsignedchari 0 array 16 at 0 x50 数据区voidmain SCON 0 xc0 置串口方式3 只发TMOD 0 x20 定时器初始化TL1 0 xf4 TH1 0 xf4 TR1 1 ES 1 EA 1 中断初始化ACC array i 发送第一个数据送TB8 P 累加器 目的取P位SBUF ACC 发送一个数据while 1 等待中断 7 4 2异步方式应用 voidserial int interrupt4 串口中断服务程序 if RI return TI 0 清发送中断标志ACC array i 取下一个数据TB8 P SBUF ACC if i 14 发送完毕 ES 0 禁止串口中断 7 4 2异步方式应用 汇编语言程序清单 ORG0000HSJMPMAIN 上电 转主程序ORG0023HSJMPSERVER 转中断服务程序MAIN MOVSP 0DFH 设置堆栈指针MOVSCON 0C0H 设置串口方式3发送MOVTMOD 20H T1以模式2定时MOVTL1 0F4HMOVTH1 0F4HSETBTR1SETBES 允许串行口中断SETBEA CPU开中断MOVR0 50HMOVR7 15 7 4 2异步方式应用 MOVA R0MOVC PMOVTB8 C 送奇偶标志位到TB8MOVSBUF A 发送第一个数据SJMP SERVER JBCRI ENDT 清除发送中断标志CLRTIINCR0 修改数据地址MOVA R0MOVC PMOVTB8 CMOVSBUF A 发送下一个数据DJNZR7 ENDT 判断数据块是否发送完CLRES 否则 禁止串行口中断ENDT RETI 中断返回 7 4 2异步方式应用 例7 4编写一单片机程序 将从串行口接收的16字节数据送入片内RAM的50H 5FH单元中 要求波特率为2400b s 作奇偶校验 设单片机的晶振频率为11 0592MHz 解 RB8作奇偶校验位 接收时 将接收到的数据的奇偶校验位与RB8对比 以判断正确与否 将串行口设置为方式3工作 采用查询方式接收 7 4 2异步方式应用 C语言程序清单 includeunsignedchari unsignedchararray 16 at 0 x50 接收缓冲区voidmain SCON 0 xd0 设置串口方式3 允许接收TMOD 0 x20 T1模式2定时TH1 0 xf4 TL1 0 xf4 TR1 1 7 4 2异步方式应用 for i 0 i 16 i 循环接收16个数据 while RI 等待一次接收完成RI 0 ACC SBUF if RB8 P 校验正确array i ACC else 校验不正确 F0 1 break while 1 7 4 2异步方式应用 汇编语言程序清单 MAIN MOVSCON 0D0H 串口方式3 允许接收MOVTMOD 20H T1以方式2定时MOVTL1 0F4HMOVTH1 0F4HSETBTR1MOVR0 50H 首地址送R0MOVR7 10H 数据长度送R7WAIT JNBRI 等待接收完成CLRRI 清中断接收标志RIMOVA SBUF 从串口读数送累加器 7 4 2异步方式应用 JNBP PNP P 0 转PNPJNBRB8 ERROR P 1 RB8 0 转出错SJMPRIGHTPNP JBRB8 ERROR P 0 RB8 1 转出错RIGHT MOV R0 A 存数INCR0 修改地址指针DJNZR7 WAIT 未接收完 继续CLRF0 置正确接收标志F0 0SJMP ERROR SETBF0 置错误接收标志F0 1SJMP 7 4 2异步方式应用 例7 5用第9个数据位作奇偶校验位 编写串行口方式3的全双工通信程序 设双机将各自键盘的按键键值发送给对方 接收正确后放入缓冲区 显示及做其它处理 设晶振为11 0592MHz 波特率为9600b s 解 因为是全双工方式 通信双方的程序一样 发送和接收都采用中断方式 7 4 2异步方式应用 C语言程序清单 includeunsignedcharbuffer k voidmain SCON 0 xd0 置串口方式3 允许接收TMOD 0 x20 T1以模式2定时TL1 0 xfd TH1 0 xfd TR1 1 ES 1 开串行口中断EA 1 开总中断 7 4 2异步方式应用 while 1 k key 读取按键按下键值if k 0 xff 无键按下返回0 xff ACC k 将键值送累加器 取P位TB8 P 送TB8SBUF ACC 发送 display 显示程序 7 4 2异步方式应用 voidserial server interrupt4 if TI 发送引起 清TITI 0 else 否则 接收引起 RI 0 ACC SBUF 读取接收数据if RB8 P 校验正确 buffer ACC 存入缓冲区 7 4 2异步方式应用 汇编语言程序清单 ORG0000HSJMPMAIN 跳转到主程序ORG23HLJMPS SERV 跳转到串口中断服务程序MAIN MOVSP 0DFH 设置堆栈指针MOVSCON 0D0H 串口初始化MOVTMOD 20H T1以模式2定时MOVTL1 0FDHMOVTH1 0FDH 定时器1赋初值 7 4 2异步方式应用 SETBTR1 启动定时器1SETBES 开中断SETBEALOOP LCALLKEY 读取按键 存于A中 有键按下返回键值 CJNEA 0FFH SEND 无键按下返回0FFH 有键按下转发送NEXT LCALLDISPLAY 调用显示SJMPLOOP 主程序循环 7 4 2异步方式应用 SEND MOVC PMOVTB8 CMOVSBUF A 带校验位发送LJMPNEXT 循环S SERV 中断服务程序JBCRI RECV 是接收中断转接收处理CLRTI 是发送中断 清TIRETI 7 4 2异步方式应用 RECV 接收处理程序MOVA SBUF 取接收值送AJBP ONE 校验位为1 转JBRB8 I END 校验错 转中断返回SJMPRIGHT 校验正确 正确处理ONE JNBRB8 I END 校验错 转中断返回RIGHT MOVBUFFER A 接收数据送缓冲区I END RETI 中断返回 7 4 2异步方式应用 7 5C51的输入 输出 主要内容7 5 1基本输入 输出函数7 5 2格式输出函数printf7 5 3格式输入函数scanf 7 5C51的输入 输出 概述C51的输入和输出函数的形式虽然与ANSIC的一样 但实际意义和使用方法却大不一样 因此 有必要专门介绍一下C51的输入 输出函数 1 C51的I O函数主要包括字符输入 输出函数getchar和putchar 字符串输入 输出函数gets和puts 格式输入 输出函数printf和scanf等 在C51的I O函数库中定义的I O函数 都是以 getkey和putchar函数为基础 7 5C51的输入 输出 2 C51的输入 输出函数的功能C51的输入 输出函数 都是通过单片机的串行接口实现的 因此 其功能是实现串行口输入 输出 在使用这些I O函数之前 必须先对单片机的串行口 定时器 计数器T1进行初始化 假设单片机的晶振为11 0592MHz 波特率为9600bps 则初始化程序段为 SCON 0 x52 设置串口方式1收 发TMOD 0 x20 设置T1以模式2工作TL1 0 xfd 设置T1低8位初值TH1 0 xfd 设置T1自动重装初值TR1 1 开T1 7 5 1基本输入 输出函数 1 基本字符输入函数 getkey getkey函数的原型为 char getkey void 函数功能 从单片机串行口读入一个字符 如果没有字符输入则等待 返回值为读入的字符 不显示 可重入函数 字符输入函数getchar 功能 与 getkey基本相同唯一的区别 还要从串行口返回字符 7 5 1基本输入 输出函数 2 基本输出函数putcharputchar函数是基本的字符输出函数 其原型为 charputchar char 函数功能 是从单片机的串行口输出一个字符 返回值为输出的字符 putchar为可重入函数 如 putchar a 从串行口输出 a 7 5 2格式输出函数printf 函数功能 通过单片机的串行口输出若干任意类型的数据 格式如下 printf 格式控制 输出参数表 格式控制是用双引号括起来的字符串 也称为转换控制字符串 它包括三种信息 格式说明符如 d c s等普通字符如i 等转义字符如 n t等 7 5 2格式输出函数printf 1 格式说明符 由百分号 和格式字符组成 其作用是指明输出数据的格式 如 d c s等 详细情况见表4 3 2 普通字符 这些字符按原样输出 主要用来输出一些提示信息 如x 3 转义字符 由 和字母或字符组成 它的作用是输出特定的控制符 如转义字符 n的含义是输出换行 详细情况见表4 4 7 5 2格式输出函数printf 7 5 2格式输出函数printf 用printf函数输出例子 假设y已定义过 也赋值过 printf x d 36 从串行口输出x 36printf y d y 从串行口输出y y的值printf c1 c c2 c A B 从串行口输出c1 A c2 Bprintf s n OK Senddatabegin 从串行口输出OK Senddatabegin 和 n 7 5 3格式输入函数scanf scanf函数的功能 通过单片机串行口实现各种数据输入 函数格式如下 scanf 格式控制 地址列表 格式控制格式控制与printf函数的类似 也是用双引号括起来的一些字符 包括三种信息 格式说明符 普通字符和空白字符 1 格式说明符 由百分号 和格式字符组成 其作用是指明输入数据的格式 见表4 5 7 5 3格式输入函数scanf 2 普通字符 在输入时 要求这些字符按原样输入 3 空白字符 包括空格 制表符和换行符等 这些字符在输入时被忽略 地址列表 是由若干个地址组成 它可以是指针变量 变量地址 取地址运算符 加变量 数组地址 数组名 或字符串地址 字符串名 等 7 5 3格式输入函数scanf 用scanf函数输入例子 假设x y z c1 c2是定义过的变量 str1是定义过的指针 scanf d x scanf d d y z scanf c c c1 c2 scanf s str1 在实际的串行通信中 传输的数据多数是字符型和字符串 以字符串居多 往往把数字型数据转换成字符串传输 7 5 3格式输入函数scanf 例4 3有一单片机时钟系统 为了演示输出函数putchar和输入函数getkey的应用 编写程序 用串行口方式1自发自收 每一秒钟从串行口发送一次时间数据的时 分 秒 从串行口接收到数据后 送给6位数码管显示 设晶振频率为11 0592MHz 波特率为9600bps 不用编写时钟计时函数和数码管显示函数display 7 5 3格式输入函数scanf include 包含头文件 include 包含I O函数库unsignedchardatat1 3 存放原始的时分秒unsignedchardatadis buf 6 数码管显示voidmain void unsignedchardatat2 3 放接收的时间unsignedchardatasec0 61 秒备份unsignedchardatai SCON 0 x52 串行口初始化TMOD 0 x20 设置定时器工作模式TH1 0 xfd 设置T1重装的初值TR1 1 开T1运行 7 5 3格式输入函数scanf wh

温馨提示

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

评论

0/150

提交评论