單片機(jī)系統(tǒng)擴(kuò)展與接口技術(shù)課件1_第1頁
單片機(jī)系統(tǒng)擴(kuò)展與接口技術(shù)課件1_第2頁
單片機(jī)系統(tǒng)擴(kuò)展與接口技術(shù)課件1_第3頁
單片機(jī)系統(tǒng)擴(kuò)展與接口技術(shù)課件1_第4頁
單片機(jī)系統(tǒng)擴(kuò)展與接口技術(shù)課件1_第5頁
已閱讀5頁,還剩79頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

單片機(jī)系統(tǒng)擴(kuò)展與接口技術(shù)

系統(tǒng)擴(kuò)展的含義

單片機(jī)中雖然已經(jīng)集成了CPU、I/O口、定時器、中斷系統(tǒng)、存儲器等計算機(jī)的基本部件(即系統(tǒng)資源),但是對一些較復(fù)雜應(yīng)用系統(tǒng)來說,有時感到以上資源中的一種或幾種不夠用,這就需要在單片機(jī)芯片外加相應(yīng)的芯片、電路,使得有關(guān)功能得以擴(kuò)充,我們稱為系統(tǒng)擴(kuò)展(即系統(tǒng)資源的擴(kuò)充)。

接口的含義:

接口是連接單片機(jī)與外圍電路、芯片、設(shè)備(如I/O設(shè)備、A/D、D/A設(shè)備)的中間環(huán)節(jié)。接口牽涉到包括外圍電路、設(shè)備、芯片的結(jié)構(gòu)、使用方法、時序要求;單片機(jī)本身的硬件、軟件資源等很多問題。接口技術(shù)要解決系統(tǒng)擴(kuò)展時單片機(jī)與相應(yīng)芯片的接口(如地址總線、數(shù)據(jù)總線、控制總線的連接)與編程問題。系統(tǒng)擴(kuò)展和接口技術(shù)一般有以下幾方面內(nèi)容:1.外部總線的擴(kuò)展2.外部存儲器的擴(kuò)展3.輸入、輸出接口的擴(kuò)展4.管理功能部件(如定時/計數(shù)器、鍵盤/顯示器等)的擴(kuò)展5.A/D和D/A的接口技術(shù)7.1外部總線的擴(kuò)展一、外部總線的擴(kuò)展圖7.1MCS-51外部三總線示意圖圖7.2地址鎖存器的引腳和接口二、總線驅(qū)動

在單片機(jī)應(yīng)用系統(tǒng)中,擴(kuò)展的三總線上掛接很多負(fù)載,如存儲器、并行接口、A/D接口、顯示接口等,但總線接口的負(fù)載能力有限,因此常常需要通過連接總線驅(qū)動器進(jìn)行總線驅(qū)動。總線驅(qū)動器對于單片機(jī)的I/O口只相當(dāng)于增加了一個TTL負(fù)載,因此驅(qū)動器除了對后級電路驅(qū)動外,還能對負(fù)載的波動變化起隔離作用。

在對TTL負(fù)載驅(qū)動時,只需考慮驅(qū)動電流的大小;在對MOS負(fù)載驅(qū)動時,MOS負(fù)載的輸入電流很小,更多地要考慮電平的兼容和分布電容的電流。一般TTL電平和CMOS電平是不兼容的,CMOS電路能驅(qū)動TTL電路,而TTL電路一般不能驅(qū)動CMOS電路,在TTL電路和CMOS電路混用的系統(tǒng)中,應(yīng)特別注意。1.常用的總線驅(qū)動器

系統(tǒng)總線中地址總線和控制總線是單向的,因此驅(qū)動器可以選用單向的,如74LS244。74LS244還帶有三態(tài)控制,能實現(xiàn)總線緩沖和隔離。.

系統(tǒng)中的數(shù)據(jù)總線是雙向的,其驅(qū)動器也要選用雙向的,如74LS245。74LS245也是三態(tài)的,有一個方向控制端DIR,DIR=1時輸出(An→Bn),DIR=0時輸入(An←Bn)。圖7.3總線驅(qū)動器芯片管腳(a)單向驅(qū)動器;(b)雙向驅(qū)動器1G,2G為H時,Y為高阻;1G,2G為L時,Y=AG為H時,Y為高阻;G=L,DIR=0;B→AG=L,DIR=1;A→B2.總線驅(qū)動器的接口圖7.48051與總線驅(qū)動器的接口

(a)

P2口的驅(qū)動;(b)P0口的驅(qū)動7.2外部存儲器的擴(kuò)展

MCS-51系列單片機(jī)數(shù)據(jù)存儲器和程序存儲器的地址空間是相互獨立的。

MCS-51系列單片機(jī)具有64K的程序存儲器尋址空間和64K的片外數(shù)據(jù)存儲器尋址空間。如果系統(tǒng)需要用到的存儲器超過了單片機(jī)本身具有的容量,就要進(jìn)行片外程序存儲器或者數(shù)據(jù)存儲器的擴(kuò)展。程序存儲器的擴(kuò)展要解決的幾個問題:

.程序存儲器的作用——

存放程序代碼或常數(shù)表格

.擴(kuò)展時所用芯片——

一般用只讀型存儲器芯片(可以是

EPROM、E2PROM、FLASH芯片等)。

.擴(kuò)展電路連接

——

用EPROM2716、2732等擴(kuò)展程序存儲器。

.存儲器地址分析——單片機(jī)輸出什么地址值時,可以指向存儲器中的某一單元。7.2.1外部程序存儲器的擴(kuò)展圖7.5MCS-51單片機(jī)程序存儲器的擴(kuò)展原理1.外部程序存儲器的擴(kuò)展原理與時序分析圖2.8讀外部程序ROM時序2.EPROM擴(kuò)展芯片圖7.62716的引腳圖2716容量:2K*8位2716有五種工作方式,見表7.1。表7.12716工作方式選擇圖7.72716與8031的連接圖

由圖7.7可確定2716芯片的地址范圍。方法是A10~A0從全0開始,然后從最低位開始依次加1,最后變?yōu)槿?,相當(dāng)于211=2048個單元地址依次選通,稱為字選。即地址與單元是多對一的關(guān)系3.E2PROM2864A的擴(kuò)展圖7.82864A管腳及原理框圖(a)管腳;(b)原理框圖表7.22864A工作方式圖7.92864A與8031的接口電路7.2.2外部數(shù)據(jù)存儲器的擴(kuò)展1.外部數(shù)據(jù)存儲器的擴(kuò)展方法及時序圖7.10MCS-51數(shù)據(jù)存儲器的擴(kuò)展示意圖圖2-9讀外部數(shù)據(jù)RAM時序2.靜態(tài)RAM芯片

圖7.116264管腳圖I/O0~7:數(shù)據(jù)線A0~A12:地址線CE、CE:片選線OE:輸出使能WE:寫入使能VCC、GND:電源NC:未使用表7.36264的工作方式圖7.12擴(kuò)展6264靜態(tài)RAM6264的8KB地址范圍不唯一(因為A14A13可為任意值),6000H~7FFFH是一種地址范圍。當(dāng)向該片6000H單元寫一個數(shù)據(jù)DATA時,可用如下指令:

MOVA,#DATA

MOVDPTA,#6000H

MOVX@DPTR,A

從7FFFH單元讀一個數(shù)據(jù)時,可用如下指令:

MOVDPTR,#7FFFH

MOVX

A,@DPTR7.2.3多片存儲器芯片的擴(kuò)展1.線選法尋址線選法使用P2、P0口的低位地址線對每個芯片內(nèi)的統(tǒng)一存儲單元進(jìn)行尋址,稱為字選。所需地址線數(shù)由每片的存儲單元數(shù)決定,對于8K×8容量的芯片需要13根地址線A12~A0。然后將余下的高位地址線分別接到個存儲芯片的片選端CS,稱為線選。圖7.13用線選法實現(xiàn)片選

下圖是利用線選法,用3片2746A擴(kuò)展24K×8位EPROM的電路圖:各芯片的地址范圍如下:2.譯碼法尋址譯碼法尋址就是利用地址譯碼器對系統(tǒng)的片外高位地址進(jìn)行譯碼,以其譯碼輸出作為存儲器芯片的片選信號,將地址劃分為連續(xù)的地址空間塊,避免了地址的間斷。譯碼法仍用低位地址線對每片內(nèi)的存儲單元進(jìn)行尋址,而高位地址線經(jīng)過譯碼器譯碼后輸出作為各芯片的片選信號。常用的地址譯碼器是3/8譯碼器74LS138。

譯碼法又分為完全譯碼和部分譯碼兩種。

完全譯碼:譯碼器使用全部地址線,地址與存儲單元一一對應(yīng);部份譯碼:譯碼器使用部份地址線,地址與存儲單元不是一一對應(yīng)。部份譯碼會大量浪費尋址空間,對于要求存儲器空間大的微機(jī)系統(tǒng),一般不采用。但對于單片機(jī)系統(tǒng),由于實際需要的存儲容量不大,采用部份譯碼可簡化譯碼電路。

例要求用2764芯片擴(kuò)展8031的片外程序存儲器空間,分配的地址范圍為0000H~3FFFH。本例采用完全譯碼方法。

(1)確定片數(shù)。因0000H~3FFFH的存儲空間為16KB,則所需芯片數(shù)=實際要求的存儲容量/單個芯片的存儲容量

=16KB/8KB

=2(片)(2)分配地址范圍。(3)存儲器擴(kuò)展連接如圖7.14所示。圖7.14采用地址譯碼器擴(kuò)展存儲器的連接圖7.3輸入/輸出接口的擴(kuò)展7.3.18255A可編程并行I/O接口

8255A具有3個8位并行I/O口,稱為PA口、PB口和PC口。其中PC口又分為高4位和低4位,通過控制字設(shè)定可以選擇三種工作方式:①基本輸入/輸出;②選通輸入/輸出;③PA口為雙向總線。

7.3.28155可編程并行I/O接口

8155芯片內(nèi)具有256個字節(jié)的RAM,兩個8位、一個6位的可編程并行I/O接口和一個14位的計數(shù)器,與MCS-51單片機(jī)接口簡單,是單片機(jī)應(yīng)用系統(tǒng)中廣泛使用的芯片。

這種I/O口一般都是通過P0口擴(kuò)展。由于P0口是雙向數(shù)據(jù)線,圖中74LS244作為輸入口、74LS273作為輸出口,它們都可以通過P0口輸入、輸出數(shù)據(jù)。輸出控制信號由P2.0和WR反合成,當(dāng)二者同時為0電平時,“或”門輸出0電平,273的Q=D,數(shù)據(jù)進(jìn)入273,當(dāng)WR反無效(升為0)時,數(shù)據(jù)鎖存在Q端并輸出。輸入控制信號由P2.0和RD反合成,當(dāng)二者同時為0電平時,“或”門輸出0電平,244的Q=D(直通),當(dāng)RD反無效時,CPU已讀走數(shù)據(jù),244的Q端也不鎖存輸入的數(shù)據(jù)。注意使用是P2.0(A8)必須為0。7.4管理功能部件的擴(kuò)展7.4.1鍵盤接口

鍵盤實際上是由排列成矩陣形式的一系列按鍵開關(guān)組成,用戶通過鍵盤可以向CPU輸入數(shù)據(jù)、地址和命令。鍵盤按其結(jié)構(gòu)形式可分為:編碼式鍵盤和非編碼式鍵盤兩類。單片機(jī)系統(tǒng)中普遍使用非編碼式鍵盤,這類鍵盤主要解決以下幾個問題:

①鍵的識別;

②如何消除鍵的抖動;

③鍵的保護(hù)。

1.非編碼式鍵盤工作原理非編碼式鍵盤識別按鍵的方法有兩種:一是行掃描法,二是線反轉(zhuǎn)法。

1)行掃描法通過行線發(fā)出低電平信號,如果該行線所連接的鍵沒有按下的話,則列線所接的端口得到的是全“1”信號,如果有鍵按下的話,則得到非全“1”信號。為了防止雙鍵或多鍵同時按下,往往從第0行一直掃描到最后1行,若只發(fā)現(xiàn)1個閉合鍵,則為有效鍵,否則全部作廢。找到閉合鍵后,讀入相應(yīng)的鍵值,再轉(zhuǎn)至相應(yīng)的鍵處理程序。2)線反轉(zhuǎn)法線反轉(zhuǎn)法也是識別閉合鍵的一種常用方法,該法比行掃描速度快,但在硬件上要求行線與列線外接上拉電阻。先將行線作為輸出線,列線作為輸入線,行線輸出全“0”信號,讀入列線的值,然后將行線和列線的輸入輸出關(guān)系互換,并且將剛才讀到的列線值從列線所接的端口輸出,再讀取行線的輸入值。那么在閉合鍵所在的行線上值必為0。這樣,當(dāng)一個鍵被按下時,必定可讀到一對唯一的行列值。2.鍵盤接口電路圖7.26采用8155的鍵盤接口電路

下面的程序是用行掃描法進(jìn)行鍵掃描的程序,其中KS1為判鍵閉合的子程序。有鍵閉合時(A)=0。DIR為數(shù)碼顯示器掃描顯示子程序,執(zhí)行一遍的時間約6ms。程序執(zhí)行后,若鍵閉合,鍵值存入A中,鍵值的計算公式是:鍵值=行號×4+列號;若無鍵閉合,則A中存入標(biāo)志FFH。KEY1:LCALLKS1;檢查有無閉合鍵?

JNZLK1

;(A)=0,有鍵閉合則轉(zhuǎn)

LJMPLK8

;無閉合鍵則返回LK1:LCALLDIR

;延時12ms

LCALLDIR;清抖

LCALLLS1

;再檢查有鍵閉合否?

JNZLK2;有鍵閉合則轉(zhuǎn)

LJMPLK8

;無鍵閉合則返回LK2:MOVR3,#00H;行號初值送R3

MOVR2,#FEH;行掃描初值送R2

LK3:MOVDPTR,#0101H;指向8155口A

MOVA,R2;行掃描值送A

MOVX@DOTR,A;掃描1行

INCDPTR

INCDPTR;指向8155口C

MOVXA,@DPTR;讀入列值

ANLA,#0FH;保留低4位

MOVR4,A;暫存列值

CJNZA,#0FH,LK4;列值非全“1”則轉(zhuǎn)

MOVA,R2;行掃描值送AJNBACC.7,LK8;掃至最后一行則轉(zhuǎn)RLA

;未掃完,則移至下一行MOVR2,A;行值存入R2中INCR3;行號加1

SJMPLK3;轉(zhuǎn)至掃描下一行LK4:MOVA,R3;行號送入A

ADDA,R3;行號×2

MOVR5,A

ADDA,R5;行號×4

MOVR5,A;存入R5中

MOVA,R4;列值送ALK5:RRCA

;右移一位

JNCLK6;該位為0則轉(zhuǎn)

INCR5;列號加1

SJMPLK5;列號未判完則繼續(xù)LK6:MOV20H,R5;存鍵值LK7:LCALLDIR;掃描一遍顯示器

LCALLKS1;發(fā)掃描信號

JNZLK7

;鍵未釋放等待

LCALLDIR

;鍵已釋放

LCALLDIR;延時12ms,清抖

MOVA,20H

;鍵值存入A中KND:RETLK8:MOVA,#FFH;無鍵標(biāo)志FFH存入A中

RET

KS1:MOVDPTR,#0101H;判鍵子程序

MOVA,#00H;全掃描信號

MOVX@DPTR,A;發(fā)全掃描信號

INCDPTR

INCDPTR;指向8155口C

MOVXA,@DPTR;讀入列值

ANLA,#0FH;保留低4位

ORLA,#F0H;高4位取“1”

CPLA ;取反,無鍵按下則全“0”

RET最簡單的鍵盤、指示燈擴(kuò)展法7.4.2LED顯示器接口1.LED顯示器結(jié)構(gòu)與原理圖7.277段LED數(shù)碼顯示器各段碼位的對應(yīng)關(guān)系如下:表7.8十六進(jìn)制數(shù)及空白與P的顯示段碼2.LED顯示器接口電路圖7.286位動態(tài)顯示器接口圖7.29顯示子程序流程圖程序清單如下:

DIR:MOVR0,#79H;顯示緩沖區(qū)首址送R0

MOVR3,#01H

;使顯示器最右邊位亮

MOVA,R3

LD0:MOVDPTR,#0101H;掃描值送PA口

MOVX@DPTR,A

INCDPTR

;指向PB口

MOVA,@R0;取顯示數(shù)據(jù)

ADDA,#12H;加上偏移量

MOVXA,@A+PC;取出字形

MOVX@DPTR,A;送出顯示ACALLDL1 ;延時

INCR0 ;緩沖區(qū)地址加1

MOVA,R3;

JBACC.5,LD1 ;掃到第6個顯示位了嗎?

RLA ;沒有,R3左環(huán)移一位,掃描下一個顯示位

MOVR3,A

AJMPLD0

LD1:

RET

DSEG:DB3FH,06H,5BH,4FH,66H,6DH;顯示段碼表DSEG1:DB7DH,07H,7FH,6FH,77H,7CHDSEG2:DB39H,5EH,79H,71H,73H,3EH

DSEG3:DB31H,61H,1CH,23H,40H,03H

DSEG4:DB18H,00H,00H,00H

DL1:MOVR7,#02H[DW];延時子程序DL:MOVR6,#0FFH

DL6:DJNZR6,DL6

DJNZR7,DL

RET7.4.3鍵盤顯示器接口82791.8279的組成及引腳

8279芯片有40條引腳,由單一+5V電源供電。它主要由以下幾部分組成:

(1)I/O控制和數(shù)據(jù)緩沖器;

(2)控制和定時寄存器及定時控制部分;

(3)掃描計數(shù)器;

(4)回送緩沖器與鍵盤去抖動控制電路;

(5)FIFO(先進(jìn)后出)寄存器和狀態(tài)電路;

(6)顯示器地址寄存器及顯示RAM。圖7.308279的引腳圖2.8279的接口電路與應(yīng)用圖7.318031與8279接口連接框圖7.5A/D和D/A接口功能的擴(kuò)展

由于計算機(jī)本身只能處理數(shù)字量(二進(jìn)制代碼)。而在計算機(jī)應(yīng)用領(lǐng)域中,特別是在實時控制系統(tǒng)中,常需要把外界連續(xù)變化的物理量(如溫度、壓力、流量、速度),變成數(shù)字量輸入計算機(jī)進(jìn)行加工、處理。反之,也需要把計算機(jī)計算結(jié)果的數(shù)字量轉(zhuǎn)換成連續(xù)變化的模擬量輸出,用以控制,調(diào)節(jié)些執(zhí)行機(jī)構(gòu),實現(xiàn)對被控對象的控制。這種把模擬量變成數(shù)字量和把數(shù)字量轉(zhuǎn)換成模擬量,就稱為模/數(shù)和數(shù)/模轉(zhuǎn)換。實現(xiàn)這類轉(zhuǎn)換的器件,就稱為模/數(shù)(A/D)和數(shù)/模(D/A)轉(zhuǎn)換器。7.5.1A/D轉(zhuǎn)換器接口

1.概述

A/D轉(zhuǎn)換器用以實現(xiàn)模擬量向數(shù)字量的轉(zhuǎn)換。按轉(zhuǎn)換原理可分為4種:計數(shù)式、雙積分式、逐次逼近式以及并行式A/D轉(zhuǎn)換器。逐次逼近式A/D轉(zhuǎn)換器是一種速度較快,精度較高的轉(zhuǎn)換器,其轉(zhuǎn)換時間大約在幾微秒到幾百微秒之間。常用的這種芯片有:(1)ADC0801~ADC0805型8位MOS型A/D轉(zhuǎn)換器;

(2)ADC0808/0809型8位MOS型A/D轉(zhuǎn)換器;

(3)ADC0816/0817型8位MOS型A/D轉(zhuǎn)換器;量化間隔和量化誤差是A/D轉(zhuǎn)換器的主要技術(shù)指標(biāo)之一。量化間隔由下式計算:

其中n為A/D轉(zhuǎn)換器的位數(shù)。量化誤差有兩種表示方法:一種是絕對量化誤差;另一種是相對量化誤差。絕對量化誤差2.典型A/D轉(zhuǎn)換器芯片ADC0809簡介ADC0809是采用CMOS工藝制造的雙列直插式單片8位A/D轉(zhuǎn)換器。分辨率8位,精度7位,帶8個模擬量輸入通道,有通道地址譯碼鎖存器,輸出帶三態(tài)數(shù)據(jù)鎖存器。啟動信號為脈沖啟動方式,最大可調(diào)節(jié)誤差為±1LSB,ADC0809內(nèi)部沒有時鐘電路,故CLK時鐘需由外部輸入,fclk允許范圍為500kHz~1MHz,典型值為640kHz。每通道的轉(zhuǎn)換需66~73個時鐘脈沖,大約100~110μs。工作溫度范圍為-40℃~+85℃。功耗為15mW,輸入電壓范圍為0~5V,單一+5V電源供電。它可以直接與Z80、8085、8080、8031等CPU相連,也可以獨立使用。圖7.32ADC0809的內(nèi)部結(jié)構(gòu)圖7.33ADC0809引腳圖表7.9地址碼與輸入通道的對應(yīng)關(guān)系圖7.34ADC0809時序圖3.ADC0809與8031的中斷方式接口電路圖7.36ADC0809中斷方式硬件接口

這里將ADC0809作為一個外部擴(kuò)展的并行I/O口,直接由8031的P2.0和WR脈沖進(jìn)行啟動。因而其端口地址為0FEFFH。用中斷方式讀取轉(zhuǎn)換結(jié)果的數(shù)字量,模擬量輸入通道選擇端ADDA、ADDB、ADDC分別與8031的P0.0、P0.1、P0.2直接相連,CLK由8031的ALE提供。其讀取通道0轉(zhuǎn)換后的數(shù)字量程序段如下:ORG1000H

INADC:SETBIT1;INT1設(shè)為邊沿觸發(fā)

SETBEA;開中斷INT1

SETBEX1MOVDPTR,#0FEFFH;端口地址送DPTR

MOVA,#00H;選擇0通道輸入

MOVX@DPTR,A;啟動輸入

ORG0013H

AJMPPINT1

PINT1:…

MOVDPTR,#0FEFFH;端口地址送DPTR

MOVXA,@DPTR;讀取IN0的轉(zhuǎn)換結(jié)果

MOV50H,A;存入50H單元

MOVA,#00H

MOVX@DPTR,A;啟動A/D,IN0通道輸入并轉(zhuǎn)換

RETI;返回7.5.2D/A轉(zhuǎn)換器接口1.D/A轉(zhuǎn)換器的性能指標(biāo)

(1)分辨率。分辨率是D/A轉(zhuǎn)換器對輸入量變化敏感程度的描述,與輸入數(shù)字量的位數(shù)有關(guān)。如果數(shù)字量的位數(shù)為n,則D/A轉(zhuǎn)換器的分辨率為2-n。(2)建立時間。建立時間是描述D/A轉(zhuǎn)換速度的一個參數(shù),具體是指從輸入數(shù)字量變化到輸出達(dá)到終值誤差±1/2LSB(最低有效位)時所需的時間。通常以建立時間來表明轉(zhuǎn)換速度。(3)接口形式。D/A轉(zhuǎn)換器有兩類:一類不帶鎖存器,另一類則

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論