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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

LPC1768 MP3錄音和循環播放源碼等資料

[復制鏈接]
跳轉到指定樓層
樓主
ID:202201 發表于 2017-5-18 14:52 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
LPC1768  MP3資料2個程序,一個實現錄音 一個實現循環播放
** 實驗名:MP3
** KEIL MDK-ARM Standard Version:4.6
** 使用外設: 3.2寸LCD
**********************************************************************************/
/**********************************************************************************
測試說明:
    此程序為MP3測試例程將MP3文件拷入到2G內存卡后,插上3.2寸液晶屏,插入耳機,下載程
    序上電,開始播放歌曲并且在液晶屏上顯示MP3文件名稱(這里并不支持中文顯示),調節
    滑動變阻器可以改變播放聲音
***********************************

單片機源程序如下:
  1. /*******************************************************************************
  2.   * Company: Wang Electronic Technology Co., Ltd.
  3.   ******************************************************************************
  4.   * 文件名稱:main.c
  5.   * 功能說明:mp3播放
  6.   * 版    本:V1.1
  7.         * 作    者:jeansonm        
  8.   * 日    期:2014-4-22
  9. ********************************************************************************
  10.   * 文件名稱:
  11.   * 功能說明:
  12.   * 版    本:
  13.         * 更新作者:        
  14.   * 日    期:
  15.         * 更新原因:
  16. ********************************************************************************/           
  17. #include <LPC17xx.H>                                            
  18. #include "LCD.h"
  19. #include "string.h"
  20. #include "sys.h"
  21. #include "lcd.h"
  22. #include "ff.h"
  23. #include "config.h"
  24. #include "vs1003.h"
  25. #include "mp3.h"
  26. #include "MMC_SD.h"
  27. #include "delay.h"
  28. #include "ssp0.h"
  29. #include "adc.h"

  30. u8 MusicNumber;
  31. u8 temp;
  32. u8 count=0;

  33. u32 datasize=0;           

  34. FATFS fs;            // Work area (file system object) for logical drive
  35. FIL fsrc, fdst,fap,file;      // file objects
  36. FRESULT res,re;         // FatFs function common result code
  37. UINT br, bw,bt;;         // File R/W count
  38. FILINFO finfo,fno;
  39. DIR dirs;

  40. u8 buffer[1024]; // file copy buffer
  41. u8 flag=0;

  42. void ReFresh(u8 *p)
  43. {
  44.         LCD_Clear(Black);                        //清屏
  45.         LCD_DisplayString(60,30,"www#openmcu#com");
  46.         LCD_DisplayString(60,50,"bbs.openmcu.com");
  47.         LCD_DisplayString(60,70,"MP3 Test");
  48.         LCD_DisplayString(60,90,"Play:");
  49.         LCD_DisplayString(100,90,p);
  50. }
  51. /*****************************************************************************
  52. **   Main Function  main()
  53. ******************************************************************************/
  54. int main (void)                       
  55. {                  
  56.         u8 i;
  57.         u16 AD_value,AD_Old_value;
  58.         SystemInit();
  59.         Vs1003_Init();                                //vs1003引腳初始化
  60.         Vs1003SoftReset();                //vs1003軟件復位
  61.         LCD_Init();                                                //LCD初始化
  62.         LCD_SetTextColor(Red);//設置字體為紅色
  63.         LCD_SetBackColor(Black);        //設置背景色為黑色        
  64.         ReFresh("");                                        //刷新屏幕
  65.         USER_ADC_Init();
  66.                      
  67.         SD_Init();                                                 //初始化SD卡
  68.         f_mount(0,&fs);                                //掛載文件系統
  69.   temp= FindMusic();                //音樂查找
  70.         MusicNumber=temp;
  71.         bw = f_open(&fsrc,filename[0],FA_OPEN_EXISTING | FA_READ);                //打開第一個文件
  72.         ReFresh((u8 *)(filename[0]));

  73. //        VsSineTest(); //正弦波測試  ,會聽到滴答聲 ,說明VS1003 初始化通過
  74.   while(1)
  75.   {         
  76.                 if(datasize>=fsrc.fsize)                //到達文件尾播放完成
  77.                         flag=1;
  78.                 if(count++==10)
  79.                 {
  80.                          count=0;
  81.                          AD_value=USER_ADC_Get();        //獲取AD轉換值
  82.                         if(abs(AD_value-AD_Old_value)>30) {
  83.                                         AD_Old_value = AD_value;
  84.                                         AD_value=((AD_value*255)/4096);
  85.                                         AD_value<<=8;               
  86.                                         AD_value+=((AD_Old_value*255)/4096);         
  87.                                         Vs1003_CMD_Write(SPI_VOL,AD_value); //設音量 高八位為左聲道 第八位為右聲道,這里相同
  88.                         }
  89.                  }
  90.                  if(flag==1)  //文件播放完了
  91.                 {
  92.                         flag=0;
  93.                         if(MusicNumber--)         //下一個文件
  94.                         {
  95.                                 if(MusicNumber==0)                 //所有文件播放完了
  96.                                 {
  97.                                         MusicNumber=temp;                        //從頭開始播放
  98.                                 }
  99.                                 bw = f_open(&fsrc,filename[temp-MusicNumber],FA_OPEN_EXISTING | FA_READ);
  100.                                 ReFresh((u8 *)filename[temp-MusicNumber]);        //更新顯示
  101. ……………………

  102. …………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼

** 實驗名:MP3錄音
** KEIL MDK-ARM Standard Version:
** 使用外設: 3.2寸LCD mic頭 耳機
**********************************************************************************/
/**********************************************************************************
測試說明:
    此程序為VS1003 MP3播放錄音測試例程,將1.mp3文件拷入到2G SD卡根目錄下面,將SD卡
    插在開發板上面,插上3.2寸彩屏模塊,下載程序到開發板,彩屏顯示按鍵功能信息,
    SD卡初始化成功后彩屏顯示對應信息,按下INT0鍵開始錄音,按下Key1鍵結束錄音并播放錄音
    文件,按下Key2鍵播放1.mp3文件
   
    注意:這里錄音使用外接麥克風,開發板默認沒有配置該麥克風,需要用戶另行購買焊接。


  1. /*******************************************************************************
  2.   * Company: Wang Electronic Technology Co., Ltd.
  3.   ******************************************************************************
  4.   * 文件名稱:main.c
  5.   * 功能說明:mp3播放錄音
  6.   * 版    本:V1.1
  7.         * 作    者:jeansonm       
  8.   * 日    期:2014-4-26
  9. ********************************************************************************
  10.   * 文件名稱:
  11.   * 功能說明:
  12.   * 版    本:
  13.         * 更新作者:       
  14.   * 日    期:
  15.         * 更新原因:
  16. ********************************************************************************/           
  17. #include <LPC17xx.H>                                           
  18. #include "LCD.h"
  19. #include "string.h"
  20. #include "sys.h"
  21. #include "lcd.h"
  22. #include "ff.h"
  23. #include "config.h"
  24. #include "vs1003.h"
  25. #include "mp3.h"
  26. #include "MMC_SD.h"
  27. #include "delay.h"
  28. #include "ssp0.h"
  29. #include "adc.h"

  30. u8 MusicNumber;
  31. u8 temp;
  32. u8 count=0;

  33. u32 datasize=0;          

  34. FATFS fs;            // Work area (file system object) for logical drive
  35. FIL fsrc, fdst,fap,file;      // file objects
  36. FRESULT res,re;         // FatFs function common result code
  37. UINT br, bw,bt;;         // File R/W count
  38. FILINFO finfo,fno;
  39. DIR dirs;

  40. u8 buffer[1024]; // file copy buffer
  41. u8 flag=0;

  42. uint8_t wav_dat[512]={0};
  43. static u8 status=0;
  44. /** first part of RIFF Header, insert 444 zeroes after this */
  45. unsigned char RIFFHeader0[52] = {'R' , 'I' , 'F' , 'F' , //資源交換文件標志(RIFF)
  46.                                       0x70, 0x70, 0x70, 0x70, //從下一個地址開始到文件尾總字節數 (calculate after rec!)
  47.                                       'W' , 'A' , 'V' , 'E' , //wav文件格式
  48.                                       'f' , 'm' , 't' , ' ' , //波形格式標志(fmt )
  49.                                       0x14, 0x00, 0x00, 0x00, //量化結果 (0x14 = 20 bytes)
  50.                                       0x11, 0x00,             // 有無壓縮編碼 (IMA ADPCM)
  51.                                       0x01, 0x00,             // 通道數 單聲道 (1)
  52.                                       0x40, 0x1f, 0x00, 0x00, //采樣頻率, 0x1f40 = 8.0kHz
  53.                                       0xd7, 0x0f, 0x00, 0x00, //比特率
  54.                                       0x00, 0x01,             //塊數據大小(256 bytes)
  55.                                       0x04, 0x00,             //樣本數據位數(4 bits)
  56.                                       0x02, 0x00,             // Extra data (2 bytes)
  57.                                       0xf9, 0x01,             // Samples per Block (505 samples)
  58.                                       'f' , 'a' , 'c' , 't' , // Chunk ID (fact)
  59.                                       0xc8, 0x01, 0x00, 0x00, // Chunk payload size (456 bytes (zeropad!))
  60.                                       0xff, 0xff, 0xff, 0xff  // Number of Samples (calculate after rec!)
  61.                                      };                       // Insert 448 zeroes here!

  62.                                      //add 452 zeros after

  63. unsigned char RIFFHeader504[8] = {'d' , 'a' , 't' , 'a' , // Chunk ID (data)
  64.                                        0x70, 0x70, 0x70, 0x70  // Chunk payload size (calculate after rec!)
  65.                                       };
  66. /*********************************************************************************************************
  67. ** Function name:       ReFresh
  68. ** Descriptions:        屏幕更新
  69. ** input parameters:    p 顯示信息字符串
  70. ** output parameters:   無
  71. ** Returned value:      無
  72. *********************************************************************************************************/
  73. void ReFresh(u8 *p)
  74. {
  75.         LCD_Clear(Black);                        //清屏
  76.         LCD_DisplayString(60,30,"WB-Beemer Record");
  77.         LCD_DisplayString(60,50,"INT0:Start Record");
  78.         LCD_DisplayString(60,70,"Key1:Save & Paly");
  79.         LCD_DisplayString(60,90,"Key2:Paly 1.mp3");
  80.         LCD_DisplayString(60,110,p);
  81. }
  82. /*********************************************************************************************************
  83. ** Function name:       BUTTON_init
  84. ** Descriptions:        按鍵初始化
  85. ** input parameters:    無
  86. ** output parameters:   無
  87. ** Returned value:      無
  88. *********************************************************************************************************/
  89. void BUTTON_init(void)
  90. {
  91.   LPC_GPIO2->FIODIR      &= ~(1 << 10);    //初始化端口P2.10為輸入
  92.   LPC_GPIOINT->IO2IntEnF |=  (1 << 10);    //使能下降沿中斷
  93.        
  94.         LPC_GPIO2->FIODIR      &= ~(1 << 11);    //初始化端口P2.10為輸入
  95.   LPC_GPIOINT->IO2IntEnF |=  (1 << 11);    //使能下降沿中斷
  96.        
  97.         LPC_GPIO2->FIODIR      &= ~(1 << 12);    //初始化端口P2.10為輸入
  98.   LPC_GPIOINT->IO2IntEnF |=  (1 << 12);    //使能下降沿中斷

  99.   NVIC_EnableIRQ(EINT3_IRQn);              //利用IO口來做中斷,這種與EINT3通道相同
  100. }
  101. /*********************************************************************************************************
  102. ** Function name:       EINT3_IRQHandler
  103. ** Descriptions:        外部中斷函數
  104. ** input parameters:    無
  105. ** output parameters:   無
  106. ** Returned value:      無
  107. *********************************************************************************************************/
  108. void EINT3_IRQHandler()                                          
  109. {
  110.         u32 Int_status=0;
  111.         Int_status=LPC_GPIOINT->IO2IntStatF;
  112.         if(Int_status & (1<<10))
  113.         {
  114.                 LPC_GPIOINT->IO2IntClr |= (1 << 10);     //清除中斷標志位         
  115.                 status=1;
  116.         }
  117.         else if(Int_status & (1<<11))
  118.         {
  119.                 LPC_GPIOINT->IO2IntClr |= (1 << 11);     //清除中斷標志位   
  120.                 status=2;
  121.         }
  122.         else if(Int_status & (1<<12))
  123.         {
  124.                 LPC_GPIOINT->IO2IntClr |= (1 << 12);     //清除中斷標志位   
  125.                 status=3;
  126.         }
  127. }
  128. /*********************************************************************************************************
  129. ** Function name:       recoder_enter_rec_mode
  130. ** Descriptions:        進入錄音模式
  131. ** input parameters:    agc 增益
  132. ** output parameters:   無
  133. ** Returned value:      無
  134. *********************************************************************************************************/
  135. void recoder_enter_rec_mode(u16 agc)
  136. {               
  137.                 Vs1003_CMD_Write(SPI_AICTRL0,0x0012);        //設置采樣率,設置為8Khz
  138.                 Vs1003_CMD_Write(SPI_AICTRL1,agc);                //設置增益,0,自動增益.1024相當于1倍,512相當于0.5倍,最大值65535=64倍               
  139.                 Vs1003_CMD_Write(SPI_MODE,0x3804);                //MIC,錄音激活
  140.                 Vs1003_CMD_Write(SPI_BASS,0x0000);
  141.                 Vs1003_CMD_Write(SPI_CLOCKF,0X9800);
  142.                 delay_ms(200);       
  143. }
  144. /*********************************************************************************************************
  145. ** Function name:       recoder_play
  146. ** Descriptions:        開始錄音
  147. ** input parameters:    無
  148. ** output parameters:   無
  149. ** Returned value:      無
  150. *********************************************************************************************************/
  151. u8 recbuf[512]={0};       
  152. void recoder_play(void)
  153. {
  154.                 u8 res;
  155.                 u8 key;
  156.                 u32 sectorsize=0,CAL=0;
  157.                 u32 sectorCount=1;
  158.                 int i=0;
  159.                  
  160.                 u16 w;
  161.                 u16 idx=0;            
  162.                 recoder_enter_rec_mode(0x1000);
  163.                 while(Vs1003_REG_Read(SPI_HDAT1)>>8);                               

  164.                 res=f_open(&fsrc,"test.wav", FA_CREATE_ALWAYS | FA_WRITE);
  165.                 f_write(&fsrc,(const void*)wav_dat,sizeof(wav_dat),&bw);//寫入頭數據

  166.                 ReFresh("Recode");
  167.                 while(status == 1)
  168.                 {         
  169.                                 idx=Vs1003_REG_Read(SPI_HDAT1);
  170.                                 if((idx>=256)&&(idx<896))
  171.                                 {               
  172.                                         idx=0;                                       
  173.                                         while(idx<512)         //一次讀取512字節
  174.                                         {         
  175.                                                 w=Vs1003_REG_Read(SPI_HDAT0);                                               
  176.                                                 recbuf[idx++]=w>>8;
  177.                                                 recbuf[idx++]=w&0xFF;
  178.                                         }                       
  179.                                         res=f_write(&fsrc,recbuf,512,&bw);//寫入文件
  180.                                         if(res)
  181.                                         {                               
  182.                                                 ReFresh("write error");                                       
  183.                                         }               
  184.                                         sectorsize++;
  185.                                 }
  186.                 }
  187.                 Vs1003SoftReset();
  188.                 for(i=0;i<56;i++)
  189.                 {
  190.                         wav_dat[i]=RIFFHeader0[i];
  191.                 }

  192.                 for(i=52;i<504;i++)
  193.                 {
  194.                         wav_dat[i]=0;
  195.                 }

  196.                 for(i=504;i<512;i++)
  197.                 {
  198.                         wav_dat[i]=RIFFHeader504[i-504];
  199.                 }
  200.                
  201.                 CAL=(sectorsize-1)*1010;                 
  202.                 wav_dat[48]=(CAL&0xff);
  203.                 wav_dat[49]=((CAL>>8)&0xff);
  204.                 wav_dat[50]=((CAL>>16)&0xff);
  205.                 wav_dat[51]=((CAL>>24)&0xff);

  206.                 CAL=(sectorsize*512)-8;   //總長度,RIFF塊后(整個wav文件大小-8)
  207.                 wav_dat[4]=(CAL&0xff);
  208.                 wav_dat[5]=((CAL>>8)&0xff);
  209.                 wav_dat[6]=((CAL>>16)&0xff);
  210.                 wav_dat[7]=((CAL>>24)&0xff);

  211.                 CAL = (sectorsize-1)*512; //真實錄音數據大小,Data塊后
  212.                 wav_dat[508]=(CAL&0xff);
  213.                 wav_dat[509]=((CAL>>8)&0xff);
  214.                 wav_dat[510]=((CAL>>16)&0xff);
  215.                 wav_dat[511]=((CAL>>24)&0xff);
  216.                 f_lseek(&fsrc,0);                                                        //偏移到文件頭.
  217.                 f_write(&fsrc,(const void*)wav_dat,sizeof(wav_dat),&bw);//寫入頭數據
  218.                 f_close(&fsrc);
  219.                 sectorsize=0;
  220. }

  221. /*********************************************************************************************************
  222. ** Function name:       Fatfs_test
  223. ** Descriptions:        文件系統寫測試
  224. ** input parameters:    無
  225. ** output parameters:   無
  226. ** Returned value:      無
  227. *********************************************************************************************************/
  228. void Fatfs_test(void)
  229. {
  230.                 u16 i;
  231.                 for(i=0;i<=512;i++)
  232.                         recbuf[i]=i;
  233.                 res=f_open(&fsrc,"321.txt", FA_OPEN_ALWAYS | FA_WRITE );
  234.                 if(res)
  235.                 {                               
  236.                         ReFresh("open error");       
  237.                         f_close(&fsrc);                               
  238.                         while(1);
  239.                 }
  240.                 for(i=0;i<512;i++)
  241.                 {
  242.                         res=f_write(&fsrc,recbuf,512,&bw);//寫入文件
  243.                         if(res)
  244.                         {                               
  245.                                 ReFresh("test error");               
  246.                                 f_close(&fsrc);                               
  247.                                 while(1);
  248.                         }
  249.                 }
  250.                 f_close(&fsrc);
  251.                 ReFresh("test ok");
  252. }
  253.        
  254. /*****************************************************************************
  255. **   Main Function  main()
  256. ******************************************************************************/
  257. int main (void)                       
  258. {                  
  259.         u8 i;
  260.         u16 AD_value,AD_Old_value;
  261.         SystemInit();
  262.         LCD_Init();                                                //LCD初始化
  263.         LCD_SetTextColor(Red);//設置字體為紅色
  264.         LCD_SetBackColor(Black);        //設置背景色為黑色       
  265.         Vs1003_Init();                                //vs1003引腳初始化
  266.         Vs1003SoftReset();                //vs1003軟件復位
  267.        
  268.         ReFresh("");                                        //刷新屏幕
  269.         USER_ADC_Init();
  270.         BUTTON_init();
  271.                      
  272.         res=SD_Init();                                                 //初始化SD卡
  273.         if(res==0)
  274.                 ReFresh("SD Init OK!!");
  275.         f_mount(0,&fs);                                //掛載文件系統
  276.         res=f_opendir(&dirs, "/");

  277. //        VsSineTest(); //正弦波測試  ,會聽到滴答聲 ,說明VS1003 初始化通過

  278. //        Fatfs_test();        //文件系統讀寫測試
  279.   while(1)
  280.   {                        
  281.                 if(status == 1)
  282.                 {
  283.                                 recoder_play();                       
  284.                 }
  285.                 else if(status == 2)
  286.                 {
  287.                                 ReFresh("Save and Play");       
  288.                                 bw = f_open(&fsrc,"test.wav",FA_OPEN_EXISTING | FA_READ);
  289.                                 datasize=0;
  290.                                 while(status == 2)
  291.                                 {
  292.                                         if(datasize>=fsrc.fsize)                //到達文件尾播放完成
  293.                                                 break;
  294.                                         if(count++==10)
  295.                                         {
  296.                                                 count=0;
  297.                                                 AD_value=USER_ADC_Get();        //獲取AD轉換值
  298.                                                 if(abs(AD_value-AD_Old_value)>30)
  299.                                                 {
  300.                                                                 AD_Old_value = AD_value;
  301.                                                                 AD_value=((AD_value*255)/4096);
  302.                                                                 AD_value<<=8;               
  303.                                                                 AD_value+=((AD_Old_value*255)/4096);         
  304.                                                                 Vs1003_CMD_Write(SPI_VOL,AD_value); //設音量 高八位為左聲道 第八位為右聲道,這里相同
  305.                                                 }
  306.                                         }
  307.                                         datasize+=512;                                                                         //要放到上面
  308.                                         bw = f_read(&fsrc,buffer,512,&br);                //讀取512字節
  309.                                         for(i=0;i<16;i++)
  310.                                         {         
  311.                                                 while(!(LPC_GPIO0->FIOPIN&MP3_DREQ));
  312.                                                 Vs1003_DATA_Write(buffer+i*32);
  313.                                         }               
  314.                                 }
  315. ……………………

  316. …………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼


所有資料51hei提供下載:
【22】寶馬1768_mp3播放錄音(2014.05.10).rar (924.28 KB, 下載次數: 18)
【21】寶馬1768_mp3循環播放(2014.05.10).rar (236.28 KB, 下載次數: 12)



評分

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

查看全部評分

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

使用道具 舉報

沙發
ID:130183 發表于 2017-9-9 15:30 | 只看該作者
樓主 vs1003的波特率如何設置 我這邊讀取寄存器一直是0
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
久久一夜天堂av一区二区三区| 国产精品欧美一区二区三区| a视频在线播放| 亚洲三区在线播放| 国产精品一区二区入口九绯色| 午夜午夜精品一区二区三区文| 亚洲精品一区二区在线| 中文字幕在线观看一区二区| 欧美xnxx| 中文字幕中文字幕99| 夜夜躁日日躁狠狠久久88av| 丰满亚洲少妇av| 亚洲欧洲色图| 中文字幕中文字幕在线中高清免费版| 最近中文字幕mv免费高清电影 | 日韩亚洲欧美综合| 国产精品久久三区| 中文在线三区| 999久久久久久| 免费一级做a爰片久久毛片潮| 亚洲日本欧美在线| 久久99精品久久久久久青青91| 在线看国产一区| proumb性欧美在线观看| 亚洲成人免费| 日韩电影精品| 亚洲区欧洲区| www.成人精品免费网站青椒| 香蕉视频黄色片| 日韩高清精品免费观看| 国产又大又硬又粗| 免费在线观看91| 91亚洲男人天堂| 欧美特黄a级高清免费大片a级| 青青热久免费精品视频在线18| 在线国产日本| 一个人在线视频免费观看www| 国内精品偷拍视频| 久久高清无码视频| 精品伦一区二区三区| 日本xxxxx18| 亚洲自拍欧美色图| 日本精品久久中文字幕佐佐木| 日韩电视剧在线观看免费网站| 欧美日韩国产一区二区| 久久久久久久综合日本| 国产精一品亚洲二区在线视频| 伊人久久大香线蕉精品组织观看| 中文字幕一区日韩精品| 爱啪视频在线观看视频免费| 亚洲精品无码专区在线播放| 国产黄色片大全| 在线观看免费电影| 亚洲三区在线播放| 亚洲无码久久久久| 三上悠亚作品在线观看| 国产一二三四五区| 日本特黄在线观看| 动漫av网站免费观看| 亚洲免费视频播放| 日产精品高清视频免费| 精品国产一区二区三| 国产精品嫩草视频| 69影院欧美专区视频| 亚洲一区二区精品| 欧美日韩小视频| 欧亚一区二区三区| 性做久久久久久免费观看| 亚洲国产精品精华液ab| 成人av免费在线播放| 国产91在线观看丝袜| 捆绑紧缚一区二区三区视频| 先锋a资源在线看亚洲| 欧美日韩精品| 国产一区二区三区四区二区 | 高清国语自产拍免费视频国产 | 国产毛片久久久久久| 中国老女人av| 男人的天堂狠狠干| 男同互操gay射视频在线看| 日韩高清三级| 日韩av影视| 久久亚洲高清| 九九九九九九精品| 国产高清在线精品一区二区三区| 91在线精品视频| 成人免费观看a| 国产在线精品一区| 国产精品白丝jk喷水视频一区 | 91免费看国产| 国产精品99久久久久久www| 欧美激情18p| 国产一区二区日韩| 国产亚洲精品久久久| 亚洲欧美色婷婷| 中文字幕日韩av综合精品| 亚洲欧美一区二区三区久久| 亚洲男人天堂手机在线| 国产亚洲欧美aaaa| www.xxxx欧美| 国产精品tv| 不卡av播放| 天天综合网站| 男人av在线| 国产在线视频你懂得| 白白色视频在线| 素人av在线| 羞羞的视频在线看| 日韩特级毛片| 无码小电影在线观看网站免费| 三级外国片在线观看视频| av在线不卡免费| www.国产精品| 91国产一区| 日本免费精品| 深爱激情久久| 亚洲一区中文| 国产一区免费电影| 99riav一区二区三区| 国产精品美女www爽爽爽| 精品高清一区二区三区| 欧美日韩成人在线| 精品国产91亚洲一区二区三区婷婷 | 国产精品区一区二区三区| 成人免费一区二区三区在线观看| 亚洲欧美国产77777| 婷婷综合另类小说色区| 日韩一区二区三区av| 亚洲国产精彩中文乱码av| 欧美精品久久久久a| 成人妇女淫片aaaa视频| 免费影院在线观看一区| h无码动漫在线观看| 少妇高清精品毛片在线视频| 欧美一区二区三区成人精品| 婷婷在线精品视频| 中文字幕av网站| 无国产精品白浆免费视| 免费a级片在线观看| 在线观看自拍| 情se视频网在线观看| av毛片在线看| 免费一区二区三区在线视频| 激情五月***国产精品| 国产精品主播直播| 亚洲激情男女视频| 欧美成人官网二区| 97视频免费看| 一区二区三区四区免费视频| 午夜激情影院在线观看| 91精品一区二区三区蜜桃| 在线观看国产精品入口男同| 麻豆精品密在线观看| 色视频在线观看免费| 深夜成人福利| 91精品国产91久久综合| 国产乱码精品一区二区三区忘忧草| 自拍偷自拍亚洲精品播放| 亚洲裸体xxxx| 91免费国产网站| www.中文字幕在线| 又嫩又硬又黄又爽的视频| 中文字幕69页| eeuss影院18直达| 亚洲夜夜综合| 精品一区不卡| 顶级嫩模精品视频在线看| 偷拍一区二区三区四区| 亚洲天堂网在线观看| 精品欧美国产| 一级片黄色免费| 国产成人在线视频观看| 国产精品人人| 日韩毛片久久久| 久久亚洲国产| 国产性色一区二区| 欧美成人精品1314www| 国产成人+综合亚洲+天堂| 正在播放一区二区三区| 日本一级免费视频| 十八禁一区二区三区| 中文字幕在线第一页| 欧美综合影院| 日韩av午夜在线观看| 亚洲一区二区在线观看视频| 亚洲欧美国产一本综合首页| 国产传媒一区二区三区| 久久久久久久久久久久久久久国产| 国产精品视频久久久久久久| xxx欧美老熟| 曰本三级在线| 91精品国产91久久久久久黑人| 久久综合久久综合九色| 亚洲国产精品久久久久| 国产精品女主播| 亚洲va综合va国产va中文| 波多野结衣大片| 成人免费观看在线网址| 国产一区二区| 国产精品亚洲一区二区三区在线 | 国内精品偷拍| 高清在线不卡av| 亚洲精品一二区| 久久99热只有频精品91密拍| 视频免费在线观看| 蜜桃av噜噜一区二区三区麻豆| 美女视频黄a视频全免费观看| 国产精品一区免费在线| 国产精品99久久久久久有的能看| 日韩色视频在线观看| 99久久久精品免费观看国产| 又黄又爽的网站| 老师让我她我爽了好久视频| 91福利国产在线观看菠萝蜜| 欧美黄在线观看| 欧美性感一类影片在线播放| 91老司机在线| 小毛片在线观看| 日日夜夜国产| 里番在线观看网站| 丝袜亚洲另类丝袜在线| 7777女厕盗摄久久久| 国产精品一区二区免费看| 四虎永久免费在线观看| 在线观看亚洲电影| 日韩欧美看国产| 国产乱一区二区| 亚洲欧美国产精品| 大桥未久一区二区三区| 毛片基地在线观看| 日夜干在线视频| 欧美福利网址| 在线影院国内精品| 3d动漫精品啪啪一区二区三区免费| 丁香婷婷激情网| 亚洲成年人电影在线观看| 四虎av在线| 美女www一区二区| 日韩精品在线免费观看| 日韩精品久久久免费观看 | 亚洲欧美日韩精品在线| 国产美女激情视频| 三区在线观看| 亚洲国产91| 日韩精品一区二区三区视频 | 中文字幕亚洲无线码a| 日本中文字幕在线视频观看| 精品无码一区二区三区蜜臀 | 97色伦图片97综合影院| 色哟哟在线观看一区二区三区| 91久久精品视频| 成人18视频免费69| 中国动漫在线观看完整版免费| 精品国产乱码| 欧美一级日韩不卡播放免费| 99久久免费观看| 一区二区三区视频在线免费观看| 91久久青草| 欧美视频一二三| 天天干天天操天天干天天操| 人妻少妇精品无码专区久久| 91精品亚洲一区在线观看| 亚洲成人av一区| 亚洲精品成人久久久998| 国产av一区二区三区| 日韩福利影视| 欧美性高潮在线| 狠狠精品干练久久久无码中文字幕 | 一本加勒比北条麻妃| 欧美成人禁片在线www| 久久的色偷偷| 色综合一区二区三区| 在线一区高清| 狠狠色成人综合网图片区| 超碰在线亚洲| 欧美日韩电影在线播放| 男人天堂av片| 丝瓜app色版网站观看| 综合av在线| 日韩中文有码在线视频| 亚洲综合色一区| 国产香蕉视频在线看| av电影在线观看完整版一区二区| 国产精品亚洲综合天堂夜夜| 日本一区二区免费电影| 不卡亚洲精品| 91九色02白丝porn| 日韩一区二区视频| 欧美日韩免费在线视频| 亚洲看片网站| 五月婷婷丁香花| 欧美人妖在线观看| 337p亚洲精品色噜噜噜| 日韩免费毛片视频| 免费看的www视频网站视频| 欧美一区高清| 免费91在线视频| 黄色香蕉视频在线观看| 欧美巨大xxxx做受沙滩| 一区二区欧美在线观看| 乱熟女高潮一区二区在线| 国产99在线|亚洲| 亚洲区欧美区| 日本精品在线视频| 精人妻无码一区二区三区| 国产麻豆a毛片| 婷婷视频在线| 国产精品久久国产精麻豆99网站| 日韩一二三区不卡在线视频| 中文字幕第7页| 97精品国产福利一区二区三区| 中文字幕久久久| 久久国产波多野结衣| √天堂8资源中文在线| 欧美性高潮床叫视频| 黄色片视频在线| 一二三区在线| 亚洲国产精品成人综合色在线婷婷 | 亚洲欧洲日夜超级视频| 国产精品合集一区二区| 久久99伊人| 亚洲mm色国产网站| 在线视频亚洲色图| 激情偷拍久久| 国产欧美精品va在线观看| 亚洲国产精品二区| 99精品视频精品精品视频| 欧美日韩成人在线视频| 69国产精品视频免费观看| 国产精东传媒成人av电影| 一本一道久久a久久精品逆3p| 欧美日韩在线视频免费| 涩爱av色老久久精品偷偷鲁| 中文字幕欧美日韩va免费视频| 精品99久久久久成人网站免费| 亚洲国产综合在线观看| 欧美精品一区二区三区蜜桃视频| 四虎影成人精品a片| 自拍一区在线观看| 欧美一区日韩一区| 亚洲黄色免费视频| yiren22亚洲综合| 亚洲欧美999| 欧美亚韩一区二区三区| 丝袜美腿一区二区三区动态图| 九九热视频这里只有精品| 超碰在线观看91| 日韩精品午夜| 国产欧美久久久久久| 欧美成人精品福利网站| 国产在线精品免费av| 亚洲精品视频一区二区三区| 白天操夜夜操| 亚洲视频一区二区在线观看| 国产视频手机在线播放| www.久久ai| 精品国产a毛片| 国产美女激情视频| 你懂的国产精品永久在线| 亚洲bt欧美bt日本bt| 日日骚.com| 欧美国产乱子伦| 国产福利在线免费| 九色porny丨国产首页在线| 日韩精品亚洲视频| 高潮无码精品色欲av午夜福利| 亚洲xxx拳头交| 懂色中文一区二区三区在线视频| 一级毛片免费播放| 中文字幕不卡在线播放| 国产高清999| 在线成人视屏| 欧美大片免费观看| 亚洲图区综合| 国产高清在线观看免费不卡| 激情六月天婷婷| 香蕉视频在线看| 精品国产自在久精品国产| 可以免费在线观看的av| 亚洲欧美综合久久久| 国内一区二区在线视频观看 | 欧美精品一区二区三区中文字幕| 国产aaa精品| 国产chinese男男gaygay网站| 国产午夜亚洲精品不卡| 欧美日韩理论片| 国产91欧美| 97精品欧美一区二区三区| 精品免费视频一卡2卡三卡4卡不卡| 91香蕉视频mp4| 91香蕉国产线在线观看| 成人国产精品| 日本sm极度另类视频| 国产精品资源站| 亚洲免费观看视频| 少妇高潮在线观看| 午夜精品999| 国产成人免费高清视频| 黄色在线观看视频网站| 中文字幕亚洲自拍|