單片機(jī)課程設(shè)計(jì)報(bào)告——智能數(shù)字頻率計(jì)_第1頁
單片機(jī)課程設(shè)計(jì)報(bào)告——智能數(shù)字頻率計(jì)_第2頁
單片機(jī)課程設(shè)計(jì)報(bào)告——智能數(shù)字頻率計(jì)_第3頁
單片機(jī)課程設(shè)計(jì)報(bào)告——智能數(shù)字頻率計(jì)_第4頁
單片機(jī)課程設(shè)計(jì)報(bào)告——智能數(shù)字頻率計(jì)_第5頁
已閱讀5頁,還剩17頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、 單片機(jī)原理課程設(shè)計(jì)報(bào)告題目:智能數(shù)字頻率計(jì)設(shè)計(jì) 專業(yè): 信息工程班級(jí):信息111學(xué)號(hào):* 姓名:*指導(dǎo)教師:*北京工商大學(xué)計(jì)算機(jī)與信息工程學(xué)院1、 設(shè)計(jì)目的(1)了解和掌握一個(gè)完整的電子線路設(shè)計(jì)方法和概念; (2)通過電子線路設(shè)計(jì)、仿真、安裝和調(diào)試,了解和掌握電子系統(tǒng)研發(fā)產(chǎn)品的一個(gè)基本流程。 (3)了解和掌握一些常見的單元電路設(shè)計(jì)方法和在電子系統(tǒng)中的應(yīng)用: 包括放大器、濾波器、比較器、計(jì)數(shù)和顯示電路等。 (4) 通過編寫設(shè)計(jì)文檔與報(bào)告,進(jìn)一步提高學(xué)生撰寫科技文檔的能力。 2、 設(shè)計(jì)要求(1)基本要求設(shè)計(jì)指標(biāo):1. 頻率測量:0250KHz;2

2、. 周期測量:4mS10S;3. 閘門時(shí)間:0.1S,1S;4. 測量分辨率:5位/0.1S,6位/1S;5. 用圖形液晶顯示狀態(tài)、單位等。充分利用單片機(jī)軟、硬件資源,在其控制和管理下,完成數(shù)據(jù)的采集、處理和顯示等工作,實(shí)現(xiàn)頻率、周期的等精度測量方案。在方案設(shè)計(jì)中,要充分估計(jì)各種誤差的影響,以獲得較高的測量精度。(2)擴(kuò)展要求用語音裝置來實(shí)現(xiàn)頻率、周期報(bào)數(shù)。(3)誤差測試調(diào)試無誤后,可用數(shù)字示波器與其進(jìn)行比對(duì),記錄測量結(jié)果,進(jìn)行誤差分析。(4)實(shí)際完成的要求及效果1. 測量范圍:0.1Hz4MHz,周期、頻率測量可調(diào);2. 閘門時(shí)間:0.05s10s可調(diào);3. 測量分辨率:5位/0.01S,6

3、位/0.1S;4. 用圖形液晶顯示狀態(tài)、單位(Hz/KHz/MHz)等。3、 硬件電路設(shè)計(jì)(1)總體設(shè)計(jì)思路本次設(shè)計(jì)的智能數(shù)字頻率計(jì)可測量矩形波、鋸齒波、三角波、方波等信號(hào)的頻率。系統(tǒng)共設(shè)計(jì)包括五大模塊: 主芯片控制模塊、整形模塊、分頻模塊、檔位選擇模塊、和顯示模塊。設(shè)計(jì)的總的思想是以AT89S52單片機(jī)為核心,將被測信號(hào)送到以LM324N為核心的過零比較器,被測信號(hào)轉(zhuǎn)化為方波信號(hào),然后方波經(jīng)過由74LS161構(gòu)成的分頻模塊進(jìn)行分頻,再由74LS153構(gòu)成的四選一選擇電路控制檔位,各部分的控制信號(hào)以及頻率的測量主要由單片機(jī)計(jì)數(shù)及控制,最終將測得的信號(hào)頻率經(jīng)LCD1602顯示。各模塊作用如下:1

4、.主芯片控制模塊: 單片機(jī)AT89S52 內(nèi)部具有2個(gè)16位定時(shí)/計(jì)數(shù)器T0、T1,定時(shí)/計(jì)數(shù)器的工作可以由編程來實(shí)現(xiàn)定時(shí)、計(jì)數(shù)和產(chǎn)生計(jì)數(shù)溢出時(shí)中斷要求的功能。利用單片機(jī)的計(jì)數(shù)器和定時(shí)器的功能對(duì)被測信號(hào)進(jìn)行計(jì)數(shù)。以AT89S52 單片機(jī)為控制核心,來完成對(duì)各種被測信號(hào)的精確計(jì)數(shù)、顯示以及對(duì)分頻比的控制。利用其內(nèi)部的定時(shí)/計(jì)數(shù)器完成待測信號(hào)周期/頻率的測量。2.整形模塊:整形電路是將一些不是方波的待測信號(hào)轉(zhuǎn)化成方波信號(hào),便于測量。本設(shè)計(jì)使用運(yùn)放器LM324連接成過零比較器作為整形電路。3.分頻模塊: 考慮單片機(jī)利用晶振計(jì)數(shù),使用11.0592MHz 時(shí)鐘時(shí),最大計(jì)數(shù)速率將近500 kHz,因此需

5、要外部分頻。分頻電路用于擴(kuò)展單片機(jī)頻率測量范圍,并實(shí)現(xiàn)單片機(jī)頻率測量使用統(tǒng)一信號(hào),可使單片機(jī)測頻更易于實(shí)現(xiàn),而且也降低了系統(tǒng)的測頻誤差。本設(shè)計(jì)使用的分頻芯片是74LS161實(shí)現(xiàn)4分頻及16分頻。4.檔位選擇模塊:控制74LS161不分頻、4分頻 或者 16分頻,控制芯片是74LS153。5.顯示模塊:編寫相應(yīng)的程序可以使單片機(jī)自動(dòng)調(diào)節(jié)測量的量程,并把測出的頻率數(shù)據(jù)送到顯示電路顯示,本設(shè)計(jì)選用LCD1602。(2)測頻基本設(shè)計(jì)原理所謂“頻率”,就是周期性信號(hào)在單位時(shí)間(1s)內(nèi)變化的次數(shù)。若在一定時(shí)間間隔T內(nèi)測得這個(gè)周期性信號(hào)的重復(fù)變化次數(shù)N,則其頻率可表示為f=N/T(右圖3-1所示)。其中脈

6、沖形成電路的作用是將被測信號(hào)變成脈沖信號(hào),其重復(fù)頻率等于被測頻率fx。利用單片機(jī)的定時(shí)/計(jì)數(shù)T0、T1的定時(shí)、計(jì)數(shù)功能產(chǎn)生周期為1s的時(shí)間脈沖信號(hào),則門控電路的輸出信號(hào)持 圖3-1續(xù)時(shí)間亦準(zhǔn)確地等于1s。閘門電路由標(biāo)準(zhǔn)的秒脈沖信號(hào)進(jìn)行控制,當(dāng)秒脈沖信號(hào)來到時(shí),閘門開通,被測脈沖信號(hào)通過閘門送到計(jì)數(shù)譯碼顯示電路。秒脈沖信號(hào)結(jié)束時(shí)閘門關(guān)閉,計(jì)數(shù)器停止計(jì)數(shù)。由于計(jì)數(shù)器計(jì)得的脈沖數(shù)N是在1秒時(shí)間內(nèi)的累計(jì)數(shù),所以被測頻率fx=NHz。 (2)系統(tǒng)框圖本智能數(shù)字頻率計(jì)系統(tǒng)框圖如圖3-2所示圖3-2智能數(shù)字頻率計(jì)系統(tǒng)框圖(3)單片機(jī)部分P0口經(jīng)上拉后做LCD數(shù)據(jù)接口P2.1P2.3作為LCD控制端口P2.4

7、P2.5作為分頻選擇端口P3.5作為被測信號(hào)輸入端口P3.2P3.4作為開關(guān)控制端口(對(duì)應(yīng)電路圖中K1,K2,SET)圖3-3 89D52單片機(jī)部分電路(4)分頻部分74HC161與74ls161功能兼容,是常用的四位二進(jìn)制可預(yù)置的同步加法計(jì)數(shù)器,他可以靈活的運(yùn)用在各種數(shù)字電路,以及單片機(jī)系統(tǒng)中實(shí)現(xiàn)分頻器等很多重要的功能。其管腳圖如圖3-4所示: 圖3-4 74HC161 圖3-5 74HC153管腳圖74HC153是一個(gè)雙4選1數(shù)據(jù)選擇器,其管腳圖如圖3-5所示:74LS161對(duì)整形后的防波信號(hào)進(jìn)行分頻,Q1為四分頻輸出,Q3為16分頻輸出。未經(jīng)分頻、經(jīng)過四分頻和經(jīng)過16分頻的三路信號(hào)作為7

8、4LS153的一個(gè)4選1數(shù)據(jù)選擇器低三位輸入,由單片機(jī)控制選擇分頻數(shù),然后再送單片機(jī)內(nèi)部計(jì)數(shù)器T1(如圖3-6)。圖3-6 分頻、選擇分頻檔位電路圖(5)LCD顯示部分LCD顯示,1602的八位數(shù)據(jù)I/O口與單片機(jī)的P0口相連,讀寫控制端接P2.0-P2.2口。三個(gè)按鍵中,設(shè)置鍵接P3.2單片機(jī)按外部中斷0接口,當(dāng)按鍵按下后,置P3.2口低電平,單片機(jī)中斷。S1、S2為頻率/周期、閘門時(shí)間加/減選擇按鍵(如圖3-7)。圖3-7 LCD顯示部分電路圖4、 軟件設(shè)計(jì)(1) 主程序流程圖設(shè)計(jì)本次程序設(shè)計(jì)采用的是C語言程序設(shè)計(jì),其設(shè)計(jì)流程圖4-1所示:圖4-1主程序流程圖(2) 子程序流程圖設(shè)計(jì)<

9、;1>顯示程序: LCD顯示程序設(shè)計(jì)流程如圖4-2所示:圖4-2顯示程序流程圖<2>頻率測量程序框圖:頻率測量程序的整體架構(gòu)如圖4-3所示:圖4-3頻率測量框架圖(3)中斷服務(wù)流程圖 INT0中斷流程圖如圖4-4所示:圖4-4INT0中斷流程圖(4)程序代碼#include <AT89x52.h>#include <stdio.h>#include <math.h>#include <intrins.h>float f; /頻率float p; /周期float sj; /閘門時(shí)間char idata buff20;char f

10、lag=0; /頻率、周期選擇標(biāo)志位char xs=0; /設(shè)置閘門時(shí)間結(jié)束后是否顯示結(jié)果的標(biāo)志位unsigned char m=0,n=0,yichu=0,fenpin; /m定時(shí)中斷次數(shù) n計(jì)數(shù)中斷次數(shù) yichu判斷是定時(shí)/器還是計(jì)數(shù)器溢出#define Key_Set P3#define K1 0xf7 /11110111 P33#define K2 0xef/11101111 P34#define NO_Set 0xff#define Freq 0#define Peri 1sbit B153=P24;sbit A153=P23;sbit P17=P34;sbit P16=P33;s

11、bit P35=P35;sbit Set=P32;unsigned char LCD_Wait(void);void LCD_Write(bit style, unsigned char input);void LCD_SetDisplay(unsigned char DisplayMode);void LCD_SetInput(unsigned char InputMode);void LCD_Initial();void GotoXY(unsigned char x, unsigned char y);void Print(unsigned char *str);void C52_Init

12、ial();void Delay(unsigned int t);void display(float f);void cepin();void panduan();void timedisplay(float sj);void Time_Set1();void Time_Set2();void t0();void t1();/*模塊名稱 LCD1602顯示程序*/*端口定義 */sbit LcdRs= P20;sbit LcdRw= P21;sbit LcdEn= P22;sfr DBPort= 0x80; /P0=0x80,P1=0x90,P2=0xA0,P3=0xB0.數(shù)據(jù)端口/*內(nèi)部等

13、待函數(shù)*/unsigned char LCD_Wait(void) LcdRs=0; /寄存器選擇輸入端 1:數(shù)據(jù) 0:指令 LcdRw=1; _nop_(); /RW:為0:寫狀態(tài);為1:讀狀態(tài); LcdEn=1; _nop_(); /使能輸入端,讀狀態(tài),高電平有效;寫狀態(tài),下降沿有效 LcdEn=0; return DBPort; /*向LCD寫入命令或數(shù)據(jù)*/#define LCD_COMMAND 0 / Command#define LCD_DATA 1 / Data#define LCD_CLEAR_SCREEN 0x01 / 清屏#define LCD_HOMING 0x02 /

14、光標(biāo)返回原點(diǎn)void LCD_Write(bit style, unsigned char input) LcdEn=0; LcdRs=style; LcdRw=0; _nop_(); DBPort=input; _nop_();/注意順序 LcdEn=1; _nop_();/注意順序 LcdEn=0; _nop_(); LCD_Wait();/*設(shè)置顯示模式*/#define LCD_SHOW 0x04 /顯示開#define LCD_HIDE 0x00 /顯示關(guān) #define LCD_CURSOR 0x02 /顯示光標(biāo)#define LCD_NO_CURSOR 0x00 /無光標(biāo) #de

15、fine LCD_FLASH 0x01 /光標(biāo)閃動(dòng)#define LCD_NO_FLASH 0x00 /光標(biāo)不閃動(dòng)void LCD_SetDisplay(unsigned char DisplayMode) LCD_Write(LCD_COMMAND, 0x08|DisplayMode); /*設(shè)置輸入模式*/#define LCD_AC_UP 0x02#define LCD_AC_DOWN 0x00 / default#define LCD_MOVE 0x01 / 畫面可平移#define LCD_NO_MOVE 0x00 /defaultvoid LCD_SetInput(unsigned

16、 char InputMode) LCD_Write(LCD_COMMAND, 0x04|InputMode);/*初始化LCD*/void LCD_Initial() LcdEn=0; LCD_Write(LCD_COMMAND,0x38); /8位數(shù)據(jù)端口,2行顯示,5*7點(diǎn)陣 LCD_Write(LCD_COMMAND,0x38); LCD_SetDisplay(LCD_SHOW|LCD_NO_CURSOR); /開啟顯示, 無光標(biāo) LCD_Write(LCD_COMMAND,LCD_CLEAR_SCREEN); /清屏 LCD_SetInput(LCD_AC_UP|LCD_NO_MOV

17、E); /AC遞增, 畫面不動(dòng)/*/void GotoXY(unsigned char x, unsigned char y)if(y=0) LCD_Write(LCD_COMMAND,0x80|x);if(y=1) LCD_Write(LCD_COMMAND,0x80|(x-0x40);void Print(unsigned char *str) while(*str!='0') LCD_Write(LCD_DATA,*str); str+; /* 模塊名稱: 頻率測量程序 * 測量范圍:0.1Hz4MHz,閘門時(shí)間:0.05s10s可調(diào)。 */*89c52初始化*/void

18、 C52_Initial() sj=1000000.00; Key_Set=0xff; TMOD=0x51; / 01010001 T1為計(jì)數(shù)器,T0為定時(shí)器 EA=1; ET0=1; ET1=1; EX0=1; PX0=1; /外部中斷0設(shè)置為高優(yōu)先級(jí) IT0=0; /電平觸發(fā)方式/*延時(shí)子程序*/void Delay(unsigned int t) /t隨著數(shù)值越大,誤差趨于平衡.unsigned char i; while(t-) for(i=0;i<123;i+); /*計(jì)數(shù)中*/void t1(void) interrupt 3 /計(jì)數(shù)器1溢出,yichu=1n+;yichu=

19、1;TH1=0;TL1=0;/*定時(shí)中斷*/void t0(void) interrupt 1 m+;yichu=2; /定時(shí)器0溢出,yichu=2TH0=0x3c; /定時(shí)50msTL0=0xb0;/*頻率顯示*/void Fdisplay(float f) if(f>999400.00) if(f<4000400.00) sprintf(buff," F=%2.4fmHz ",(f/1000000.00); else if(f>1040.00) sprintf(buff," F=%4.2fkHz ",(f/1000.00); el

20、se if(f>0.06) sprintf(buff," F=%3.2fHz ",f); GotoXY(0,1); Print(buff);/*周期顯示*/void Pdisplay(float p) if(p>999400.00) if(p<10004000.00) sprintf(buff," Cycle:%2.4fs ",(p/1000000.00); else sprintf(buff,"error(Time or F)",p); else if(p>9950.00) sprintf(buff,&quo

21、t; Cycle:%4.2fms ",(p/1000.00); else if(p>0.248) sprintf(buff," Cycle:%3.3fus ",p); else sprintf(buff,"error(Time or F)",p); GotoXY(0,1); Print(buff); /*測試頻率*/void cepin()unsigned char a;unsigned long js;m=0;n=0;TMOD=0x51;TH0=0x3c; /定時(shí)50msTL0=0xb0;TH1=0;TL1=0;a=sj/50000.0

22、0;TCON=0x50; /啟動(dòng)定時(shí)器和計(jì)數(shù)器while(m!=a);TCON=0;js=TH1*256+n*65536+TL1;f=(js/(sj/1000000.00)*fenpin;p=sj/(js*fenpin);if(xs=0) /設(shè)置結(jié)束后第一次不顯示結(jié)果if(flag=Freq) Fdisplay(f);else Pdisplay(p); /*判斷頻率*/void panduan()xs=0; /設(shè)置結(jié)束后第二次循環(huán)顯示結(jié)果B153=1; /選擇16分頻A153=0;yichu=0;TMOD=0x51; TH0=0xff; /定時(shí)器0 200usTL0=0x38;TH1=0xff

23、; /計(jì)數(shù)器1 100脈沖TL1=0x9c;TR0=1; /啟動(dòng)定時(shí)器0和計(jì)數(shù)器1TR1=1;while(yichu=0); /如果沒有溢出一直循環(huán)TR0=0; /已經(jīng)溢出關(guān)閉定時(shí)器0和計(jì)數(shù)器1TR1=0; if(yichu=1) /計(jì)數(shù)器先溢出:在200ms內(nèi)測得的脈沖過多,說明頻率較高(f>500khz) fenpin=16; /轉(zhuǎn)為測16分頻后的頻率 cepin();else /定時(shí)器先溢出:100個(gè)脈沖的時(shí)間比較短,即頻率較低,可以減少分頻數(shù) yichu=0; B153=0; A153=1; TH0=0xfc; /定時(shí)器0 1ms TL0=0x18; TH1=0xff; /計(jì)數(shù)器

24、1 100個(gè)脈沖 TL1=0x9c; TR0=1; /啟動(dòng)定時(shí)器0和計(jì)數(shù)器1 TR1=1; while(yichu=0); /如果沒溢出一直循環(huán) TR0=0; /已經(jīng)溢出關(guān)閉定時(shí)器0和計(jì)數(shù)器1 TR1=0; if(yichu=1) /計(jì)數(shù)器先溢出:在1ms內(nèi)測得的脈沖過多,說明頻率較高(1khz<f<500khz) fenpin=4; /轉(zhuǎn)為測4分頻后測頻率 cepin(); else /定時(shí)器先溢出:100個(gè)脈沖的時(shí)間比較短,即頻率較低 fenpin=1; B153=0; A153=0; cepin(); /*顯示閘門時(shí)間*/ void timedisplay(float GTi

25、me)sprintf(buff,"GTime=%7.0fus ",GTime);GotoXY(0,1);Print(buff);Delay(50);/*減按鍵*/void Time_Set2()Delay(1000);if(P17=1) sj=sj-50000.00; if(sj>50000.00) timedisplay(sj); else sj=50000.00; timedisplay(sj); elsewhile(P17=0) Delay(500); sj=sj-500000.00; if(sj>50000.00) timedisplay(sj); el

26、se sj=50000.00; timedisplay(sj); /*加按鍵*/ void Time_Set1()Delay(1000)if(P16=1) sj=sj+50000.00; if(sj<10000000.00) timedisplay(sj); else sj=10000000.00; timedisplay(sj); elsewhile(P16=0) Delay(500); sj=sj+500000.00; if(sj<10000000.00) timedisplay(sj); else sj=10000000.00; timedisplay(sj); /按住1s快

27、加0.5s /*閘門時(shí)間設(shè)置*/void Time_Set() interrupt 0 EA=0; /防止無限中斷 Delay(100); if(Set=0) Delay(1000); /判斷處于哪種設(shè)置狀態(tài) if(Set=1) GotoXY(0,1); Print(" Press Button "); GotoXY(0,0); Print(" T Settings "); while(Set=1) switch(Key_Set) case K1: Time_Set1();break; case K2: Time_Set2();break; defaul

28、t: break; else /選擇測試頻率或周期 GotoXY(0,1); Print(" 1.Freq 2.Cycle"); GotoXY(0,0); Print(" Select "); while(Set=0); /等待設(shè)置按鍵松開 while(Set=1) switch(Key_Set) case K1: flag=Freq; GotoXY(0,1); Print(" -Freq- "); break; case K2: flag=Peri; GotoXY(0,1); Print(" -Cycle- ")

29、; break; default: break; GotoXY(0,0); Print(" -Cymometer-"); GotoXY(0,1); Print(" Waiting. "); while(Set=0); /防止再次進(jìn)入中斷 EA=1; xs=1; /不顯示此次結(jié)果./*主程序*/void main()LCD_Initial(); /LCD初始化GotoXY(0,0);Print(" -Cymometer-");GotoXY(0,1);Print(" Huixi && Xia");Del

30、ay(1000);GotoXY(0,1);Print(" Waiting. ");C52_Initial(); /89c52初始化while(1) panduan(); 5、 調(diào)試過程程序的設(shè)計(jì)及調(diào)試過程中離不開89C52的開發(fā)系統(tǒng)板電路圖,起初忽視了開發(fā)板上的K3鍵用到的P35引腳也是定時(shí)器T1的信號(hào)輸入引腳。后來在其他管腳的分配也曾出現(xiàn)錯(cuò)誤,不過通過調(diào)試、修改都一一改正。仿真的時(shí)候默認(rèn)晶振是12MHz,故程序編寫的時(shí)候按12MHz設(shè)計(jì)的定時(shí),以至于在實(shí)體時(shí)候測量不是很準(zhǔn)確,后通過重新計(jì)算、修改程序達(dá)到了較高的準(zhǔn)確率。但最終在實(shí)體系統(tǒng)演示中犯了一個(gè)極其幼稚的錯(cuò)誤,未拿掉短接帽,以至于起初LCD未任何顯示,浪費(fèi)了不少時(shí)間去找程序的問題,還是自己不夠認(rèn)真細(xì)心。6、 實(shí)驗(yàn)結(jié)果(1) 最終實(shí)物圖最終實(shí)體電路系統(tǒng)如圖6-1。圖6-1最終實(shí)物圖該課程設(shè)計(jì)驗(yàn)收時(shí)結(jié)果符合設(shè)計(jì)要求,可測量矩形波,方波,三角波,鋸齒波等信號(hào)的頻率

溫馨提示

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

評(píng)論

0/150

提交評(píng)論