wwwxxx国产_337p日本欧洲亚洲大胆张筱雨_免费在线看成人av_日本黄色不卡视频_国产精品成熟老女人_99视频一区_亚洲精品97久久中文字幕_免费精品视频在线_亚洲色图欧美视频_欧美一区二三区

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

原創(chuàng) 基于DS18B20的溫度計設計,含有仿真文件,單片機源程序

[復制鏈接]
跳轉到指定樓層
樓主
ID:796901 發(fā)表于 2020-7-4 18:37 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
這是我學習單片機制作的,設計參數(shù)主要有:
   1.溫度傳感器采用DS18B20芯片;
   2.LCD1602液晶模塊作為顯示器;
   3.能夠實現(xiàn)按鍵調整溫度上下限;
   4.能夠顯示年月日。

里面有電路仿真圖,c程序等,希望能夠幫助到大家。


  1. #include<reg51.h>                                   //將AT89X52.h頭文件包含到主程序
  2. #include<intrins.h>                                   //將intrins.h頭文件包含到主程序(調用其中的_nop_()空操作函數(shù)延時)
  3. #define uint  unsigned int                      //變量類型宏定義,用uint表示無符號整形(16位)
  4. #define uchar unsigned char                   //變量類型宏定義,用uchar表示無符號字符型(8位)
  5. sbit lcdrs=P2^4;
  6. sbit lcdrw=P2^5;
  7. sbit lcden=P2^6;
  8. sbit ds=P1^3;
  9. sbit k1=P3^0;//設置按鍵
  10. sbit k2=P3^1;//加1按鍵
  11. sbit k3=P3^2;//減1按鍵
  12. //sbit k4=P3^3;//關蜂鳴器按鍵
  13. sbit D1=P1^0;
  14. sbit D2=P1^1;
  15. uchar flag,num;
  16. uint aa,bb;
  17. uchar miao,fen,shi,ri=3,month=7,year=18,num11;
  18. long uint temp,biaozhi;               //參數(shù)temp一定要聲明為 int 型
  19. //延時函數(shù)
  20. void Tempdelay11(uchar us)  //經驗表明,這里us=1時約等于6.9us
  21. {
  22.         while(us--);
  23. }
  24. void delay11(uint count) //延時子函數(shù),當count=1是,延時大概2ms
  25. {
  26.         uint i;
  27.         while(count)
  28.         {
  29.                 i=200;
  30.                 while(i>0)
  31.                         i--;
  32.                 count--;
  33.         }
  34. }
  35. void delay(uint z)  
  36. {
  37.         uint x,y;
  38.         for(x=z;x>0;x--)
  39.                   for(y=110;y>0;y--);
  40. }
  41. /******************lcd液晶程序部分**************************/
  42. void write_com(uchar com)        //lcd寫指令
  43. {
  44.         lcdrs=0;
  45.     lcdrw=0;
  46.         P0=com;
  47.         lcden=1;
  48.         delay(5);
  49.         lcden=0;        
  50. }
  51. void write_date(uchar date)                //lcd寫數(shù)據
  52. {
  53.         lcdrs=1;
  54.     lcdrw=0;
  55.         P0=date;
  56.         lcden=1;
  57.         delay(5);
  58.         lcden=0;        
  59. }
  60. void init()                                  //lcd初始化
  61. {
  62.         lcdrw=0;
  63.         write_com(0x38);                 //lcd液晶 顯示模式設置
  64.         write_com(0x0c);                  //lcd液晶 開顯示 關光標 關閃爍
  65.         write_com(0x06);                  //讀一個字節(jié) 光標指針加一  不整屏移動
  66.         write_com(0x01);                  //清屏
  67.         write_com(0x80);                  //設置數(shù)據指針
  68. }
  69. void key()
  70. {
  71.         if(k1==0)//判斷k1按鍵是否按下
  72.         {
  73.                 delay(10);//延時,消抖
  74.                 if(k1==0)//再次判斷k1按鍵是否按下
  75.                 {
  76.                         while(k1==0);//按鍵松手檢測
  77.                         num++;
  78.                         if(num==1)
  79.                         {
  80.                                 write_com(0x80+9);
  81.                                 write_com(15);        
  82.                         }
  83.                         if(num==2)
  84.                         {
  85.                                 write_com(0x80+15);        
  86.                         }
  87.                         if(num==3)
  88.                         {
  89.                                 num=0;
  90.                                 write_com(12);        
  91.                         }
  92.                 }
  93.         }
  94.         if(num!=0)
  95.         {
  96.                 if(k2==0)//判斷k1按鍵是否按下
  97.                 {
  98.                         delay(10);//延時,消抖
  99.                         if(k2==0)//再次判斷k1按鍵是否按下
  100.                         {
  101.                                 while(k2==0);//按鍵松手檢測
  102.                                 if(num==1)
  103.                                 {
  104.                                         aa++;
  105.                                         if(aa==1000)
  106.                                                 aa=0;
  107.                                         write_com(0x80+6);
  108.                                         write_date(48+aa/100);
  109.                                         write_com(0x80+7);
  110.                                         write_date(48+aa/10%10);
  111.                                         write_com(0x80+9);
  112.                                         write_date(48+aa%10);
  113.                                         write_com(0x80+8);
  114.                                         write_date('.');
  115.                                 }
  116.                                 if(num==2)
  117.                                 {
  118.                                         if(bb<aa)
  119.                                                 bb++;
  120.                                         if(bb==1000)
  121.                                                 bb=0;
  122.                                         write_com(0x80+12);
  123.                                         write_date(48+bb/100);
  124.                                         write_date(48+bb/10%10);
  125.                                         write_com(0x80+15);
  126.                                         write_date(48+bb%10);
  127.                                         write_com(0x80+14);
  128.                                         write_date('.');
  129.                                 }
  130.                         }
  131.                 }
  132.                 if(k3==0)//判斷k1按鍵是否按下
  133.                 {
  134.                         delay(10);//延時,消抖
  135.                         if(k3==0)//再次判斷k1按鍵是否按下
  136.                         {
  137.                                 while(k3==0);//按鍵松手檢測
  138.                                 if(num==1)
  139.                                 {
  140.                                         if(aa>0)
  141.                                                 aa--;
  142.                                         if(aa==-1)
  143.                                                 aa=999;
  144.                                         write_com(0x80+6);
  145.                                         write_date(48+aa/100);
  146.                                         write_date(48+aa/10%10);
  147.                                         write_com(0x80+9);
  148.                                         write_date(48+aa%10);
  149.                                         write_com(0x80+8);
  150.                                         write_date('.');
  151.                                 }
  152.                                 if(num==2)
  153.                                 {
  154.                                         if(bb>0)
  155.                                                 bb--;
  156.                                         if(bb==-1)
  157.                                                 bb=999;
  158.                                         write_com(0x80+12);
  159.                                         write_date(48+bb/100);
  160.                                         write_date(48+bb/10%10);
  161.                                         write_com(0x80+15);
  162.                                         write_date(48+bb%10);
  163.                                         write_com(0x80+14);
  164.                                         write_date('.');
  165.                                 }
  166.                         }
  167.                 }
  168.         }
  169. }
  170. //LCD1602液晶的顯示
  171. void display(uint temp)
  172. {   
  173.     uchar bai,shi,ge;
  174.         bai=temp/100;
  175.         shi=temp/10%10;
  176.         ge=temp%10;
  177.         if(num==0)
  178.         {
  179.                 if(biaozhi==1)
  180.                 {
  181.                         biaozhi=0;
  182.                 }
  183.                 write_com(0x80);
  184.                 write_date(48+bai);
  185.                 write_date(48+shi);
  186.                 write_date('.');
  187.                 write_date(48+ge);
  188.                 write_date(' ');
  189.                 write_date('H');
  190.                 write_date(48+aa/100);
  191.                 write_date(48+aa/10%10);
  192.                 write_date('.');
  193.                 write_date(48+aa%10);
  194.                 write_date(' ');
  195.                 write_date('L');
  196.                 write_date(48+bb/100);
  197.                 write_date(48+bb/10%10);
  198.                 write_date('.');
  199.                 write_date(48+bb%10);
  200.                 if(temp>aa)
  201.                 {
  202.                         D1=0;
  203.                 }
  204.                 else
  205.                         D1=1;
  206.                 if(temp<bb)
  207.                         D2=0;
  208.                 else
  209.                         D2=1;
  210.         }
  211.         write_com(0xc0+3);
  212.         write_date('2');
  213.         write_date('0');
  214.         write_date(48+year/10);
  215.         write_date(48+year%10);
  216.         write_date('-');
  217.         write_date(48+month/10);
  218.         write_date(48+month%10);
  219.         write_date('-');
  220.         write_date(48+ri/10);
  221.         write_date(48+ri%10);
  222. }
  223. /*****************************************
  224. 時序:初始化時序、讀時序、寫時序。
  225. 所有時序都是將主機(單片機)作為主設備,單總
  226. 線器件作為從設備。而每一次命令和數(shù)據的傳輸
  227. 都是從主機主動啟動寫時序開始,如果要求單總
  228. 線器件回送數(shù)據,在進行寫命令后,主機需啟動
  229. 讀時序完成數(shù)據接收。數(shù)據和命令的傳輸都是低
  230. 位在先。
  231. 初始化時序:復位脈沖 存在脈沖
  232.         讀;1 或 0時序
  233.         寫;1 或 0時序
  234. 只有存在脈沖信號是從18b20(從機)發(fā)出的,其
  235. 它信號都是由主機發(fā)出的。
  236. 存在脈沖:讓主機(總線)知道從機(18b20)已
  237. 經做好了準備。
  238. ******************************************/
  239. /*--------------------------------------------------------------------------------------------------------------------
  240. 初始化:檢測總線控制器發(fā)出的復位脈沖
  241. 和ds18b20的任何通訊都要從初始化開始

  242. 初始化序列包括一個由總線控制器發(fā)出的復位脈沖
  243. 和跟在其后由從機發(fā)出的存在脈沖。

  244. 初始化:復位脈沖+存在脈沖

  245. 具體操作:
  246. 總線控制器發(fā)出(TX)一個復位脈沖 (一個最少保持480μs 的低電平信號),然后釋放總線,
  247. 進入接收狀態(tài)(RX)。單線總線由5K 上拉電阻拉到高電平。探測到I/O 引腳上的上升沿后
  248. DS1820 等待15~60μs,然后發(fā)出存在脈沖(一個60~240μs 的低電平信號)。

  249. 具體看18b20 單線復位脈沖時序和1-wire presence detect "的時序圖
  250. -------------------------------------------------------------------------------------------------------------------*/
  251. void ds_reset()
  252. {
  253.         ds=1;
  254.            _nop_();        //1us
  255.            ds=0;
  256.            Tempdelay11(80); //當總線停留在低電平超過480us,總線上所以器件都將被復位,這里
  257.         //延時約530us總    線停留在低電平超過480μs,總線上的所有器件都將被復位。
  258.            _nop_();
  259.            ds=1;           //產生復位脈沖后,微處理器釋放總線,讓總線處于空閑狀態(tài),原因查
  260.         //18b20中文資料

  261.            Tempdelay11(5); //釋放總線后,以便從機18b20通過拉低總線來指示其是否在線,
  262.                   //存在檢測高電平時間:15~60us, 所以延時44us,進行1-wire presence //detect(單線存在檢測)
  263.            _nop_();
  264.            _nop_();
  265.            _nop_();
  266.            if(ds==0)
  267.             flag=1;       //detect 18b20 success
  268.            else
  269.         flag=0;       //detect 18b20 fail
  270.         Tempdelay11(20);    //存在檢測低電平時間:60~240us,所以延時約140us
  271.            _nop_();
  272.            _nop_();
  273.            ds=1;          //再次拉高總線,讓總線處于空閑狀態(tài)
  274. }
  275. /*----------------------------------------
  276. 讀/寫時間隙:
  277. DS1820 的數(shù)據讀寫是通過時間隙處理
  278. 位和命令字來確認信息交換。
  279. ------------------------------------------*/
  280. bit ds_read_bit()    //讀一位
  281. {
  282.         bit dat;
  283.            ds=0;         //單片機(微處理器)將總線拉低
  284.         _nop_();       //讀時隙起始于微處理器將總線拉低至少1us
  285.            ds=1;        //拉低總線后接著釋放總線,讓從機18b20能夠接管總線,輸出有效數(shù)據
  286.            _nop_();
  287.            _nop_();          //小延時一下,讀取18b20上的數(shù)據 ,因為從ds18b20上輸出的數(shù)據
  288.         //在讀"時間隙"下降沿出現(xiàn)15us內有效
  289.            dat=ds;           //主機讀從機18b20輸出的數(shù)據,這些數(shù)據在讀時隙的下降沿出現(xiàn)15us內有效
  290.            Tempdelay11(10);    //所有讀"時間隙"必須60~120us,這里77us
  291.            return(dat);       //返回有效數(shù)據
  292. }
  293. uchar ds_read_byte() //讀一字節(jié)
  294. {
  295.         uchar value,i,j;
  296.         value=0;           //一定別忘了給初值
  297.         for(i=0;i<8;i++)
  298.         {
  299.             j=ds_read_bit();
  300.              value=(j<<7)|(value>>1);   //這一步的說明在一個word文檔里面
  301.         }
  302.         return(value);        //返回一個字節(jié)的數(shù)據
  303. }
  304. void ds_write_byte(uchar dat) //寫一個字節(jié)
  305. {
  306.         uchar i;
  307.         bit onebit;        //一定不要忘了,onebit是一位
  308.         for(i=1;i<=8;i++)
  309.         {
  310.             onebit=dat&0x01;
  311.             dat=dat>>1;
  312.                 if(onebit)      //寫 1
  313.                 {
  314.                         ds=0;
  315.                         _nop_();   
  316.                       _nop_();      //看時序圖,至少延時1us,才產生寫"時間隙"
  317.                         ds=1;       //寫時間隙開始后的15μs內允許數(shù)據線拉到高電平
  318.                      Tempdelay11(5); //所有寫時間隙必須最少持續(xù)60us
  319.                 }
  320.                 else         //寫 0
  321.                 {
  322.                         ds=0;
  323.                      Tempdelay11(8);    //主機要生成一個寫0 時間隙,必須把數(shù)據線拉到低電平并保持至少60μs,這里64us
  324.                         ds=1;
  325.                         _nop_();
  326.                      _nop_();
  327.                 }
  328.         }
  329. }
  330. /*****************************************
  331. 主機(單片機)控制18B20完成溫度轉換要經過三個步驟:
  332. 每一次讀寫之前都要18B20進行復位操作,復位成功后發(fā)送
  333. 一條ROM指令,最后發(fā)送RAM指令,這樣才能對DS18b20進行
  334. 預定的操作。
  335. 復位要求主CPU將數(shù)據線下拉500us,然后釋放,當ds18B20
  336. 受到信號后等待16~60us,后發(fā)出60~240us的存在低脈沖,
  337. 主CPU收到此信號表示復位成功
  338. ******************************************/

  339. /*----------------------------------------
  340. 進行溫度轉換:
  341. 先初始化
  342. 然后跳過ROM:跳過64位ROM地址,直接向ds18B20發(fā)溫度轉換命令,適合單片工作
  343. 發(fā)送溫度轉換命令
  344. ------------------------------------------*/
  345. void tem_change()
  346. {
  347.         ds_reset();
  348.         delay11(1);              //約2ms
  349.         ds_write_byte(0xcc);
  350.         ds_write_byte(0x44);
  351. }

  352. /*----------------------------------------
  353. 獲得溫度:
  354. ------------------------------------------*/
  355. uint get_temperature()
  356. {
  357.         float wendu;
  358.         uchar a,b;
  359.         ds_reset();
  360.         delay11(1);              //約2ms
  361.         ds_write_byte(0xcc);
  362.         ds_write_byte(0xbe);
  363.         a=ds_read_byte();
  364.         b=ds_read_byte();
  365.         temp=b;
  366.         temp<<=8;
  367.         temp=temp|a;
  368.         /*if((b&0x80)==0x80)
  369.         {
  370.                    biaozhi=1;//設置溫度正負的標志
  371.               temp=0xffff-temp;
  372.                    temp=temp+1;
  373.         }*/
  374.         wendu=temp*0.0625;     //得到真實十進制溫度值,因為DS18B20
  375.                        //可以精確到0.0625度,所以讀回數(shù)據的最低位代表的是0.0625度
  376.         temp=wendu*10.0+0.5;       //放大十倍,這樣做的目的將小數(shù)點后第一位
  377.                          //也轉換為可顯示數(shù)字,同時進行一個四舍五入操作。
  378.         return temp;
  379. }
  380. void main()
  381. {
  382.         aa=500;
  383.         bb=50;
  384.         EA=1;
  385.         ET0=1;
  386.         TMOD=0x01;
  387.         TH0=(65536-50000)/256;
  388.         TL0=(65536-50000)%256;
  389.         TR0=1;
  390.            init();
  391.            while(1)
  392.            {        
  393.                 key();
  394.                 if(num==0)
  395.                 {
  396.                         tem_change();    //開始轉換12位轉換時間最大為750ms
  397.                         get_temperature();//000000000000
  398.                 }
  399.                 display(temp);
  400.            }
  401. }
  402. //定時器0中斷子函數(shù)
  403. void t0() interrupt 1
  404. {
  405.         TH0=(65536-50000)/256;
  406.         TL0=(65536-50000)%256;
  407.         num11++;
  408.         if(num11==20)
  409.         {
  410.                 num11=0;
  411.                 miao++;
  412.                 if(miao==60)
  413.                 {
  414.                         miao=0;
  415.                         fen++;
  416.                         if(fen==60)
  417.                         {
  418.                                 fen=0;
  419.                                 shi++;
  420.                                 if(shi==24)
  421.                                 {
  422.                                         shi=0;
  423.                                         fen=0;
  424.                                         miao=0;
  425.                                         ri++;
  426.                                         if(ri==29)
  427.                                                 if((year%4!=0)&&(month==2))
  428.                                                 {
  429.                                                         ri=1;
  430.                                                         month++;
  431.                                                         if(month==13)
  432.                                                         {
  433.                                                                 month=1;
  434.                                                                 year++;
  435.                                                         }
  436.                                                 }
  437.                                         if(ri==30)
  438.                                                 if((year%4==0)&&(month==2))
  439.                                                 {
  440.                                                         ri=1;
  441.                                                         month++;
  442.                                                         if(month==13)
  443.                                                         {
  444.                                                                 month=1;
  445.                                                                 year++;
  446.                                                         }
  447.                                                 }
  448.                                         if(ri==31)
  449.                                                 if((month==4)||(month==6)||(month==9)||(month==11))
  450.                                                 {
  451.                                                         ri=1;
  452.                                                         month++;
  453.                                                         if(month==13)
  454.                                                         {
  455.                                                                 month=1;
  456.                                                                 year++;
  457.                                                         }
  458.                                                 }
  459.                                         if(ri==32)
  460.                                                 if((month==1)||(month==3)||(month==5)||(month==7)||(month==8)||(month==10)||(month==12))
  461.                                                 {
  462.                                                         ri=1;
  463.                                                         month++;
  464.                                                         if(month==13)
  465.                                                         {
  466.                                                                 month=1;
  467.                                                                 year++;
  468.                                                         }
  469.                                                 }
  470.                                 }
  471.                         }
  472.                 }
  473.         }
  474. }        
復制代碼
全部資料51hei下載地址:
基于DS18B20的溫度計.zip (79.31 KB, 下載次數(shù): 132)
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏4 分享淘帖 頂1 踩
回復

使用道具 舉報

沙發(fā)
ID:592038 發(fā)表于 2021-2-25 23:49 | 只看該作者
怎么添加蜂鳴器
回復

使用道具 舉報

板凳
ID:592038 發(fā)表于 2021-2-26 01:49 | 只看該作者
通電顯示溫度85,一秒后恢復正常,怎么修改這個85
回復

使用道具 舉報

地板
ID:917252 發(fā)表于 2021-5-26 10:13 | 只看該作者
負數(shù)部分怎么不顯示呢
回復

使用道具 舉報

5#
ID:917252 發(fā)表于 2021-5-26 10:13 | 只看該作者
大佬可以加上負數(shù)部分顯示嗎
回復

使用道具 舉報

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

本版積分規(guī)則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
成人一区二区三区视频| 不卡av电影院| 国内精品伊人久久久久av影院 | 久久人人爽人人| 欧美三级电影在线看| 成人性生交大片免费| 久久人体视频| 成人综合网站| 国产网站在线播放| 国产1区2区| 国产女同91疯狂高潮互磨| 尤物视频最新网址| 国产精品动漫网站| 欧洲精品一区色| 国产精品福利观看| 精品国产一区二区三区在线观看| 在线国产电影不卡| 国产精品成人一区二区三区夜夜夜| 免费亚洲电影在线| 欧美伊人影院| 国语一区二区三区| 麻豆精品蜜桃| 国产日产一区二区三区| 国产真实伦在线观看| 欧美老tube| 国产浮力第一页| 黄色激情视频在线观看| 美女爆乳18禁www久久久久久| 熟妇人妻无乱码中文字幕真矢织江 | 欧美精品自拍视频| 欧美色欧美亚洲另类七区| 国产精品白丝jk喷水视频一区 | 亚洲人妖av一区二区| 国产毛片一区二区| 制服诱惑一区二区| 久久密一区二区三区| 激情av综合| 素人一区二区三区| 日日干夜夜骑| 91制片厂毛片| 久久久男人天堂| 中国xxx69视频| 国产视频1区2区| 四虎影视1304t| 日本成人在线免费| 精品久久久久久无码国产| 天堂av在线中文| 手机在线观看国产精品| 韩国精品一区二区三区六区色诱| 国产精品网站入口| 69av视频在线播放| 久久久久久久国产精品视频| 在线午夜精品自拍| 亚洲色图18p| 亚洲精品在线观看网站| 日韩欧美国产精品一区| 91精品国产欧美一区二区18| 欧美在线观看18| 都市激情亚洲色图| 精品久久久视频| 亚洲成a天堂v人片| 亚洲韩国精品一区| 亚洲一级在线观看| 五月天丁香久久| 亚洲一区二区三区视频在线播放 | 国产一区二区三区国产精品| 日本欧美不卡| 忘忧草在线影院两性视频| 成人日日夜夜| a黄色片在线观看| 黄色成年人视频在线观看| 黄色成人影院| 大香伊人中文字幕精品| 一二三四区在线观看| 超碰在线caoporn| 天堂8中文在线| av伦理在线| 伊人久久视频| 国产69精品久久| 综合成人在线| 特黄特色欧美大片| 成人精品视频| 一区二区三区午夜探花| 欧美日本免费| 99热这里只有精品8| 视频一区二区三区在线| 精一区二区三区| 国产91丝袜在线播放0| 99在线精品视频| 国产精品无遮挡| 亚洲一区二区偷拍精品| 欧美性高潮在线| 欧美日韩激情一区二区三区| 精品国精品国产| 亚洲免费伊人电影在线观看av| 在线日韩第一页| 91国内揄拍国内精品对白| 国产精品美女网站| 精品国产免费久久久久久尖叫| 影音先锋亚洲视频| 男人的天堂99| 欧美成人三级伦在线观看| 亚洲天堂岛国片| 精品成人免费视频| 精品国产乱码一区二区三| 波多野结衣久久高清免费| 猛性xxxxx| 自拍av在线| 51xtv成人影院| 成人午夜sm精品久久久久久久| 欧美挤奶吃奶水xxxxx| 国产精品久久久久久麻豆一区软件| 精品成人国产| 国产成人在线影院| 亚洲免费看黄网站| 欧美一级理论片| 中文字幕日韩高清| 国产精品一区二区性色av| 蜜桃传媒一区二区| 波多野结衣50连登视频| 无码人妻aⅴ一区二区三区 | 亚洲色欲久久久综合网东京热| 91淫黄看大片| 国产在线综合视频| 中文字幕乱码一区二区| 明星国产一级毛片范冰冰视频| 97秋霞电影网| 日本动漫同人动漫在线观看| 日韩欧美一级| 影音先锋久久| 久久精品一区二区三区四区| 激情成人中文字幕| 日韩高清欧美高清| 国产精品日韩一区| 强伦女教师2:伦理在线观看| 337p日本欧洲亚洲大胆张筱雨| 青青青在线视频| 色一情一乱一区二区三区| 先锋影音av网站| 在线观看小视频| 日韩欧美ww| 日本亚洲视频在线| 最新成人av在线| 亚洲国产天堂网精品网站| 欧亚精品中文字幕| 在线观看日本一区| 添女人荫蒂视频| 国产尤物在线观看| jizzjizzjizzjizz日本| 免费污视频在线| 欧美日一区二区| 国产成人精品亚洲日本在线桃色| 欧美日韩国产精品| 欧美激情videos| 亚洲乱码国产乱码精品天美传媒| 色哟哟网站在线观看| 日韩一级片中文字幕| 福利视频网址| 亚洲永久av| 怡红院精品视频在线观看极品| 中文字幕一区二区三区在线观看 | 国产天堂视频在线观看| 六月婷婷七月丁香| 天堂在线资源库| 亚洲第一成年免费网站| 视频亚洲一区二区| 韩国精品在线观看| 精品污污网站免费看| 日韩免费观看网站| 女人和拘做爰正片视频| 国产一级二级三级| 美美女免费毛片| 中文字幕 在线观看| 99成人在线| 欧美日韩一区二区在线| 2024亚洲男人天堂| 精品久久久久av| 天天操天天干天天摸| 香艳视频网站| av在线国产精品| 国产一区二区中文字幕| 日韩一区二区视频在线观看| 97碰碰视频| 逼特逼视频在线观看| 国产刺激高潮av| av网站无病毒在线| 欧美电影一区| 一区二区三区中文在线观看| 欧美激情一二三| 国产午夜福利视频在线观看| 高清乱码免费看污| 满满都是荷尔蒙韩剧在线观看| 狠狠一区二区三区| 亚洲国产精品99久久久久久久久 | 一级在线免费视频| 91亚洲国产成人久久精品麻豆| 导航福利在线| 自拍亚洲一区| 国产精品美女一区二区| 欧美福利视频在线观看| 玩弄中年熟妇正在播放| 最新国产中文字幕| 国产在线资源| 国产精品mm| 欧美日韩一区小说| 国产专区一区二区三区| 天天操天天摸天天舔| 狠狠干狠狠搞| 在这里有精品| 国产精品久久二区二区| 91a在线视频| 手机在线免费毛片| 四虎海外影库www4hu| 日本三级一区| 国产激情一区二区三区四区| 亚洲色图五月天| 无码人妻少妇伦在线电影| 中文区中文字幕免费看| av播放在线| 亚洲一区黄色| 亚洲第一页自拍| 91传媒免费视频| 在线免费看91| 大片免费在线观看| 免费av网站大全久久| 亚洲剧情一区二区| 伊人成色综合网| 欧美少妇bbw| 在线天堂资源| av一区二区久久| 国内成人精品一区| 奇米777第四色| 美女被艹网站| 日韩www.| 91精品一区二区三区在线观看| 日韩av影视| 国产偷人爽久久久久久老妇app | 久久免费视频1| 日本亚洲欧美在线| 国产小视频在线观看| 久久婷婷久久| 在线观看国产精品91| 成年人小视频网站| 中文字幕第一页av| 6080亚洲理论片在线观看| 亚洲黄色小视频| 国产高清精品一区二区| 国产成人在线播放视频| 日韩在线资源| 国产aⅴ精品一区二区三区色成熟| 成年无码av片在线| 亚洲少妇一区二区三区| 美女88av| 欧美午夜不卡| 亚洲欧美三级在线| 亚洲精品性视频| 人人干人人草| 91精品国产乱码久久久久久| 精品日本一线二线三线不卡 | 无码国精品一区二区免费蜜桃| 日本精品网站| 一区二区三区在线视频观看| 精品国产综合区久久久久久| 中文字幕天堂在线| 性欧美freesex顶级少妇| 国产精品视频观看| 国产亚洲欧美一区二区三区| 中文亚洲av片在线观看| 欧美特大特白屁股xxxx| 一区二区三区成人| 日韩久久在线| 蜜桃久久一区二区三区| 伊人久久大香线蕉av超碰| 日本电影亚洲天堂一区| 蜜桃网站在线观看| 欧美精品videossex变态| 视频一区中文| 亚洲国产97在线精品一区| 亚洲天堂av一区二区| 五月婷婷导航| 免费日本视频一区| 国产精品吹潮在线观看| 日本午夜视频在线观看| 456亚洲精品成人影院| 婷婷丁香激情综合| 男人添女荫道口图片| 外卖gayxxxxgay1| 亚洲成人中文| 久久久久久久久久久免费| 成人免费视频网站入口::| 大香伊人中文字幕精品| 亚洲成精国产精品女| 久久久久久久久久久99| 色先锋av影音| 国产乱码精品一区二区三区忘忧草 | 久久免费美女视频| 久久精品日产第一区二区三区乱码| 国产精品久久欧美久久一区| 日韩在线亚洲| 精品国精品自拍自在线| 成人一区二区三区仙踪林| 日韩二区三区| 久久久久久久久岛国免费| 欧美日韩精品免费看| 8x8x拔插拔插影库永久免费| 97视频精品| 欧美福利小视频| 二区视频在线观看| 国产精品999久久久| 小早川怜子影音先锋在线观看| 欧美日韩免费一区| 国产自偷自偷免费一区| julia中文字幕久久亚洲蜜臀| 成人天堂资源www在线| 国产精品免费一区二区三区观看 | 日韩一区二区在线看| 麻豆精品国产传媒av| 毛片免费不卡| 亚洲韩国一区二区三区| 草草草在线视频| 亚洲男人网站| 综合欧美一区二区三区| 国产精品九九九| 伊人网中文字幕| 欧美国产不卡| 欧美成人精品一区二区| www.国产成人| 日本国产精品| 久久伊人精品天天| 五月天婷婷激情| 私拍精品福利视频在线一区| 久久成人一区二区| 国产精品视频免费播放| 久久这里只有精品一区二区| 在线观看亚洲视频| 国产一级精品视频| 亚洲精品亚洲人成在线观看| 久久午夜a级毛片| 免费黄色片视频| 成人精品电影| 国产欧美在线观看| 日韩不卡高清| 老司机午夜精品| 欧美裸体网站| 2020天天干夜夜爽| 国产欧美一区二区精品秋霞影院| 男人添女人荫蒂免费视频| 在线视频观看你懂的| 亚洲小说欧美激情另类| 风韵丰满熟妇啪啪区老熟熟女| 怡红院红怡院欧美aⅴ怡春院| 欧美日韩视频在线第一区| 在线观看日本中文字幕| 嫩草影院永久一二三入口| 日韩电影一区二区三区四区| 久久亚洲免费| www.99av| 亚洲日本欧美天堂| 免费在线观看日韩av| 在线天堂中文资源最新版| 亚洲精品在线视频| 国产精品777777| 亚洲精品成人影院| 超碰97国产在线| 非洲黑人最猛性xxxx交| 欧美国产视频在线| 手机看片一级片| 欧美私密网站| 国产一区二区三区在线观看视频| 欧美成人一区二区三区四区| 欧美xxx在线观看| 国产综合18久久久久久| 99热热99| 激情久久av一区av二区av三区| 在线观看国产网站| 亚洲一级大片| 国产精品成人一区二区| 美女被羞羞网站| 亚洲猫色日本管| 波多野结衣av在线免费观看| 精品国产三级| 日本久久久久久久| 一色屋免费视频| 亚洲欧美综合另类在线卡通| 成年人小视频在线观看| 日韩精品视频中文字幕| 青青草成人在线| 欧洲毛片视频| 亚洲一区二区欧美激情| 亚洲AV成人无码网站天堂久久| 欧美日韩一二| 精品一区二区不卡| 青青国产在线| 精品国产一区二区精华| 国产精品福利电影| 经典三级在线一区| 黄色片在线免费| 久久久精品一区二区毛片免费看| 久久久爽爽爽美女图片| 岛国91视频|