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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 5324|回復: 5
收起左側

分享一個用單片機比較器做電壓表的程序

  [復制鏈接]
ID:624769 發表于 2021-10-6 19:37 | 顯示全部樓層 |閱讀模式
本程序用STC15W201S單片機。16引腳共14IO,  共連接 一個 3位 8段共陰數碼管,兩個按鍵,以及680K+10K電阻分壓連接比較器測量外部電壓。
其中,P10~P15 + P36,P37 分別通過1K電阻連接數碼管 段選 ,P31~P33 直接接數碼管共陰位選,P5.4,P5.5 操縱比較器測量電壓,P3.0, 接兩個按鍵,分別連接P3.1 P3.2 共陰位選引腳。可以說用光單片機所有IO.

電壓比較通過TO定時器 實現,T2定時器負責按鍵檢測和數碼管顯示。按鍵主要是為了校正阻值的誤差所造成的電壓失準。校正后自動保存Eeprom. 初始數值已經存在隨壓縮包的bin文件中,燒錄文件時,應通過Eeprom頁一起燒入單片機。

單片機源程序如下:
  1. /****************************
  2. 本示例在Keil開發環境下請選擇STC15系列芯片型號進行編譯

  3. 本例程MCU的工作頻率為24MHz,  工作電壓3~5V均可.

  4. 使用MCU自帶的比較器進行ADC轉換, 并通過串口輸出結果.

  5. 比較器配置為P5.5做高阻正輸入, 接輸入分壓電阻, 比較器的負輸入接到內部1.25V參考電壓. P5.4配置為開漏輸出, 做反饋來平衡電荷.

  6. 本例程使用680K+10K分壓電阻接P5.5輸出, 用定時器0產生20us中斷查詢比較器的狀態, 從P3.6輸出反饋來做電荷平衡.

  7. 最高輸入電壓 = 1.25 * (1 + 680 / 10) = 85 V.  程序顯示1.25~84V, 低于1.25V返回000, 高于84V返回FFF.

  8. 例: 比較一次的時間間隔為10us, 量程為33200, 則做1次ADC的時間為33ms. 比較器的響應時間越短, 則完成ADC就越快.

  9. 由于要求每次比較時間間隔都要相等,所以用C編程最好在定時器中斷里進行, 定時器設置為自動重裝, 高優先級中斷, 其它中斷均低優先級.

  10. 用匯編的話, 保證比較輸出電平處理的時間要相等.



  11.                                          680K
  12.                             /| P5.5         ___
  13.                            /+|-----------o-|___|- ------- Vin
  14.                       ----<  | P5.4 ___  |
  15.                            \-|-----|___|-o
  16.                             \|      10K  |
  17.                                          |
  18.                                         ---
  19.                                         ---  104
  20.                                          |  
  21.                                          |
  22.                                         ===
  23.                                         GND

  24. ******************************/
  25. #include        "MAIN.H"
  26. #include        "EEPROM.C"
  27. /*************        本地常量聲明        **************/
  28. #define                BandGap                122        //1246 mv
  29. #define                ADC_SCALE        *((unsigned short volatile data *)0x18)
  30. #define                ADC_Reference        *((unsigned long volatile data *)0x18)
  31. #define                ADC_Multiple        *((unsigned short volatile data *)0x1C)
  32. #define                BGP                *((unsigned short volatile data *)0x1E)
  33. //#define                adc_value        *((unsigned short volatile data *)0x38)
  34. #define                Value_H                *((unsigned char volatile data *)0x20)
  35. #define                Value_L                *((unsigned char volatile data *)0x21)
  36. //u8 volatile data        adc_temp[2] _at_ 0x30;
  37. //#define                BandGap                *((unsigned short volatile data *)0x30)
  38. //#define                ADC_Multiple        *((unsigned short volatile data *)0x32)
  39. //#define                ADC_SCALE        *((unsigned short volatile data *)0x34)
  40. //#define                ADC_Reference        *((unsigned long volatile data *)0x34)
  41. u8 volatile data        adc_temp[8] _at_ 0x18;
  42. u16 volatile data        adc_value _at_ 0x20;
  43. //u8 volatile data        Value_H _at_ 0x38;
  44. //u8 volatile data        Value_L _at_ 0x39;
  45. #define                CMPRES                (CMPCR1 & 0x01)
  46. //u8 code Led_Lib[]        = {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
  47. u8 code Led_Count[]        = {0xf7,0xfb,0xfd};

  48. /*************        本地變量聲明        **************/
  49. sbit P_ADC        = P5^4;                //P3.6 比較器轉IO輸出端
  50. sbit Press        = P3^0;                //P3.0 按鍵檢測IO
  51. u8        data        BandGap_addr, adc_addr, Key, Long_Press, Disp_Count, T2_Count;
  52. u8        data        Led_Temp[4], Led_Buf[3], Key_Press[3];
  53. u16        data        adc;                        //ADC中間值, 用戶層不可見
  54. u16        data        adc_duty;                //ADC計數周期, 用戶層不可見
  55. //u16        data        adc_value;                //ADC值, 用戶層使用
  56. bit        Show_Mode, Edit_Mode, adc_ok;                        //ADC結束標志, 為1則adc_value的值可用. 此標志給用戶層查詢,并且清0

  57. /*************        本地函數聲明        **************/
  58. void Get_ADCSCALE()
  59. {
  60.         adc_temp[0] = 0xff;
  61.         while(adc_temp[0] == 0xff)
  62.         {
  63.                 adc_temp[0] = Read_EepromH(--adc_addr);
  64.         }
  65.         adc_temp[1] = Read_EepromL(adc_addr);
  66. }

  67. void Save_ADCSCALE()
  68. {
  69.         if(++adc_addr == 0x00)        Erase_Eeprom();
  70.         Write_EepromH(adc_addr, adc_temp[0]);
  71.         Write_EepromL(adc_addr, adc_temp[1]);
  72. }

  73. /*
  74. void Get_ADCSCALE()
  75. {
  76.         adc_temp[0]        = 0xff;
  77.         BandGap_addr        = 0x80;
  78.         while(adc_temp[0] == 0xff)
  79.         {
  80.                 adc_temp[0] = Read_EepromH(--BandGap_addr);
  81.         }
  82.         adc_temp[1] = Read_EepromH(BandGap_addr | 0x80);
  83.         adc_temp[2] = Read_EepromL(BandGap_addr);
  84.         adc_temp[3] = Read_EepromL(BandGap_addr | 0x80);
  85. }

  86. void Save_ADCSCALE()
  87. {
  88.         if(++BandGap_addr == 0x80)
  89.         {
  90.                 BandGap_addr        = 0x00;
  91.                 Erase_Eeprom();
  92.         }
  93.         Write_EepromH(BandGap_addr, adc_temp[0]);
  94.         Write_EepromH((BandGap_addr | 0x80), adc_temp[1]);
  95.         Write_EepromL(BandGap_addr, adc_temp[2]);
  96.         Write_EepromL((BandGap_addr | 0x80), adc_temp[3]);
  97. }

  98. void Reference_ADC()
  99. {
  100.         ADC_Reference = BandGap        * ADC_Multiple * 2621;
  101. }
  102. */

  103. void main(void)
  104. {
  105.         IAP_CONTR = ENABLE_IAP;
  106.         Get_ADCSCALE();
  107. //        Reference_ADC();        
  108.         P1Mode        = DDPP_PPPP;        //P1.5~P1.0  設置為強推挽輸出(Led段碼a~f)
  109.         P3Mode        = PPDD_OOOD;        //P3.7~P3.6  設置為強推挽輸出(Led段碼g、dp)  P3.3~P3.1  設置為開漏輸出(Led位碼0~2)  P3.0  設置為準雙向(按鍵檢測)
  110.         P5Mode        = DDHO_DDDD;        //P5.5  設置為高阻輸入(adc正極輸入,電壓檢測)  P5.4  設置為開漏輸出(adc電荷平衡)

  111.         TH0 = Reload_for_Timer0 / 256;        //重裝值  中斷率50KHZ, 中斷周期20us
  112.         TL0 = Reload_for_Timer0 % 256;

  113.         T2H = Reload_for_Timer2 / 256;
  114.         T2L = Reload_for_Timer2 % 256;   //設置波特率重裝值

  115.                                 //        7        6        5        4        3        2        1        0
  116. //        IAP_CONTR=B_1000_0001;        //        IAPEN        SWBS        SWRST        CMD_FAL        -        WT2        WT1        WT0
  117. //        IAP_CMD        = B_0000_0001;        //        -        -        -        -        -        -        MS1        MS0        // IAP_TRIG = 5a a5
  118.         CMPCR1        = B_1000_0000;        //        CMPEN        CMPIF        PIE        NIE        PIS        NIS        CMPOE        CMPRES
  119.         CMPCR2        = B_0000_0000;        //        INVCMPO        DISFLT        LCDTY[5:0]

  120. //        SCON        = B_0101_0000;        //        SM0/FE        SM1        SM2        REN        TB8        RB8        TI        RI
  121.         TMOD        = B_0000_0000;        //        GATE        C/T        M1        M0        GATE        C/T        M1        M0
  122.         TCON        = B_0001_0000;        //        TF1        TR1        TF0        TR0        IE1        IT1        IE0        IT0
  123.         AUXR        = B_1001_0000;        //        T0x12        T1x12        UARTxM6        T2R        T2_C/T        T2x12        EXTRAM        S1ST2
  124.         IE2        = B_0000_0100;        //        -        ET4        ET3        ES4        ES3        ET2        ESPI        ES2
  125.         IP        = B_0000_0010;        //        PPCA        PLVD        PADC        PS        PT1        PX1        PT0        PX0
  126.         IE        = B_1000_0010;        //        EA        ELVD        EADC        ES        ET1        EX1        ET0        EX0

  127.         while (1)
  128.         {
  129.                 if(Show_Mode)
  130.                 {
  131.                         Led_Buf[0]        = Led_Lib(adc_temp[0] >> 4);
  132.                         Led_Buf[1]        = Led_Lib(adc_temp[0] & 0x0f);
  133.                         Led_Buf[2]        = Led_Lib(adc_temp[1] >> 4);
  134.                 }
  135.                 else
  136.                 {
  137.                         if(adc_ok)                //等待ADC結束
  138.                         {
  139.                                 
  140.                                 Led_Temp[1]        = Hex2BCD(Value_H);
  141.                                 Led_Temp[0]        = Led_Temp[1] >> 4;
  142.                                 Led_Temp[1]        |= 0xf0;
  143.                                 Led_Temp[3]        = Hex2BCD(Value_L);
  144.                                 Led_Temp[2]        = Led_Temp[3] >> 4;
  145.                                 Led_Temp[3]        &= 0x0f;
  146.                                 if(adc_value > 999)
  147.                                 {
  148.                                         if(adc_value > 8400)
  149.                                         {
  150.                                                 Led_Buf[0]        = 0x71;
  151.                                                 Led_Buf[1]        = 0x71;
  152.                                                 Led_Buf[2]        = 0x71;
  153.                                         }
  154.                                         else
  155.                                         {
  156.                                                 Led_Buf[0]        = Led_Lib(Led_Temp[0]);
  157.                                                 Led_Buf[1]        = Led_Lib(Led_Temp[1]);
  158.                                                 Led_Buf[2]        = Led_Lib(Led_Temp[2]);
  159.                                         }
  160.                                 }
  161.                                 else
  162.                                 {
  163.                                         if(adc_value > 125)
  164.                                         {
  165.                                                 Led_Buf[0]        = Led_Lib(Led_Temp[1]);
  166.                                                 Led_Buf[1]        = Led_Lib(Led_Temp[2]);
  167.                                                 Led_Buf[2]        = Led_Lib(Led_Temp[3]);
  168.                                         }
  169.                                         else
  170.                                         {
  171.                                                 Led_Buf[0]        = 0x3f;
  172.                                                 Led_Buf[1]        = 0x3f;
  173.                                                 Led_Buf[2]        = 0x3f;
  174.                                         }
  175.                                 }
  176.                                 if(Edit_Mode)        Led_Buf[2] |= 0x80;
  177.                                 adc_ok = 0;                                //清除ADC已結束標志
  178.                         }
  179.                 }
  180.                 if(Key != 0x00)
  181.                 {
  182.                         switch(Key)
  183.                         {
  184.                                 case 0x01:
  185.                                         if(Edit_Mode)        ADC_SCALE -= 16;
  186.                                         if(Show_Mode)        ADC_Multiple -= 1;
  187.                                 break;
  188.                                 case 0x02:
  189.                                         if(Edit_Mode)        ADC_SCALE += 16;
  190.                                         if(Show_Mode)        ADC_Multiple += 1;
  191.                                 break;
  192.                                 case 0x11:
  193.                                         if(!Show_Mode)
  194.                                         {
  195.                                                 if(Edit_Mode)
  196.                                                 {
  197.                                                         Save_ADCSCALE();
  198.                                                         Edit_Mode = 0;
  199.                                                 }
  200.                                                 else        Edit_Mode = 1;
  201.                                         }
  202.                                 break;
  203.                                 case 0x12:
  204.                                         if(!Edit_Mode)        Show_Mode        = ~Show_Mode;
  205.                                 break;
  206.                                 default:
  207.                                 break;
  208.                         }
  209.                         Key = 0x00;
  210.                 }
  211.         }
  212. }

  213. //====================        Timer0        中斷函數 (電壓檢測)        ===============
  214. void Timer0_Routine()        interrupt 1        using 1
  215. {
  216.         if(CMPRES)
  217.         {
  218.                 P_ADC        = 0;
  219.                 adc++;                        //如比較結果為1,則adc計數加1
  220.         }
  221.         else        P_ADC        = 1;
  222.         if(--adc_duty == 0)                        //ADC周期-1, 到0則ADC結束
  223.         {
  224. ……………………

  225. …………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼
51hei.png
所有代碼51hei附件下載:
STC15W201S簡易電壓表(開漏).7z (508.42 KB, 下載次數: 56)

評分

參與人數 1黑幣 +80 收起 理由
admin + 80 共享資料的黑幣獎勵!

查看全部評分

回復

使用道具 舉報

ID:1108581 發表于 2024-1-9 22:48 | 顯示全部樓層
大佬牛逼,能寫這么多代碼,學習學習
回復

使用道具 舉報

ID:1064915 發表于 2024-1-12 08:43 | 顯示全部樓層
STC15W201S系列單片機引腳圖:
20180929112536110.png

回復

使用道具 舉報

ID:1064915 發表于 2024-1-12 16:10 | 顯示全部樓層
142634ioq09p9avh9p7xyp.png.thumb.png
MCU的工作頻率為22.1184MHz.
使用MCU自帶的比較器進行ADC轉換, 并通過串口輸出結果. 用定時器0產生10us中斷查詢比較器的狀態.
使用比較器做ADC, 原理圖如下.
做ADC的原理是基于電荷平衡的計數式ADC.
電壓從Vin輸入, 通過100K+104濾波, 進入比較器的P5.5正輸入端, 經過比較器的比較, 將結果輸出到P1.5再通過100K+104濾波后送比較器P5.4負輸入端,跟輸入電壓平衡.
設置兩個變量: 計數周期(量程)adc_duty 和 比較結果高電平的計數值 adc, adc嚴格比例于輸入電壓.
ADC的基準就是P1.5的高電平. 如果高電平準確,比較器的放大倍數足夠大,則ADC結果會很準確.
當比較結果為高電平,則P1.5輸出1, 并且adc+1.
當比較結果為低電平,則P1.5輸出0.
每一次比較都判斷計數周期是否完成,完成則adc里的值就是ADC結果.
電荷平衡計數式ADC的性能類似數字萬用表用的雙積分ADC, 當計數周期為20ms的倍數時,具有很強的抗工頻干擾能力,很好的線性和精度.
原理可以參考ADD3501(3 1/2位數字萬用表)或ADD3701(3 3/4位數字萬用表), 也可以參考AD7740 VFC電路.
例: 比較一次的時間間隔為10us, 量程為10000, 則做1次ADC的時間為100ms. 比較器的響應時間越短, 則完成ADC就越快.
由于要求每次比較時間間隔都要相等,所以用C編程最好在定時器中斷里進行, 定時器設置為自動重裝, 高優先級中斷, 其它中斷均低優先級.
用匯編的話, 保證比較輸出電平處理的時間要相等.
回復

使用道具 舉報

ID:1109333 發表于 2024-1-15 20:51 | 顯示全部樓層
看似簡單,其實很復雜!
回復

使用道具 舉報

ID:200118 發表于 2024-1-19 16:25 | 顯示全部樓層
分享電路圖就更好
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
精品樱空桃一区二区三区| 99九九99九九九视频精品| 欧美丝袜美腿| 欧美视频二区欧美影视| 成人午夜毛片| 国内自拍亚洲| 祥仔av免费一区二区三区四区| 成人免费福利| 亚洲精品一区av| 精品99re| 丝袜av一区| 沈樵精品国产成av片| 欧美日韩老妇| 国产精品久久久久久| 欧美在线高清| 亚洲狼人精品一区二区三区| 一区在线视频观看| 亚洲人妖在线| 日韩成人午夜电影| 九九热在线视频观看这里只有精品| 精品一区二区三区日韩| 成人综合婷婷国产精品久久| 91麻豆swag| 亚洲视频中文字幕| 欧美日韩国产一区二区| 欧美在线你懂得| 日韩精品一区二区三区视频播放| 国产日韩精品视频一区| 国产精品日日摸夜夜摸av| 亚洲精品视频在线| 色综合久久天天综合网| 欧美一区二区三区免费大片 | 岛国毛片在线观看| 国产小视频在线观看免费| av毛片在线免费观看| 国产黄色片网站| 欧美性猛交一区二区三区| 国产1卡2卡三卡四卡网站| 被陌生人带去卫生间啪到腿软| 成人av影视| 精品久久久久一区二区三区| 日韩欧美一起| 美国十次综合久久| 欧美激情欧美| 日本女优在线视频一区二区| 国产精品亚洲成在人线| 玖玖玖电影综合影院| 精品国产一区二区三区噜噜噜 | 欧美精品tushy高清| 亚洲激情免费观看| 欧美激情亚洲精品| 亚洲综合日韩在线| 一区二区不卡在线| 亚洲老女人av| 国产在线观看免费视频软件| 中文字幕精品在线观看| 热99re久久精品精品免费| 九七影院理论片| 美女国产在线| 精品一区二区三区免费看| 国产精品传媒精东影业在线| 日韩av一二三| 国产精品美女久久久久高潮| 欧美伊人精品成人久久综合97| 亚洲欧洲黄色网| 国产精品久久久久久久7电影| 欧美动漫一区二区| 中文字幕国内自拍| 欧美一级片在线视频| 国产强被迫伦姧在线观看无码| 欧美一区二区三区久久综合| 日本中文字幕电影| 成人在线高清免费| 久久av导航| 久久97超碰色| 午夜精品久久久| 亚洲一区二区久久久| 成人在线一区二区| 可以看毛片的网址| 性欧美精品男男| 国产美女无遮挡永久免费| 免费看污片的软件| 污污在线观看| 精品国产精品久久一区免费式 | 欧美另类在线视频| 先锋av资源在线| 国产成人午夜性a一级毛片| 久久久综合色| 99国产精品一区| 欧美日本一道本| 欧美亚州一区二区三区| 国产又粗又硬又长| 女人又爽又黄免费女仆| 亚洲国产www| 亚洲美女在线免费观看| 素人啪啪色综合| 亚洲精品字幕| 一区二区三区中文字幕电影| 中文日韩电影网站| 麻豆av一区二区三区久久| 97超碰免费在线观看| 一级一级黄色片| 天天做夜夜操| a∨色狠狠一区二区三区| 亚洲毛片av| 伊人性伊人情综合网| 这里只有精品久久| 日韩精品电影网站| 中文字幕国产综合| 五月婷婷在线播放| 高h视频在线| 国产成人精品999在线观看| 不卡视频一二三| 精品久久久久久最新网址| 91精品国产综合久久男男| 午夜视频在线瓜伦| 波多野结衣一区二区在线| 台湾十八成人网| 欧美极品在线| 国产乱子轮精品视频| 日韩欧美国产一区二区三区| 97免费资源站| 污污内射在线观看一区二区少妇| 国产福利第一页| 你懂的在线观看| 成人黄色av| 亚洲你懂的在线视频| 欧美成人激情图片网| 欧美一级特黄aaaaaa在线看片| 小早川怜子一区二区的演员表| 国产又白又嫩又爽又黄| 国产福利电影在线播放| 男女av一区三区二区色多| 日本道色综合久久| 91久久精品国产91久久性色| 第一页在线视频| 一区二区三区激情| 久久国产精品黑丝| 久久精品人人| 欧美精品v国产精品v日韩精品| 亚洲在线视频观看| 97人妻精品一区二区三区免| 久久国产精品久久久久久小说| segui88久久综合9999| 日韩中文字幕不卡| 精品久久久久久久久久久久包黑料 | 国产成人看片| 亚洲自拍偷拍一区二区| 国产精品视频一区二区三区麻豆| 成人一区福利| 国产成人在线影院| 亚洲一二在线观看| 成人免费在线网| 伊人色综合久久久| www免费网站在线观看| 红桃视频国产精品| 欧美精品 日韩| 欧美色欧美亚洲另类七区| 免费在线观看h片| 99爱免费视频| 国产欧美日韩| 亚洲成av人片一区二区| 国产日韩中文字幕| 国产在线观看h| h免费在线观看| 亚洲动漫精品| 亚洲大型综合色站| 亚洲free性xxxx护士hd| jizz18女人高潮| 91骚色在线| 欧美残忍xxxx极端| 一本久久a久久免费精品不卡| 99国产视频| 欧美色图亚洲视频| 一级黄色在线| 亚洲免费高清| 日韩电影免费观看在线观看| av女优在线播放| 日本黄视频在线观看| 日本在线啊啊| 久久综合九色欧美综合狠狠| 性欧美办公室18xxxxhd| 熟妇高潮一区二区| 菠萝蜜视频网址| 97精品国产一区二区三区 | 中文字幕第21页| 四虎永久免费| 一区二区精彩视频| 偷偷要91色婷婷| 日本精品一区二区三区不卡无字幕| 精品人妻无码一区二区性色| 毛片av在线| 岛国精品一区二区| 91极品女神在线| 三年中国中文观看免费播放| 三级ai视频| 亚洲专区在线| www.日本久久久久com.| 色婷婷狠狠18禁久久| 黄色a**址| 亚洲精品在线观看91| 欧美不卡123| 免费在线观看的av网站| 欧美娇小极度另类| 青青视频一区二区| 精品视频在线免费观看| 麻豆传媒网站在线观看| 亚洲av片在线观看| 动漫av一区| 欧美日韩在线播放三区四区| 日本a级片在线观看| 先锋影音中文字幕| 日韩成人av在线资源| 欧美精品久久久久久久多人混战 | 日韩精品大片| www香蕉视频| 麻豆国产精品| 欧美亚洲动漫制服丝袜| 男人添女人荫蒂免费视频| 亚洲精品影视在线| 欧美少妇xxxx| 日韩av在线网| 国产成人av免费观看| 日韩黄色动漫| 国产精品亚洲一区二区三区妖精| 日本一区二区在线播放| 久久这里只有精品免费| 超碰在线资源| 亚洲国产日韩综合久久精品| 佐佐木明希av| 国产精品亚洲综合久久小说| 亚洲色图88| 色偷偷av一区二区三区乱| 小早川怜子久久精品中文字幕| 国产在线视频网址| 久久久五月婷婷| 欧美日韩一区二区三区在线观看免 | 亚洲性线免费观看视频成熟| 黄色片视频免费观看| 一区二区三区高清在线视频| 国产91精品在线观看| 91欧美精品成人综合在线观看| 这里只有精品免费视频| 免费一级欧美片在线观看网站| 精品视频一区三区九区| 亚洲无吗一区二区三区| xxxx影院| 豆国产96在线|亚洲| 99精品99久久久久久宅男| 亚洲第一视频在线| 精品高清久久| 中文日韩在线观看| 欧美激情图片小说| 僵尸再翻生在线观看| 精品久久久中文| 青青青国产在线视频| 性网站在线免费观看| av电影一区二区| 日本高清不卡三区| 国产精品免费麻豆入口| 欧美一级网站| 国产精品视频免费在线观看| 国产欧美久久久| 日韩夫妻性生活xx| 久久夜色精品国产欧美乱| 亚洲精品在线一区二区| 91蜜桃网址入口| 日本成人黄色片| 国产乱子夫妻xx黑人xyx真爽| 国产精品视频一二三四区| 精品国产九九九| 精品中文字幕一区二区三区av| 亚洲毛片在线看| 久久日免费视频| 国产激情视频在线看| 欧美日韩一区二区免费视频| av在线无限看| 一本大道香蕉8中文在线视频| 91视频国产观看| 一区二区三区不卡在线| 俄罗斯黄色一级片| 国产精品一区免费在线观看| 久久久久久一区| 在线观看岛国片| 国产又黄又大久久| 女女同性女同一区二区三区91| 久久精品视频在线观看榴莲视频| 久久久久国产精品一区二区| 国产 高清 精品 在线 a| 欧美精品se| 精品一区二区三区在线观看| 久久亚洲精品欧美| 免费在线观看a| www.在线成人| 男人天堂新网址| 四虎永久在线| 亚洲精品久久嫩草网站秘色| 波多野结衣xxxx| 美女写真理伦片在线看| 在线看国产日韩| 国产人妻大战黑人20p| 欧洲成人一区| 亚洲人线精品午夜| 综合网在线观看| 色婷婷色综合| 国产精品综合网站| 欧美成人禁片在线www| 久久国产精品区| 欧美h视频在线观看| 操操操综合网| 图片区小说区国产精品视频| 久久久久亚洲AV成人网人人小说| 国产调教在线| 精品夜色国产国偷在线| 青青操免费在线视频| 日产精品一区二区| 91精品美女在线| 韩国18福利视频免费观看| 国产99精品视频| 蜜臀av无码一区二区三区| 国产有码在线| 欧美人伦禁忌dvd放荡欲情| 手机免费观看av| 欧美日韩导航| 国产精品免费视频xxxx| 国产精品第八页| 久久精品无码一区二区三区| 超碰在线播放91| 在线免费看h| 色婷婷**av毛片一区| www香蕉视频| 日本va欧美va瓶| 国产一区二区三区播放| lutube成人福利在线观看| 91精品欧美福利在线观看| 亚欧洲精品在线视频| 亚洲精品成人| 久久久久久高清| 最新中文字幕在线视频| 在线视频欧美区| 国产精品.www| 欧美日韩亚洲一区在线观看| 欧美极品一区二区| 视频一区二区三区在线看免费看| 欧美日韩国产电影| 精品人妻一区二区三区免费看| 伊人成年综合电影网| 亚洲图片欧洲图片日韩av| 东凛在线观看| 日韩av网址在线| 性猛交富婆╳xxx乱大交天津 | 久久不射电影网| 久久爱com| 国产欧美日韩久久| 亚洲第一黄色网址| 日韩理论电影中文字幕| 亚洲一区二区三区乱码aⅴ蜜桃女 亚洲一区二区三区乱码aⅴ | 国产无人区码熟妇毛片多| 欧美特黄a级高清免费大片a级| 性欧美.com| av网址在线播放| 久久精品国产欧美激情| 亚洲国产成人在人网站天堂| 国产精品久久久久影院亚瑟| 中文字幕国产综合| 久久精品国产大片免费观看| 亚洲精品白虎| 欧美色图天堂| 久久91亚洲人成电影网站| 国产成人免费视频app| 亚洲综合网站在线观看| 免费在线视频一区二区| 亚洲欧美视频一区二区三区| 国产中文字幕在线免费观看| 日韩在线免费| 国产日韩欧美在线看| 久草在线资源视频在线观看| 精品国内二区三区| 天天干,夜夜操| 国产精品电影一区二区三区| 性欧美疯狂猛交69hd| 午夜在线一区二区| 超碰97人人射妻| 日韩精品视频一区二区三区| 成人3d动漫一区二区三区91| 国产中文字幕在线观看| 中文字幕亚洲一区二区三区| 久久亚洲国产成人亚| 精品欧美一区二区三区| 无码人妻久久一区二区三区不卡| 国产在线日韩欧美| 无码国产精品一区二区免费式直播 | 亚洲欧美成人一区二区在线电影| 亚洲色婷婷综合开心网| 亚洲激情中文1区| 国产午夜精品无码| 国产综合久久久久影院| 国产xxxx视频| 国产精品v一区二区三区| 丰满少妇被猛烈进入高清播放|