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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索

如何根據成型的單片機時鐘編寫程序?

查看數: 5188 | 評論數: 4 | 收藏 0
關燈 | 提示:支持鍵盤翻頁<-左 右->
    組圖打開中,請稍候......
發布時間: 2016-12-28 11:51

正文摘要:

如圖,單片機的型號是stc15f204ea,之前在網上買了些零件,將之組裝完成后才發現缺少相對應的程序。 請問,如果想要編寫出相對應的時鐘鬧鐘程序,需要怎么做? 可以的話,請務必留下詳細的回復。

回復

ID:158248 發表于 2016-12-28 23:09
這個得根據電路來寫程序,你可以用已有的原件設計電路,再編寫程序。
ID:155507 發表于 2016-12-28 21:21
相對應的時鐘鬧鐘程序
  1. //
  2. // STC15F204EA DIY LED Clock
  3. //

  4. #include "stc15.h"
  5. #include <stdint.h>
  6. #include <stdio.h>
  7. #include "adc.h"
  8. #include "ds1302.h"
  9. #include "led.h"
  10.    
  11. #define FOSC    11059200

  12. // clear wdt
  13. #define WDT_CLEAR()    (WDT_CONTR |= 1 << 4)

  14. // alias for relay and buzzer outputs, using relay to drive led for indication of main loop status
  15. #define RELAY   P1_4
  16. #define BUZZER  P1_5
  17.    
  18. // adc channels for sensors
  19. #define ADC_LIGHT 6
  20. #define ADC_TEMP  7

  21. // three steps of dimming. Photoresistor adc value is 0-255. Lower values = brighter.
  22. #define DIM_HI  100
  23. #define DIM_LO  190

  24. // button switch aliases
  25. #define SW2     P3_0
  26. #define S2      1
  27. #define SW1     P3_1
  28. #define S1      0

  29. // display mode states
  30. enum keyboard_mode {
  31.     K_NORMAL,
  32.     K_WAIT_S1,
  33.     K_WAIT_S2,
  34.     K_SET_HOUR,
  35.     K_SET_MINUTE,
  36.     K_SET_HOUR_12_24,
  37.     K_SEC_DISP,
  38.     K_TEMP_DISP,
  39.     K_DATE_DISP,
  40.     K_DATE_SWDISP,
  41.     K_SET_MONTH,
  42.     K_SET_DAY,
  43.     K_WEEKDAY_DISP,
  44.     K_DEBUG
  45. };

  46. // display mode states
  47. enum display_mode {
  48.     M_NORMAL,
  49.     M_SET_HOUR_12_24,
  50.     M_SEC_DISP,
  51.     M_TEMP_DISP,
  52.     M_DATE_DISP,
  53.     M_WEEKDAY_DISP,
  54.     M_DEBUG
  55. };

  56. /* ------------------------------------------------------------------------- */

  57. void _delay_ms(uint8_t ms)
  58. {       
  59.     // i,j selected for fosc 11.0592MHz, using oscilloscope
  60.     // the stc-isp tool gives inaccurate values (perhaps for C51 vs sdcc?)
  61.     // max 255 ms
  62.     uint8_t i, j;
  63.     do {
  64.             i = 4;
  65.             j = 240;
  66.             do
  67.             {
  68.                     while (--j);
  69.             } while (--i);
  70.     } while (--ms);
  71. }

  72. // GLOBALS
  73. uint8_t  count;     // was uint16 - 8 seems to be enough
  74. uint16_t temp;      // temperature sensor value
  75. uint8_t  lightval;  // light sensor value

  76. volatile uint8_t displaycounter;
  77. volatile uint8_t _100us_count;
  78. volatile uint8_t _10ms_count;

  79. uint8_t dmode = M_NORMAL;     // display mode state
  80. uint8_t kmode = K_NORMAL;
  81. uint8_t smode,lmode;

  82. volatile __bit  display_colon;         // flash colon
  83. __bit  flash_01;
  84. __bit  flash_23;
  85. __bit  beep = 1;

  86. volatile __bit  S1_LONG;
  87. volatile __bit  S1_PRESSED;
  88. volatile __bit  S2_LONG;
  89. volatile __bit  S2_PRESSED;

  90. volatile uint8_t debounce[2];      // switch debounce buffer
  91. volatile uint8_t switchcount[2];
  92. #define SW_CNTMAX 80

  93. void timer0_isr() __interrupt 1 __using 1
  94. {
  95.     // display refresh ISR
  96.     // cycle thru digits one at a time
  97.     uint8_t digit = displaycounter % 4;

  98.     // turn off all digits, set high   
  99.     P3 |= 0x3C;

  100.     // auto dimming, skip lighting for some cycles
  101.     if (displaycounter % lightval < 4 ) {
  102.         // fill digits
  103.         P2 = dbuf[digit];
  104.         // turn on selected digit, set low
  105.         P3 &= ~(0x4 << digit);  
  106.     }
  107.     displaycounter++;

  108.     //  divider: every 10ms
  109.     if (++_100us_count == 100) {
  110.         _100us_count = 0;
  111.         _10ms_count++;

  112.         // colon blink stuff, 500ms
  113.         if (_10ms_count == 50) {
  114.             display_colon = !display_colon;
  115.             _10ms_count = 0;
  116.         }
  117.             
  118.         // switch read, debounce:
  119.         // increment count if settled closed
  120.         if ((debounce[0]) == 0x00) {
  121.             // down for at least 8 ticks
  122.             S1_PRESSED = 1;
  123.             switchcount[0]++;
  124.         } else {
  125.             // released or bounced, reset state            
  126.             S1_PRESSED = 0;
  127.             switchcount[0] = 0;
  128.         }

  129.         if ((debounce[1]) == 0x00) {
  130.             // down for at least 8 ticks            
  131.             S2_PRESSED = 1;
  132.             switchcount[1]++;
  133.         } else {
  134.             // released or bounced, reset state
  135.             S2_PRESSED = 0;
  136.             switchcount[1] = 0;
  137.         }

  138.         // debouncing stuff
  139.         // keep resetting halfway if held long
  140.         if (switchcount[0] > SW_CNTMAX)
  141.             {switchcount[0] = SW_CNTMAX; S1_LONG=1;}
  142.         if (switchcount[1] > SW_CNTMAX)
  143.             {switchcount[1] = SW_CNTMAX; S2_LONG=1;}

  144.         // read switch positions into sliding 8-bit window
  145.         debounce[0] = (debounce[0] << 1) | SW1;
  146.         debounce[1] = (debounce[1] << 1) | SW2;
  147.     }
  148. }

  149. void Timer0Init(void)                //100us @ 11.0592MHz
  150. {
  151.         TL0 = 0xA4;                //Initial timer value
  152.         TH0 = 0xFF;                //Initial timer value
  153.     TF0 = 0;                //Clear TF0 flag
  154.     TR0 = 1;                //Timer0 start run
  155.     ET0 = 1;        // enable timer0 interrupt
  156.     EA = 1;         // global interrupt enable
  157. }

  158. #define getkeypress(a) a##_PRESSED

  159. int8_t gettemp(uint16_t raw) {
  160.     // formula for ntc adc value to approx C
  161.     return 76 - raw * 64 / 637;
  162. }

  163. /*********************************************/
  164. int main()
  165. {
  166.     // SETUP
  167.     // set photoresistor & ntc pins to open-drain output
  168.     P1M1 |= (1<<6) | (1<<7);
  169.     P1M0 |= (1<<6) | (1<<7);
  170.             
  171.     // init rtc
  172.     ds_init();
  173.     // init/read ram config
  174.     ds_ram_config_init();
  175.    
  176.     // uncomment in order to reset minutes and hours to zero.. Should not need this.
  177.     //ds_reset_clock();   
  178.    
  179.     Timer0Init(); // display refresh & switch read
  180.    
  181.     // LOOP
  182.     while(1)
  183.     {

  184.       RELAY = 0;
  185.       _delay_ms(100);
  186.       RELAY = 1;

  187.       // run every ~1 secs
  188.       if ((count & 3) == 0) {
  189.           lightval = getADCResult8(ADC_LIGHT) >> 3;
  190.           temp = gettemp(getADCResult(ADC_TEMP)) + (config_table[CONFIG_TEMP_BYTE]&CONFIG_TEMP_MASK) - 4;

  191.           // constrain dimming range
  192.           if (lightval < 4)
  193.               lightval = 4;

  194.       }      

  195.       ds_readburst(); // read rtc

  196.       // keyboard decision tree
  197.       switch (kmode) {
  198.          
  199.           case K_SET_HOUR:
  200.               flash_01 = !flash_01;
  201.               if (! flash_01) {
  202.                   if (getkeypress(S2)) ds_hours_incr();
  203.                   if (getkeypress(S1)) kmode = K_SET_MINUTE;
  204.               }
  205.               break;
  206.               
  207.           case K_SET_MINUTE:
  208.               flash_01 = 0;
  209.               flash_23 = !flash_23;
  210.               if (! flash_23) {
  211.                   if (getkeypress(S2)) ds_minutes_incr();
  212.                   if (getkeypress(S1)) kmode = K_SET_HOUR_12_24;
  213.               }
  214.               break;

  215.           case K_SET_HOUR_12_24:
  216.               dmode=M_SET_HOUR_12_24;
  217.               if (getkeypress(S2)) ds_hours_12_24_toggle();
  218.               if (getkeypress(S1)) kmode = K_NORMAL;
  219.               break;
  220.               
  221.           case K_TEMP_DISP:
  222.               dmode=M_TEMP_DISP;
  223.               if (getkeypress(S1))
  224.                   { uint8_t offset=config_table[CONFIG_TEMP_BYTE]&CONFIG_TEMP_MASK;
  225.                     offset++; offset&=CONFIG_TEMP_MASK;
  226.                     config_table[CONFIG_TEMP_BYTE]=(config_table[CONFIG_TEMP_BYTE]&~CONFIG_TEMP_MASK)|offset;
  227.                   }
  228.               if (getkeypress(S2)) kmode = K_DATE_DISP;
  229.               break;
  230.                         
  231.           case K_DATE_DISP:
  232.               dmode=M_DATE_DISP;
  233.               if (getkeypress(S1)) {kmode=K_WAIT_S1; lmode=CONF_SW_MMDD?K_SET_DAY:K_SET_MONTH; smode=K_DATE_SWDISP; }
  234.               if (getkeypress(S2)) kmode = K_WEEKDAY_DISP;                        
  235.               break;

  236.           case K_DATE_SWDISP:
  237.               CONF_SW_MMDD=!CONF_SW_MMDD;
  238.               kmode=K_DATE_DISP;
  239.               break;
  240.               
  241.           case K_SET_MONTH:
  242.               flash_01 = !flash_01;
  243.               if (! flash_01) {
  244.                   if (getkeypress(S2)) { ds_month_incr(); }
  245.                   if (getkeypress(S1)) { flash_01 = 0; kmode = CONF_SW_MMDD?K_DATE_DISP:K_SET_DAY; }
  246.               }
  247.               break;
  248.               
  249.           case K_SET_DAY:
  250.               flash_23 = !flash_23;
  251.               if (! flash_23) {
  252.                   if (getkeypress(S2)) { ds_day_incr(); }
  253.                   if (getkeypress(S1)) { flash_23 = 0; kmode = CONF_SW_MMDD?K_SET_MONTH:K_DATE_DISP;
  254.                   }
  255.               }
  256.               break;
  257.               
  258.           case K_WEEKDAY_DISP:
  259.               dmode=M_WEEKDAY_DISP;
  260.               if (getkeypress(S1)) ds_weekday_incr();
  261.               if (getkeypress(S2)) kmode = K_NORMAL;
  262.               break;
  263.          
  264.           case K_DEBUG:
  265.               dmode=M_DEBUG;
  266.               if (count>100) kmode = K_NORMAL;
  267.               if (S1_PRESSED||S2_PRESSED) count=0;
  268.               break;

  269.           case K_SEC_DISP:
  270.               dmode=M_SEC_DISP;
  271.               if (getkeypress(S1) || (count>100)) { kmode = K_NORMAL; }
  272.               if (getkeypress(S2)) { ds_sec_zero(); }
  273.               break;

  274.           case K_WAIT_S1:
  275.               count=0;
  276.               if (!S1_PRESSED) {
  277.                if (S1_LONG) {S1_LONG=0; kmode=lmode;}
  278.                       else  {kmode=smode;}
  279.                }
  280.               break;

  281.           case K_WAIT_S2:
  282.               count=0;
  283.               if (!S2_PRESSED) {
  284.                if (S2_LONG) {S2_LONG=0; kmode=lmode;}
  285.                       else  {kmode=smode;}
  286.                }
  287.               break;

  288.           case K_NORMAL:         
  289.           default:
  290.               flash_01 = 0;
  291.               flash_23 = 0;

  292.               dmode=M_NORMAL;

  293.               if (S1_PRESSED) { kmode = K_WAIT_S1; lmode=K_SET_HOUR; smode=K_SEC_DISP;  }
  294.               //if (S2_PRESSED) { kmode = K_WAIT_S2; lmode=K_DEBUG;    smode=K_TEMP_DISP; }
  295.               if (S2_PRESSED) { kmode = K_TEMP_DISP; }
  296.       
  297.       };

  298.       // display execution tree
  299.      
  300.       clearTmpDisplay();

  301.       switch (dmode) {
  302.           case M_NORMAL:
  303.               if (flash_01) {
  304.                   dotdisplay(1,display_colon);
  305.               } else {
  306.                   if (!H12_24) {
  307.                       filldisplay( 0, (rtc_table[DS_ADDR_HOUR]>>4)&(DS_MASK_HOUR24_TENS>>4), 0);        // tenhour
  308.                   } else {
  309.                       if (H12_TH) filldisplay( 0, 1, 0);        // tenhour in case AMPM mode is on, then '1' only is H12_TH is on
  310.                   }                  
  311.                   filldisplay( 1, rtc_table[DS_ADDR_HOUR]&DS_MASK_HOUR_UNITS, display_colon);      
  312.               }
  313.   
  314.               if (flash_23) {
  315.                   dotdisplay(2,display_colon);
  316.                   dotdisplay(3,H12_24&H12_PM);        // dot3 if AMPM mode and PM=1
  317.               } else {
  318.                   filldisplay( 2, (rtc_table[DS_ADDR_MINUTES]>>4)&(DS_MASK_MINUTES_TENS>>4), display_colon);        //tenmin
  319.                   filldisplay( 3, rtc_table[DS_ADDR_MINUTES]&DS_MASK_MINUTES_UNITS, H12_24 & H12_PM);                  //min
  320.               }
  321.               break;

  322.           case M_SET_HOUR_12_24:
  323.               if (!H12_24) {
  324.                   filldisplay( 1, 2, 0); filldisplay( 2, 4, 0);
  325.               } else {
  326.                   filldisplay( 1, 1, 0); filldisplay( 2, 2, 0);                  
  327.               }
  328.               filldisplay( 3, LED_h, 0);
  329.               break;

  330.           case M_SEC_DISP:
  331.               dotdisplay(0,display_colon);
  332.               dotdisplay(1,display_colon);
  333.               filldisplay(2,(rtc_table[DS_ADDR_SECONDS]>>4)&(DS_MASK_SECONDS_TENS>>4),0);
  334.               filldisplay(3,rtc_table[DS_ADDR_SECONDS]&DS_MASK_SECONDS_UNITS,0);
  335.               break;
  336.               
  337.           case M_DATE_DISP:
  338.               if (flash_01) {
  339.                   dotdisplay(1,1);
  340.               } else {
  341.                  if (!CONF_SW_MMDD) {
  342.                   filldisplay( 0, rtc_table[DS_ADDR_MONTH]>>4, 0);        // tenmonth ( &MASK_TENS useless, as MSB bits are read as '0')
  343.                   filldisplay( 1, rtc_table[DS_ADDR_MONTH]&DS_MASK_MONTH_UNITS, 1); }         
  344.                  else {
  345.                   filldisplay( 2, rtc_table[DS_ADDR_MONTH]>>4, 0);        // tenmonth ( &MASK_TENS useless, as MSB bits are read as '0')
  346.                   filldisplay( 3, rtc_table[DS_ADDR_MONTH]&DS_MASK_MONTH_UNITS, 0); }         
  347.               }
  348.               if (!flash_23) {
  349.                  if (!CONF_SW_MMDD) {
  350.                   filldisplay( 2, rtc_table[DS_ADDR_DAY]>>4, 0);                      // tenday   ( &MASK_TENS useless)
  351.                   filldisplay( 3, rtc_table[DS_ADDR_DAY]&DS_MASK_DAY_UNITS, 0); }     // day      
  352.                  else {
  353.                   filldisplay( 0, rtc_table[DS_ADDR_DAY]>>4, 0);                      // tenday   ( &MASK_TENS useless)
  354.                   filldisplay( 1, rtc_table[DS_ADDR_DAY]&DS_MASK_DAY_UNITS, 1); }     // day      
  355.               }     
  356.               break;
  357.                   
  358.           case M_WEEKDAY_DISP:
  359.               filldisplay( 1, LED_DASH, 0);
  360.               filldisplay( 2, rtc_table[DS_ADDR_WEEKDAY], 0);                //weekday ( &MASK_UNITS useless, all MSBs are '0')
  361.               filldisplay( 3, LED_DASH, 0);
  362.               break;
  363.               
  364.           case M_TEMP_DISP:
  365.               filldisplay( 0, ds_int2bcd_tens(temp), 0);
  366.               filldisplay( 1, ds_int2bcd_ones(temp), 0);
  367.               filldisplay( 2, CONF_C_F ? LED_f : LED_c, 1);
  368.               // if (temp<0) filldisplay( 3, LED_DASH, 0);  -- temp defined as uint16, cannot be <0
  369.               break;                  

  370.           case M_DEBUG:
  371.               filldisplay( 0, switchcount[0]>>4, S1_LONG);
  372.               filldisplay( 1, switchcount[0]&15, S1_PRESSED);
  373.               filldisplay( 2, switchcount[1]>>4, S2_LONG);
  374.               filldisplay( 3, switchcount[1]&15, S2_PRESSED);
  375.               break;
  376.       }

  377.       __critical { updateTmpDisplay(); }
  378.                   
  379.       // save ram config
  380.       ds_ram_config_write();
  381.       
  382.       if (S1_PRESSED || S2_PRESSED && ! (S1_LONG || S2_LONG)) {
  383.           // try to dampen button over-response
  384.           _delay_ms(100);
  385.       }

  386.       // reset long presses when button released
  387.       if (! S1_PRESSED && S1_LONG) {
  388.           S1_LONG = 0;
  389.       }
  390.       if (! S2_PRESSED && S2_LONG) {
  391.           S2_LONG = 0;
  392.       }
  393.         
  394.       count++;
  395.       WDT_CLEAR();
  396.     }
  397. }
  398. /* ------------------------------------------------------------------------- */
復制代碼


https://github.com/zerog2k/stc_diyclock
ID:7485 發表于 2016-12-28 21:21
有電路圖就可以。要知道按鍵、顯示、蜂鳴器、ds1302各自對應的IO。
ID:113208 發表于 2016-12-28 21:02
這個要有電路圖呀!而且你跟他買,他應該會提供程序。

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
成人激情视频| 最好看的2019年中文视频 | 久久国产免费看| 日韩在线视频观看正片免费网站| 免费无码av片在线观看| 天堂网av2014| 久久成人福利| 日韩小视频在线观看专区| 尤物av无码色av无码| 欧美性猛交xx乱大交| 一本色道久久综合亚洲精品酒店| 91精品一区二区三区久久久久久 | 亚洲激情视频网| 一级黄色片国产| bt电影在线| 国产乱国产乱300精品| 国产精品十八以下禁看| 一区二区小视频| 大型av综合网站| 亚洲国产一区二区三区四区| 午夜不卡久久精品无码免费| 黄色av网址在线免费观看| 久久综合av免费| 亚洲欧洲日韩综合二区| 日本视频网址| 麻豆成人av在线| 147欧美人体大胆444| 国产人妻精品一区二区三区| 影音先锋欧美激情| 日韩成人在线视频| 顶级黑人搡bbw搡bbbb搡| 乱子伦一区二区三区| 日韩激情精品| 亚洲日本成人女熟在线观看 | 男人操女人逼免费视频| 欧美13~18sex性hd| 国产精品女同一区二区三区| 日韩精品―中文字幕| 在线视频观看你懂的| 2021中文字幕一区亚洲| 日韩精品一区二区免费| 香港三级经典全部种子下载| 亚洲天堂免费看| 制服丝袜综合网| 黄色网在线免费看| 欧美高清激情brazzers| 国产麻豆视频在线观看| 综合激情久久| 欧美极品第一页| 亚洲精品一区二区口爆| 视频一区二区三区入口| 亚洲国产一区二区在线| 成人3d漫画免费无遮挡软件| 欧美日韩精品国产| www.自拍偷拍| aaa国产精品| 国产91色在线|免| 欧美性性性性性ⅹxxbbbb| av爱爱亚洲一区| 东京热加勒比无码少妇| 国产色播av在线| 男女性色大片免费观看一区二区| 91网站在线看| jizz中国免费| 一区二区三区美女| 国产成人福利在线| 国产精品婷婷午夜在线观看| 日本一级黄视频| 在线观看黄av| 国产婷婷成人久久av免费高清| 国产精品熟女视频| 日韩成人免费在线| 99热在线这里只有精品| 日韩伦理在线一区| 欧美另类精品xxxx孕妇| 青青草国产在线| 激情深爱一区二区| 亚洲福利精品视频| 欧美日韩国产一区二区在线观看| 国产成人精品久久| 加勒比在线日本| 欧美三级视频在线观看| 国产一二三四区| 久久精品一卡二卡| 日韩毛片一区| 日韩三级电影| 成人片免费看| 在线精品播放av| 国产熟女精品视频| 日本伊人午夜精品| 欧美h视频在线观看| 校园春色欧美| 欧美男女性生活在线直播观看| 人妻少妇无码精品视频区| 欧美日韩xxxx| 不卡视频一区二区三区| 国产中文字幕在线观看| 日韩在线观看成人| 三级毛片网站| 欧洲一区二区三区在线| 国产精品视频一二区| 成人国产视频在线观看| 一色道久久88加勒比一| 99国产精品私拍| 欧美一级视频在线| 欧美gayvideo| 国产精品自拍片| 日韩成人在线电影| 精品视频第一区| 日韩电影免费观看| 国产精品久久久久高潮| 国产激情视频在线看| 亚洲高清123| 欧美一区二区三区激情视频| 日韩精品――色哟哟| 国模大胆一区二区三区| 国产吃瓜黑料一区二区| 久久最新视频| 精品无码黑人又粗又大又长| 国产日韩欧美高清在线| 国产精品乱码久久久| 日韩欧美精品网站| 国产综合精品久久| 久久精品亚洲精品国产欧美| 在线观看色网站| 欧美日韩在线播放三区| 先锋影音资源999| 亚州成人av在线| 成年人国产在线观看| 亚洲午夜精品一区二区| 久久av免费| 私密视频在线观看| 久久久久久久久久电影| 国产视频在线免费观看| 日韩一区二区三区四区| 性欧美18+| 91精品国产综合久久精品麻豆| 天天操夜夜添| 国产日韩欧美在线| 大奶在线精品| 国产男男chinese网站| 国产亚洲成aⅴ人片在线观看| 黄色一级a毛片| 亚洲欧美在线播放| 新版中文在线官网| 每日在线更新av| 国产一区欧美一区| 丰满人妻一区二区三区大胸 | 极品尤物一区| 中文在线永久免费观看| 中文字幕中文字幕在线一区| 国产精品xxx电影| 国产激情久久久| 美女呻吟一区| jizz日本在线播放| 日本乱人伦aⅴ精品| 色视频在线播放| 亚洲一卡二卡区| 美女一区二区视频| 天天操天天操天天操| 欧美激情影音先锋| 成人av动漫| 欧美精品videos极品| 欧美一卡2卡3卡4卡| 丁香花在线影院| 精产国品一二三区| 午夜视频一区二区| 污网站在线播放| 欧美激情一级二级| 99国内精品久久久久| 久久久视频6r| 日韩欧美一卡二卡| 欧美少妇精品| 五月天精品视频| 欧美变态tickling挠脚心| 亚洲丝袜一区| 久久久久国产精品区片区无码| 天天色综合成人网| 日本免费中文字幕在线| 伊人精品视频在线观看| 一区二区成人在线| 欧美色图第二页| 亚洲一区二区久久| 一区二区三区视频免费观看| 成人毛片在线免费观看| 精品一区在线播放| 日韩极品在线观看| 国产精品18久久久久网站| 亚洲va国产天堂va久久en| 国产导航在线| 日韩视频在线免费看| 亚洲天堂中文字幕| jizz在线观看中文| 国产精品探花在线播放| 欧洲激情一区二区| 欧美大片1688| 国产亚洲精久久久久久无码77777| 亚洲精品视频中文字幕| 成人av综合网| fpee性欧美| 亚洲最新在线| 亚洲欧美一区二区视频| 性xxxxfjsxxxxx欧美| 自拍偷拍中文字幕| 中文字幕日韩视频| 日韩精品一区二区久久| 好吊色一区二区| 成人动漫在线视频| 国产精品99久久久久| 天天天天天操| 不卡中文字幕在线观看| 欧美日韩综合一区| 欧美三级一区| 亚洲国产精品视频在线| 国产综合第一页| 成人av网站免费观看| h视频免费在线观看| 凹凸日日摸日日碰夜夜爽1| 欧美网站一区二区| 99久久人爽人人添人人澡| 在线播放一区二区精品产| 麻豆tv在线播放| 精品视频在线观看日韩| 亚洲欧美网站| 中文字幕中文字幕在线中文字幕三区| 国产一区亚洲二区三区| 欧美一级高清片| 久久精品国产亚洲夜色av网站| 717影院理论午夜伦不卡久久| 国产精品无码av在线播放| 日韩欧美中文一区| 图片小说视频色综合| 国产三级视频| 日本人亚洲人jjzzjjz| 26uuu另类亚洲欧美日本一| 国产精品影视网| 免费毛片在线看片免费丝瓜视频 | 亚洲ai欧洲av| 在线免费不卡视频| 日韩欧美不卡| 360天大佬第二季在线观看| 黄色录像一级片| 国产精品日韩高清| 欧美色区777第一页| 成人台湾亚洲精品一区二区| 国产尤物视频| 国产肉体xxxx裸体784大胆| 91久久综合亚洲鲁鲁五月天| 一个色在线综合| av永久不卡| 亚洲永久精品一区| av免费观看国产| 久久久久国产精品免费网站| 国产精品视频麻豆| 九九热线有精品视频99| 中文字幕视频在线观看| 中文字幕福利视频| 妓院一钑片免看黄大片| 97国产精品视频| 亚洲一区二区三区四区五区中文| 日韩激情一区| 国产午夜在线视频| 91成人在线免费| 亚洲自拍偷拍在线| 91黄色免费看| 久久99精品久久久久久国产越南| av网站在线看| 成人精品美女隐私视频| 三区四区在线观看| 亚洲一区三区在线观看| 欧美肥胖老妇做爰| 狂野欧美一区| 三级在线观看视频| 2018狠狠干| 波多野结衣电车| 一区二区三区视频在线观看免费| 国产精品久久久久久搜索| 欧美日韩中文精品| 极品少妇xxxx精品少妇| 国产精品chinese在线观看| 国产最顶级的黄色片在线免费观看| 波多野结衣一二区| 综合国产在线观看| 中文字幕av免费专区久久| 久久精品免费一区二区三区| 精品麻豆一区二区三区| 国产男女无套在线播放| 亚洲精品1区2区3区| 日本中文字幕精品| 自拍另类欧美| 91热精品视频| 久久视频在线免费观看| 日韩欧美国产视频| 91天堂素人约啪| 少妇精品久久久一区二区| 蜜桃成人365av| 91p在线观看| 先锋影音中文字幕| 亚洲黄色三级视频| 亚洲性图第一页| 国产精品无码电影在线观看| 国产精品入口免费视频一| 精品在线欧美视频| 狠狠色狠色综合曰曰| 国产高清视频一区| 欧美大片一区| 精品午夜电影| 俄罗斯一级**毛片在线播放| 毛片网站大全| 跑男十一季在线观看免费| 夜夜爽妓女8888视频免费观看| 醉酒壮男gay强迫野外xx| 欧美日韩黄色一级片| 日韩欧美亚洲日产国产| 成人欧美一区二区三区黑人孕妇| 中文字幕不卡在线视频极品| 欧美高清激情brazzers| 午夜伊人狠狠久久| 久久久久国产免费免费| 韩国成人精品a∨在线观看| 欧美影院天天5g天天爽| 极品av在线| 国产在线中文字幕| 500福利第一精品导航| 色视频免费版高清在线观看| 亚洲 国产 欧美 日韩| 国产一区二区视频免费观看| 中文字幕av播放| 四虎影成人精品a片| 亚洲国产精品狼友在线观看| 成人在线免费观看av| 日韩妆和欧美的一区二区| 91在线精品视频| 中文字幕一区av| 亚洲免费婷婷| 中文字幕免费一区二区三区| 久久99国产成人小视频| 99香蕉久久| 午夜视频在线观看精品中文| 亚洲成人人体| 欧美激情网站| 亚洲精品88| 成人在线不卡| 精品欧美视频| japansex久久高清精品| 东京一区二区| 免费成人美女女| 日本精品裸体写真集在线观看| 九七电影院97理论片久久tvb| 久草在线资源站手机版| 91桃色在线| 韩国精品主播一区二区在线观看| 99久久er| 一区二区三区四区高清视频 | 亚洲变态欧美另类捆绑| 精品国产伦一区二区三区观看体验| 91精品国产麻豆| 中文国产亚洲喷潮| 日本国产一区二区三区| 99中文字幕| 在线看无码的免费网站| 日韩激情视频一区二区| 国产天堂在线播放| 特级特黄刘亦菲aaa级| 成人午夜免费影院| 中文字幕一区在线播放| 成人午夜免费福利| 国产高清大尺度一区二区不卡| 97看剧电视剧大全| 免费在线观看黄| 热久久久久久| 久久中文字幕av一区二区不卡| 国内揄拍国内精品久久| 国产一区二区网址| 亚洲一区中文在线| 亚洲欧美日韩中文在线| 91国产视频在线| 欧美日韩一区二区视频在线观看| 日韩欧美国产综合在线| 性色av蜜臀av浪潮av老女人| 精品午夜福利在线观看| 亚洲免费一级片| av一级毛片| 久久青青视频| 狠狠综合久久av一区二区老牛| fc2成人免费人成在线观看播放| 一区二区三区视频在线观看| 亚洲大胆美女视频| 成人黄色免费看| 欧美视频第一区| 国产成人在线网址| 亚洲精品97久久中文字幕| jizzjizzjizz亚洲日本| 9999精品成人免费毛片在线看 | 欧美色图另类| 综合国产视频| 久久中文娱乐网| 亚洲精品日韩欧美| 日韩精品欧美一区二区三区| 国产人妻精品午夜福利免费|