標題: 51單片機LCD1602顯示的溫度控制系統設計 包括時間顯示 校時、設置最值溫度報警功能 [打印本頁]
作者: MIKEZJR 時間: 2020-12-18 23:02
標題: 51單片機LCD1602顯示的溫度控制系統設計 包括時間顯示 校時、設置最值溫度報警功能
1、將DS18B20溫度傳感器的溫度讀出來,并在LCD1602上顯示出來。
2、在LCD上分別切換顯示,軟件設計時鐘(時、分、秒),和當前溫度值,和溫度上下控制值。并可以通過按鍵進行修改設置,溫度高于上限,或下線都由蜂鳴器發出報警聲。
T-LCD - 副本.rar
(225.17 KB, 下載次數: 108)
2020-12-18 22:46 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
3、實現校時、校分、校秒功能。
附件里附帶所有程序、工程以及仿真圖,仿真圖為T-LCD2,程序工程為T-LCD,主程序是main.c
實驗原理圖:
51hei截圖20201218224035.png (15.91 KB, 下載次數: 57)
下載附件
2020-12-18 22:41 上傳
51hei截圖20201218224014.png (19.71 KB, 下載次數: 52)
下載附件
2020-12-18 22:41 上傳
單片機效果圖:
模式0為顯示溫度 時間 模式123分別為調個位、十位、十分位 按對應的按鍵就能實現調最高或最低 模式45顯示最高、最低溫度
IMG_20201218_221043.jpg (784.96 KB, 下載次數: 69)
下載附件
2020-12-18 22:43 上傳
IMG_20201218_221029.jpg (687.7 KB, 下載次數: 56)
下載附件
2020-12-18 22:43 上傳
IMG_20201218_125845.jpg (862.94 KB, 下載次數: 51)
下載附件
2020-12-18 22:43 上傳
IMG_20201218_125839.jpg (811.93 KB, 下載次數: 53)
下載附件
2020-12-18 22:43 上傳
IMG_20201218_125828.jpg (910.17 KB, 下載次數: 51)
下載附件
2020-12-18 22:43 上傳
IMG_20201218_125758.jpg (993.47 KB, 下載次數: 69)
下載附件
2020-12-18 22:43 上傳
程序部分:
570行主程序+100溫度傳感器+70行1602顯示 實現單片機溫度時間顯示 精確到十分位 并且有校時、設置最值溫度報警功能 精確到十分位
51hei圖片20201218224045.png (27.85 KB, 下載次數: 66)
下載附件
2020-12-18 22:41 上傳
具體的代碼功能在附件程序里都有標注
- #include<reg52.h> //調用52單片機庫
- #include"1602.h" //調用LCD1602庫
- #include"ds18b20.h" //調用ds18b20溫度傳感器
- #define uint unsigned int
- #define uchar unsigned char
- uchar hour,min,sec,count,hour1,hour2, //定義小時 分鐘 秒 對應的十位個位 以及 count計數
- sec1,sec2,min1,min2;
- sbit speaker=P2^1; //定義蜂鳴器
- sbit key1=P1^0; //最低溫度設置
- sbit key2=P1^1; //最高溫度設置
- sbit key3=P1^2; //連接切換模式的備用開關 P33和P12口短接 用于切換模式和退出報警中斷
-
- sbit keyh=P1^5; //校時
- sbit keym=P1^6; //校分
- sbit keys=P1^7; //校秒
- //定義時間按鍵
- uint tem; //定義采集溫度
- int htem,htem2,time,time2,x,y,z,dot,dot2,maxtem,mintem; //定義溫度十位數、個位數、小數,以及其三種模式的標記值
- int cnt1=1,cnt2=1,cnt3=1,cnt4=1,cnt5=1,cnt6=1,cnt7=1; //定義計數變量
- int i;
- uchar mode=0; //定義模式變量
- uchar code t3[]={" H/L=0/1: C"}; //顯示調最值溫度的十位
- uchar code t4[]={"O/D: C"}; //顯示調最值溫度的個位/小數位字模
- uchar code table2[]={
- '0','1','2','3','4','5','6','7','8','9',':'}; //顯示時間的字模
- uchar code t5[]={"Max . CD"}; //顯示最高溫度的字模
- uchar code t6[]={"Min . CD"}; //顯示最低溫度的字模
- //延時函數
- void delay1(uint i)
- {
- while(i--);
- }
- //顯示函數1 初始顯示
- void display(uint dat,uchar add)
- {
- uchar bai,shi ,ge;
- bai=dat/100;
- shi=dat%100/10;
- ge=dat%10;
- writelcd_cmd(add);
- writelcd_dat(bai+0x30);
- writelcd_dat(shi+0x30);
- writelcd_cmd(add+3);
- writelcd_dat(ge+0x30);
- }
- void lcd_min() //定義最小溫度顯示
- {
- uchar l;
-
- writelcd_cmd(0x38); //初始化屏那迤粱
- delay(5);
- writelcd_cmd(0x38);
- delay(5);
- writelcd_cmd(0x38);
- writelcd_cmd(0x08);
- writelcd_cmd(0x01);
- writelcd_cmd(0x06);
- writelcd_cmd(0x0c);
- writelcd_cmd(0x80);
-
- writelcd_cmd(0xc0);
- for(l=0;l<16;l++) //依次讀取t6并顯示
- {
- writelcd_dat(t6[l]);
- }
-
- display(mintem,0xca);
- delay1(5000000000); //延時顯示
- }
- void lcd_max() //定義最大溫度顯示
- {
- uchar k;
- writelcd_cmd(0x38); //初始化屏幕清屏
- delay(5);
- writelcd_cmd(0x38);
- delay(5);
- writelcd_cmd(0x38);
- writelcd_cmd(0x08);
- writelcd_cmd(0x01);
- writelcd_cmd(0x06);
- writelcd_cmd(0x0c);
- writelcd_cmd(0x80);
- writelcd_cmd(0xc0);
- for(k=0;k<16;k++) //依次讀取t5并顯示
- {
- writelcd_dat(t5[k]);
- }
- display(maxtem,0xca);
- delay1(5000000000);
- }
- void write_Char(unsigned char a,unsigned char b,unsigned char dat) //顯示時間程序母程序 定位
- {
- if (b == 0)
- {
- writelcd_cmd(0x80 + a);
- }
- else
- {
- writelcd_cmd(0xC0 + a);
- }
- writelcd_dat(dat);
- }
-
- void display4(uchar hour1,uchar hour2,uchar min1,uchar min2,uchar sec1,uchar sec2) //顯示時間子程序 取值
- {
-
- write_Char(4,0,table2[hour1]); //顯示小時
- write_Char(5,0,table2[hour2]);
- write_Char(6,0,table2[0x0a]); //顯示冒號
- write_Char(7,0,table2[min1]); //分鐘
- write_Char(8,0,table2[min2]);
- write_Char(9,0,table2[0x0a]); //顯示冒號
- write_Char(10,0,table2[sec1]); //秒
- write_Char(11,0,table2[sec2]);
-
-
- }
- //顯示函數2 調最值溫度低十位 在LCD上排顯示
- void display2(uint dat,uchar add)
- {
- uchar bai,shi ;
- bai=dat/100;
- shi=dat%100/10;
- //ge=dat%10;
- writelcd_cmd(add);
- writelcd_dat(shi+0x30);
- writelcd_dat(bai+0x30);
- writelcd_cmd(add+3);
- //writelcd_dat(ge+0x30);
- }
- //顯示函數3 調最值溫度的個位/小數 在LCD下排顯示
- void display3(uint dat,uchar add)
- {
- uchar ge;
- //bai=dat/100;
- //shi=dat%100/10;
- ge=dat%10;
- writelcd_cmd(add);
- //writelcd_dat(shi+0x30);
- //writelcd_dat(bai+0x30);
- //writelcd_cmd(add+3);
- writelcd_dat(ge+0x30);
- }
- //按鍵掃描函數
- void keyscan()
- { uchar i,j; //定義i/j
- writelcd_cmd(0x80); //顯示函數表示以此顯示t3字模里面的字符
- for(i=0;i<16;i++)
- {writelcd_dat(t3[i]);}
- writelcd_cmd(0xc0);
- for(j=0;j<16;j++) //顯示函數表示以此顯示t4字模里面的字符
- {writelcd_dat(t4[j]);}
-
- while(mode!=0) //當mode不為0時
- {
- display2(htem,0x8b); //顯示調十位
- display3(time,0xca); //顯示調個位小數位
-
- while(mode!=0)
- {
- switch(mode) //切換模式case語句循環 5個模式 5個循環 6個變量 初始模式為0 切換后對應地方的光標閃爍
- {
-
- case 1:writelcd_cmd(0xc0+10);writelcd_cmd(0x0f);break; //調個位
- case 2:writelcd_cmd(0x80+11);writelcd_cmd(0x0f);break; //調十位
- case 3:writelcd_cmd(0xc0+10);writelcd_cmd(0x0f);break; //調小數位
- case 4:lcd_max();break; //顯示最大溫度
- case 5:lcd_min();break; //顯示最小溫度
- default:mode=0;break;
- }
-
- if(key2==0&&mode==1) //模式為1 key2為0時 調最高位的個位
- {
- delay(50); //按鍵消抖
- y=0;display3(y,0x80);writelcd_cmd(0xca+11); //max one 在左上角顯示0 表示調最高溫度
-
- if(key2==0)
- {
- delay(10); //十個循環 對應0-9數字
- cnt1++; //計數+1
- while(key2==0);
- switch(cnt1%11) //按鍵到10以后清零
- {
- case 1:time=0;display3(time,0xca);writelcd_cmd(0xca+11);break; //在0xca的地方顯示個位值 光標閃爍
- case 2:time=1;display3(time,0xca);writelcd_cmd(0xca+11);break;
- case 3:time=2;display3(time,0xca);writelcd_cmd(0xca+11);break;
- case 4:time=3;display3(time,0xca);writelcd_cmd(0xca+11);break;
- case 5:time=4;display3(time,0xca);writelcd_cmd(0xca+11);break;
- case 6:time=5;display3(time,0xca);writelcd_cmd(0xca+11);break;
- case 7:time=6;display3(time,0xca);writelcd_cmd(0xca+11);break;
- case 8:time=7;display3(time,0xca);writelcd_cmd(0xca+11);break;
- case 9:time=8;display3(time,0xca);writelcd_cmd(0xca+11);break;
- case 10:time=9;display3(time,0xca);writelcd_cmd(0xca+11);break;
-
- default:break;
- }
- }
- }
- if(key1==0&&mode==1) //類似 最低個位
- {
- delay(50);
- y=1;display3(y,0x80);writelcd_cmd(0xca+11); //min one 在左上角顯示1 表示調最低溫度
-
- if(key1==0)
- {
- delay(10);
- cnt4++;
- while(key1==0);
- switch(cnt4%11)
- {
- case 1:time2=0;display3(time2,0xca);writelcd_cmd(0xca+11);break;
- case 2:time2=1;display3(time2,0xca);writelcd_cmd(0xca+11);break;
- case 3:time2=2;display3(time2,0xca);writelcd_cmd(0xca+11);break;
- case 4:time2=3;display3(time2,0xca);writelcd_cmd(0xca+11);break;
- case 5:time2=4;display3(time2,0xca);writelcd_cmd(0xca+11);break;
- case 6:time2=5;display3(time2,0xca);writelcd_cmd(0xca+11);break;
- case 7:time2=6;display3(time2,0xca);writelcd_cmd(0xca+11);break;
- case 8:time2=7;display3(time2,0xca);writelcd_cmd(0xca+11);break;
- case 9:time2=8;display3(time2,0xca);writelcd_cmd(0xca+11);break;
- case 10:time2=9;display3(time2,0xca);writelcd_cmd(0xca+11);break;
-
- default:break;
- }
- }
- }
- if(key2==0&&mode==2) //最高十位
- {
- delay(10);
- x=00;display2(x,0x80);writelcd_cmd(0x80+11); //max ten 在左上角顯示00 表示調最高
- if(key2==0)
- {
- cnt2++;
- while(key2==0);
- switch(cnt2%11)
- {
-
- case 1:htem=00;display2(htem,0x8b);writelcd_cmd(0x80+11);break;
- case 2:htem=10;display2(htem,0x8b);writelcd_cmd(0x80+11);break;
- case 3:htem=20;display2(htem,0x8b);writelcd_cmd(0x80+11);break;
- case 4:htem=30;display2(htem,0x8b);writelcd_cmd(0x80+11);break;
- case 5:htem=40;display2(htem,0x8b);writelcd_cmd(0x80+11);break;
- case 6:htem=50;display2(htem,0x8b);writelcd_cmd(0x80+11);break;
- case 7:htem=60;display2(htem,0x8b);writelcd_cmd(0x80+11);break;
- case 8:htem=70;display2(htem,0x8b);writelcd_cmd(0x80+11);break;
- case 9:htem=80;display2(htem,0x8b);writelcd_cmd(0x80+11);break;
- case 10:htem=90;display2(htem,0x8b);writelcd_cmd(0x80+11);break;
-
-
-
- default:break;
- }
- }
-
- }
- if(key1==0&&mode==2)
- {
- delay(10);
- x=10;display2(x,0x80);writelcd_cmd(0x80+11); //min ten 在左上角顯示10表示 調最低
- if(key1==0)
- {
- cnt3++;
- while(key1==0);
- switch(cnt3%11)
- {
-
- case 1:htem2=00;display2(htem2,0x8b);writelcd_cmd(0x80+11);break;
- case 2:htem2=10;display2(htem2,0x8b);writelcd_cmd(0x80+11);break;
- case 3:htem2=20;display2(htem2,0x8b);writelcd_cmd(0x80+11);break;
- case 4:htem2=30;display2(htem2,0x8b);writelcd_cmd(0x80+11);break;
- case 5:htem2=40;display2(htem2,0x8b);writelcd_cmd(0x80+11);break;
- case 6:htem2=50;display2(htem2,0x8b);writelcd_cmd(0x80+11);break;
- case 7:htem2=60;display2(htem2,0x8b);writelcd_cmd(0x80+11);break;
- case 8:htem2=70;display2(htem2,0x8b);writelcd_cmd(0x80+11);break;
- case 9:htem2=80;display2(htem2,0x8b);writelcd_cmd(0x80+11);break;
- case 10:htem2=90;display2(htem2,0x8b);writelcd_cmd(0x80+11);break;
-
-
- default:break;
- }
- }
-
- }
- if(key2==0&&mode==3) //最高小數
- {
- delay(50);
- z=00;display2(z,0x80);writelcd_cmd(0xca+11); //max dot
-
- if(key2==0)
- {
- delay(10);
- cnt5++;
- while(key2==0);
- switch(cnt5%11)
- {
- case 1:dot=0;display3(dot,0xca);writelcd_cmd(0xca+11);break;
- case 2:dot=1;display3(dot,0xca);writelcd_cmd(0xca+11);break;
- case 3:dot=2;display3(dot,0xca);writelcd_cmd(0xca+11);break;
- case 4:dot=3;display3(dot,0xca);writelcd_cmd(0xca+11);break;
- case 5:dot=4;display3(dot,0xca);writelcd_cmd(0xca+11);break;
- case 6:dot=5;display3(dot,0xca);writelcd_cmd(0xca+11);break;
- case 7:dot=6;display3(dot,0xca);writelcd_cmd(0xca+11);break;
- case 8:dot=7;display3(dot,0xca);writelcd_cmd(0xca+11);break;
- case 9:dot=8;display3(dot,0xca);writelcd_cmd(0xca+11);break;
- case 10:dot=9;display3(dot,0xca);writelcd_cmd(0xca+11);break;
-
- default:break;
- }
- }
- }
- if(key1==0&&mode==3) //最低小數
- {
- delay(50);
- z=10;display2(z,0x80);writelcd_cmd(0xca+11); //min dot
-
- if(key1==0)
- {
- delay(10);
- cnt6++;
- while(key1==0);
- switch(cnt6%11)
- {
- case 1:dot2=0;display3(dot2,0xca);writelcd_cmd(0xca+11);break;
- case 2:dot2=1;display3(dot2,0xca);writelcd_cmd(0xca+11);break;
- case 3:dot2=2;display3(dot2,0xca);writelcd_cmd(0xca+11);break;
- case 4:dot2=3;display3(dot2,0xca);writelcd_cmd(0xca+11);break;
- case 5:dot2=4;display3(dot2,0xca);writelcd_cmd(0xca+11);break;
- case 6:dot2=5;display3(dot2,0xca);writelcd_cmd(0xca+11);break;
- case 7:dot2=6;display3(dot2,0xca);writelcd_cmd(0xca+11);break;
- case 8:dot2=7;display3(dot2,0xca);writelcd_cmd(0xca+11);break;
- case 9:dot2=8;display3(dot2,0xca);writelcd_cmd(0xca+11);break;
- case 10:dot2=9;display3(dot2,0xca);writelcd_cmd(0xca+11);break;
-
- default:break;
- }
- }
- }
-
- if(mode==4) //模式4 顯示最大溫度
- {
- maxtem=htem*10+time*10+dot;
- lcd_max();
- }
-
- if(mode==5) //最低溫度
- {
- mintem=htem2*10+time2*10+dot2;
- lcd_min();
- }
-
- }
- }
- lcd_init(); //模式為0時執行LCD初始化函數
- }
- //中斷初始化函數
- void init()
- {
- lcd_init(); //lcd初始化
- speaker=1; //蜂鳴器口默認高電平
- mode=0; //模式默認0
- htem=80; //最高溫度默認80
- time=0;
- htem2=10; //最低溫度默認10
- time2=0;
- dot=0;
- dot2=0;
- EA=1; //總中斷開啟
- EX1=1; //外部中斷1允許
- ET1=1; //定時器1允許
- TMOD=0X01; //定時中斷1,模式1
- IT1=1; //中斷1 下降沿觸發
- TH1=0Xee; //定時中斷1 0.5us
- TL1=0X00;
- TR1=0; //定時中斷1默認關閉
-
- count=0; //時間計數默認為0
- hour=00; //小時00
- min=00; //分鐘00
- sec=00; //秒00
-
- TH0=(65536-50000)/256; //內部中斷T0初始化
- TL0=(65536-50000)%256;
- TR0=1; //內部中斷T0開啟
- ET0=1;
-
- }
- //主函數
- void main()
- {
- P1=0xe7; //初始P1口,P14,P13為低電平 使S1 S5 S9 S14 S15 S16變為接地的普通開關 S9與P33短接 用于切換模式和退出報警中斷
- init(); //中斷初始化
-
-
- while(1)
- {
- if(mode!=0) //當模式不為0
- {keyscan();} //執行按鍵掃描 以及調溫度的程序
- else if(mode==0) //模式為0時
- {
- delay(100);
- tmpchange(); //在ds18b20取數據
- tem=tmp(); //溫度值獲取 為整數 且小數位實際上是個位 如35.5攝氏度對應的值是355
-
- if(keyh==0) //當S14閉合時 實現小時加一
- {
- delay(5);
- if(keyh==0)
- {
- if(hour!=23) hour++; //hour=23后清零
- else hour=0;
- }
- while(!keyh); //檢測松手
-
- }
-
- if(keym==0) //實現分鐘加一
- {
- delay(5);
- if(keym==0)
- {
- if(min!=59) //59后清零
- {
- min++;
- }
- else
- {
- min=0;
- }
- }
- while(!keym); //松手檢測
-
- }
-
- if(keys==0) //實現秒加一
- {
- delay(5);
- if(keys==0)
- {
- if(sec!=59) //59后清零
- {
- sec++;
- }
- else
- {
- sec=0;
- }
- }
- while(!keys);
-
- }
-
- hour1=hour/10; //小時十位
- hour2=hour%10; //小時個位
- min1=min/10; //分鐘十位
- min2=min%10; //分鐘個位
- sec1=sec/10; //秒十位
- sec2=sec%10; //秒個位
-
-
- maxtem=htem*10+time*10+dot;
- mintem=htem2*10+time2*10+dot2;
-
- if(tem>=maxtem) //高于最高
- {
- TR1=1; //T1中斷開啟
-
- }
- else if(tem<=mintem) //低于最低
- {
- TR1=1; //T1中斷開啟
-
- }
- else //處于中間
- {
- TR1=0; //T1中斷關閉
- //報警燈滅
- }
-
- delay(10);
- display(tem,0xca); //一直顯示溫度
- display4(hour1,hour2,min1,min2,sec1,sec2); //一直顯示時鐘
- delay(100);
-
-
- ……………………
- …………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼
作者: liuyiyi 時間: 2022-1-11 14:54
lidianxiaofang.c(48): warning C206: 'writelcd_cmd': missing function-prototype
程序編譯沒有通過
| 歡迎光臨 (http://m.izizhuan.cn/bbs/) |
Powered by Discuz! X3.1 |
午夜久久久久久|
粉嫩av一区二区三区免费观看|
国产精品黄色在线观看|
香蕉国产精品|
天堂在线中文网官网|
一二三四社区在线视频|
区二区三区在线|
麻豆一区产品精品蜜桃的特点|
青青青在线播放|
黑人另类av|
97国产一区二区精品久久呦|
欧美一区二区免费视频|
亚洲精品乱码久久久久久黑人|
国产一区二区三区蝌蚪|
亚洲有吗中文字幕|
亚洲日本视频在线|
国产777精品精品热热热一区二区|
亚洲欧美中文字幕在线观看|
国产麻豆一级片|
性中国xxx极品hd|
日本a在线观看|
国产又黄又粗又猛又爽的视频|
日韩中字在线观看|
在线一区二区三区做爰视频网站|
91在线视频18|
日日夜夜免费精品|
婷婷综合视频|
欧美日韩一本|
国产电影一区|
大胆人体一区二区|
中文国产字幕在线观看|
欧洲综合视频|
成年人免费视频观看|
国产7777|
一色屋色费精品视频在线看|
精品国产黄色片|
人人妻人人爽人人澡人人精品|
99中文视频在线|
欧美国产激情18|
亚洲国语精品自产拍在线观看|
色94色欧美sute亚洲线路一久|
亚洲同性gay激情无套|
国产资源精品在线观看|
宅男噜噜噜66国产日韩在线观看|
久久精品av|
亚洲动漫在线观看|
欧州一区二区三区|
成人午夜亚洲|
国产 日韩 欧美一区|
超免费在线视频|
麻豆视频在线观看免费网站|
欧美另类自拍|
日本在线一二三|
最新91在线|
情趣视频网站在线免费观看|
啦啦啦在线视频免费观看高清中文
|
日本高清视频网站|
一级特黄aaaaaa大片|
91av在线免费视频|
久视频在线观看|
www色aa色aawww|
麻豆明星ai换脸视频|
国产精品久久久免费看|
精品亚洲乱码一区二区|
国产精品久久久久久久av|
久久久久久九九九九九|
国产黄色网址在线观看|
97伦伦午夜电影理伦片|
在线观看福利片|
中文字幕av久久爽一区|
超碰人人人人人人人|
国产毛片视频网站|
欧美 日韩 国产精品|
青春草在线视频免费观看|
中文字幕中文字幕在线中心一区
|
在线观看国产精品91|
亚洲图片欧美日产|
日韩在线中文视频|
久久69精品久久久久久久电影好|
久久视频在线免费观看|
久久久久久久一|
国产91色在线|免|
国产欧美日韩91|
99在线观看视频|
欧美日韩一区二区视频在线|
日韩欧美精品久久|
日韩久久久久久久久久久久|
国产女女做受ⅹxx高潮|
中文字幕在线视频一区二区三区|
免费黄视频在线观看|
97超碰在线免费观看|
欧美丰满熟妇bbbbbb|
九九热在线视频播放|
在线免费看91|
av亚洲男人天堂|
91看片官网|
国产美女在线免费观看|
日韩亚洲视频在线观看|
在线观看午夜av|
电影一区二区|
自拍偷拍欧美一区|
狠久久av成人天堂|
精品无人码麻豆乱码1区2区|
91在线视频免费91|
婷婷丁香激情综合|
欧美不卡一区二区三区|
色偷偷91综合久久噜噜|
日本一欧美一欧美一亚洲视频|
99久久自偷自偷国产精品不卡|
日韩国产一区久久|
女人另类性混交zo|
男女黄床上色视频|
丰满人妻老熟妇伦人精品|
精品人妻一区二区三区三区四区|
日本久久天堂|
av手机天堂|
高潮毛片在线观看|
国产精品成人**免费视频|
欧美韩国日本在线观看
|
久久精品国产亚洲av无码娇色|
精品成人无码久久久久久|
天天色综合av|
能看av的网址|
日本激情视频在线观看|
99久久999|
一区二区影视|
粉嫩av一区二区三区在线播放|
一区二区三区产品免费精品久久75|
91麻豆精品国产无毒不卡在线观看|
久久久久www|
动漫一区二区在线|
好吊妞无缓冲视频观看|
级毛片内射视频|
国产伦精品一区二区三区免.费|
国产亚洲精品自在线观看|
美女黄视频在线播放|
老司机成人影院|
国产精品精品|
99久久婷婷国产综合精品电影|
色一情一乱一乱一91av|
久久精品男人天堂|
精品一区国产|
jizz欧美性11|
免费在线观看黄网站|
神马久久久久久久久|
亚洲女人天堂在线|
久久久久久亚洲精品美女|
性欧美长视频|
亚洲综合色网站|
中文字幕免费精品一区|
99re在线观看|
爱情岛论坛亚洲首页入口章节|
波多野结衣久久久久|
亚洲一级免费毛片|
亚洲精品视频区|
视频一区日韩|
韩国av一区二区三区四区|
精品毛片三在线观看|
久久精品国产一区二区电影|
日本一区二区三区四区高清视频
|
欧美精品欧美精品|
少妇欧美激情一区二区三区|
国产成人精品亚洲|
ass白嫩白嫩的小美女|
成av人片在线观看www|
中文字幕av亚洲精品一部二部|
国产视频一区二区三区在线观看|
日韩免费电影网站|
91色在线观看|
国产精品自拍视频在线|
中文资源在线播放|
一级毛片免费在线|
亚洲午夜免费|
丁香六月综合激情|
亚洲成人精品视频在线观看|
999视频在线免费观看|
蜜臀av免费观看|
这里只有精品国产|
日本1区2区|
波多野结衣在线一区二区
|
久久久免费精品|
18禁裸男晨勃露j毛免费观看
|
在线黄色av|
亚洲妇女av|
中文字幕二三区不卡|
日韩亚洲国产中文字幕|
日本a级片在线观看|
久久久久久久久久99|
www.操.com|
成人在线分类|
99精品视频在线观看免费|
日韩激情在线视频|
亚洲ai欧洲av|
亚洲成人生活片|
av电影免费在线|
亚州一区二区|
国产清纯在线一区二区www|
久久躁日日躁aaaaxxxx|
成人一对一视频|
中文字幕乱码人妻二区三区|
头脑特工队2在线播放|
日韩精品水蜜桃|
午夜视频一区二区三区|
国产精品成人一区|
zjzjzjzjzj亚洲女人|
亚洲精品人成电影网|
在线观看涩涩|
国产曰批免费观看久久久|
日韩精品在线视频观看|
国产激情片在线观看|
超碰在线免费97|
av大片在线观看|
√新版天堂资源在线资源|
亚洲综合福利|
亚洲不卡在线观看|
亚洲伊人一本大道中文字幕|
波多野结衣 在线|
黄瓜视频网站|
国产精品zjzjzj在线观看|
国产精品毛片a∨一区二区三区|
欧美激情手机在线视频
|
zjzjzjzjzj亚洲女人|
永久免费黄色软件|
成人线上视频|
99久久精品一区|
欧美极品第一页|
亚洲第一成肉网|
麻豆国产传媒av福利|
性欧美video另类hd尤物|
久久综合99re88久久爱|
97在线视频国产|
99久久久无码国产精品性波多
|
五月婷婷视频在线|
美国成人毛片|
久久一区二区三区四区五区
|
99青草视频在线播放视|
日韩电影在线观看网站|
亚洲色图13p|
污视频免费在线观看网站|
亚洲精品国自产拍在线观看|
欧美视频第一|
一区二区三区四区精品在线视频|
91夜夜揉人人捏人人添红杏|
999精品在线视频|
青春有你2免费观看完整版在线播放高清|
韩日欧美一区|
日韩精品视频在线播放|
国产极品美女高潮无套久久久|
亚洲在线视频免费|
日本在线一区二区三区|
精品欧美国产一区二区三区|
日本一区免费|
国产夫妻性生活视频|
九九热这里有精品|
亚洲国产日韩一级|
日韩亚洲视频|
丁香六月天婷婷|
成人豆花视频|
91国产福利在线|
天堂av在线中文|
免费一区二区三区视频狠狠
|
欧美日韩免费一区|
性欧美18一19内谢|
午夜在线视频免费|
国产在线播放精品|
欧美精品乱码久久久久久|
国产九色porny|
久久精品一区二区三区资源网
|
欧美日韩免费观看一区二区三区|
一本色道久久88亚洲精品综合|
亚洲日本色图|
欧美在线导航|
日韩欧美激情在线|
视频二区在线播放|
www.天天射|
日韩**一区毛片|
国模精品系列视频|
欧美日韩午夜视频|
污视频在线看网站|
中文字幕色av一区二区三区|
精品国产一区二区三区日日嗨|
91亚洲国产成人精品一区|
国产精品日本一区二区三区在线|
国产欧美日韩精品一区二区三区|
欧美美女一区二区三区|
欧美性猛交xxx乱久交|
69国产精品视频|
久久国产剧场电影|
国产精品免费福利|
欧美日韩在线视频播放|
成人激情久久|
欧美一区二区人人喊爽|
一二三级黄色片|
美女的尿口免费视频|
激情另类小说区图片区视频区|
国产欧美一区二区|
一本一道人人妻人人妻αv|
免费一级欧美在线大片|
日韩视频免费观看高清在线视频|
天堂av2020|
亚洲一区二区三区成人|
99re成人精品视频|
久久综合给合久久狠狠色|
亚洲色图一二三区|
欧美激情日韩|
5566日本婷婷色中文字幕97|
www.国产毛片|
国语一区二区三区|
亚洲新中文字幕|
超碰手机在线观看|
国产成人精品一区二区三区免费|
欧美色偷偷大香|
中文字幕视频观看|
日本综合在线|
亚洲福利电影网|
无码日韩人妻精品久久蜜桃|
日本桃色视频|
国产欧美一区二区精品仙草咪|
亚洲永久激情精品|
福利视频大全|
成人一级片在线观看|
欧美一区二区三区精美影视|
99综合精品久久|
国产一区二区免费看|
欧美二区在线看|
天堂网视频在线观看|
国内精品不卡在线|
精品午夜一区二区三区|
深夜福利小视频|
国产99精品视频|
亚洲欧美一区二区原创|
18成年在线观看|
91香蕉视频在线|
欧美人与动牲交xxxxbbbb|
成人性生交大片免费看视频r|
久久嫩草精品久久久精品|
aa视频在线播放|
未来日记在线观看|
午夜精品国产更新|
成年人看片网站|
精品众筹模特私拍视频|
日韩欧美国产wwwww|
顶级黑人搡bbw搡bbbb搡|
电影91久久久|
日韩小视频在线|
91一区二区视频|
在线日韩欧美|
国产亚洲精品美女久久久m|
中国女人一级毛片|
91在线porny国产在线看|
少妇人妻无码专区视频|
深夜福利视频在线观看|
亚洲福中文字幕伊人影院|
又大又长粗又爽又黄少妇视频|
男女羞羞在线观看|
日韩精品在线免费播放|
无码人妻精品一区二区50|
91欧美在线|
成人一区二区电影|
尤物在线观看|
亚洲国产精品成人综合
|
欧美日韩综合精品|
九七影院97影院理论片免费|
国产精品麻豆99久久久久久|
天天色综合天天色|
国产特黄一级片|
aa级大片欧美三级|
日本精品一区二区三区高清 久久|
91九色porny视频|
亚洲国产综合色|
精品人妻无码一区|
盗摄牛牛av影视一区二区|
欧美一级淫片videoshd|
欧美妇性猛交视频|
久久久国产精品麻豆|
五月天视频在线观看|
黑人巨大亚洲一区二区久
|
色哟哟免费视频|
成人国产激情|
欧美黄色三级网站|
性欧美videos粗暴|
久久精品一二三|
免费高清视频在线观看|
深夜日韩欧美|
国产v综合v亚洲欧美久久|
高清视频国产|
亚洲欧美色图小说|
亚洲熟妇一区二区三区|
色爱综合av|
亚洲综合中文字幕68页|
九七午夜视频|
欧美色中文字幕|
久久免费激情视频|
亚洲欧美日韩专区|
久艹在线免费观看|
色黄视频在线观看|
久久久久久久久久久人体|
7799国产精品久久久久99|
亚洲欧美国产三级|
久草福利资源在线|