亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? 硬盤mp3源碼.txt

?? AT89C51SND1C解碼芯片做的硬盤MP3
?? TXT
?? 第 1 頁 / 共 3 頁
字號:
unsigned int i;
LBA=current_dir.current_cluster_number-(dbr[driver_number].root_cluster_num);
LBA=LBA*(dbr[driver_number].sectors_per_cluster)+DATA_start_sector[driver_number];
LBA2=(current_dir.current_cluster_number)/((dbr[driver_number].bytes_per_sectors)/4); //計算扇區(qū)地址
i=(current_dir.current_cluster_number)*4-LBA2*dbr[driver_number].bytes_per_sectors; //計算偏移地址
LBA2=LBA2+FAT_start_sector[driver_number];
read_IDE_sector(LBA2);
((unsigned char *)&(current_dir.current_cluster_number))[3]=buffer[i];
i++;
((unsigned char *)&(current_dir.current_cluster_number))[2]=buffer[i];
i++;
((unsigned char *)&(current_dir.current_cluster_number))[1]=buffer[i];
i++;
((unsigned char *)&(current_dir.current_cluster_number))[0]=buffer[i]; //獲取下一簇號
return LBA;
}
////////////////////////////////////////////////////////////////////////////////////////////////

////////////////////////////////////////////////////////////////////////////////////////////////
void get_nst_file(void) //獲取第n個MP3文件
{
unsigned int i,j,k,temp_count;
unsigned long int LBA;
// LBA=DATA_start_sector[driver_number];
temp_count=0;
current_dir.current_cluster_number=current_dir.first_cluster_number;
do
{
LBA=get_dir_next_sector();
for(i=0;i<dbr[driver_number].sectors_per_cluster;i++)
{
read_IDE_sector(LBA);
for(j=0;j<dbr[driver_number].bytes_per_sectors/32;j++)
{
for(k=0;k<11;k++)file.name[k]=buffer[j*32+k];
file.attribute=buffer[j*32+11];
if(is_a_mp3_file())
{
temp_count++;
if(temp_count==play_count)
{
((unsigned char *)&(file.first_cluster_number))[0]=buffer[j*32+0x15];
((unsigned char *)&(file.first_cluster_number))[1]=buffer[j*32+0x14];
((unsigned char *)&(file.first_cluster_number))[2]=buffer[j*32+0x1B];
((unsigned char *)&(file.first_cluster_number))[3]=buffer[j*32+0x1A];
((unsigned char *)&(file.length))[3]=buffer[j*32+0x1C];
((unsigned char *)&(file.length))[2]=buffer[j*32+0x1D];
((unsigned char *)&(file.length))[1]=buffer[j*32+0x1E];
((unsigned char *)&(file.length))[0]=buffer[j*32+0x1F];
file.next_cluster_number=file.first_cluster_number;
return;
}
}
}
LBA++;
}
}while(!(current_dir.current_cluster_number>=0xFFFFFFF8)); //直到文件夾結(jié)束
}
////////////////////////////////////////////////////////////////////////////////////////////////

////////////////////////////////////////////////////////////////////////////////////////////////
void get_pre_file(void) //打開上一個MP3文件,文件信息保存在file結(jié)構(gòu)中
{
if(play_count>=2)play_count--;
else {file.next_cluster_number=file.first_cluster_number;return;} //如果已到達該文件夾最前一個文件,則播放原文件
get_nst_file();
}
////////////////////////////////////////////////////////////////////////////////////////////////

////////////////////////////////////////////////////////////////////////////////////////////////
void get_next_file(void) //打開下一個MP3文件
{
play_count++;
get_nst_file();
}
////////////////////////////////////////////////////////////////////////////////////////////////

DIR xdata current_dir;

/*
Initial.c file
Created by Computer-lov Date: 2005.3.19
Copyright (c) 2005 Computer-lov
version 1.0
*/

#include "Initial.h"
#include "IDE.h"
#include "AT89C51SND1C.H"
#include "keyboard.h"
#include "hardware.h"

//////////////////////////////////////////////////
void PLL_initial(void) //PLL初始化
{
// PLLRDIV=0x02; //使用16M晶振,產(chǎn)生192M頻率
// PLLNDIV=0x00;
PLLRDIV=(0x5F)>>2; //使用20M晶振,產(chǎn)生192M頻率
PLLNDIV=0x09;
PLLCON=0xC8; //復(fù)位PLL
PLLCON=0xC2; //使能PLL
CKCON=0x01;
while(!PLOCK); //等待PLL鎖定
}
//////////////////////////////////////////////////

//////////////////////////////////////////////////
void RAM_initial(void) //RAM初始化
{
AUXR=0x0C; //禁止外部RAM,使用內(nèi)部2KRAM
}
//////////////////////////////////////////////////

//////////////////////////////////////////////////
void interrupt_initial(void) //中斷初始化
{
EA=0;
EAUD=0;
EMP3=0;
ES=0;
ET1=0;
EX1=0;
ET0=0;
EX0=0;

IEN1=0x10; //允許鍵盤中斷

IPH0=0x00; //優(yōu)先級設(shè)置為默認
IPH1=0x00;
IPL0=0x00;
IPL1=0x00;
EA=1;
}
//////////////////////////////////////////////////

/*void timer_initial(void)
{

}*/


//////////////////////////////////////////////////
void MP3_decoder_initial(void) //MP3解碼器初始化
{
MP3CON=0x3F;
MP3CLK=0x07; //MP3解碼時鐘為32MHz
MP3_decoder_disen(); //先停止MP3解碼器
}
//////////////////////////////////////////////////

//////////////////////////////////////////////////
void DAC_initial(void) //DAC初始化
{
AUDCON0=0x72; // 256Fs
// AUDCON0=0x73; //384Fs
AUDCON1=0x00;
}
//////////////////////////////////////////////////

//////////////////////////////////////////////////
void keyboard_initial(void) //鍵盤初始化
{
KBCON=0x00; //低電平觸發(fā),允許中斷
KBSTA=0x80; //允許鍵盤從休眠模式喚醒
}
//////////////////////////////////////////////////

//////////////////////////////////////////////////
void system_initial(void) //系統(tǒng)開機初始化
{
IDE_DATA_L=IDE_Bus_Not_Use;
IDE_ALE=1;
IDE_ALE=0; //IDE數(shù)據(jù)總線初始化為高阻狀態(tài)

PLL_initial();
MP3_decoder_initial();
RAM_initial();
DAC_initial();
keyboard_initial();
IDE_initial();
interrupt_initial();
}
//////////////////////////////////////////////////


/* keyboard.c file
Created by Computer-lov Date: 2005.3.19
Copyright (c) 2005 Computer-lov
*/

#include "keyboard.h"
#include "AT89C51SND1C.H"

//////////////////////////////////////////////////
unsigned char key=0;


void ISR_keyboard(void) interrupt 11 //鍵盤中斷處理
{
unsigned char key_press_status;
key_press_status=KBSTA; //保存按鍵狀態(tài)
if(key)return; //如果上一次按鍵未處理,等待處理完后,再響應(yīng)新的按鍵
if(key_press_status&0x01){key=KEY_UP;} //散轉(zhuǎn)
if(key_press_status&0x02){key=KEY_FUN;}
if(key_press_status&0x04){key=KEY_DOWN;}
if(key_press_status&0x08){key=KEY_OK;}
}
//////////////////////////////////////////////////

/* MP3.C File
The MP3 play file
Created by Computer-lov date: 2005.3.19
Copyright (c) 2005 Computer-lov
version 1.0
*/

#include "AT89C51SND1C.H"
#include "Initial.h"
#include "file_system.h"
#include "IDE.H"
#include "keyboard.h"
#include "hardware.h"
#include "MP3.H"

unsigned char status; //程序運行狀態(tài)

extern unsigned char mp3_file_exist;

void DAC_start(unsigned char clk) //DAC開始工作
{
set_DAC_CLK(clk); //根據(jù)MP3文件,設(shè)置相應(yīng)的DAC時鐘頻率
DAC_interface_en();
DAC_data_request_en();
}


unsigned char function,vol,bas,med,tre; //保存音量等設(shè)置

code unsigned char MPEGVer[2][7]={"MPEG-2","MPEG-1"}; //版本顯示信息
code unsigned char Fs[8]={22,44,24,48,16,32,22,44}; //采樣率
code unsigned char DACFs[8]={33,16,30,15,46,22,33,16}; //256Fs
//code unsigned char DACFs[8]={22,10,20,9,30,15,0,0}; //384Fs

/////////////////////////// MP3 play /////////////////////////////////////////
void play(void)
{
unsigned long int LBA;
unsigned int i;
unsigned char sectors_count;
signed long int file_length;

unsigned char MPEG_inf; //用來保存MP3版本和采樣率
/*
bit0=0 vertion 2
bit0=1 bertion 1
*/

file_length=file.length;
LBA=file.next_cluster_number-(dbr[driver_number].root_cluster_num);
LBA=LBA*(dbr[driver_number].sectors_per_cluster)+DATA_start_sector[driver_number];

MP3_CRC_disen();

sectors_count = dbr[driver_number].sectors_per_cluster;

read_IDE_sector(LBA);
if(buffer[0]!=0xFF){pause();MP3_decoder_disen();DAC_interface_disen();get_next_file();key=0;return;}
//////////////////////// 從MP3偵頭中獲取采樣率和壓縮版本信息 //////////////
MPEG_inf=buffer[2]&0x0C; //采樣率
MPEG_inf>>=1;
if((buffer[1]&0x18)==0x18)MPEG_inf=MPEG_inf | 0x01; //版本1
if((buffer[1]&0x18)==0x10)MPEG_inf=MPEG_inf & (~0x01); //版本2
///////////////////////////////////////////////////////////////////////////

//////////////////////// 填充1K數(shù)據(jù) ////////////////////////////////////
for(i=0;i<512;i++)MP3DAT=buffer[i];
LBA++;
sectors_count--;
if(file_length>512)file_length-=512;
else {pause();MP3_decoder_disen();DAC_interface_disen();get_next_file();key=0;return;}
if(sectors_count==0){LBA=get_next_sector();sectors_count=dbr[driver_number].sectors_per_cluster;}
read_IDE_sector(LBA);
for(i=0;i<512;i++)MP3DAT=buffer[i];
LBA++;
sectors_count--;
if(file_length>512)file_length-=512;
else {pause();MP3_decoder_disen();DAC_interface_disen();get_next_file();key=0;return;}
if(sectors_count==0){LBA=get_next_sector();sectors_count=dbr[driver_number].sectors_per_cluster;}

MP3_decoder_en(); //啟動解碼器
DAC_start(DACFs[MPEG_inf]); //初始化DAC接口
byte_offset=512;
while(1)
{
if(key) //如果有鍵按下
{
switch (key)
{
case KEY_FUN: //功能鍵按下
{
function++;
if(function>=FUN_MAX)function=FUN_SEL;
switch (function)
{
case FUN_SEL:LED1=1;LED2=1;LED3=1;break;
case FUN_VOL:LED1=0;LED2=1;LED3=0;break;
case FUN_BAS:LED1=1;LED2=1;LED3=0;break;
case FUN_MED:LED1=1;LED2=0;LED3=1;break;
case FUN_TRE:LED1=0;LED2=1;LED3=1;break;
case FUN_BOOT:LED1=0;LED2=0;LED3=0;break;
}
key=0;break;
}
case KEY_UP: //上翻鍵按下
{
switch (function)
{
case FUN_SEL:{MP3_decoder_disen();DAC_interface_disen();get_pre_file();key=0;return;}
case FUN_VOL:{if(vol<31)vol++;set_vol(vol);set_vor(vol);break;}
case FUN_BAS:{if(bas<31)bas++;set_bas(bas);break;}
case FUN_MED:{if(med<31)med++;set_med(med);break;}
case FUN_TRE:{if(tre<31)tre++;set_tre(tre);break;}
case FUN_BOOT:{MP3_bass_boost();break;}
}
key=0;break;
}
case KEY_DOWN: //下翻鍵按下
{
switch (function)
{
case FUN_SEL:{MP3_decoder_disen();DAC_interface_disen();get_next_file();key=0;return;}
case FUN_VOL:{if(vol>0)vol--;set_vol(vol);set_vor(vol);break;}
case FUN_BAS:{if(bas>0)bas--;set_bas(bas);break;}
case FUN_MED:{if(med>0)med--;set_med(med);break;}
case FUN_TRE:{if(tre>0)tre--;set_tre(tre);break;}
case FUN_BOOT:{MP3_no_bass_boost();break;}
}
key=0;break;
}
case KEY_OK:
{
MP3_decoder_disen();
DAC_interface_disen();
status=STOP;
key=0;
return;
}
}
}
// if(MPREQ)
{
while(MPFREQ)
{
MP3DAT=buffer[byte_offset];
byte_offset++;
if((((unsigned char *)&byte_offset)[0])&0xFE)
{
read_IDE_sector(LBA);
LBA++;
byte_offset=0;
sectors_count--;
file_length-=512;
while(MPFREQ)
{
MP3DAT=buffer[byte_offset];
byte_offset++;
// if(byte_offset>=512)break;
if((((unsigned char *)&byte_offset)[0])&0xFE)break;
}
if(file_length<=0) {pause();MP3_decoder_disen();DAC_interface_disen();get_next_file();key=0;return;}
if(sectors_count==0){LBA=get_next_sector();sectors_count=(dbr[driver_number].sectors_per_cluster);}
}
}
}
}
}
///////////////////////////////////////////////////////////////////////////////////////////


  

 頭文件


/*H**************************************************************************
* NAME: regsnd1.h 
*----------------------------------------------------------------------------
* Copyright (c) 2003 Atmel.
*----------------------------------------------------------------------------
* RELEASE: snd1c-refd-nf-4_0_3 
* REVISION: 1.6 
*----------------------------------------------------------------------------
* PURPOSE:
* This file defines the T8xC51SND1 component:
* - Register SFRs
* - Bit SFRs
*****************************************************************************/


/////////////////////////////////////////////////////////////////////////////
// Edited by Computer-lov 2005.3.19
// AT89C51SND1C.H FILE
////////////////////////////////////////////////////////////////////////////


#ifndef __AT89C51SND1C_H__
#define __AT89C51SND1C_H__

#define Sfr(name,address) sfr name = address
#define Sfr16(name,address) sfr16 name = address
#define Sbit(name,reg,bit_address) sbit name = reg ^ bit_address

/*_____ I N C L U D E S ____________________________________________________*/


/*_____ M A C R O S ________________________________________________________*/


/* C51 CORE */

Sfr (A , 0xE0);
Sfr (ACC , 0xE0);
Sfr (B , 0xF0);
Sfr (PSW , 0xD0);
Sfr (SP , 0x81);
Sfr (DPL , 0x82);
Sfr (DPH , 0x83);
Sfr16 (DPTR , 0x82);

Sbit (CY , PSW , 7);
Sbit (AC , PSW , 6);
Sbit (F0 , PSW , 5);
Sbit (RS1 , PSW , 4);
Sbit (RS0 , PSW , 3);
Sbit (OV , PSW , 2);
Sbit (F1 , PSW , 1);
Sbit (P , PSW , 0);


/* SYSTEM MANAGEMENT */

Sfr (PCON , 0x87);
Sfr (AUXR , 0x8E);
Sfr (AUXR1 , 0xA2);
Sfr (NVERS , 0xFB);


/* PLL & CLOCK */

Sfr (CKCON , 0x8F);
Sfr (PLLCON , 0xE9);
Sfr (PLLDIV0 , 0xEE);
Sfr (PLLNDIV , 0xEE);
Sfr (PLLDIV1 , 0xEF);
Sfr (PLLRDIV , 0xEF);


/* INTERRUPT */

Sfr (IEN0 , 0xA8);
Sfr (IPL0 , 0xB8);
Sfr (IPH0 , 0xB7);
Sfr (IEN1 , 0xB1);
Sfr (IPL1 , 0xB2);
Sfr (IPH1 , 0xB3);

Sbit (EA , IEN0 , 7);
Sbit (EAUD , IEN0 , 6);
Sbit (EMP3 , IEN0 , 5);
Sbit (ES , IEN0 , 4);
Sbit (ET1 , IEN0 , 3);
Sbit (EX1 , IEN0 , 2);
Sbit (ET0 , IEN0 , 1);
Sbit (EX0 , IEN0 , 0);

Sbit (IPLAUD , IPL0 , 6);
Sbit (IPLMP3 , IPL0 , 5);
Sbit (IPLS , IPL0 , 4);
Sbit (IPLT1 , IPL0 , 3);
Sbit (IPLX1 , IPL0 , 2);
Sbit (IPLT0 , IPL0 , 1);
Sbit (IPLX0 , IPL0 , 0);


/* PORTS */

Sfr (P0 , 0x80);
Sfr (P1 , 0x90);
Sfr (P2 , 0xA0);
Sfr (P3 , 0xB0);
Sfr (P4 , 0xC0);
Sfr (P5 , 0xD8);

Sbit (P0_7 , P0 , 7);
Sbit (P0_6 , P0 , 6);
Sbit (P0_5 , P0 , 5);
Sbit (P0_4 , P0 , 4);
Sbit (P0_3 , P0 , 3);
Sbit (P0_2 , P0 , 2);
Sbit (P0_1 , P0 , 1);
Sbit (P0_0 , P0 , 0);

Sbit (P1_7 , P1 , 7);
Sbit (P1_6 , P1 , 6);
Sbit (P1_5 , P1 , 5);
Sbit (P1_4 , P1 , 4);
Sbit (P1_3 , P1 , 3);
Sbit (P1_2 , P1 , 2);
Sbit (P1_1 , P1 , 1);
Sbit (P1_0 , P1 , 0);

Sbit (SDA , P1 , 7);
Sbit (SCL , P1 , 6);
Sbit (KIN3 , P1 , 3);
Sbit (KIN2 , P1 , 2);
Sbit (KIN1 , P1 , 1);
Sbit (KIN0 , P1 , 0);

Sbit (P2_7 , P2 , 7);
Sbit (P2_6 , P2 , 6);
Sbit (P2_5 , P2 , 5);
Sbit (P2_4 , P2 , 4);
Sbit (P2_3 , P2 , 3);
Sbit (P2_2 , P2 , 2);
Sbit (P2_1 , P2 , 1);
Sbit (P2_0 , P2 , 0);

Sbit (P3_7 , P3 , 7);
Sbit (P3_6 , P3 , 6);
Sbit (P3_5 , P3 , 5);
Sbit (P3_4 , P3 , 4);
Sbit (P3_3 , P3 , 3);
Sbit (P3_2 , P3 , 2);
Sbit (P3_1 , P3 , 1);
Sbit (P3_0 , P3 , 0);

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
自拍偷拍欧美精品| 久久久久国产一区二区三区四区| 国产精品毛片久久久久久 | 亚洲一区免费观看| 欧美自拍丝袜亚洲| 亚洲成人av中文| 日韩午夜av一区| 国产乱子伦视频一区二区三区 | 欧美韩国日本综合| 不卡一区在线观看| 亚洲六月丁香色婷婷综合久久 | 欧美成人三级电影在线| 国产在线视频一区二区| 亚洲欧洲日韩综合一区二区| 在线精品国精品国产尤物884a| 亚洲成av人片| 久久久久国产精品免费免费搜索| 成人h精品动漫一区二区三区| 亚洲日本中文字幕区| 欧美日韩国产片| 狠狠色2019综合网| 亚洲婷婷国产精品电影人久久| 欧美午夜精品一区二区三区| 韩国欧美国产一区| √…a在线天堂一区| 欧美片在线播放| 国产福利视频一区二区三区| 一区二区成人在线| 337p粉嫩大胆噜噜噜噜噜91av| 成人小视频在线观看| 亚洲777理论| 欧美国产精品中文字幕| 91麻豆精品国产91久久久资源速度| 精品一区二区在线观看| 亚洲综合在线电影| 国产女人18水真多18精品一级做| 欧美性受xxxx| 国产999精品久久| 日韩电影一二三区| 亚洲欧美国产毛片在线| 久久综合九色欧美综合狠狠| 欧美性大战xxxxx久久久| 丁香六月综合激情| 久久99精品国产麻豆婷婷| 一区二区三区美女| 中文字幕乱码一区二区免费| 日韩三级在线免费观看| 在线观看亚洲精品| 成人小视频免费观看| 韩国午夜理伦三级不卡影院| 亚洲成av人片一区二区梦乃| 国产精品国产精品国产专区不片| 日韩欧美电影在线| 欧美日韩黄视频| 91女人视频在线观看| 国产精品538一区二区在线| 日本亚洲三级在线| 五月激情六月综合| 夜夜揉揉日日人人青青一国产精品| 欧美激情综合在线| 久久久综合视频| 日韩欧美国产麻豆| 日韩午夜av电影| 日韩一区二区三区在线| 欧美四级电影在线观看| 色综合视频在线观看| 成人18视频日本| 成人精品视频.| 波多野结衣欧美| 国产福利不卡视频| 国产成人综合在线| 高清视频一区二区| 不卡区在线中文字幕| 成人在线视频一区| 99国内精品久久| 91原创在线视频| 99re66热这里只有精品3直播| 成人永久aaa| 99精品黄色片免费大全| 99re8在线精品视频免费播放| 成人18视频日本| 99久久精品一区| 91香蕉视频黄| 欧美亚洲国产一卡| 7777精品伊人久久久大香线蕉的| 9191国产精品| 欧美成人猛片aaaaaaa| 26uuu国产日韩综合| 国产午夜久久久久| 亚洲欧洲美洲综合色网| 亚洲精品国产视频| 午夜精品123| 激情另类小说区图片区视频区| 激情综合色播五月| 国产成都精品91一区二区三| 暴力调教一区二区三区| 色综合久久中文综合久久牛| 欧美日韩高清一区| 日韩精品一区二区三区四区视频 | 婷婷丁香激情综合| 激情久久久久久久久久久久久久久久| 黄一区二区三区| 99re热这里只有精品视频| 欧美午夜免费电影| 精品少妇一区二区三区免费观看| 国产亚洲女人久久久久毛片| 亚洲乱码中文字幕| 日本最新不卡在线| 成人免费黄色在线| 欧美日韩在线观看一区二区| 精品久久国产老人久久综合| 欧美国产乱子伦| 亚洲成人免费观看| 国产一区二区三区美女| 一本大道久久a久久综合| 欧美一区2区视频在线观看| 国产视频亚洲色图| 亚洲aaa精品| 99热99精品| 日韩欧美一区在线观看| ...av二区三区久久精品| 奇米色777欧美一区二区| 国产成人h网站| 欧美一区二区福利在线| 国产精品久久久久久久久免费桃花| 石原莉奈一区二区三区在线观看| 国产精品白丝jk黑袜喷水| 欧美日韩综合在线免费观看| 国产日韩欧美综合在线| 亚洲444eee在线观看| 不卡一区二区中文字幕| 精品国产网站在线观看| 一区二区在线观看av| 国产精品中文有码| 欧美一区2区视频在线观看| 亚洲人123区| 国产成人亚洲精品狼色在线| 制服丝袜日韩国产| 一区二区理论电影在线观看| 成人少妇影院yyyy| 337p粉嫩大胆噜噜噜噜噜91av| 亚洲国产cao| 91精品办公室少妇高潮对白| 国产精品区一区二区三区| 极品少妇xxxx精品少妇| 91麻豆精品国产综合久久久久久| 亚洲男人电影天堂| 粉嫩高潮美女一区二区三区| 精品国产亚洲在线| 琪琪久久久久日韩精品| 精品婷婷伊人一区三区三| 亚洲欧美电影一区二区| 99r国产精品| 中文字幕日韩一区二区| 福利一区二区在线观看| 久久精子c满五个校花| 国产一区二区三区在线观看精品| 91麻豆精品91久久久久同性| 亚洲国产精品一区二区www| 色综合中文字幕国产| 国产精品久久久久三级| 成人一级片网址| 国产精品嫩草影院av蜜臀| 国产乱码精品一品二品| 久久品道一品道久久精品| 国产自产v一区二区三区c| 欧美电影免费观看高清完整版在| 日韩 欧美一区二区三区| 日韩视频在线永久播放| 蜜桃精品视频在线观看| 精品剧情在线观看| 国产一区二区三区精品欧美日韩一区二区三区 | 美女网站一区二区| 日韩一二三四区| 国产乱色国产精品免费视频| 国产欧美一区二区精品久导航 | 成人动漫精品一区二区| 国产精品欧美久久久久无广告| 成av人片一区二区| 一区二区三区四区不卡视频| 欧美色图天堂网| 免费在线观看一区| 久久久av毛片精品| 成人一道本在线| 亚洲激情自拍偷拍| 欧美日本视频在线| 免费成人在线网站| 国产色综合一区| 色菇凉天天综合网| 免费观看久久久4p| 久久久99久久| 色久优优欧美色久优优| 免费看欧美美女黄的网站| 久久午夜羞羞影院免费观看| 成人av在线播放网址| 亚洲国产成人精品视频| 欧美大尺度电影在线| 成人a免费在线看| 五月天精品一区二区三区| xnxx国产精品|