基于8086的電子時鐘設計彩色圖版_第1頁
基于8086的電子時鐘設計彩色圖版_第2頁
基于8086的電子時鐘設計彩色圖版_第3頁
基于8086的電子時鐘設計彩色圖版_第4頁
基于8086的電子時鐘設計彩色圖版_第5頁
已閱讀5頁,還剩17頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

目錄RD"基于8086的電子時鐘設計.doc"\fTOC\h\z\n\u摘要……………………1Abstract…………………1第一章電子鐘設計總體方案設計……………………21.1設計目的………………………21.2設計要求………………………21.3方案比較………………………21.3.1非中斷方式與中斷方式的比較………21.3.2LED顯示與液晶顯的比較……………31.4總體方案設計思路……………3第二章系統(tǒng)硬件設計…………………42.18255與CPU之間的連接關(guān)系………………42.28253與周邊電路的連接關(guān)系…………………42.38259與周邊電路連接關(guān)系……………………52.4液晶顯示模塊與8255之間的連線關(guān)系……52.5地址譯碼器與按鍵……………62.6系統(tǒng)總體硬件電路圖…………6第三章系統(tǒng)軟件設計…………………73.1編址及控制字的確定…………73.1.1編址……………………73.1.2控制字…………………73.2分塊子程序……………………73.2.11602讀寫操作子程序…………………7中斷子程序………………93.3主程序設計……………………11總結(jié)與致謝:…………13參考文獻:……………14附錄:…………………15 摘要本設計以微機原理與接口技術(shù)為基礎,以8086CPU為核心,利用INTER8253可編程定時/計數(shù)器,通過引入時鐘發(fā)生器產(chǎn)生標準時鐘進行精準定時;經(jīng)定時器產(chǎn)生中斷源,采用可編程中斷控制器8259A進行中斷擴展,用可屏蔽中斷方式進行時間的采集;以可編程并行I/O接口芯片8255A擴展接口,驅(qū)動MSC1602液晶模塊進行時間顯示。關(guān)鍵詞:微機原理;接口技術(shù);8086CPU;可屏蔽中斷;MSC1602液晶;可編程;INTER8253定時/計數(shù)器;中斷控制器8259A;并行I/O接口芯片8255A AbstractThisdesigntakethemicrocomputerprincipleandtheconnectiontechnologyasafoundation,bythe8086CPUcore,usestheINTER8253programmablefixedtime/counters,producesthestandardclockthroughtheintroductionclockgeneratortocarryonfinefixedtime;Producestheinterruptsourceafterthetimer,usesprogrammableinterruptcontroller8259Atocarryontheinterrupttoexpand,sendsthemaskableinterruptwaytocarryonthecounting;ByprogrammableparallelI/Otheconnectionchip8255Aexpansionconnection,actuatestheMSC1602liquidcrystalmoduletocarryonthetimedemonstration.Keyword:Microcomputerprinciple;Connectiontechnology;8086CPU;Maskableinterrupt;MSC1602liquidcrystal;Programmable;INTER8253fixedtime/counters;Interruptcontroller8259A;ParallelI/Oconnectionchip8255A第一章電子鐘設計總體方案設計1.1設計目的電子鐘是一種基于微電子技術(shù)實現(xiàn)時、分、秒計時的裝置,與機械式時鐘相比具有更高的準確性和直觀性,且無機械裝置,具有更長的使用壽命,因此得到了廣泛的使用。1.2設計要求利用8253定時器設計一個具有時、分、秒顯示的電子時鐘,并定義一個啟動鍵,當按下該鍵時電子時鐘從當前設定值開始走時。1.3方案比較為實現(xiàn)設計要求,在8086微機系統(tǒng)中實現(xiàn)計時功能可有多種方式,同時實現(xiàn)顯示的方式也有多種,現(xiàn)主要比較計時方式中的中斷與非中斷方式,及顯示常用的LED顯示與液晶顯示。1.3.1非中斷方式與中斷方式的比較在非中斷方式設計常使用的方式為查詢法,查詢法的設計,可將定時/計數(shù)器8253的OUT引腳接至并行I/O擴展芯片8255的PA,PB,PC的任一口上,CPU通過不斷的檢測該引腳上的高低電平變化,來進行計數(shù)。該方式的優(yōu)點:實現(xiàn)思路相對簡單;由于不要引入中斷則可不用中斷擴展芯片8259電路相對簡單;該方式的缺點:由于CPU要不斷的去檢測單一引腳高低電平的變化,占用的時間比較長,利用率較低;與此同時,CPU要進行數(shù)據(jù)的運算與控制數(shù)據(jù)的傳輸,如果二者沖突,可能會發(fā)生計時不準的現(xiàn)象。中斷方式的設計思路,將定時/計數(shù)器8253的OUT腳接至中斷擴展芯片8259的IR引腳上,定時器產(chǎn)生相同頻率的計數(shù)脈沖,形成中斷源。8259再通過INTR引腳向CPU發(fā)出中斷請求信號,CPU通過中斷檢測進行計數(shù)/計時。該方式的主要缺點:由于芯片8259的引進,使電路相對復雜;該方式的主要優(yōu)點是:用中斷的方式可以大大提高CPU的利用效率,同時可以在該系統(tǒng)上進行更多功能的擴展,同時用中斷的方式進行計數(shù)/計時,計時更加的準確可靠?;谝陨系目紤]本設計,采用電路稍微復雜,但可靠性強,利用效率高的中斷方式。1.3.2LED顯示與液晶顯的比較為完成本設計的要求,若采用LED則需6塊以上,可以采用二片8255來驅(qū)動動這六片LED進行靜態(tài)顯示。也可以采用動態(tài)掃描的方式,用一片8255加鎖存器(如74LS573)來進行動態(tài)顯示。若采用液晶顯示,則只需用一片8255芯片進行接口的擴展(具體擴展方案將在下面進行介紹),可以得到較為滿意的顯示效果,但操作的技巧性要求相對較高,成本相對較高。不論從硬件電路驅(qū)動的復雜性,還是從軟件設計的簡潔性及整個系統(tǒng)的外觀來看,時尚的液晶顯示更能滿足系統(tǒng)的需求。鑒于以上考慮,本次設計采用操作要求相對較高的液晶進行數(shù)碼顯示。1.4總體方案設計思路本方按主要設計思路如右下圖所示:以8086CPU最小系統(tǒng)為核心,控制可編程定時/計數(shù)器INTER8253,可編程中斷控制器8259A,可編程并行I/O接口芯片8255A。通過8253的輸出記數(shù)脈沖為8259產(chǎn)生中斷源,8259將中斷信號反饋到CPU,從而產(chǎn)生可屏蔽中斷的申請信號,在CPU的合理響應下進行計數(shù),通過8255驅(qū)動16*2的液晶顯示模塊LCM1602進行時間顯示。8086CPU82558086CPU8255825982531602驅(qū)動產(chǎn)生中斷控制中斷源控制控制第二章系統(tǒng)硬件設計在本章中,將分模塊對本次設計的硬件設計進行簡述,分塊介紹系統(tǒng)的主要功能及連線方式。2.18255與CPU之間的連接關(guān)系通過CPU與8255的讀寫控制線對接,有效的控制接口芯片的輸入輸出狀態(tài),用第11和12根地址線再加上2-4譯碼器的的Y0腳接8255片選,為8255的A,B,C及控制口分配了可靠的地址。將8086的低八位數(shù)據(jù)線與8255數(shù)據(jù)端對接,為8255的輸入輸出提供數(shù)據(jù)。由于為芯片提供的都是偶地址,系統(tǒng)默認訪問低八位的數(shù)據(jù)線。具體連線圖見右圖:2.28253與周邊電路的連接關(guān)系在系統(tǒng)中定時/計數(shù)芯片8253主要與CPU及中斷擴展芯片8259之間存在著連接關(guān)系。同8255,8253的讀寫控制線與CPU的讀寫控制線對接,正確控制CPU對8253的讀寫控制(本次設計只用到了CPU往8253中寫入數(shù)據(jù),沒用到讀出狀態(tài)的功能),第2和3位數(shù)據(jù)/地址復用線加上譯碼器的Y1端為8253的定時器0,1,2及控制口確定了可靠的地址(僅用到T0及控制地址),CPU低八位數(shù)據(jù)線為控制8253提供數(shù)據(jù)。通過CLK0端引入時鐘發(fā)生器所產(chǎn)生的標準時鐘(本設計采用10KHZ的外部時鐘),將OUT0接至8259的IR0引腳上,作為中斷源。具體電路如上示:2.38259與周邊電路連接關(guān)系為了對8259進行合理分配奇、偶地址,從CPU引入了第A13作為地址線,再加上譯碼器的Y2端作為片選信號,8259獲得了兩個可靠的地址。同8255與8253相似8086同樣靠低八位的數(shù)據(jù)線,與8259進行數(shù)據(jù)交換。IR0為8253的計數(shù)輸出端,8259通過檢測IR一組引腳的輸入情況,經(jīng)過中斷判優(yōu)以后,對當前優(yōu)先級最高的中斷進行響應,同時向CPU發(fā)送INTR信號請求中斷,在可屏蔽中斷允許的情況下CPU對其進行響應,返回INTA非的信號,8259此時發(fā)出當中斷的中斷類型號給8086。程序跳到中斷子程序的入口地址處去執(zhí)行中斷操作。具體電路連線如右圖所示:2.4液晶顯示模塊與8255之間的連線關(guān)系液晶顯示模塊1602的數(shù)據(jù)線接在8255的A口上,通過對A口進行讀寫操作,為顯示模塊提供控制指令及顯示數(shù)據(jù)。8255的PC0和PC1分別接1602的RS(指令/數(shù)據(jù)控制腳)和EN(使能腳)上,控制指令/數(shù)據(jù)的輸入。 其它引腳按典型接法接線,要說明的是,本次對1602只進行了寫的操作,故將讀寫控制腳接低電平。通過延時的方式來解決1602讀寫操作忙的問題(具體時序見第三章系統(tǒng)軟件設計)。連線圖如右示:2.5地址譯碼器與按鍵在本次設計中,由于有多片芯片要進行地址編碼,使用了一片2-4譯碼器74LS139進行譯碼,使地址編碼更加的方便。使用的CPU地址端口為第9和10號地址線,輸出的Y0,Y1,Y2分別接8255,8253,8259。 由于設計要求,在本設計中進行了按鍵設計,其電路簡單,當K未按下時輸出為高電平,當K按下時輸入給8255PB0口一個低電平,系統(tǒng)通過檢測這一引腳是否為低電平來判斷系統(tǒng)是否開始從當前時間開始計時。 具體設計電路圖見2.6總體硬件電路圖。2.6系統(tǒng)總體硬件電路圖第三章系統(tǒng)軟件設計3.1編址及控制字的確定3.1.1編址按照第二章硬件設計電路中,CPU對8253,8255,8259進行的地址分配地址(僅為在編程過程過要使用的地址進行編制),本設計所用編址無用位均置0;8253定時器0的地址:0200H;控制口:020CH8255A口地址:0;B口地址:0800H;C口地址:1000H;控制口:1800H8259奇地址:2400H;3.1.2控制字根據(jù)系統(tǒng)的需要,合理選擇各芯片的工作方式。8253:選取定時器0,采用先寫高八拉后寫低八的初值寫入方式,工作方式3—方波發(fā)生器,采取二進制的方式輸入初值,從而CW=00110110B=36H8255:分別選取A,C口為輸出端口,B口為輸入端口均采用工作方式0—簡單的輸入/輸出方式,故工作方式控制字為;10000010B=82H;同時要對PC0和PC1進行復位和置位操作,其復位/置位控制字分別為:PCO復位/置位控制字為:0/01H;PC1口的置位/復位控制字:02H/03H8259:本設計中只有一片8259無從片,故無須寫入ICW3,不需要寫ICW4采用上升沿觸發(fā)的方式可得:ICW1=00010010H=12H;使用60H號中斷故ICW2=60H3.2分塊子程序3.2.11602讀寫操作子程序如右圖所示,為1602液晶顯示的寫時序圖:1602的寫操作通過不同的時序進行控制,可分為寫指令操作(子程序WRITE-COM)和寫數(shù)據(jù)(子程序WRITE-DATA)。寫指令的時序為,先拉低RS小延時(約0.5ms)后將EN拉低,小延時后拉高電平輸入指令到液晶,然后拉低EN;寫數(shù)據(jù)的操作時序與之基本類似,只是先拉低指令/數(shù)據(jù)控制信號RS,然后拉低EN。最體子程序代碼如下示:WRITE_COMPROCFAR ;1602寫指令子程序 PUSHAX ;將AX壓入堆棧 PUSHCX; MOVDX,1800H; MOVAL,1 ; OUTDX,AL ;將PC0即RS拉為高電平 MOVAL,2 ;將PC1即EN拉為低電平 OUTDX,AL; MOVDX,0 ;從A口輸出數(shù)據(jù) POPAX; OUTDX,AL; CALLDELAY ;短暫延時 MOVAL,3 ;將EN拉高讓數(shù)據(jù)寫入液晶 MOVDX,1800H; OUTDX,AL; CALLDELAY; MOVAL,2 ;拉低EN; OUTDX,AL; POPCX; POPAX; RET;WRITE_COMENDPWRITE_DATAPROCFAR ;1602寫數(shù)據(jù)子程序 PUSHAX ;將AX壓入堆棧 PUSHCX; MOVDX,1800H; MOVAL,0 ; OUTDX,AL ;將PC0即RS拉為低電平 MOVAL,2 ;將PC1即EN拉為低電平 OUTDX,AL; MOVDX,0 ;從A口輸出數(shù)據(jù) POPAX; OUTDX,AL; CALLDELAY ;短暫延時 MOVAL,3 ;將EN拉高讓數(shù)據(jù)寫入液晶 MOVDX,1800H; OUTDX,AL; CALLDELAY; MOVAL,2 ;拉低EN; OUTDX,AL; POPCX; POPAX; RET;WRITE_DATA ENDP3.2.2中斷子程序中斷開始保護現(xiàn)場中斷開始保護現(xiàn)場恢復中斷現(xiàn)場秒加1并輸出秒=60秒清0分加1并輸出分=60分清0時加1并輸出時=24時清0恢復現(xiàn)場并開中斷中斷返回保護中斷現(xiàn)場NNNYYY具體子程序設計如下:TIMERPROCFAR PUSHCX;保護現(xiàn)場 PUSHAX; PUSHDX; PUSHF; POPBX; 恢復秒計數(shù)寄存器 POPSI; 恢復分計數(shù)寄存器 POPDI; 恢復時計數(shù)寄存器 INCBX;秒加一操作 MOVAL,80H+40H+0AH;寫指令給1602進行輸出定位 CALLWRITE_COM MOVAX,BX; AAD; BCD碼調(diào)整指令 MOVCX,10; DIVCX;AX除以10得當前秒的十位和個位 CALLWRITE_DATA;寫入秒十位 MOVAL,AH; CALLWRITE_DATA;寫入秒個位 CMPBX,60;比較是否到了60 JNZEXIT;不是60跳到EXIT的位置 MOVBX,0;秒清0 INCSI;分加1 MOVAL,80H+40H+08H;寫指令給1602進行輸出定位 CALLWRITE_COM MOVAX,SI; AAD; BCD碼調(diào)整指令 MOVCX,10; DIVCX;AX除以10得當前分的十位和個位 CALLWRITE_DATA;寫入分的十位 MOVAL,AH; CALLWRITE_DATA;寫入分的個位 CMPSI,60;檢測分是否到60 JNZEXIT;不是60跳轉(zhuǎn)到EXIT處 MOVSI,0;分清0 INCDI;時加1 MOVAL,80H+40H+05H;寫指令給1602進行輸出定位 CALLWRITE_COM MOVAX,DI; AAD; BCD碼調(diào)整指令 MOVCX,10; DIVCX;AX除以10得當前時的十位和個位 CALLWRITE_DATA;寫入時的十位 MOVAL,AH; CALLWRITE_DATA;寫入時的個位 CMPDI,24;檢測時是否為24 JNZEXIT;跳到公共點EXIT MOVSI,0;時清零EXIT:PUSHDI;保護中斷現(xiàn)場 PUSHSI; PUSHBX;POPDX;恢復現(xiàn)場 POPAX; POPCX; STI;開啟中斷 IRET;中斷返回TIMERENDP3.3主程序設計主程序的主要功能是:完成各主要芯片的初始化;完成液晶顯示模塊的初始化;開始8255初始化開始8255初始化8253初始化8259初始化1602初始化檢測K=0等待中斷NY實時檢測有無可屏蔽中斷其主要流程如右圖所示:具體設計代碼如下:START:MOVAX,DATASMOVDS,AXMOVAL,82H ;8255初始化 MOVDX,1800H OUTDX,AL; MOVAL,36H ;8253初始化 MOVDX,020CH; OUTDX,AL; MOVAL,27H; MOVDX,0200H OUTDX,AL; MOVAL,10H; OUTDX,AL; MOVAL,12H ;8259初始化 MOVDX,0204H; OUTDX,AL; MOVAL,60H; OUTDX,AL; MOVAL,60H ;將TIMER對應的60號中斷寫入中斷向量表,本設計采用DOS功能調(diào)用法寫入 MOVAH,25H; MOVCX,SEGTIMER; MOVDS,CX; MOVDX,OFFSETTIMER; INT21H; MOVAL,38H;設置1602為16*2行5*7點陣 CALLWRITE_COM; MOVAL,0BH;開顯示,不顯示光標,光標不閃爍 CALLWRITE_COM; MOVAL,06H;指針自動加一,整屏不移動 CALLWRITE_COM; MOVAL,1; 清屏指令 CALLWRITE_COM; MOVAL,80H+40H+05H;在1602的第二行第5個位置寫入數(shù)據(jù),正好在1602的正中位置 CALLWRITE_COM; MOVCX,8; MOVSI,-1;AA1:INCSI; 將BUF里邊的內(nèi)容寫入1602,其初始化完成 MOVAL,BUF[SI]; CALLWRITE_DATA; LOOPAA1; MOVBX,0; MOVSI,0; MOVDI,0; AA2:MOVDX,0800H; 檢測按鍵K是否按下 INAL,DX; TESTAL,1; JNZAA2 ;不為0表明K未按下跳轉(zhuǎn)STI;開中斷JMP$ ;等待中斷總結(jié)與致謝:經(jīng)過一周的微機原理及應用課程設計,深化了我對微機原理及其接口技術(shù)的理解與認識。在接到課到課題以后我先對設計的要求進行了分析,通過方案的比校最終確定了所要使用的芯片,然后開始利用PROTEL99進行硬件設計,在硬件設計完成后開始著手程序的設計,并成功運行原代碼的書寫,最后完成了文檔的制作。在這一周的實習時間內(nèi)讓我受益良多,不僅讓我平時所學的內(nèi)容在本次設計中得到了應用,也讓我更熟悉了各主要芯片的工作方式,同時通過文檔的制作也讓我在文檔的制作上有了一定的進步,這將為我以后的畢業(yè)設計和以后的工作奠定良好的基礎。在此首先要感謝我的課程設計指導老師王南蘭老師,她在設計之前對設計的要求與實現(xiàn)方式進行了詳細的說明,為我的設計方案提供了思路;也為我們的文檔設計提供了模板,讓我在文檔制作時更具有方向性和標準性。其次要感謝的是我的微機原理及接口技術(shù)的任課老師張曉虎老師,他在這一學期內(nèi)教會了我程序設計的方法及對各主要芯片應用與控制,也教會了我一個完整的去做一個課題設計的步驟。再次向兩位老師表示衷心的感謝!但是,這次的實習唯一感到遺憾的是,由于實驗器材的限制,也無法做出直觀可見的仿真結(jié)果,所以這次的設計僅是基于理想化的設計。參考文獻:[1]彭楚武,張志文,等,微機原理與接口技術(shù).湖南大學出版社,2004[2]周秀清,周荷琴.微型計算機原理與接口技術(shù).合肥:中國科技大學出版社,1999[3]李芷主編.微機原理與接口技術(shù).北京:電子工業(yè)出版社,2002[4]楊路明.微型計算機系統(tǒng)及應用.長沙:中南工業(yè)大學出版社,1994[5]錢曉捷,陳濤.微型計算機原理及接口技術(shù).北京:機械工業(yè)出版社,1999[6]朱德森,溫鵬.微型計算機原理及接口技術(shù).武漢:華中理工大學出版社,1995[7]朱定華.微機原理與接口技術(shù).北京:北方交通大學出版社,清華大學出版社,2002[8]謝維達,李玲玲編著.微型計算機原理與系統(tǒng).北京:北京希望電子出版社,2003[9]沈美明,溫冬嬋.IBM-PC匯編語言程序設計(第二版).北京:清華大學出版社,2003[10]李廣軍,王厚軍.實用接口技術(shù).成都:電子科技大學出版社,1998附錄:源程序代碼:DATASSEGMENTBUFDB'00:00:00','$';此處輸入數(shù)據(jù)段代碼DATASENDSSTACKSSEGMENT;此處輸入堆棧段代碼STACKSENDSCODESSEGMENTASSUMECS:CODES,DS:DATAS,SS:STACKSSTART:MOVAX,DATASMOVDS,AXMOVAL,82H ;8255初始化 MOVDX,1800H OUTDX,AL; MOVAL,36H ;8253初始化 MOVDX,020CH; OUTDX,AL; MOVAL,27H; MOVDX,0200H OUTDX,AL; MOVAL,10H; OUTDX,AL; MOVAL,12H ;8259初始化 MOVDX,0204H; OUTDX,AL; MOVAL,60H; OUTDX,AL; MOVAL,60H ;將TIMER對應的60號中斷寫入中斷向量表,本設計采用DOS功能調(diào)用法寫入 MOVAH,25H; MOVCX,SEGTIMER; MOVDS,CX; MOVDX,OFFSETTIMER; INT21H; MOVAL,38H;設置1602為16*2行5*7點陣 CALLWRITE_COM; MOVAL,0BH;開顯示,不顯示光標,光標不閃爍 CALLWRITE_COM; MOVAL,06H;指針自動加一,整屏不移動 CALLWRITE_COM; MOVAL,1; 清屏指令 CALLWRITE_COM; MOVAL,80H+40H+05H;在1602的第二行第5個位置寫入數(shù)據(jù),正好在1602的正中位置 CALLWRITE_COM; MOVCX,8; MOVSI,-1;AA1:INCSI; 將BUF里邊的內(nèi)容寫入1602,其初始化完成 MOVAL,BUF[SI]; CALLWRITE_DATA; LOOPAA1; MOVBX,0; MOVSI,0; MOVDI,0; AA2:MOVDX,0800H; 檢測按鍵K是否按下 INAL,DX; TESTAL,1; JNZAA2 ;不為0表明K未按下跳轉(zhuǎn)STI;開中斷 JMP$ ;等待中斷 DELAYPROCFAR PUSHCX;AA3:MOVCX,50 LOOPAA3; POPCX; RETDELAY ENDP WRITE_COMPROCFAR ;1602寫指令子程序 PUSHAX ;將AX壓入堆棧 PUSHCX; MOVDX,1800H; MOVAL,1 ; OUTDX,AL ;將PC0即RS拉為高電平 MOVAL,2 ;將PC1即EN拉為低電平 OUTDX,AL; MOVDX,0 ;從A口輸出數(shù)據(jù) POPAX; OU

溫馨提示

  • 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

提交評論