欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4119|回復(fù): 5
收起左側(cè)

51單片機(jī)連LCD1602無法顯示的問題

[復(fù)制鏈接]
ID:327994 發(fā)表于 2020-3-17 01:57 | 顯示全部樓層 |閱讀模式
試了很多方法都無法讓顯示屏正常顯示,不知道是什么原因。用的是mini51單片機(jī)(AT89C52),顯示屏只是亮,一直無顯示。不知有沒有做過這個(gè)項(xiàng)目的或者熟悉的幫我看看。
213.jpg

以下是代碼部分:原計(jì)劃做一個(gè)蜂鳴器警報(bào)和按鍵解除警報(bào)的,但現(xiàn)在卡在LCD顯示上了
  1. #include <reg52.h>
  2. #include <intrins.h>

  3. #define uint unsigned int
  4. #define uchar unsigned char

  5. sbit busy=P0^7;//檢測忙
  6. sbit bee= P1^5;//蜂鳴器
  7. sbit io = P1^1 ;//數(shù)據(jù)接收端口
  8. sbit rs = P2^0 ; //數(shù)據(jù)命令選擇
  9. sbit rw = P2^1 ;//讀寫選擇
  10. sbit e  = P2^2 ;//使能
  11. sbit K1 = P1^2;//按鍵終止警報(bào)
  12. sbit K2 = P1^3;//按鍵恢復(fù)警報(bào)

  13. uchar Tem,Hum,TemHigh,TemLow,HumHigh,HumLow;//溫濕度高低8位數(shù)據(jù)
  14. uchar TemWarnHigh,TemWarnLow,HumWarnHigh,HumWarnLow;//報(bào)警的溫度和濕度
  15. uchar data1;//傳輸?shù)臄?shù)據(jù)存放
  16. uchar BeepFlag;//按鍵報(bào)警標(biāo)志,1為禁用,0為啟用

  17. //設(shè)置報(bào)警溫濕度上下限
  18. #define TemWarnHigh 24
  19. #define TemWarnLow  16
  20. #define HumWarnHigh 60
  21. #define HumWarnLow  50


  22. /**********延時(shí)模塊**********/

  23. void Delay10us()                //11.0592MHz
  24. {
  25.         uchar i;

  26.         _nop_();
  27.         i = 25;
  28.         while (--i);
  29. }

  30. void DelayLong(uint times)
  31. {
  32.     while(times--)
  33.         Delay10us();
  34. }

  35. /**********LCD模塊**********/

  36. void LCDBusy()//測試LCD忙碌狀態(tài)
  37. {
  38.          uchar result ;
  39.          rs = 0 ;
  40.          rw = 1 ;
  41.          do
  42.      {
  43.          e  = 1 ;
  44.          result = busy;
  45.          e  = 0 ;
  46.      }while(result & 0x80);//判斷D7是否為1,D7=1表示忙
  47. }

  48. void LCDWriteCmd(uchar cmd)// 寫指令
  49. {
  50.         LCDBusy() ;//判斷LCD是否忙
  51.         rs = 0 ;
  52.         rw = 0 ;
  53.         P0 = cmd ;//寫入指令
  54.         e  = 1 ;
  55.         DelayLong(10);
  56.         e  = 0 ;
  57.         DelayLong(10);
  58. }

  59. void LCDWriteAddr(uchar addr)//寫地址
  60. {
  61.         LCDWriteCmd(addr|0x80) ;
  62. }

  63. void LCDWriteByte(uchar dat)//寫字節(jié)
  64. {
  65.         LCDBusy() ;//判斷LCD是否忙
  66.           rs = 1 ;
  67.           rw = 0 ;
  68.           P0 = dat ;//寫入數(shù)據(jù)
  69.           e  = 1 ;
  70.           DelayLong(10);
  71.           e  = 0 ;
  72.           DelayLong(10);
  73. }

  74. void LCDInit()// LCD初始化
  75. {
  76.          LCDWriteCmd(0x38) ;
  77.          DelayLong(500);
  78.          LCDWriteCmd(0x38) ;
  79.      DelayLong(500);
  80.          LCDWriteCmd(0x38) ;
  81.      DelayLong(500);
  82.          LCDWriteCmd(0x38) ;//設(shè)置16×2顯示,每個(gè)方塊5×7點(diǎn)陣,8位數(shù)據(jù)接口
  83.          LCDWriteCmd(0x0C) ;//顯示器開,光標(biāo)關(guān)閉
  84.          LCDWriteCmd(0x06) ;//文字不動(dòng),地址自動(dòng)加一
  85.          LCDWriteCmd(0x01) ;//清屏
  86. }

  87. void LCDDisplay(uchar addr, uchar q)//在某一地址顯示一字節(jié)
  88. {
  89.          Delay10us();
  90.          LCDWriteAddr(addr) ;
  91.      LCDWriteByte(q) ;
  92.          Delay10us();
  93. }

  94. void LCDWarning()
  95. {
  96.     if(Tem>=TemWarnHigh)  //檢測的溫度高于額定上限
  97.     {
  98.         LCDDisplay(0x08,'T') ;
  99.         LCDDisplay(0x09,'e') ;
  100.         LCDDisplay(0x0A,'m') ;
  101.         LCDDisplay(0x0B,'H') ;
  102.         LCDDisplay(0x0C,'i') ;
  103.         LCDDisplay(0x0D,'g') ;
  104.         LCDDisplay(0x0E,'h') ;
  105.         LCDDisplay(0x0F,'!') ;
  106.     }

  107.     if(Tem<=TemWarnLow)  //檢測的溫度低于額定下限
  108.     {
  109.         LCDDisplay(0x08,'T') ;
  110.         LCDDisplay(0x09,'e') ;
  111.         LCDDisplay(0x0A,'m') ;
  112.         LCDDisplay(0x0B,'L') ;
  113.         LCDDisplay(0x0C,'o') ;
  114.         LCDDisplay(0x0D,'w') ;
  115.         LCDDisplay(0x0E,'!') ;
  116.     }

  117.         if(Hum>=HumWarnHigh)  //檢測的濕度高于額定上限
  118.     {
  119.         LCDDisplay(0x48,'H') ;
  120.         LCDDisplay(0x49,'u') ;
  121.         LCDDisplay(0x4A,'m') ;
  122.         LCDDisplay(0x4B,'H') ;
  123.         LCDDisplay(0x4C,'i') ;
  124.         LCDDisplay(0x4D,'g') ;
  125.         LCDDisplay(0x4E,'h') ;
  126.         LCDDisplay(0x4F,'!') ;
  127.     }

  128.     if(Hum<=HumWarnLow)  //檢測的濕度低于額定下限
  129.     {
  130.         LCDDisplay(0x48,'H') ;
  131.         LCDDisplay(0x49,'u') ;
  132.         LCDDisplay(0x4A,'m') ;
  133.         LCDDisplay(0x4B,'L') ;
  134.         LCDDisplay(0x4C,'o') ;
  135.         LCDDisplay(0x4D,'w') ;
  136.         LCDDisplay(0x4E,'!') ;
  137.     }

  138. }

  139. /**********蜂鳴器模塊***********/

  140. void BEEP()  //報(bào)警函數(shù)
  141. {
  142.     if(Tem<=TemWarnLow || Tem>=TemWarnHigh)  //檢測的溫度超標(biāo)
  143.         bee=0; //報(bào)警

  144.         if(Hum<=HumWarnLow || Hum>=HumWarnHigh)  //檢測的濕度超標(biāo)
  145.         bee=0; //報(bào)警
  146. }

  147. /**********DHT11模塊***********/

  148. void DHTStart()//開始信號(hào)
  149. {
  150.         io=1;//拉高data
  151.         Delay10us();
  152.         io=0;
  153.         DelayLong(180);//微處理器IO設(shè)置為高電平且時(shí)間>18ms
  154.         io=1;//再拉高data
  155.     Delay10us();
  156. }

  157. uchar DHTReceive()//接收一個(gè)字節(jié)
  158. {
  159.         uint i;
  160.         uchar temp,count;//temp記錄是0還是1,count計(jì)數(shù)收到第幾位
  161.         data1=0;
  162.         for(i=0;i<8;i++)//一次接受8位
  163.         {
  164.         temp=0;//初始收到0,低電平
  165.                 DelayLong(4);//延時(shí)40us后判斷收到的電平
  166.                 if(io==1)temp=1;//如果收到1,那么傳送的是1,否則傳送的是0
  167.                 count=2;
  168.                 while((io)&&count++);//io=0則等待,count防止死循環(huán)
  169.                 if(count==1)break;
  170.                 data1<<=1;//左移1位
  171.                 data1|=temp;//傳輸當(dāng)前位給data存儲(chǔ)
  172.         }
  173.         return data1;
  174. }

  175. void receive()//接收數(shù)據(jù)
  176. {
  177.         uchar TemH,TemL,HumH,HumL,check,sum;
  178.         uint time;
  179.         DHTStart();//開始信號(hào)

  180.         //DHT11收到開始信號(hào)后進(jìn)行應(yīng)答
  181.         time=8;
  182.         while(!io & time>0)time--;//等待DHT拉高80us
  183.         time=8;
  184.         while(io && time>0)time--;//等待DHT拉低80us

  185.         //開始接收數(shù)據(jù)
  186.         io=1;//主機(jī)拉高data
  187.         Delay10us();
  188.         if(!io)//讀取DHT11響應(yīng)信號(hào),DHT11拉低data
  189.         {
  190.         HumH=DHTReceive();//濕度高8位
  191.         HumL=DHTReceive();//濕度低8位
  192.         TemH=DHTReceive();//溫度高8位
  193.         TemL=DHTReceive();//溫度低8位
  194.         check=DHTReceive();//校驗(yàn)位
  195.         io=0;//拉低延時(shí)50us,代表讀取結(jié)束
  196.         DelayLong(5);
  197.         io=1;

  198.         sum=HumH+HumL+TemH+TemL;//校驗(yàn)
  199.         if(sum==check)//校驗(yàn)通過數(shù)據(jù)錄入
  200.         {
  201.             HumHigh=HumH;
  202.             HumLow=HumL;
  203.             TemHigh=TemH;
  204.             TemLow=TemL;
  205.         }
  206.         }
  207. }

  208. /**********主程序**********/

  209. void main()
  210. {
  211.         BeepFlag=1;
  212.     LCDInit();//LCD初始化
  213.         while(1)
  214.         {

  215.         LCDDisplay(0x00,'T') ; //LCD顯示Tem:
  216.         LCDDisplay(0x01,'e') ;
  217.         LCDDisplay(0x02,'m') ;
  218.         LCDDisplay(0x03,':') ;

  219.         LCDDisplay(0x40,'H') ; //LCD顯示Hum:
  220.         LCDDisplay(0x41,'u') ;
  221.         LCDDisplay(0x42,'m') ;
  222.         LCDDisplay(0x43,':') ;

  223.                 receive();
  224.                 LCDDisplay(0x04,TemHigh/10+0x30) ;//溫度顯示
  225.                 LCDDisplay(0x05,TemLow%10+0x30) ;
  226.                 LCDDisplay(0x44,HumHigh/10+0x30) ;//濕度顯示
  227.                 LCDDisplay(0x45,HumLow%10+0x30) ;
  228.                 LCDWarning();//超標(biāo)顯示

  229.                 if(!K1)BeepFlag=0;//若K1被按下,則禁用蜂鳴器
  230.         if(!K2)BeepFlag=1;//若K2被按下,則啟用蜂鳴器
  231.                 if(BeepFlag) BEEP();
  232.         }
  233. }
復(fù)制代碼




回復(fù)

使用道具 舉報(bào)

ID:452950 發(fā)表于 2020-3-17 14:26 | 顯示全部樓層
先看開發(fā)板引腳定義檢查顯示屏有沒有插反,有沒有跳線帽影響到顯示屏,調(diào)節(jié)一下對(duì)比度
回復(fù)

使用道具 舉報(bào)

ID:704545 發(fā)表于 2020-3-17 15:37 | 顯示全部樓層
檢查接口對(duì)應(yīng)是否正確,把對(duì)比度調(diào)整到屏幕顯示有陰影了再調(diào)回去一點(diǎn)。對(duì)比度調(diào)節(jié)偏太遠(yuǎn)了就算程序正常也無法顯示出來。先保證硬件正常再看程序有沒有問題。
回復(fù)

使用道具 舉報(bào)

ID:584814 發(fā)表于 2020-3-17 17:01 | 顯示全部樓層
程序都是抄來的一般不會(huì)錯(cuò)。先查接口對(duì)應(yīng)管腳,再調(diào)時(shí)序(可以換幾個(gè)不同的網(wǎng)上程序),個(gè)人經(jīng)驗(yàn)是現(xiàn)成的四線(僅數(shù)據(jù)線少一半)驅(qū)動(dòng)程序一般比較容易啟動(dòng)。1602還是比較容易上手的,網(wǎng)上極客甚至能用單線驅(qū)動(dòng)(自行百度)。
回復(fù)

使用道具 舉報(bào)

ID:372579 發(fā)表于 2020-3-17 17:04 | 顯示全部樓層
樓主問題解決了嗎
回復(fù)

使用道具 舉報(bào)

ID:155507 發(fā)表于 2020-3-17 22:03 | 顯示全部樓層
單片機(jī)是根據(jù)硬件電路圖的設(shè)計(jì)來寫代碼的
QX-Mini51-LCD.jpg



  1. #include <reg52.h>
  2. #include <intrins.h>

  3. #define uint unsigned int
  4. #define uchar unsigned char

  5. sbit busy= P2^7; //P0^7;//檢測忙
  6. sbit bee= P3^6;  //P1^5;//蜂鳴器
  7. sbit io = P1^1; //數(shù)據(jù)接收端口
  8. sbit rs = P0^7; //P2^0 ; //數(shù)據(jù)命令選擇
  9. sbit rw = P0^6; //P2^1 ;//讀寫選擇
  10. sbit e  = P0^5; //P2^2 ;//使能
  11. sbit K1 = P3^5; //P1^2;//按鍵終止警報(bào)
  12. sbit K2 = P3^4; //P1^3;//按鍵恢復(fù)警報(bào)

  13. uchar Tem,Hum,TemHigh,TemLow,HumHigh,HumLow;//溫濕度高低8位數(shù)據(jù)
  14. uchar TemWarnHigh,TemWarnLow,HumWarnHigh,HumWarnLow;//報(bào)警的溫度和濕度
  15. uchar data1;//傳輸?shù)臄?shù)據(jù)存放
  16. uchar BeepFlag;//按鍵報(bào)警標(biāo)志,1為禁用,0為啟用

  17. //設(shè)置報(bào)警溫濕度上下限
  18. #define TemWarnHigh 24
  19. #define TemWarnLow  16
  20. #define HumWarnHigh 60
  21. #define HumWarnLow  50


  22. /**********延時(shí)模塊**********/

  23. void Delay10us()                //11.0592MHz
  24. {
  25.         uchar i;

  26.         _nop_();
  27.         i = 25;
  28.         while (--i);
  29. }

  30. void DelayLong(uint times)
  31. {
  32.         while(times--)
  33.         Delay10us();
  34. }

  35. /**********LCD模塊**********/

  36. void LCDBusy()//測試LCD忙碌狀態(tài)
  37. {
  38.         uchar result ;
  39.         rs = 0 ;
  40.         rw = 1 ;
  41.         do
  42.         {
  43.                 e  = 1 ;
  44.                 result = busy;
  45.                 e  = 0 ;
  46.         }while(result & 0x80);//判斷D7是否為1,D7=1表示忙
  47. }

  48. void LCDWriteCmd(uchar cmd)// 寫指令
  49. {
  50.         LCDBusy() ;//判斷LCD是否忙
  51.         rs = 0 ;
  52.         rw = 0 ;
  53.         P2 = cmd ;//寫入指令
  54.         e  = 1 ;
  55.         DelayLong(10);
  56.         e  = 0 ;
  57.         DelayLong(10);
  58. }

  59. void LCDWriteAddr(uchar addr)//寫地址
  60. {
  61.         LCDWriteCmd(addr|0x80) ;
  62. }

  63. void LCDWriteByte(uchar dat)//寫字節(jié)
  64. {
  65.         LCDBusy() ;//判斷LCD是否忙
  66.         rs = 1 ;
  67.         rw = 0 ;
  68.         P2 = dat ;//寫入數(shù)據(jù)
  69.         e  = 1 ;
  70.         DelayLong(10);
  71.         e  = 0 ;
  72.         DelayLong(10);
  73. }

  74. void LCDInit()// LCD初始化
  75. {
  76.         LCDWriteCmd(0x38) ;
  77.         DelayLong(500);
  78.         LCDWriteCmd(0x38) ;
  79.         DelayLong(500);
  80.         LCDWriteCmd(0x38) ;
  81.         DelayLong(500);
  82.         LCDWriteCmd(0x38) ;//設(shè)置16×2顯示,每個(gè)方塊5×7點(diǎn)陣,8位數(shù)據(jù)接口
  83.         LCDWriteCmd(0x0C) ;//顯示器開,光標(biāo)關(guān)閉
  84.         LCDWriteCmd(0x06) ;//文字不動(dòng),地址自動(dòng)加一
  85.         LCDWriteCmd(0x01) ;//清屏
  86. }

  87. void LCDDisplay(uchar addr, uchar q)//在某一地址顯示一字節(jié)
  88. {
  89.         Delay10us();
  90.         LCDWriteAddr(addr) ;
  91.         LCDWriteByte(q) ;
  92.         Delay10us();
  93. }

  94. void LCDWarning()
  95. {
  96.         if(Tem>=TemWarnHigh)  //檢測的溫度高于額定上限
  97.         {
  98.                 LCDDisplay(0x08,'T') ;
  99.                 LCDDisplay(0x09,'e') ;
  100.                 LCDDisplay(0x0A,'m') ;
  101.                 LCDDisplay(0x0B,'H') ;
  102.                 LCDDisplay(0x0C,'i') ;
  103.                 LCDDisplay(0x0D,'g') ;
  104.                 LCDDisplay(0x0E,'h') ;
  105.                 LCDDisplay(0x0F,'!') ;
  106.         }

  107.         if(Tem<=TemWarnLow)  //檢測的溫度低于額定下限
  108.         {
  109.                 LCDDisplay(0x08,'T') ;
  110.                 LCDDisplay(0x09,'e') ;
  111.                 LCDDisplay(0x0A,'m') ;
  112.                 LCDDisplay(0x0B,'L') ;
  113.                 LCDDisplay(0x0C,'o') ;
  114.                 LCDDisplay(0x0D,'w') ;
  115.                 LCDDisplay(0x0E,'!') ;
  116.         }

  117.         if(Hum>=HumWarnHigh)  //檢測的濕度高于額定上限
  118.         {
  119.                 LCDDisplay(0x48,'H') ;
  120.                 LCDDisplay(0x49,'u') ;
  121.                 LCDDisplay(0x4A,'m') ;
  122.                 LCDDisplay(0x4B,'H') ;
  123.                 LCDDisplay(0x4C,'i') ;
  124.                 LCDDisplay(0x4D,'g') ;
  125.                 LCDDisplay(0x4E,'h') ;
  126.                 LCDDisplay(0x4F,'!') ;
  127.         }

  128.         if(Hum<=HumWarnLow)  //檢測的濕度低于額定下限
  129.         {
  130.                 LCDDisplay(0x48,'H') ;
  131.                 LCDDisplay(0x49,'u') ;
  132.                 LCDDisplay(0x4A,'m') ;
  133.                 LCDDisplay(0x4B,'L') ;
  134.                 LCDDisplay(0x4C,'o') ;
  135.                 LCDDisplay(0x4D,'w') ;
  136.                 LCDDisplay(0x4E,'!') ;
  137.         }

  138. }

  139. /**********蜂鳴器模塊***********/

  140. void BEEP()  //報(bào)警函數(shù)
  141. {
  142.         if(Tem<=TemWarnLow || Tem>=TemWarnHigh)  //檢測的溫度超標(biāo)
  143.         bee=0; //報(bào)警

  144.         if(Hum<=HumWarnLow || Hum>=HumWarnHigh)  //檢測的濕度超標(biāo)
  145.         bee=0; //報(bào)警
  146. }

  147. /**********DHT11模塊***********/

  148. void DHTStart()//開始信號(hào)
  149. {
  150.         io=1;//拉高data
  151.         Delay10us();
  152.         io=0;
  153.         DelayLong(180);//微處理器IO設(shè)置為高電平且時(shí)間>18ms
  154.         io=1;//再拉高data
  155.         Delay10us();
  156. }

  157. uchar DHTReceive()//接收一個(gè)字節(jié)
  158. {
  159.         uint i;
  160.         uchar temp,count;//temp記錄是0還是1,count計(jì)數(shù)收到第幾位
  161.         data1=0;
  162.         for(i=0;i<8;i++)//一次接受8位
  163.         {
  164.                 temp=0;//初始收到0,低電平
  165.                 DelayLong(4);//延時(shí)40us后判斷收到的電平
  166.                 if(io==1)temp=1;//如果收到1,那么傳送的是1,否則傳送的是0
  167.                 count=2;
  168.                 while((io)&&count++);//io=0則等待,count防止死循環(huán)
  169.                 if(count==1)break;
  170.                 data1<<=1;//左移1位
  171.                 data1|=temp;//傳輸當(dāng)前位給data存儲(chǔ)
  172.         }
  173.         return data1;
  174. }

  175. void receive()//接收數(shù)據(jù)
  176. {
  177.         uchar TemH,TemL,HumH,HumL,check,sum;
  178.         uint time;
  179.         DHTStart();//開始信號(hào)

  180.         //DHT11收到開始信號(hào)后進(jìn)行應(yīng)答
  181.         time=8;
  182.         while(!io & time>0)time--;//等待DHT拉高80us
  183.         time=8;
  184.         while(io && time>0)time--;//等待DHT拉低80us

  185.         //開始接收數(shù)據(jù)
  186.         io=1;//主機(jī)拉高data
  187.         Delay10us();
  188.         if(!io)//讀取DHT11響應(yīng)信號(hào),DHT11拉低data
  189.         {
  190.                 HumH=DHTReceive();//濕度高8位
  191.                 HumL=DHTReceive();//濕度低8位
  192.                 TemH=DHTReceive();//溫度高8位
  193.                 TemL=DHTReceive();//溫度低8位
  194.                 check=DHTReceive();//校驗(yàn)位
  195.                 io=0;//拉低延時(shí)50us,代表讀取結(jié)束
  196.                 DelayLong(5);
  197.                 io=1;

  198.                 sum=HumH+HumL+TemH+TemL;//校驗(yàn)
  199.                 if(sum==check)//校驗(yàn)通過數(shù)據(jù)錄入
  200.                 {
  201.                         HumHigh=HumH;
  202.                         HumLow=HumL;
  203.                         TemHigh=TemH;
  204.                         TemLow=TemL;
  205.                 }
  206.         }
  207. }

  208. /**********主程序**********/

  209. void main()
  210. {
  211.         BeepFlag=1;
  212.         LCDInit();//LCD初始化
  213.         while(1)
  214.         {

  215.                 LCDDisplay(0x00,'T') ; //LCD顯示Tem:
  216.                 LCDDisplay(0x01,'e') ;
  217.                 LCDDisplay(0x02,'m') ;
  218.                 LCDDisplay(0x03,':') ;

  219.                 LCDDisplay(0x40,'H') ; //LCD顯示Hum:
  220.                 LCDDisplay(0x41,'u') ;
  221.                 LCDDisplay(0x42,'m') ;
  222.                 LCDDisplay(0x43,':') ;

  223.                 receive();
  224.                 LCDDisplay(0x04,TemHigh/10+0x30) ;//溫度顯示
  225.                 LCDDisplay(0x05,TemLow%10+0x30) ;
  226.                 LCDDisplay(0x44,HumHigh/10+0x30) ;//濕度顯示
  227.                 LCDDisplay(0x45,HumLow%10+0x30) ;
  228.                 LCDWarning();//超標(biāo)顯示

  229.                 if(!K1)BeepFlag=0;//若K1被按下,則禁用蜂鳴器
  230.                 if(!K2)BeepFlag=1;//若K2被按下,則啟用蜂鳴器
  231.                 if(BeepFlag) BEEP();
  232.         }
  233. }

復(fù)制代碼




回復(fù)

使用道具 舉報(bào)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表