單片機原理及應用 課程設計報告單片機電子密碼鎖設計_第1頁
單片機原理及應用 課程設計報告單片機電子密碼鎖設計_第2頁
單片機原理及應用 課程設計報告單片機電子密碼鎖設計_第3頁
單片機原理及應用 課程設計報告單片機電子密碼鎖設計_第4頁
單片機原理及應用 課程設計報告單片機電子密碼鎖設計_第5頁
已閱讀5頁,還剩23頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、單片機原理及應用課程設計報告課題名稱電子密碼鎖學院自動控制與機械工程專業(yè)電氣工程及其自動化班級xxxx學號xxxxx姓名xxxxx時間xxxxxxxxxxxxxxx目錄摘要- 1-一、設計任務及要求- 1 -1.1、設計任務- 1 -1.2、設計要求- 1 -二、系統(tǒng)總體結(jié)構(gòu)及工作原理- 1 -2.1系統(tǒng)總體結(jié)構(gòu)- 2 -2.2 系統(tǒng)總體結(jié)構(gòu)及電路圖- 2 -三、各模塊電路設計- 3 -3.1 at89c51簡介- 3 -3.2 模塊電路- 7 -四、軟件設計- 10 -4.1 主程序流程圖- 10 -4.2、子程序代碼- 10 -五、調(diào)試說明- 12 -六、總結(jié)- 15 -七、參考文獻- 1

2、5 -八、附錄 源程序源代碼清單- 16 -摘要本次設計介紹了基于單片機電子密碼鎖的設計,該設計硬件主要由at89c51最小系統(tǒng)、矩陣電路、lcd顯示電路、電源電路和報警電路等幾部分組成。軟件主要由c語言編程。該密碼鎖由單片機技術,通過矩陣電路設置、修改密碼、保護密碼,并由lcd顯示密碼輸入,從而實現(xiàn)對密碼的設置、保護。關鍵詞:at89s51, 電子密碼鎖,矩陣鍵盤一、設計任務及要求1、設計任務:基于mcs-51系列單片機at89c51,設計一個通過按鍵輸入開鎖的電子密碼鎖。2、設計要求:(1)通過44的矩陣鍵盤輸入或設定開鎖密碼;(2)可以通過lcd查看已輸入的字符個數(shù)顯示為*;(3)使用串

3、行eerom24c02a保存用戶設置的密碼;(4)使用led和蜂鳴器指示密碼鎖的狀態(tài);(5)可以通過特殊的按鍵方法清除用戶密碼如同時按下特定的多個鍵;(6)其他功能。二、系統(tǒng)總體結(jié)構(gòu)及工作原理2.1系統(tǒng)總體結(jié)構(gòu)如圖1所示系統(tǒng)框圖:主要由電源電路、矩陣電路、報警電路、顯示電路等幾部分組成。圖1 系統(tǒng)原理圖其流程圖如圖2所示。開始 系統(tǒng)初始化,lcd 選擇a/b判斷密碼是否正確 密碼修改 輸入密碼 輸入原始密碼 輸入修改密碼判斷密碼是否正確lcd顯示修改成功報警啟動繼電器模擬開鎖報警lcd顯示否是ab是否圖1 系統(tǒng)原理圖2.2系統(tǒng)總體電路圖及工作原理工作原理:矩陣電路用于輸入數(shù)字的密碼和進行各種功

4、能的實現(xiàn)??梢酝ㄟ^連接單片機的矩陣鍵盤輸入密碼,后經(jīng)過單片機對用戶輸入的密碼與自己保存的密碼進行對比,當按下b,輸入密碼時led1黃燈亮,輸入完畢后等滅,確認后,如果密碼正確led4綠燈亮,若密碼錯誤,led3亮紅燈亮,且蜂鳴器發(fā)出聲音報警;按下a后重置密碼則led2黃燈亮。然后控制引腳的高低電平傳到開鎖電路或者報警電路控制開鎖還是報警。lcd則是顯示密碼的輸入進程的,輸入正確則會顯示開鎖成功,同時發(fā)光二級管燈亮。總體電路圖如圖3所示。圖3 系統(tǒng)總體電路圖三、各模塊電路設計 3.1.at89c51簡介at89c51是美國公司atmel在1944年以eeprom技術與inter公司的80c51內(nèi)

5、核的使用權(quán)進行交換,然后將flash技術與80c51內(nèi)核相結(jié)合,形成了片內(nèi)帶有flash存儲器的at89c51系列的單片機。at89c51單片機繼承了原來單片機的原有功能,而且完全兼容。并且在此基礎上增加了一些新的功能,如看門狗定時器wdt、isp(在系統(tǒng)編程也叫在線編程)及spi串行接口技術等。片內(nèi)flash存儲器允許在線(+5)電擦除。電寫入或使用編程器對其重復編程。此外at89c51系列單片機的還有具有功耗小,價格低廉,在線的eeprom可以實現(xiàn)在線編程且可以重復編程,因此受到很多單片機愛好者歡迎。 3.1.1 主要參數(shù)(1) 與mcs-51 兼容(2) 4k字節(jié)可編程閃爍存儲器 (3)

6、 壽命:1000寫/擦循環(huán) (4) 數(shù)據(jù)保留時間:10年 (5) 全靜態(tài)工作:0hz-24hz (6) 三級程序存儲器鎖定 (7) 128*8位內(nèi)部ram (8) 32可編程i/o線 (9) 兩個16位定時器/計數(shù)器 (10) 5個中斷源(11) 可編程串行通道(12) 低功耗的閑置和掉電模式(13) 片內(nèi)振蕩器和時鐘電路3.1.2 引腳功能說明 單片機引腳如圖4所示 圖4 單片機各引腳圖40個引腳按其功能科分為三類:(1) 電源及時鐘引腳-vcc、gnd;xtal1、xtal2。(2) 控制引腳-/psen、ale/prog、/ea/vpp、rst(3) i/o口引腳-p0、p1、p2、p3

7、、為四個8為位i/o口的外部引腳下面結(jié)合圖2一一介紹各引腳的功能(1) 電源引腳(1)vcc(40)腳:接+5v電源(2)gnd(20):接地(2) 時鐘引腳(1)xtal1(19):片內(nèi)振蕩器反相放大器和時鐘發(fā)生器電路的輸入端,當使用片內(nèi)振蕩器時,該引腳連接外部石英晶體和微調(diào)電容,當采用外部接時鐘源時,該引腳接外部的時鐘振蕩器的信號。(2) xtal2(18):片內(nèi)振蕩器的反相放大器的輸出端,當使用片內(nèi)振蕩器時,該引腳連接外部石英晶體和微調(diào)電容;當采用外部時鐘源時、該引腳懸空。(3) 控制引腳此類引腳提供控制信號,有的引腳還具有復用功能。rst(9):復位信號輸入端,高電平有效。再次引腳加上

8、持續(xù)時間大于2個機器周期的高電平,就可以使單片機復位。在單片機正常工作時,此引腳應為小于且等于0.5v的低電平。/ea/vpp(31):/ea為該引腳第一功能,既外部程序存儲器訪問允許控制端。當/ea引腳接高電平時,在pc值不超過0fff時,將自動轉(zhuǎn)向讀取片外60kb(1000h-ffffh)程序存儲器空間中的程序。當/ea引腳接低電平時,只讀取外部程序存儲器中的內(nèi)容,讀取的地址范圍為0000hffffh,片內(nèi)的4kbflash程序存儲器不起作用。vpp為該引腳的第二功能,既在對片內(nèi)的flash進行編程時,vpp引腳接入編程變壓。/prog、ale(30):ale為cpu訪問外部程序存儲器或外

9、部數(shù)據(jù)存儲器提供一個地址鎖存信號,將低8位地址鎖存在片外的地址鎖存器中。/prog為該引腳的第二功能,即在片內(nèi)flash存儲器編程時,此引腳作為編程脈沖的輸入端。/psen(29):片外程序存儲器的讀選通信號,低電平有效。4.1.2.3 并行i/o引腳p0:8位,漏極開路的雙向i/o口。當at89c51擴展外部存儲器及i/o接口芯片時,p0口作為地址總線及數(shù)據(jù)總線的分時復用端口。p0口也可作為通用的i/o使用,但需加上拉電阻,這時為準雙向口。p1:8位,pl 是一個帶內(nèi)部上拉電阻的8位雙向io口,pl的輸出緩沖級可驅(qū)動(吸收或輸出電流)4個ttl邏輯門電路。對端口寫“l(fā)”,通過內(nèi)部的上拉電阻把

10、端口拉到高電平,此時可作輸入口。作輸入口使用時,因為內(nèi)部存在上拉電阻,某個引腳被外部信號拉低時會輸出一個電流(iil),flash編程和程序校驗期間,pl接收低8位地址。p2 :8位,p2 是一個帶有內(nèi)部上拉電阻的8 位雙向io 口,p2 的輸出緩沖級可驅(qū)動(吸收或輸出電流)4 個ttl邏輯門電路。對端口寫“1”,通過內(nèi)部的上拉電阻把端口拉到高電平,此時可作輸入口,作輸入口使用時,因為內(nèi)部存在上拉電阻,某個引腳被外部信號拉低時會輸出一個電流(iil),在訪問外部程序存儲器或16位地址的外部數(shù)據(jù)存儲器(例如執(zhí)行movxdptr指令)時,p2口送出高8位地址數(shù)據(jù)。在訪問8 位地址的外部數(shù)據(jù)存儲器(

11、如執(zhí)行movxri 指令)時,p2 口線上的內(nèi)容(也即特殊功能寄存器(sfr)區(qū)中p2寄存器的內(nèi)容),在整個訪問期間不改變。flash編程或校驗時,p2亦接收高位地址和其它控制信號。p3 :8位,p3 口是一組帶有內(nèi)部上拉電阻的8 位雙向i0 口。p3 口輸出緩沖級可驅(qū)動(吸收或輸出電流)4 個ttl邏輯門電路。p3口除了作為一般的i0口線外。此外,p3口還有一些特殊功能,如下所示:1) p3.0 rxd(串行輸入口) 2) p3.1 txd(串行輸出口)3) p3.2 /int0(外部中斷0)4) p3.3 /int1(外部中斷1)5) p3.4 t0(記時器0外部輸入)6) p3.5 t1

12、(記時器1外部輸入)7) p3.6 /wr(外部數(shù)據(jù)存儲器寫選通)8) p3.7 /rd(外部數(shù)據(jù)存儲器讀選通)3.2模塊電路3.2.1矩陣鍵盤電路本設計就采用行列式鍵盤,同時也能減少鍵盤與單片機接口時所占用的i/o線的數(shù)目,在按鍵比較多的時候,通常采用這樣方法。 每一條水平(行線)與垂直線(列線)的交叉處不相通,而是通過一個按鍵來連通,利用這種行列式矩陣結(jié)構(gòu)只需要4條行線和4條列線,即可組成具有44個按鍵的鍵盤。工作原理:在這種行列式矩陣鍵盤非鍵盤編碼的單片機系統(tǒng)中,鍵盤處理程序首先執(zhí)行等待按鍵并確認有無按鍵按下的程序段。在鍵盤中按鍵數(shù)量較多時,為了減少i/o口的占用,通常將按鍵排列成矩陣形

13、式。在矩陣式鍵盤中,每條水平線和垂直線在交叉處不直接連通,而是通過一個按鍵加以連接。這樣,一個端口(如p1口)就可以構(gòu)成44=16個按鍵,比之直接將端口線用于鍵盤多出了一倍,而且線數(shù)越多,區(qū)別越明顯,比如再多加一條線就可以構(gòu)成20鍵的鍵盤,而直接用端口線則只能多出一鍵(9鍵)。由此可見,在需要的鍵數(shù)比較多時,采用矩陣法來做鍵盤是合理的。掃描原理 :把每個鍵都分成水平和垂直的兩端接入,比如說掃描碼是從垂直的入,那就代表那一行所接收到的掃描碼是同一個bit,而讀入掃描碼的則是水平,掃描的動作是先輸入掃描碼,再去讀取輸入的值,經(jīng)過比對之后就可知道是哪個鍵被按下。鍵盤電路如圖5所示。圖5 鍵盤電路圖3

14、.2.2 lcd顯示電路顯示電路設計采用字符型液晶屏顯示,顯示電路如圖6所示。圖6 led顯示電路圖32.3 報警電路報警電路由5個220電阻、一個npn型三極管、2個led-yellow、1個led-red、1個led-gerrn及兩個電源個接地組成,當按下b,輸入密碼時led1黃燈亮,輸入完畢后等滅,確認后,如果密碼正確led4綠燈亮,若密碼錯誤,led3亮紅燈亮,且蜂鳴器發(fā)出聲音報警;按下a后重置密碼則led2黃燈亮。報警電路圖如圖7所示。 圖7 報警電路圖四 、軟件設計4.1 主程序流程圖電子密碼鎖設計軟件設計主程序流程圖如圖8所示。開始 系統(tǒng)初始化,lcd 選擇a/b判斷密碼是否正確

15、 密碼修改 輸入密碼 輸入原始密碼 輸入修改密碼判斷密碼是否正確lcd顯示修改成功報警啟動繼電器模擬開鎖報警lcd顯示否是ab是否圖8 主程序流程圖 4.2子程序代碼 (1)初始化系統(tǒng),設置初始密碼如圖9所示。圖9 初始化代碼(2)lcd控制指令如圖10所示 圖10 lcd控制指令(3)鍵盤編碼如圖11。圖11 鍵盤編碼(4) 從鍵值表讀入鍵值12圖12 從鍵值表讀入鍵值五、調(diào)試說明系統(tǒng)啟動后,lcd顯示如下: 圖13 lcd顯示圖 按下操作鍵a或b操作如下;1) 操作鍵a:設置新的5位數(shù)字(09)密碼。2) 操作鍵b:輸入5位數(shù)字(09)密碼并檢查。當按b時,led1燈亮顯示輸入5位數(shù)字密碼

16、,顯示如下:圖14 按b鍵后顯示器 輸完5位密碼時,led1燈熄滅,表示密碼輸入完畢,再按確認鍵,密碼開始核對,核對通過后,led4燈亮,表示鎖已經(jīng)打開。如下圖: 圖15 密碼正確當密碼輸入錯誤時,蜂鳴器發(fā)出警報,led3燈亮,lcd顯示:圖16 密碼錯誤 當按下a時,led2燈亮,lcd顯示如下: 圖17 按下a后輸入5位原始密碼后led2燈熄滅,按確認鍵,密碼核對,如果密碼錯誤,報警提示。如密碼正確,led2燈亮,lcd顯示如下:圖18 輸入密碼正確密碼修改完成,恢復到起始顯示狀態(tài)。六、總結(jié)以上為課程設計期間所設計的基于at89c51單片機電子密碼鎖電路,它經(jīng)過多次修改和整理,以是一個比較

17、不錯的設計,可以滿足人們的基本要求,但因為水平有限,此電路中也存在一定的問題,譬如說電路的密碼不能遺忘,一旦遺忘,就很難打開,這可以通過增加電路解決,但過于復雜,本次設計未其中;通過這兩周的設計,學會找到問題并解決問題,譬如在設計過程中遇到些問題,我們獲得巨大收獲:首先,通過學習使自己對課本上的知識可以應用于實際,比如對繪圖軟件pritues的實用及其編程軟件uv4的使用,使得的理論與實際相結(jié)合,加深自己對課本知識的更好理解,同時實習也段練了我們團結(jié)合作精神,能夠充分利用圖書館去查閱資料,增加了許多課本以外的知識,能達到學以致用。對我們學生來說,理論與實際同樣重要,這是我們以后在工作中說明自己

18、能力的一個重要標準。 實踐是檢驗真理的唯一標準,當然也是檢驗學習成果的標準。在經(jīng)過一段時間的學習之后,我們需要了解自己的所學應該如何應用在實踐中,因為任何知識都源于實踐,歸于實踐,所以要將所學的知識在實踐中來檢驗。在馮老師的指導下,我能順利完成本次課程設計,感謝老師!七、參考文獻1 樓然苗,胡佳文,等.51系列單片機原理及設計實例m.北京:北京航空航天大學出版社,2010.2 何立民.單片機高級教程應用與設計m.北京: 北京航空航天大學出版社,2000.3 楊旭方.單片機控制與應用實訓教程m.北京:電子工業(yè)出版社,2010.4 黃仁欣,馬彪副主編.單片機原理及運用技術.m北京:清華大學出版社,

19、20055 楊西明,朱騏主編.單片機編程與應用入門m. 北京:機械工業(yè)出版社.2004.6 先鋒工作室編著.單片機程序設計實例m. 北京: 清華大學出版社.2003. 7 陳粵初。單片機應用系統(tǒng)設計與實踐m.北京:北京航空航天大學出版社,19918 王幸之。at89系列單片機原理與接口技術m。北京:北京航空航天大學出版社, 20049 張毅剛等主編。單片機原理與應用設計m。北京:電子工業(yè)出版社, 2008八、附件(1) 系統(tǒng)整機電路原理圖圖19 系統(tǒng)整機電路原理圖(2) 程序清單rs bit p2.2 ;定義lcd的rs引腳由p2.2引腳控制 rw bit p2.1 ;定義lcd的rw引腳由p

20、2.1引腳控制 e bit p2.0 ;定義lcd的e引腳由p2.0引腳控制 org 0000h ajmp start org 0050hstart: mov p0, #01h ;清除lcd屏幕 acall enable mov p0,#38h ;設置lcd為8位點陣方式 acall enable mov p0,#0fh ;開顯示 acall enable mov p0,#06h ;移動光標 mov 50h,#8 mov 51h,#8 mov 52h,#0 mov 53h,#3 mov 54h,#6 ;設置5位初始密碼main: lcall enable lcall ksxshi ;開始顯示

21、aa: lcall key ;調(diào)用鍵盤掃描程序 cjne a,#10,bb ;若不為a鍵,則跳轉(zhuǎn)為判斷是否為b鍵 lp: acall anahx ajmp main bb: cjne a,#11,aa ;若不為b鍵則重新掃描 acall anbhx ljmp mainenable:clr rs ;lcd控制指令 clr rw clr e lcall delay setb e ret;*鍵盤編碼部分*key: mov p1,#0f0hkey0: mov a,p1 cpl a anl a,#0f0h mov r1,a ;讀取列線數(shù)據(jù)并存入r1中 jz key ;若無鍵按下,則繼續(xù)掃描key1: m

22、ov p1,#0fh mov a,p1 cpl a anl a,#0fh mov r2,a ;讀取列線數(shù)據(jù)并存入r1中 jz key ;若無鍵按下,則繼續(xù)掃描tt: jbc f0,wait setb f0 lcall delay sjmp ttgret: ret;*確定按鍵值*wait: mov a,p1 ;等待按鍵釋放 cpl a anl a,#0fh jnz waitkey2: mov a,r1 mov r1,#03h mov r3,#03h clr ckey3: rlc a jc key4 dec r1 ;修正列編號 djnz r3,key3key4: mov a,r2 mov r2,#

23、00h mov r3,#03h clr ckey5: rrc a jc key6 inc r2 ;修正列編號 djnz r3,key5key6: mov a,r2 clr c rlc a rlc a add a,r1 ;將行線和列線相加得到鍵值 ret;*開始顯示效果*ksxshi:mov p0,#80h acall enable mov dptr,#table3 lcall write1 ;顯示8051 password mov p0,#0c0h lcall enable mov dptr,#table2 lcall write1 ;顯示a or b key ret;*按a后的操作部分*an

24、ahx: mov p0,#80h acall enable mov dptr,#table4 lcall write1 ;顯示set password mov p0,#0c0h lcall enable mov dptr,#table5 lcall write1 ;顯示 * * * * * lcall xg_pass ret;*按b后的操作部分*anbhx: mov p0,#80h acall enable mov dptr,#table6 ;顯示shu ru mi ma lcall write1 mov p0,#0c0h lcall enable mov dptr,#table5 ;顯示 *

25、 * * * * lcall write1 lcall ip_pass ret;*輸入5位密碼值*ip_pass:mov b,#5 mov r0,#40h t: clr p2.3 acall key setb p2.3 mov r0,a ;將從鍵盤得到的鍵值依次存入40h,41h,42h,43h,44h單元 inc r0 djnz b,t ;循環(huán)5次得到5個鍵值 acall key cjne a,#12,pt ;將鍵值和12比較,看是否為確認鍵 mov a,40h cjne a,50h,kk mov a,41h cjne a,51h,kk mov a,42h cjne a,52h,kk mov

26、 a,43h cjne a,53h,kk mov a,44h cjne a,54h,kk ;將密碼和初始密碼比較,看密碼是否正確 clr p2.7 ;密碼正確則led4綠燈亮 mov p0,#80h acall enable mov dptr,#table11 lcall write1 ;密碼正確,輸出lock opened! mov p0,#0c0h lcall enable mov dptr,#table5 lcall write1 ;顯示 * * * * * mov b,#100pr: lcall delay djnz b,pr setb p2.7pt: ret;*輸錯密碼時顯示erro

27、r*kk: clr p2.6 clr p2.5 ;密碼錯誤,報警并led3紅燈亮 mov p0,#80h acall enable mov dptr,#table10 lcall write1 ;密碼錯誤,顯示password error! mov p0,#0c0h lcall enable mov dptr,#table5 lcall write1 ;顯示 * * * * * mov b,#50pk: lcall delay djnz b,pk setb p2.5 setb p2.6 ret;*修改密碼操縱部分*xg_pass:mov p0,#80h acall enable mov dpt

28、r,#table9 lcall write1 ;顯示input the mov p0,#0c0h lcall enable mov dptr,#table8 lcall write1 ;顯示old password mov b,#5 mov r0,#30hyt: clr p2.4 ;紅燈led2亮,表示可以輸入密碼,5位輸入完畢后,燈滅 acall key setb p2.4 mov r0,a ;將從鍵盤得到的鍵值依次存入40h,41h,42h,43h,44h單元 inc r0 djnz b,yt ;循環(huán)5次得到5個鍵值 acall key cjne a,#12,xt ;判斷是否為確認鍵 mo

29、v a,30h cjne a,50h,kk mov a,31h cjne a,51h,kk mov a,32h cjne a,52h,kk mov a,33h cjne a,53h,kk mov a,34h cjne a,54h,kk ;將從鍵盤輸入的密碼與初始密碼比較 mov p0,#80h acall enable mov dptr,#table9 lcall write1 mov p0,#0c0h lcall enable mov dptr,#table7 lcall write1 ;密碼正確則顯示input the new password mov b,#5 mov r0,#50hxt

30、1: clr p2.4 ;紅燈led2亮,表示可以輸入密碼,5位輸入完畢后,燈滅 acall key setb p2.4 mov r0,a ;將輸入的新密碼存入原來的舊密碼單元 inc r0 djnz b,xt1 acall key cjne a,#12,xt ;判斷是否為確認鍵 mov p0,#80h acall enable mov dptr,#table1 lcall write1 mov p0,#0c0h lcall enable mov dptr,#table0 ;顯示password xiu gai pass lcall write1 xt: ret ;*寫數(shù)據(jù)*write1:mo

31、v r1,#00h a1: mov a,r1 movc a,a+dptr ;從鍵值表中讀取鍵值 lcall write2 inc r1 cjne a,#00h,a1 retwrite2:mov p0,a setb rs clr rw clr e lcall delay setb e retdelay: mov r7,#255 d1: mov r6,#255d2: djnz r6,d2 djnz r7,d1 rettable11: db 4ch,4fh,43h,4bh,20h,20h,20h,4fh,50h,45h,4eh,45h,44h,21h db 20h,21h,00h ;lock opened!table10: db

溫馨提示

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

評論

0/150

提交評論