久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4416|回復: 7
打印 上一主題 下一主題
收起左側

單片機+LCD12864數字電壓表設計 含源代碼、proteus仿真工程文件

[復制鏈接]
跳轉到指定樓層
樓主
附件包括數字電壓表的單片機源代碼
proteus仿真工程文件
都是自己在網上找的資料,請大家多多指教

仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)


單片機源程序如下:
  1. //---庫函數聲明及相關定義---//
  2. #include <reg51.h>
  3. #include <intrins.h>
  4. #define unint unsigned int
  5. #define unchar unsigned char
  6. #define Databus P1 /*液晶數據總線*/
  7. sbit RS=P3^3;      /*數據\指令 選擇*/
  8. sbit RW=P3^4;      /*讀\寫 選擇*/
  9. sbit EN=P3^2;      /*讀\寫使能*/
  10. sbit cs1=P3^6;     /*片選1*/
  11. sbit cs2=P3^7;     /*片選2*/


  12. sbit clock=P0^4;//時鐘線
  13. sbit dout=P0^2;//數據輸出端
  14. sbit cs=P0^3;//片選(低電平有效)


  15. sbit        DQ=P0^2;//ds18b20與單片機連接口
  16. float f_temp;//浮點型溫度值   
  17. unsigned int tvalue;//溫度值
  18. unsigned char tflag;      
  19. unsigned int temp=0;
  20. unsigned char SegBuf[4]={0};

  21. /********************************/
  22. /* 定義中文字庫    */
  23. /********************************/
  24. unchar code Hzk[]={
  25.         0x40,0x20,0x10,0x0C,0xE3,0x22,0x22,0x22,0xFE,0x22,0x22,0x22,0x22,0x02,0x00,0x00, //年//0
  26.         0x04,0x04,0x04,0x04,0x07,0x04,0x04,0x04,0xFF,0x04,0x04,0x04,0x04,0x04,0x04,0x00,
  27.         0x00,0x00,0x00,0x00,0x00,0xFF,0x11,0x11,0x11,0x11,0x11,0xFF,0x00,0x00,0x00,0x00,//月//1
  28.         0x00,0x40,0x20,0x10,0x0C,0x03,0x01,0x01,0x01,0x21,0x41,0x3F,0x00,0x00,0x00,0x00,
  29.         0x00,0x00,0x00,0xFE,0x42,0x42,0x42,0x42,0x42,0x42,0x42,0xFE,0x00,0x00,0x00,0x00,//日//2
  30.         0x00,0x00,0x00,0x3F,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x3F,0x00,0x00,0x00,0x00,
  31.         0x00,0x00,0x00,0xBE,0x2A,0x2A,0x2A,0xEA,0x2A,0x2A,0x2A,0x2A,0x3E,0x00,0x00,0x00,//星//3
  32.         0x00,0x48,0x46,0x41,0x49,0x49,0x49,0x7F,0x49,0x49,0x49,0x49,0x49,0x41,0x40,0x00,
  33.         0x00,0x04,0xFF,0x54,0x54,0x54,0xFF,0x04,0x00,0xFE,0x22,0x22,0x22,0xFE,0x00,0x00,//期//4
  34.         0x42,0x22,0x1B,0x02,0x02,0x0A,0x33,0x62,0x18,0x07,0x02,0x22,0x42,0x3F,0x00,0x00,
  35.         0x00,0xFC,0x44,0x44,0x44,0xFC,0x10,0x90,0x10,0x10,0x10,0xFF,0x10,0x10,0x10,0x00,//時//5
  36.         0x00,0x07,0x04,0x04,0x04,0x07,0x00,0x00,0x03,0x40,0x80,0x7F,0x00,0x00,0x00,0x00,
  37.         0x80,0x40,0x20,0x98,0x87,0x82,0x80,0x80,0x83,0x84,0x98,0x30,0x60,0xC0,0x40,0x00,//分//6
  38.         0x00,0x80,0x40,0x20,0x10,0x0F,0x00,0x00,0x20,0x40,0x3F,0x00,0x00,0x00,0x00,0x00,
  39.         0x12,0x12,0xD2,0xFE,0x91,0x11,0xC0,0x38,0x10,0x00,0xFF,0x00,0x08,0x10,0x60,0x00,//秒//7
  40.         0x04,0x03,0x00,0xFF,0x00,0x83,0x80,0x40,0x40,0x20,0x23,0x10,0x08,0x04,0x03,0x00,

  41. 0x00,0x40,0x42,0x42,0x42,0x42,0x42,0xFE,0x42,0x42,0x42,0x42,0x42,0x42,0x40,0x00,//天//8
  42. 0x00,0x80,0x40,0x20,0x10,0x08,0x06,0x01,0x02,0x04,0x08,0x10,0x30,0x60,0x20,0x00,
  43. 0x00,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0x00,//一//9
  44. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  45. 0x00,0x00,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x06,0x04,0x00,0x00,0x00,//二//10
  46. 0x00,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x18,0x10,0x00,
  47. 0x00,0x04,0x84,0x84,0x84,0x84,0x84,0x84,0x84,0x84,0x84,0x84,0x84,0x04,0x00,0x00,//三//11
  48. 0x00,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x00,
  49. 0x00,0xFE,0x02,0x02,0x02,0xFE,0x02,0x02,0xFE,0x02,0x02,0x02,0x02,0xFE,0x00,0x00,//四//12
  50. 0x00,0x7F,0x28,0x24,0x23,0x20,0x20,0x20,0x21,0x22,0x22,0x22,0x22,0x7F,0x00,0x00,
  51. 0x00,0x02,0x82,0x82,0x82,0x82,0xFE,0x82,0x82,0x82,0xC2,0x82,0x02,0x00,0x00,0x00,//五//13
  52. 0x20,0x20,0x20,0x20,0x20,0x3F,0x20,0x20,0x20,0x20,0x3F,0x20,0x20,0x30,0x20,0x00,
  53. 0x10,0x10,0x10,0x10,0x10,0x91,0x12,0x1E,0x94,0x10,0x10,0x10,0x10,0x10,0x10,0x00,//六//14
  54. 0x00,0x40,0x20,0x10,0x0C,0x03,0x01,0x00,0x00,0x01,0x02,0x0C,0x78,0x30,0x00,0x00,

  55. 0x00,0x40,0x42,0x44,0x4C,0x40,0x40,0x7F,
  56.       0x40,0x40,0x48,0x44,0xE6,0x40,0x00,0x00,
  57.       0x00,0x40,0x44,0x44,0x44,0x44,0x44,0x44,
  58.       0x44,0x44,0x44,0x44,0xFF,0x00,0x00,0x00,//當//15

  59. 0x08,0x08,0xE8,0x29,0x2A,0x2E,0xE8,0x08,
  60.       0x08,0xCC,0x0A,0x0B,0xE8,0x0C,0x08,0x00,
  61.       0x00,0x00,0xFF,0x09,0x49,0x89,0x7F,0x00,
  62.       0x00,0x0F,0x40,0x80,0x7F,0x00,0x00,0x00,//前//16

  63. 0x00,0xF8,0x48,0x48,0x48,0x48,0xFF,0x48,//電//17
  64.       0x48,0x48,0x48,0xFC,0x08,0x00,0x00,0x00,
  65.       0x00,0x07,0x02,0x02,0x02,0x02,0x3F,0x42,
  66.       0x42,0x42,0x42,0x47,0x40,0x70,0x00,0x00,

  67. 0x00,0x00,0xFE,0x02,0x82,0x82,0x82,0x82,
  68.       0xFE,0x82,0x82,0x82,0xC3,0x82,0x00,0x00,
  69.       0x40,0x30,0x0F,0x40,0x40,0x40,0x40,0x40,
  70.       0x7F,0x40,0x42,0x44,0x4C,0x60,0x40,0x00,//壓//18


  71. 0x00,0x00,0x00,0x00,0x7F,0x49,0x49,0x49,
  72.       0x49,0x49,0x7F,0x00,0x00,0x80,0x00,0x00,
  73.       0x01,0x81,0x41,0x21,0x1D,0x21,0x41,0x7F,
  74.       0x89,0x89,0x8D,0x89,0x81,0xC1,0x41,0x00,//是//19

  75. 0x00,0x00,0x00,0x00,0x80,0xC0,0xC0,0x80,
  76.       0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  77.       0x00,0x00,0x00,0x00,0x31,0x7B,0x7B,0x31,
  78.       0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,//://20

  79. 0x80,0x40,0x20,0xF8,0x27,0x20,0x20,0x20,//伏//21
  80.       0x20,0xFF,0x20,0x24,0x28,0x38,0x20,0x00,
  81.       0x00,0x00,0x00,0xFF,0x80,0x40,0x20,0x18,
  82.       0x06,0x01,0x06,0x18,0x60,0xC0,0x40,0x00


  83.                          };
  84. /****************************************/
  85. /* 定義ASCII字庫8列*16行    */
  86. /****************************************/
  87. unchar code Ezk[]={
  88. /*此字體下對應的點陣為:寬x高=8x16   --*/
  89. /*-- 宋體12; 此字體下對應的點陣為:寬x高=8x16   --*/
  90.         0x00,0x00,0xF0,0xF8,0x08,0x68,0xF8,0xF0,0x00,0x00,0x07,0x0F,0x0B,0x08,0x0F,0x07, //0
  91.         0x00,0x20,0x20,0x30,0xF8,0xF8,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x0F,0x00,0x00,  //1
  92.         0x00,0x30,0x38,0x08,0x88,0xF8,0x70,0x00,0x00,0x0C,0x0E,0x0B,0x09,0x08,0x08,0x00, //        2
  93.         0x00,0x30,0x38,0x88,0x88,0xF8,0x70,0x00,0x00,0x06,0x0E,0x08,0x08,0x0F,0x07,0x00, //3
  94.         0x00,0x00,0xF8,0xF8,0x00,0xE0,0xE0,0x00,0x00,0x03,0x03,0x02,0x02,0x0F,0x0F,0x02,//4
  95.         0x00,0xF8,0xF8,0x88,0x88,0x88,0x08,0x00,0x00,0x08,0x08,0x08,0x0C,0x07,0x03,0x00,//5
  96.         0x00,0xC0,0xE0,0x78,0x58,0xC8,0x80,0x00,0x00,0x07,0x0F,0x08,0x08,0x0F,0x07,0x00,//6
  97.         0x00,0x08,0x08,0x88,0xE8,0x78,0x18,0x00,0x00,0x00,0x0E,0x0F,0x01,0x00,0x00,0x00,//7
  98.         0x00,0x70,0xF8,0xC8,0x88,0xF8,0x70,0x00,0x00,0x07,0x0F,0x08,0x09,0x0F,0x07,0x00,//8
  99.         0x00,0xF0,0xF8,0x08,0x08,0xF8,0xF0,0x00,0x00,0x00,0x09,0x0D,0x0F,0x03,0x01,0x00,//9


  100.                 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,  // - -//10
  101.         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  102.         0x00,0x80,0x80,0xE0,0xE0,0x80,0x80,0x00,  // -+-//11
  103.         0x00,0x00,0x00,0x03,0x03,0x00,0x00,0x00,

  104.         0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x00,  // ---//12
  105.         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  106.         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,  // -.-//13
  107.         0x00,0x00,0x00,0x0C,0x0C,0x00,0x00,0x00
  108. };



  109. /*狀態檢查,LCD是否忙*/
  110. void CheckState()   
  111. {
  112.    unchar dat;       /*狀態信息,判斷是否忙*/
  113.    RS=0;             /*數據\指令選擇,D/I(RS)=“L” ,表示 DB7∽DB0 為顯示指令數據*/
  114.    RW=1;             /*R/W=“H” ,E=“H”數據被讀到DB7∽DB0*/
  115.    do{
  116.       Databus=0x00;
  117.       EN=1;          /*EN下降源*/
  118.       _nop_();       /*一個時鐘延時*/
  119.       dat=Databus;
  120.       EN=0;
  121.       dat=0x80 & dat;/*僅當第7位為0時才可操作(判別busy信號)*/
  122.       }while(!(dat==0x00));
  123. }
  124. /*寫命令到LCD中*/
  125. SendCommandToLCD(unchar com)
  126. {
  127.    CheckState();/*狀態檢查,LCD是否忙*/
  128.    RS=0;        /*向LCD發送命令。RS=0寫指令,RS=1寫數據*/
  129.    RW=0;        /*R/W=“L” ,E=“H→L”數據被寫到 IR 或 DR */
  130.    Databus=com; /*com :命令*/
  131.    EN=1;        /*EN下降沿*/
  132.    _nop_();
  133.    _nop_();
  134.    EN=0;
  135. }
  136. /*設置頁 0xb8是頁的首地址*/
  137. void SetLine(unchar page)   
  138. {
  139.         page=0xb8|page; /*1011 1xxx 0<=page<=7 設定頁地址--X 0-7,8行為一頁64/8=8,共8頁*/
  140.         SendCommandToLCD(page);
  141. }
  142. /*設定顯示開始行,0xc0是行的首地址*/
  143. void SetStartLine(unchar startline)        
  144. {
  145.         startline=0xc0|startline;    /*1100 0000*/
  146.         SendCommandToLCD(startline); /*設置從哪行開始:0--63,一般從0 行開始顯示*/
  147. }
  148. /*設定列地址--Y 0-63 ,0x40是列的首地址*/
  149. void SetColumn(unchar column)   
  150. {
  151.         column=column &0x3f; /*column最大值為64,越出 0=<column<=63*/
  152.         column= 0x40|column; /*01xx xxxx*/
  153.         SendCommandToLCD(column);
  154. }
  155. /*開關顯示,0x3f是開顯示,0x3e是關顯示*/
  156. void SetOnOff(unchar onoff)   
  157. {
  158.     onoff=0x3e|onoff; /*0011 111x,onoff只能為0或者1*/
  159.     SendCommandToLCD(onoff);
  160. }


  161. /*寫顯示數據 */
  162. void WriteByte(unchar dat)
  163. {
  164.    CheckState();/*狀態檢查,LCD是否忙*/
  165.    RS=1;        /*RS=0寫指令,RS=1寫數據*/
  166.    RW=0;        /*R/W=“L” ,E=“H→L”數據被寫到 IR 或 DR */
  167.    Databus=dat;    /*dat:顯示數據*/
  168.    EN=1;        /*EN下降沿*/
  169.    _nop_();
  170.    _nop_();
  171.    EN=0;
  172. }
  173. /*選擇屏幕screen: 0-全屏,1-左屏,2-右屏*/
  174. void SelectScreen(unchar screen)      
  175. {               
  176.    switch(screen)
  177.    {
  178.      case 0: cs1=0;/*全屏*/
  179.              _nop_(); _nop_(); _nop_();
  180.              cs2=0;
  181.              _nop_(); _nop_(); _nop_();
  182.              break;
  183.      case 1: cs1=0;/*左屏*/
  184.              _nop_(); _nop_(); _nop_();
  185.              cs2=1;
  186.              _nop_(); _nop_(); _nop_();
  187.              break;
  188.      case 2: cs1=1;/*右屏*/
  189.              _nop_(); _nop_(); _nop_();
  190.              cs2=0;
  191.              _nop_(); _nop_(); _nop_();
  192.              break;
  193.    }
  194. }
  195. /*清屏screen: 0-全屏,1-左屏,2-右*/
  196. void ClearScreen(unchar screen)   
  197. {   
  198.         unchar i,j;
  199.         SelectScreen(screen);   
  200.         for(i=0;i<8;i++)          /*控制頁數0-7,共8頁*/
  201.         {
  202.                 SetLine(i);
  203.                 SetColumn(0);
  204.                 for(j=0;j<64;j++)    /*控制列數0-63,共64列*/
  205.                 {
  206.                 WriteByte(0x00); /*寫點內容,列地址自動加1*/
  207.                 }
  208.         }            
  209. }

  210. /*初始化LCD*/
  211. void InitLCD()   
  212. {
  213.     CheckState();
  214.     SelectScreen(0);
  215.     SetOnOff(0);    /*關顯示*/
  216.     SelectScreen(0);
  217.     SetOnOff(1);    /*開顯示*/
  218.     SelectScreen(0);
  219.     ClearScreen(0); /*清屏*/
  220.     SetStartLine(0);/*開始行:0*/
  221. }
  222. /*--------------------------顯示全角漢字-----------------------*/
  223. /*選屏參數,pagr選頁參數,column選列參數,number選第幾漢字輸出*/
  224. /*ss=1右屏2左屏,pagr=0,2,4,6第0~3行,column=0~3漢子出現的列,number選第幾漢字輸出*/
  225. void Display(unchar ss,unchar page,unchar column,unchar number)
  226. {
  227.     unchar i;  
  228.     SelectScreen(ss);
  229.     column=column&0x3f;
  230.     SetLine(page);     /*寫上半頁*/
  231.     SetColumn(column); /*控制列*/
  232.     for(i=0;i<16;i++) /*控制16列的數據輸出*/
  233.     {
  234.         WriteByte(Hzk[i+32*number]);/*i+32*number漢字的前16個數據輸出*/
  235.     }
  236.     SetLine(page+1);   /*寫下半頁*/
  237.     SetColumn(column); /*控制列*/
  238.     for(i=0;i<16;i++) /*控制16列的數據輸出*/
  239.     {
  240.         WriteByte(Hzk[i+32*number+16]);/*i+32*number+16漢字的后16個數據輸出*/
  241.     }
  242. }
  243. /*---------------------顯示半角漢字和數字和字母----------------------*/
  244. /*選屏參數,pagr選頁參數,column選列參數,number選第幾漢字輸出*/
  245. void Displayen(unchar ss,unchar page,unchar column,unchar number)
  246. {
  247.     unchar i;
  248.     SelectScreen(ss);
  249.     column=column&0x3f;
  250.     SetLine(page);   /*寫上半頁*/
  251.     SetColumn(column);
  252.     for(i=0;i<8;i++)
  253.     {
  254.         WriteByte(Ezk[i+16*number]);
  255.     }
  256.     SetLine(page+1); /*寫下半頁*/
  257.     SetColumn(column);
  258.     for(i=0;i<8;i++)
  259.     {
  260.         WriteByte(Ezk[i+16*number+8]);
  261.     }
  262. }
  263. //---顯示緩沖填充函數---//*
  264. void convert(unint n)         
  265. {
  266.         n=n*100;
  267.         n=n/51;
  268.         SegBuf[2] =n%10;
  269.         SegBuf[1] =n/10%10;
  270.         SegBuf[0] =n/100%10;


  271. }
  272. //---549延時函數---//
  273. void delay549(unint t)
  274. {   
  275.         while(t--);
  276. }
  277. //---采集549數據函數---//
  278. unchar read_549()//數據得采集
  279. {
  280.         unint i;
  281.         unchar k=0x00;//定義一個變量k,將在dout上采集的到的數據裝進K
  282.         for(i=0;i<8;i++)
  283.         {
  284.                 k<<=1;//左移一位
  285.                 k|=dout;
  286.                 clock=1;//高電平期間采集dout線上的數據
  287.                 _nop_();
  288.                 clock=0;
  289.                 delay549(10);
  290.         }
  291.         return k;//返回值
  292. }

  293. //---讀取549AD數據函數---//
  294. unchar shuchu_549()//數據得讀取
  295. {
  296.         unchar date;
  297.         cs=1;   
  298.         clock=1;
  299.         cs=0;//片選低電平時數據有效
  300.         _nop_();
  301.         _nop_();
  302.         date=read_549();//將read_549()函數中采集到的數據付給變量date
  303.         cs=1;//片選拉高,表示數據讀取完畢
  304.         delay549(50);
  305.         return date;//返回值
  306. }
  307. /*主函數*/
  308. void main()
  309. {
  310.         unchar ADCDat;
  311.     InitLCD();      /*初始12864*/
  312.     ClearScreen(0); /*清屏*/
  313.     SetStartLine(0);/*顯示開始行*/


  314.     while(1)
  315.     {  
  316.          ADCDat=shuchu_549();
  317.         convert(ADCDat);        //轉換顯示碼

  318.         Display(2,0,0*16,15);//當
  319.         Display(2,0,1*16,16);//前
  320.         Display(2,0,2*16,17);//電
  321.         Display(2,0,3*16,18);//壓
  322.         Display(1,0,0*16,19);//是
  323.         Display(1,0,1*16,20);//:

  324.         Displayen(2,2,0*8,SegBuf[0]);
  325.         Displayen(2,2,1*8,13);               
  326.         Displayen(2,2,2*8,SegBuf[1]);

  327.         Displayen(2,2,3*8,SegBuf[2]);


  328.         Display(2,2,2*16,21);//伏


  329.     }
  330. }
復制代碼

所有資料51hei提供下載:
附件不小心被刪除了,大家自己畫一下圖吧,有畫好的朋友,歡迎回帖點高級模式上傳附件分享下.


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏4 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:102963 發表于 2020-11-3 20:31 | 只看該作者
樓主的數字秒表,怎么液晶顯示的電壓值呢??
回復

使用道具 舉報

板凳
ID:838457 發表于 2020-11-3 20:39 | 只看該作者
songxia8013 發表于 2020-11-3 20:31
樓主的數字秒表,怎么液晶顯示的電壓值呢??

標題錯了,是數字電壓表設計
回復

使用道具 舉報

地板
ID:838457 發表于 2020-11-3 20:39 | 只看該作者
標題錯了 是數字電壓表
回復

使用道具 舉報

5#
ID:743654 發表于 2020-11-5 09:10 | 只看該作者
附件跟程序也不對啊,牛頭不對馬嘴
回復

使用道具 舉報

6#
ID:91165 發表于 2020-11-5 09:27 | 只看該作者
樓主附件發錯了吧
回復

使用道具 舉報

7#
ID:316613 發表于 2020-11-12 17:20 | 只看該作者
不對啊
回復

使用道具 舉報

8#
ID:848937 發表于 2020-12-6 14:52 | 只看該作者
附件怎么不對,
回復

使用道具 舉報

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

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 天堂在线免费视频 | 欧美精品一 | 成人中文网 | h视频在线免费 | 国产精品18久久久久久白浆动漫 | 欧美中文字幕一区二区三区亚洲 | 无码一区二区三区视频 | 久久婷婷av| 亚洲成av人影片在线观看 | 日韩视频专区 | 中文字幕第100页 | 超碰人人人 | 毛片大全 | 黄色欧美视频 | 国产黄色大片在线免费观看 | 国产成人综合久久 | 黄色片视频免费 | 欧美日本一区 | 婷婷综合 | www精品美女久久久tv | 精品欧美一区二区精品久久 | 中文字幕在线视频一区二区三区 | 成人午夜精品 | 91aiai| 国产偷久久一级精品60部 | 亚洲成人毛片 | 激情五月婷婷综合 | 在线一区二区三区 | 九色av| 久草综合在线视频 | 中文字幕av网站 | 国产91精品网站 | 国产视频一区二区 | 日韩一区二区免费视频 | 天天操夜夜爽 | 中文字幕在线一区二区三区 | 黄色免费在线网址 | 中文字幕av在线一二三区 | 成人精品免费视频 | 午夜激情在线视频 | 久久精品国产一区 |