单片机教学课件-大学课程_第1页
单片机教学课件-大学课程_第2页
单片机教学课件-大学课程_第3页
单片机教学课件-大学课程_第4页
单片机教学课件-大学课程_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

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

文档简介

1、第四讲:接口与系统扩展(1)本讲重点: 片外RAM与片外ROM扩展(参考范例应用); 简单I/O扩展 (选用锁存器与驱动器); 扩展8255,8155 (初始化,电路及应用); LED显示接口(动态与静态,硬件译码与 软件译码,电路与编程应用). RAM,ROM存储器扩展单片机本身资源不足以满足应用需求的情况下,必须借助外部器件对系统进行扩展主要介绍: 并口、RAM、ROM、键盘、LED、DAC、ADC 等接口的扩展与应用,其中涉及到 6264、2764、74LS373、74LS244、74LS245、8255、8155、 DAC0832 、ADC0809 等芯片。第四、六章 接口芯片与系统扩

2、展以AT89C51/52应用为例进行介绍AT89C51/52 与 MCS-51系列的8031/8032在性能、引脚、指令等方面完全兼容,此 外,内部还集成了4K/8K 的Flash ROM。程序存储器 EPROM 的扩展:单片机内部没有ROM,或虽有ROM但容量太小时,必须扩展外部程序存储器方能工作。最常用的ROM器件是EPROM。 如: 2764(8K)/27128(16K) /27256(32K)/27040(512K)一、存储器的扩展(EPROM) P.110Vpp VccA12 PGMA7 NCA6 A8A5 A9A4 A11 A3 OEA2 A10A1 CEA0 D7D0 D6D1

3、D5D2 D4GND D32764Vpp VccA12 PGMA7 A13A6 A8A5 A9A4 A11 A3 OEA2 A10A1 CEA0 D7D0 D6D1 D5D2 D4GND D327128Vpp VccA12 A14A7 A13A6 A8A5 A9A4 A11 A3 OEA2 A10A1 CEA0 D7D0 D6D1 D5D2 D4GND D327256程序存储器 2764 的扩展:单片机EPROM 2764锁存器74LS373P0.0-P0.7ALEPSENP2.0-P2.48D8QOEA8-A12A0-A7D0-D7GEAOECE51单片机能提供16条地址线,可扩展64K字节

4、的ROM。可以用一片EPROM,也可以用多片EPROM (如书上P115116图所示)。数据存储器 RAM 的扩展:有时需要扩展外部数据存储器RAM方能工作(如数据采集系统数据量较大,需要专设 RAM或 Flash RAM)。最常用的 RAM器件是SRAM。如:6116(2K)/6264(8K)/62128(16K)/628128(128K) 一、存储器的扩展(RAM) P.117A7 VccA6 A8A5 A9A4 WE A3 OEA2 A10A1 CEA0 D7D0 D6D1 D5D2 D4GND D36116Vpp VccA12 WEA7 CE2A6 A8A5 A9A4 A11 A3 O

5、EA2 A10A1 CE1A0 D7D0 D6D1 D5D2 D4GND D36264Vpp VccA12 WEA7 A13A6 A8A5 A9A4 A11 A3 OEA2 A10A1 CEA0 D7D0 D6D1 D5D2 D4GND D362128数据存储器 6264 的扩展:89C51单片机SRAM6264锁存器74LS373P0.0-P0.7ALEP2.7P2.0-P2.48D8QOEA8-A12A0-A7D0-D7GEAOECE251单片机能提供16条地址线,可扩展64K字节的RAM。可以用一片芯片,也可以用多片RAM(参见书上P118119图所示)。RDWRWECE1+5V简单I/

6、O,8255,8155并口扩展在单片机的I/O口线不够用的情况下,可以借助外部器件对I/O口进行扩展。可资选用的器件很多,方案也有多种。简单I/O扩展:(锁存器扩展)二、并行接口的扩展(简单I/O) P.119CLR VCC 1Q 8Q 1D 8D 2D 7D 2Q 7Q 3Q 6Q 3D 6D 4D 5D 4Q 5Q GND CLKOE VCC 1Q 8Q 1D 8D 2D 7D 2Q 7Q 3Q 6Q 3D 6D 4D 5D 4Q 5Q GND GOE VCC 1Q 8Q 1D 8D 2D 7D 2Q 7Q 3Q 6Q 3D 6D 4D 5D 4Q 5Q GND CLK74LS27374L

7、S37374LS374通常输出需要锁存,输入需要缓冲。但并非一成不变简单I/O扩展:(缓冲/驱动器扩展)P.120单片机锁存器74LS273P0.0-P0.7P2.0P2.1RDWRD0 D7D0 D7D0 D7D0 D7缓冲器74LS24411CLKCE1CE2输出输入或门或门输入指令: MOV DPTR,#0200H MOVX A, DPTR输出指令: MOV DPTR,#0100H MOVX DPTR, A可编程并行I/O接口芯片8255扩展I/O:二、并行接口的扩展(8255) P.164PA3 PA4PA2 PA5PA1 PA6PA0 PA7RD WRGND D0A1 D1A0 D2

8、PC7 D3PC6 D4PC5 D5PC4 D6PC0 D78255PC2 PB7PC3 PB6PB0 PB5PB1 PB4PB2 PB3CS RESETPC1 VCC8255的基本特性与引脚: PA,PB,PC 三个8位I/O口;40 PIN PC口分高4位和低4位。高4位 可与PA口合为一组(A组),低4 位可与PB口合为一组(B组)。 3种工作方式。内部有4个寄存 器,由A1,A0与读,写信号选择。 片选低有效,复位高有效。 PC可按位置位/复位。 40条引脚,DIP封装。须注意 VCC与GND引脚的位置。 一个8位的数据口D0D7。8255的PA,PB,PC口的三种工作方式: P.16

9、5 三种方式中只有方式 0 用得最多且最容易使用。 基本输入/输出方式 就是简单输入/输出方式。 方式1 和方式2 使用复杂。因单片机能自动提供 各种应答信号,这两种方式已很难见到再有人用 于单片机系统。工作方式A口B口C口0基本输入/输出输出锁存, 输入三态基本输入/输出输出锁存, 输入三态基本输入/输出输出锁存, 输入三态1应答式输入/输出输入/输出均锁存应答式输入/输出输入/输出均锁存提供A口和B口的应答信号2应答式双向输入/输出输入/输出均锁存B口无此方式提供A口的应答信号PA,PB,PC口的三种工作方式示意图:P.167 RD WR D7D0 A1 A0地址总线控制总线数据总线ABC

10、PA0-7PB0-7PC4-7PC0-3A组B组8255的方式 0ABPA0-7PB0-7控制线控制线A组B组ABPA0-7PB0-7控制线I/OA组B组7 6 5 4 3 2 1 0PC口8255的方式 18255的方式 27 6 5 4 3 2 1 0PC口8255的端口选择表: P.166注意:对PA,PB,PC三个口的任何读/写操作,就是对 PA,PB,PC这三个寄存器进行I/O操作. 第4个寄存器是控制字寄存器(命令字寄存器)A1A0RDWRCS操 作 说 明0 0010CPU读取PA口数据从8255的I/O口读有效0 1CPU读取PB口数据1 0CPU读取PC口数据0 010CPU

11、向PA口输出数据向8255的I/O口写有效0 1CPU向PB口输出数据1 0CPU向PC口输出数据1 1100对控制寄存器写控制字初始化8255时必须做的工作X X XX1没有选中,8255不工作8255对系统总线呈高阻态1 1010非法状态控制寄存器只能写不能读X X110非法状态8255对系统总线呈高阻态 D7 D6 D5 D4 D3 D2 D1 D0 特征位=1A组方式选择0 0:方式 00 1:方式 11 X:方式 2A 口B 口CL 口CH 口B组方式选择=0,方式0=1,方式1=0,输出=1,输入=0,输出=1,输入=0,输出=1,输入=0,输出=1,输入8255控制寄存器 P.1

12、71172 接受控制命令,告诉8255以何种方式工作。其地址是:A1,A0 = 11。它可以接受两条命令,第一条命令叫“方式控制字”,方式控制字格式如下:A 组B 组注意:对同一控制寄存器可写两种命令,故必须在命令本身用“特征位”加以区别。第二条命令的特征位=0 D7 D6 D5 D4 D3 D2 D1 D0 特征位=0Dont care bits选中的位将要输出的状态= 0,清0= 1,置18255控制寄存器 可以接受的第2条命令是:可以对PC口按位进行“置1”和“清0”操作。具体命令格式如下:(地址同样是:A1,A0 = 11)例如:设8255的控制寄存器在系统中的地址是: 0003H,要

13、将PC5引脚置 1, 可用如下指令完成: MOV DPTR,#0003H MOV A, #0BH MOVX DPTR,AD3D2D1选中PCx引脚000PC0001PC1010PC2011PC3100PC4101PC5110PC6111PC7在P.174有这几句8255与单片机的连接: (参见P.173)AT89C51825574LS373P0.0-P0.7ALEP2.78DQ0Q1CSRESETA0A1D0-D7GEAOERESETRDWRWRRD+5VPAPCPBP2.7接片选/CS端,8255的(一组)寄存器地址可以是:PA口:7000H PB口:7001H PC口:7002H 命令口:

14、7003H8255与单片机的连接: (参见P.174)AT89C51825574LS373P0.0-P0.7ALE8DQ0Q1Q7CSRESETA0A1D0-D7GEAOERESETRDWRWRRD+5VPAQ7接片选/CS端,8255的(一组)寄存器地址可以是:PA口:0000H PB口:0001H PC口:0002H 命令口:0003H也可以是:007CH,007DH,007EH,007FHPC7PC0微型 打印机8255的编程应用例:初始化A口,B口,C口为基本I/O输出口MOV DPTR,#7003H ;指向控制字寄存器MOV A, #80H ; A,B,C口均为输出口MOVX DPT

15、R, A ;装入按照8255控制寄存器方式控制字格式写命令: D7 D6 D5 D4 D3 D2 D1 D0 特征位=1A组方式选择0 0:方式 00 1:方式 11 X:方式 2A 口B 口CL 口CH 口B组方式选择=0,方式0=1,方式1=0,输出=1,输入=0,输出=1,输入=0,输出=1,输入=0,输出=1,输入8255硬件实验五:8255 A.B.C口输出方波 ORG 0100HWAVE: MOV DPTR,#0FFDBH ;8255 控制字寄存器地址 MOV A, #80H ;初始化A,B,C口为基本输出口 MOVX DPTR, A MOV A, #55H ;8位高/低电平相间输

16、出REPT: MOV DPTR,#0FFD8H ;8255 A口地址 MOVX DPTR, A INC DPTR ;8255 B口地址(0FFD9H) MOVX DPTR, A INC DPTR ;8255 C口地址(0FFDAH) MOVX DPTR, A LCALL DELY1S ;延时 CPL A ;取反 SJMP RETP ;跳到REPT去循环8255硬件实验五:8255 A.B.C口输出方波PA0输出PA1输出PA2输出PA3输出PA4输出PA5输出PA6输出PA7输出PB0输出可编程RAM/ IO/ CTC接口芯片8155:二、并行接口的扩展(8155) P.175PC3 VCCP

17、C4 PC2TIMERIN PC1RESET PC0PC5 PB7IO/M PB5RD PB3WR PB2ALE PB1AD0 PB0AD1 PA7AD2 PA6AD3 PA58155AD5 PA3AD6 PA2AD7 PA1CE/CE PB4GND PA0TIMEROUT PB6AD4 PA440 PIN8155与8255 是Intel推出的两个广泛应用的并行口扩展芯片:8255扩展了三个8位的并行口8155扩展了两个8位并行口 + 一个6位的并行口 + 一个14位Timer + 片内256字节RAM8155有一个姊妹芯片 8156 片选端为高有效,其他完全相同可编程RAM/IO/CTC接口

18、芯片8155引脚:PC3 VCCPC4 PC2TIMERIN PC1RESET PC0PC5 PB7IO/M PB5RD PB3WR PB2ALE PB1AD0 PB0AD1 PA7AD2 PA6AD3 PA58155AD5 PA3AD6 PA2AD7 PA1CE/CE PB4GND PA0TIMEROUT PB6AD4 PA4 PA,PB两个8位和一个6位PC口。 AD0AD7,地址/数据复用线。 ALE,地址锁存使能,控制地 址/数据复用。 /CE是8155的片选端,低有效; 8156的片选端是CE,高有效。 IO/M,I/O口或RAM选择线。 /RD是读信号;/WR是写信号; RESET

19、是复位信号,高有效。 片内1个14位减法Timer,计数 脉冲由TIMERIN输入,分频后由 TIMEROUT 输出。 VCC,GND是电源端。40 PIN8155的 6个寄存器 8155有2种工作方式(基本I/O和选通I/O)。 内部有6个寄存器, 由AD2, AD1,AD0,ALE与RD,WR, IO/M信号线选择。RESET高有效; /CE低有效。AD7AD0选中的寄存器功 能X X X X X 0 0 0命令/状态字寄存器对它只能写命令从它只能读状态X X X X X 0 0 1A口寄存器(PA7PA0)对应A口的各个引脚X X X X X 0 1 0B口寄存器(PB7PB0)对应B口

20、的各个引脚X X X X X 0 1 1C口寄存器(PC7PC0)对应C口的各个引脚X X X X X 1 0 0定时器低8位寄存器单纯存放低8位初值X X X X X 1 0 1定时器高6位和输出方式寄存器高两位控制输出信号形式 TM2 TM1 IEB IEA PC2 PC1 PB PA A口中断B 口A 口C 口方式选择=1,允许=0,禁止=1,输出=0,输入=1,输出=0,输入8155命令/状态字寄存器 是两个地址相同的寄存器,命令字寄存器接受控制命令(只写)。地址:A2,A1,A0=000 命令字格式如下(P179):C口方式:ALT1C口为输入口(A、B为基本I/O)。 ALT2C口

21、为输出口(A、B为基本I/O)。 ALT3C口低3位为A口选通I/O提供应答信号; B口为基本I/O,C口高3位为输出口。 ALT4C口的低、高3位分别为A口、B口的选 通I/O提供应答信号。B口中断=1,允许=0,禁止0 0 = ALT1 0 1 = ALT2 1 0 = ALT3 1 1 = ALT4起/停与运行控制位:0 0 = 无操作=NOP 0 1 = 立即停计数; 若未计数=NOP1 0 = 减到 0 停止; 若未计数=NOP1 1 = 立即开始计数; 若正在计数则减 到 0后按新的方 式和初值计数。 X D6 D5 D4 D3 D2 D1 D0 A 口中断请求=1,满=0,空=1

22、,请求中断=0, 无请求注:读取状态字信息多用在以查询方式与通过8155 扩展的外部设备进行应答,或查询定时器的状态。 B 口中断允许=1,允许=0,禁止定时器中断状态B 口中断请求=1,请求中断=0, 无请求A 口缓冲器状态A 口缓冲器状态=1,满=0,空A 口中断允许=1,允许=0,禁止=1,已经计满=0, 读出或复位后8155命令/状态字寄存器 是两个地址相同的寄存器,状态字寄存器存放状态信息(只读)。地址:A2,A1,A0=000 状态字格式如下(P180): D7 D6 D5 D4 D3 D2 D1 D0 8155定时/计数器14位的减法计数器工作时先要对低8位寄存器和高6位寄存器写

23、入初始值。其地址分别为:A2,A1,A0 = 100 和 101 bD5 D4 D3 D2 D1 D0 TIMER低8位:TIMER高6位: M2 M1(地址:100b)(地址:101b) D7 D6 D5 D4 D3 D2 D1 D0 8155定时/计数器 输出信号的形式M2,M1 定义定时/计数器从TIMEROUT输出信号的形式: D5 D4 D3 D2 D1 D0 TIMER低8位TIMER高6位 M2 M1(100)(101)M2,M1=00 输出单个方波M2,M1=01 输出连续方波M2,M1=01 输出单个脉冲M2,M1=01 输出连续脉冲计数开始计数结束常常用作分频器(自动重装初

24、值)常常用作分频器(自动重装初值)负脉冲宽度约等于TIMERIN的Tin单方波宽度约等于初值的一半8155定时/计数器的使用(如何初始化)8155定时/计数器是减 2计数器,故: 最小初值为2。 分频应用时,初值若为偶数,则输出等占空比 方波;若为奇数,则正半周多一个脉冲周期。先对(04H)(05H)寄存器装入14位初值和输 出信号形式。14位初值的范围是23FFFH。启动定时/计数器。 即对命令/状态字寄存器(00H)的最高两位 TM2,TM1写入“11”。如果定时/计数器在运行中要改换新的时间 常数,务必先装入新的初值,然后再发送一 次启动命令,即写入:TM2,TM1=11。8155与单片

25、机的连接: P.182AT89C518155P0.0-P0.7ALEP2.1CERESETAD0-AD7EARESETRDWRWRRD+5VPAPBPC8位6位8位P2.2IO/MALETinTout 8155内部有一个锁存器,故不必再需要外加74LS373 由于用了P2.2接/CE;P2.1接IO/M,它的一组地址是: XXXX X01X XXXX X000 命令/状态字寄存器 XXXX X01X XXXX X001010 A,B,C口寄存器 XXXX X01X XXXX X100101 定时器低/高位寄存器 对8155的片内RAM寻址,必须P2.1为低,故RAM地址为: XXXX X00X

26、 0000 00001111 1111等256个单元。8155的编程应用 P.182例1:初始化A口,C口为输入口,B口为输出口(均为 基本I/O)定时器为24分频连续方波输出。MOV DPTR,#0204H ;指向Timer低8位寄存器MOV A, #24 ;初值即分频数,24=18HMOVX DPTR, A ;装入根据连线应该知道它的一组地址是:02000205H命令/状态字寄存器的M2,M1=01 输出连续方波常常用作分频器(自动重装初值)INC DPTR ;波形选择位与Timer高6位MOV A, #40H ;01000000=连续方波TH=0MOVX DPTR, A ;装入MOV D

27、PTR,#0200H ;指向命令/状态字寄存器8155的编程应用 P.182例1:初始化A口,C口为输入口,B口为输出口(均为 基本I/O)定时器为24分频连续方波输出。MOV DPTR,#0204H ;指向Timer低8位寄存器MOV A, #24 ;初值即分频数,24=18HMOVX DPTR, A ;装入 TM2 TM1 IEB IEA PC2 PC1 PB PA A口中断B 口A 口C 口方式选择=1,允许=0,禁止=1,输出=0,输入=1,输出=0,输入C口方式:ALT1C口为输入口(A、B为基本I/O)。 ALT2C口为输出口(A、B为基本I/O)。 ALT3C口低3位为A口选通I

28、/O提供应答信号; B口为基本I/O,C口高3位为输出口。 ALT4C口的低、高3位分别为A口、B口的选 通I/O提供应答信号。B口中断=1,允许=0,禁止0 0 = ALT1 0 1 = ALT2 1 0 = ALT3 1 1 = ALT4起/停与运行控制位:0 0 = 无操作=NOP 0 1 = 立即停计数; 若未计数=NOP1 0 = 减到 0 停止; 若未计数=NOP1 1 = 立即开始计数; 若正在计数则减 到 0后按新的方 式和初值计数。 1 1 0 0 0 0 1 0题目要求初始化A口,C口为输入口,B口为输出口(均为基本I/O)此例命令字寄存器地址是:0200H。MOV A,

29、#0C2H ;立即启动计数,A入B出C入MOVX,DPTR, A ;装入MOV DPTR,#0200H ;指向命令/状态字寄存器INC DPTR ;波形选择位与Timer高6位MOV A, #40H ;01000000=连续方波TH=0MOVX DPTR, A ;装入8155的编程应用 P.182例1:初始化A口,C口为输入口,B口为输出口(均为 基本I/O)定时器为24分频连续方波输出。MOV DPTR,#0204H ;指向Timer低8位寄存器MOV A, #24 ;初值即分频数,24=18HMOVX DPTR, A ;装入显示器接口扩展三、LED显示器的扩展(结构) P.186LED数码

30、管的结构:共阳与共阴 单片机系统扩展LED数码管时多用共阳LED:共阳数码管每个段笔画是用低电平(“0”)点亮的,要求驱动功率很小;而共阴数码管段笔画是用高电平(“0”)点亮的,要求驱动功率较大。 通常每个段笔画要串一个数百欧姆的降压电阻。公共阳极h g f e d c b aabcdgefh公共阴极h g f e d c b aabcdgefhh g f ah g f a高电平点亮低电平点亮接高电平接地LED数码管的译码:硬件译码与软件译码硬件译码特点:采用专用的译码/驱动器件,驱动功率较大;增加了硬件的开销;软件编程简单;字型固定(比如:只有七段,只可译数字,字型不好看)。共阴LEDabc

31、dgefhgfedcb aDCBAP1.3P1.2P1.1P1.0CD4511AT89C5174LS48/CD4511是“BCD码七段共阴译码/驱动”IC; 74LS47是“BCD码七段共阳译码/驱动”IC三、LED显示器的扩展(结构) P.186三、LED显示器的扩展(软件译码)LED数码管的译码:软件译码软件译码特点: 不用专用的译码/驱动器件,驱动功率较小;不增加硬件的开销;软件编程较复杂;字型灵活(比如:有八段,只可译多种字符,字型好看)。共阳LEDabcdgefhP1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7+5VAT89C51硬件译码特点: 采用专用译码/驱动器件

32、,驱动功率较大;增加了硬件的开销;软件编程简单;字型固定(比如:只有七段,只可译数字,字型不好看)。LED数码管的软件译码八段LED数码管段代码编码表(连线不同可有多种表):公共阳极h g f e d c b aabcdgefh公共阴极h g f e d c b aabcdgefhh g f ah g f a高电平点亮低电平点亮接高电平接地字形0123456789黑共阳0C00F90A40B09992820F880900FF共阴3F065B4F666D7D077F6F00三、LED显示器的扩展(显示方式) P.190LED数码管的显示方式:静态与动态动态显示特点: 有闪烁,用元器件少,占I/O

33、线少,必须扫描,花费CPU时间,编程复杂。(有多个LED时尤为突出)静态显示特点: 无闪烁,用元器件多,占I/O线多,无须扫描,节省CPU时间,编程简单。静态显示: 各数码管在显示过程中持续得到送显信号,与各数码管接口的I/O口线是专用的。动态显示: 各数码管在显示过程中轮流得到送显信号,与各数码管接口的I/O口线是共用的。ABCLKh g f e d c b aCLRABCLKCLRABCLKCLR+5VVCCTxDRxD 89C51单片机74LS16474LS16474LS164h g f e d c b ah g f e d c b a+5V共阳LED数码管LED数码管静态显示举例(学习

34、串行口已见过)有几个LED就要几个74LS164,但只要数据不变,送一次就保持住了,且不闪烁,编程十分简单。要求:根据上图编写通过串行口和74LS164驱动共 阳LED数码管查表显示的子程序。条件:系统有6个LED数码管,待显数据(00H09H)已放在35H30H单元中(分别对应十万位个位),DSPLY:MOV DPTR, #TABLE ;共阳LED数码管译码表首址 MOV R0,#30H ;待显数据缓冲区的个位地址REDO:MOV A, R0 ;通过R0实现寄存器间接寻址 MOVC A, A+DPTR ;查表 MOV SBUF, A ;经串行口发送到74LS164 JNB TI, $ ;查询送完一个字节的第8位? CLR TI ;为下一字节发送作准备 INC R0 ;R0指向下一个数据缓冲单元 CJNE R0,#36H,REDO ;判断是否发完6个数? RET ;发完6个数就返回TABLE:DB 0C0H,0F9H,0A4H,0B0H,99H ;共阳LED译码表 DB 92H, 82H, 0F8H, 80H,90HLED数码管动态显示举例 (图见P.189)P1.5 P1.4P1.3P1.2P1.2P1.0P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1 P0.07406 OC门 X

温馨提示

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

评论

0/150

提交评论