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

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 5186|回復(fù): 4
打印 上一主題 下一主題
收起左側(cè)

如何根據(jù)成型的單片機(jī)時(shí)鐘編寫(xiě)程序?

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
#
ID:154366 發(fā)表于 2016-12-28 11:51 | 只看該作者 |只看大圖 回帖獎(jiǎng)勵(lì) |正序?yàn)g覽 |閱讀模式
286黑幣


如圖,單片機(jī)的型號(hào)是stc15f204ea,之前在網(wǎng)上買了些零件,將之組裝完成后才發(fā)現(xiàn)缺少相對(duì)應(yīng)的程序。

請(qǐng)問(wèn),如果想要編寫(xiě)出相對(duì)應(yīng)的時(shí)鐘鬧鐘程序,需要怎么做?

可以的話,請(qǐng)務(wù)必留下詳細(xì)的回復(fù)。

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

相關(guān)帖子

回復(fù)

使用道具 舉報(bào)

地板
ID:158248 發(fā)表于 2016-12-28 23:09 | 只看該作者
這個(gè)得根據(jù)電路來(lái)寫(xiě)程序,你可以用已有的原件設(shè)計(jì)電路,再編寫(xiě)程序。
回復(fù)

使用道具 舉報(bào)

板凳
ID:155507 發(fā)表于 2016-12-28 21:21 | 只看該作者
相對(duì)應(yīng)的時(shí)鐘鬧鐘程序
  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. /* ------------------------------------------------------------------------- */
復(fù)制代碼


https://github.com/zerog2k/stc_diyclock
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:7485 發(fā)表于 2016-12-28 21:21 | 只看該作者
有電路圖就可以。要知道按鍵、顯示、蜂鳴器、ds1302各自對(duì)應(yīng)的IO。
回復(fù)

使用道具 舉報(bào)

樓主
ID:113208 發(fā)表于 2016-12-28 21:02 | 只看該作者
這個(gè)要有電路圖呀!而且你跟他買,他應(yīng)該會(huì)提供程序。
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
爱啪视频在线观看视频免费| 色先锋资源久久综合5566| 欧美肥妇毛茸茸| 亚洲精品国产suv| 欧美激情极品视频| 91精品国产99久久久久久红楼| 蜜桃导航-精品导航| aa视频在线播放| 伊人久久一区二区三区| 久久久国产成人| 亚洲精品国产一区二| 免费看ww视频网站入口| 欧美成人片在线| videos性欧美另类高清| 亚洲日产av中文字幕| 天堂一区二区在线免费观看| 久久日韩粉嫩一区二区三区| 精品国产91久久久久久| 日韩极品精品视频免费观看| 日韩av免费一区| 在线视频不卡一区二区| 特黄特色免费视频| 日韩精品手机在线| 欧美最猛黑人xxxx黑人猛交3p| 国产在线传媒| 成人一区视频| 1024成人| 国产精品久久久久四虎| 亚洲精品一区二区三区影院| 国产成人avxxxxx在线看| 自拍视频一区二区三区| av电影在线播放| 亚洲精品国产无码| 九九热在线播放| 黄视频在线免费看| 欧美亚洲国产精品久久| 成人性生交大片免费| 欧美色图免费看| 午夜精品视频网站| 一区二区在线不卡| 人妻无码中文久久久久专区| 91在线精品入口| 先锋影音成人资源| 偷拍自拍在线看| 自拍偷拍欧美专区| 国产精品女人毛片| 在线播放精品一区二区三区| 国产精品国产亚洲精品看不卡15| 中文久久久久久| 国产成人在线播放视频| 国产精品一区二区午夜嘿嘿嘿小说| 久久久久久女乱国产| youjizz欧美| 国产一区二区不卡老阿姨| 欧美亚洲一区三区| 国产不卡在线观看| 无码人妻h动漫| 久久久久久久黄色片| 免费看黄色网| 成人午夜精品| 日韩中文字幕1| 日本高清视频一区二区| 2019中文字幕全在线观看| www.avtt| 日韩少妇裸体做爰视频| 狠狠操狠狠色| 亚洲综合在线电影| 蜜臀av一区二区在线观看| 欧美人体视频| 精品电影在线| 国产欧美自拍一区| 大白屁股一区二区视频| 日韩精品一区二区三区在线观看| 91精品视频免费观看| 亚洲综合av在线播放| 国产在线观看第一页| 黄色免费观看网站| 久9re热视频这里只有精品| av在线综合网| 国产亚洲精品久久久优势| 性欧美大战久久久久久久免费观看| 东京热无码av男人的天堂| 国产美女视频网站| 亚洲AV无码乱码国产精品牛牛| 麻豆视频官网| 视频一区日韩精品| 成人精品免费看| 国产丝袜视频一区| 日韩福利在线| 免费又黄又爽又色的视频| eeuss影院网站免费观看| 亚洲网站三级| jvid福利写真一区二区三区| 国产视频久久网| 国产av不卡一区二区| 日本一区二区网站| 嫩草嫩草嫩草| 欧美色图一区| 亚洲国产欧美在线| 国产精品福利在线观看| 无套内谢丰满少妇中文字幕| 亚洲一级免费毛片| 深夜在线视频| 成人av网址在线观看| 国产亚洲福利一区| 欧美一级欧美一级| 国产精品伊人久久| 成人看片免费| 男女激情视频一区| 亚洲国产另类久久精品 | 国产成人在线网站| 亚洲女人天堂成人av在线| 黄黄视频在线观看| 97精品久久人人爽人人爽| 老司机在线永久免费观看| 日韩精品亚洲一区二区三区免费| 日韩av在线最新| cao在线观看| 性少妇videosexfreexxx片| 色呦呦在线视频| 激情欧美一区二区| 精品国产美女在线| 高潮一区二区三区| 亚洲av成人精品毛片| 日本高清不卡一区二区三区视频| 99热99精品| 欧美亚洲视频在线观看| 午夜av免费看| eeuss影院www免费影院| 亚洲精品一级二级三级| 色婷婷国产精品综合在线观看| 91黄在线观看| 日韩男人的天堂| 香蕉视频在线看| 久久丁香综合五月国产三级网站| 在线播放亚洲激情| 午夜精品免费看| 91美剧网在线播放| 免费视频国产一区| 中文在线观看免费高清| 亚洲激情图片网| 免费成人黄色网址| 亚洲二区三区不卡| 欧美二区在线观看| h无码动漫在线观看| 亚洲精品国产片| 欧美日韩破处视频| 亚洲精品国产一区二区精华液| 成人激情视频在线| 青青草原免费观看| 99riav在线| 国产精品66部| 欧美在线影院在线视频| 欧美激情久久久久久久| 中文有码在线观看| 久久久久久久欧美精品| www.99久久热国产日韩欧美.com| 欧美日韩国产a| 国产美女在线精品免费观看| 69成人免费视频| 91精品久久久| 99久久婷婷国产综合精品| 日本在线观看天堂男亚洲| 亚洲不卡的av| 国产午夜精品一区理论片| 麻豆精品一区二区综合av| 久久亚洲一区二区三区四区五区高| wwwxxxx在线观看| 国产日韩在线| 久久久青草婷婷精品综合日韩| 精品国产一区二区三区久久狼5月| 久久久无码人妻精品无码| 欧美18 19xxx| 国产情侣一区| 久久久久久成人| 亚洲人与黑人屁股眼交| 秋霞a级毛片在线看| 91片黄在线观看| 成人91视频| 97人妻精品一区二区三区| 婷婷精品久久久久久久久久不卡| 亚洲成人自拍偷拍| 亚洲精品少妇一区二区| 国产一起色一起爱| 欧美人与禽猛交乱配视频| 在线观看国产精品日韩av| 国产精品300页| 狠狠狠综合7777久夜色撩人| www..com久久爱| 国严精品久久久久久亚洲影视| 国产激情视频在线播放| 老司机精品在线| 日韩精品在线免费观看视频| 男男做爰猛烈叫床爽爽小说| 极品美乳网红视频免费在线观看 | 波多野结衣精品在线| 亚洲999一在线观看www| 一本色道久久综合熟妇| 在线日韩成人| 精品国产麻豆免费人成网站| 国产91色在线观看| 免费在线观看的av| 三级不卡在线观看| 欧美福利视频在线| 少妇久久久久久被弄高潮| 超碰免费在线| 久久久久99精品国产片| 日韩视频在线播放| 免费男女羞羞的视频网站中文子暮 | 国内一区二区三区| 色老头一区二区三区在线观看| 黄色av免费播放| 91麻豆国产福利在线观看宅福利| 亚洲免费资源在线播放| 日本在线视频www色| 最新天堂网www| 日日摸夜夜添夜夜添精品视频| 欧美日韩国产成人在线| 日韩成人高清视频| 国产一区二区av在线| 欧美一二三区在线观看| 污污免费在线观看| 成人18在线| 夜夜精品视频一区二区| 波多野结衣综合网| 老司机在线免费视频| 成人午夜在线播放| 日韩精品欧美一区二区三区| 国产精品白浆流出视频| 久久亚洲风情| 99精品国产高清在线观看| 男人天堂手机在线观看| 亚洲乱码精品| 日本人成精品视频在线| 97在线公开视频| 国产精品久久久久久久免费观看| 久久久久北条麻妃免费看| 欧美日韩精品在线观看视频 | 欧美xxxxxbbbbb| 国产永久av在线| 亚洲人成在线观看一区二区| 欧美性大战久久久久xxx| 丝袜美女写真福利视频| 国产视频不卡一区| 亚洲嫩模很污视频| 亚洲熟妇一区二区| 福利视频在线播放| 亚洲免费在线电影| 国产免费视频传媒| 久青草国产在线| 亚洲老司机在线| 浓精h攵女乱爱av| 国产69精品久久app免费版| 亚洲国产日韩a在线播放性色| 在线观看av网页| 免费人成黄页在线观看忧物| 亚洲一二三区在线观看| 国产主播中文字幕| a√在线中文网新版址在线| 精品久久久久久国产91| 国产精品久久久久久久99| 五月香视频在线观看| 日本道色综合久久| 久草视频福利在线| 九色porny视频在线观看| 精品国产乱码久久久久久蜜臀| 免费一级特黄3大片视频| 综合在线影院| 亚洲人成自拍网站| 无码人妻丰满熟妇精品区| 精品久久一区| 国产欧美 在线欧美| 四虎永久免费影库二三区| 日本美女视频一区二区| 亚洲午夜精品一区二区| 久久精品无码一区二区日韩av| 国产精品传媒在线| 99999精品| 色综合亚洲图丝熟| 伊人青青综合网站| 一二三四区在线| 精品成人国产| 日韩三级电影免费观看| 免费av片风间由美在线| 国产亚洲网站| 欧美日韩在线不卡一区| 国产二级片在线| 午夜激情一区二区三区| www.超碰97| 99精品在线免费观看| 国内精品视频久久| 亚洲成人在线播放| 国产一区中文字幕| 777av视频| 免费在线观看黄色| 亚洲成人久久久| 一级做a爰片久久毛片| 欧美一区久久| 日韩欧美第二区在线观看| 操碰在线免费| 欧美在线视频你懂得| 国产波霸爆乳一区二区| 国产一区二区三区四区五区传媒| 国产精品自拍偷拍| 免费黄色小视频| 亚洲日本va午夜在线影院| 天天躁日日躁aaaa视频| 久久超级碰碰| 国产精品私拍pans大尺度在线 | 精品嫩模一区二区三区| 国产福利小视频在线观看| 91精品国产免费| 波多野结衣一区二区三区四区| 红桃视频欧美| 亚洲精品欧美激情| a视频免费观看| 欧美亚洲国产日韩| 96成人在线视频| av在线影视| 在线精品视频小说1| 国产精品23p| 国产精品九九| 国产香蕉一区二区三区| 久草免费在线观看| 亚洲欧洲午夜一线一品| 亚洲三区在线播放| 久久综合久久99| 国产精品无码电影| 伊人春色之综合网| 99国产超薄丝袜足j在线观看 | 亚洲h片在线看| 主播福利视频一区| 亚洲精品乱码久久久久久蜜桃动漫 | 精品人妻午夜一区二区三区四区 | 亚洲va久久久噜噜噜| 免费在线播放av| 欧美在线播放高清精品| 圆产精品久久久久久久久久久| 国自产拍偷拍福利精品免费一| 二级片在线观看| 在线欧美三级| 欧美极品少妇xxxxⅹ喷水| 浮力国产第一页| 一区二区三区四区不卡在线| 日韩在线视频网址| 日本免费在线观看| 日韩视频在线观看免费| 欧美色图亚洲图片| 亚洲视频免费在线| 亚洲色偷偷综合亚洲av伊人| 国内视频精品| 黄色a级片免费| 伊人久久大香伊蕉在人线观看热v 伊人久久大香线蕉综合影院首页 伊人久久大香 | 黄页网站大全在线观看| 欧美91看片特黄aaaa| 日韩av123| 国产1区2区视频| 亚洲国产精品va在线看黑人动漫| 丰满人妻一区二区三区四区53| 日本一区二区三级电影在线观看 | 麻豆一区产品精品蜜桃的特点| 99热这里只有精品8| 男女av免费观看| 高清亚洲高清| 91天堂在线观看| 黄视频在线播放| 亚洲一级黄色片| 在线尤物九色自拍| 色av成人天堂桃色av| 最近中文字幕在线观看| 不卡视频在线观看| 99久久久无码国产精品性波多| 综合久久十次| 欧美成人免费高清视频| 久草精品视频| 日韩动漫在线观看| 国产另类xxxxhd高清| 91久久在线观看| 裸体xxxx视频在线| 久久久人成影片一区二区三区| 成年人福利网站| 欧美不卡一二三| 成人免费视频入口| 久久一二三四| 欧美一区二区免费在线观看| 久久五月天小说| 尤物av无码色av无码| 开心激情综合| 国产一区一区三区| av高清一区| 国产精品国色综合久久| 国产理论电影在线| 91极品女神在线| 中文在线а√在线| 久久亚洲影音av资源网| 久久综合色播| 成年人精品视频| 黑人巨大精品欧美一区二区奶水| 亚洲网站在线播放| 国产大学生粉嫩无套流白浆|