999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于PCF8563的數(shù)字鐘FPGA設(shè)計與實現(xiàn)

2020-06-29 12:14:04
計算機測量與控制 2020年6期
關(guān)鍵詞:信號

(中國電子科技集團公司 第二十七研究所, 鄭州 450047)

0 引言

現(xiàn)場可編程門陣列(field-programmable gate array,FPGA)的飛速發(fā)展,在工業(yè)控制、電子計量、便攜儀器、數(shù)字通信、人工智能等各個領(lǐng)域得到廣泛應(yīng)用。Verilog HDL(Verilog hard design language)作為目前主流的硬件描述語言得到了FPGA工程師的青睞。目前數(shù)字鐘多應(yīng)用于儀器儀表、電子計量、實時控制系統(tǒng)中[1-2]。實時時鐘芯片PCF8563在數(shù)字鐘設(shè)計中應(yīng)用也非常廣泛,實質(zhì)是一個對標(biāo)準(zhǔn)頻率計數(shù)的計數(shù)電路,通常由晶體振蕩電路、分頻電路、時間計數(shù)電路、譯碼驅(qū)動電路等組成[3]。本文提出了一種基于實時時鐘芯片PCF8563的數(shù)字鐘的FPGA設(shè)計實現(xiàn)思路,采用Altera公司的Cyclone IV E系列FPGA芯片EP4CE10F17C8作為主控芯片,通過Inter-Integrated Circuit(I2C)總線實現(xiàn)對實時時鐘芯片PCF8563的讀寫控制,通過4個按鍵分別完成時鐘/日歷切換、實時顯示和手動調(diào)校切換、數(shù)據(jù)移位設(shè)置和數(shù)據(jù)累加設(shè)置功能,完成實時和調(diào)校模式下的六位數(shù)碼管顯示,并在調(diào)校模式下實現(xiàn)數(shù)碼管閃爍指示功能。通過SignalTap邏輯分析儀,驗證了系統(tǒng)功能實現(xiàn)的技術(shù)可行性,并在正點原子開拓者EP4CE10開發(fā)板上完成調(diào)試。

1 時鐘芯片PCF8563簡介

PCF8563是飛利浦公司的一款具有極低功耗的工業(yè)級多功能CMOS實時時鐘/日歷芯片,工作電流為0.25 μA,具有時鐘輸出、報警、定時器以及中斷輸出功能,能完成各種復(fù)雜的定時服務(wù),其內(nèi)部功能如圖1所示[4]。

圖1 PCF8563內(nèi)部功能框圖

PCF8563內(nèi)部包括16個8位寄存器、內(nèi)置32.768 Hz的振蕩器、時鐘監(jiān)控、電源復(fù)位、分頻器、可編程時鐘輸出、中斷輸出、看門狗電路以及I2C總線接口。分頻器給實時時鐘RTC提供源時鐘,內(nèi)存地址00 H、01 H用作控制和狀態(tài)寄存器,地址02 H~08 H用作TIME計時器,地址09 H~0 CH用于報警寄存器,地址0DH控制CLKOUT管腳的輸出頻率,地址0EH和0FH分別用于定時器控制寄存器和定時器寄存器,其中年月日時分秒寄存器均為BCD編碼[5]。

當(dāng)一個RTC寄存器被寫入或讀取時,所有時間計數(shù)器的內(nèi)容將被凍結(jié),可避免在進(jìn)位條件下錯誤地寫或讀時鐘和日歷,因此所有訪問必須在1 s內(nèi)完成。開機復(fù)位(POR)覆蓋,POR持續(xù)時間與晶體振蕩器的啟動時間直接相關(guān),在上電復(fù)位后,應(yīng)持續(xù)大于8 ms,再進(jìn)行總線操作[6]。PCF8563的所有數(shù)據(jù)和地址均通過I2C總線接口串行傳遞,最大總線速度為400 kbits/s,每次讀寫數(shù)據(jù)后,內(nèi)嵌的地址寄存器會自動產(chǎn)生增量。

PCF8563寄存器寫時序過程如下:先發(fā)送器件地址+寫操作0,隨后發(fā)8位寄存器地址,最后發(fā)8位寄存器值,S為起始信號,A為應(yīng)答信號,P為停止信號。讀時序過程如下:先發(fā)7位地址+寫操作0,然后發(fā)送寄存器地址,重新發(fā)送起始信號Sr,再次發(fā)送7位地址+讀操作1,讀取寄存器值。

2 數(shù)字鐘系統(tǒng)設(shè)計

數(shù)字鐘系統(tǒng)由晶振、電源模塊、實時時鐘芯片PCF8563、FPGA電路模塊、按鍵模塊以及數(shù)碼管顯示模塊6部分組成。系統(tǒng)采用3.3 V供電,晶振選擇32.768 kHz和50 MHz兩種,分別用于實時時鐘芯片PCF8563工作的外部晶振和FPGA工作的基準(zhǔn)時鐘,F(xiàn)PGA采用Cyclone IV E系列EP4CE10F17C8芯片[7],時鐘芯片PCF8563與FPGA通過I2C總線實現(xiàn)雙向通信,系統(tǒng)框圖如圖2所示。

圖2 數(shù)字時鐘系統(tǒng)框圖

數(shù)字鐘系統(tǒng)具體實現(xiàn)功能如下:1)實時時鐘功能,能夠完成常規(guī)時鐘/日歷的實時計數(shù);2)手動調(diào)校功能,能夠手動設(shè)置年月日時分秒,數(shù)據(jù)按照相應(yīng)約束條件進(jìn)行循環(huán)累加和移位操作,完成時鐘/日歷的手動調(diào)校;3)數(shù)碼管動態(tài)顯示功能,能夠在實時和調(diào)校模式下完成時鐘/日歷的數(shù)碼管切換顯示,并在調(diào)校模式下實現(xiàn)數(shù)碼管在當(dāng)前調(diào)整位置的閃爍指示功能。

3 FPGA設(shè)計實現(xiàn)

FPGA作為本設(shè)計的核心部件,按照自頂向下的設(shè)計流程,各模塊功能通過Verilog硬件描述語言實現(xiàn),主要電路由按鍵消抖模塊、鍵控時鐘設(shè)置模塊、實時時鐘模塊、I2C驅(qū)動模塊、數(shù)碼管驅(qū)動模塊5部分構(gòu)成。

3.1 按鍵消抖模塊設(shè)計

設(shè)計采用4個機械彈性按鍵,按下為低電平,彈起為高電平。由于機械按鍵開關(guān)在閉合和斷開時均不會馬上穩(wěn)定,存在瞬間抖動,為解決不利影響,故采用按鍵消抖的方法,即當(dāng)檢測到按鍵狀態(tài)改變且按鍵狀態(tài)穩(wěn)定后,計數(shù)器從20 ms開始倒計時,當(dāng)計數(shù)器遞減到1時,說明按鍵穩(wěn)定狀態(tài)維持了20 ms,此時按鍵消抖過程結(jié)束,通過寄存器寄存4個按鍵的狀態(tài)值key_value[3:0],分別表示按鍵0、1、2、3狀態(tài),并送入鍵控時鐘設(shè)置模塊。

3.2 鍵控時鐘設(shè)置模塊設(shè)計

鍵控時鐘設(shè)置模塊,主要完成邊沿檢測、模式切換和調(diào)校控制功能。

1)邊沿檢測功能是當(dāng)一個按鍵按下時,按鍵狀態(tài)值key_value[3:0]中的某一位為低電平,經(jīng)過下降沿的邊沿檢測,得到對應(yīng)的一個周期CLK的高電平信號,邊沿檢測后的信號表示為neg_sgn[3:0],即按鍵標(biāo)志信號。

2)模式切換功能是完成按鍵標(biāo)志信號neg_sgn[3:0]產(chǎn)生的相應(yīng)動作。

當(dāng)按鍵0按下,按鍵標(biāo)志信號neg_sgn[0]檢測到一個周期的高電平,則通過狀態(tài)模式切換信號switch_0[1:0]完成狀態(tài)循環(huán)跳轉(zhuǎn),其中0表示實時時鐘模式,1表示手動調(diào)校模式,2表示調(diào)校完成并跳轉(zhuǎn)至實時時鐘模式;

當(dāng)按鍵1按下,按鍵標(biāo)志信號neg_sgn[1]檢測到一個周期的高電平,則通過顯示模式切換信號switch_1完成狀態(tài)翻轉(zhuǎn),其中0表示時鐘顯示,1表示日歷顯示;

3)調(diào)校控制功能完成時鐘和日歷設(shè)置。當(dāng)按鍵2按下,按鍵標(biāo)志信號neg_sgn[2]檢測到一個周期高電平,當(dāng)前調(diào)整數(shù)據(jù)值移位一次;當(dāng)按鍵3按下,按鍵標(biāo)志信號neg_sgn[3]檢測到一個周期高電平,當(dāng)前調(diào)整數(shù)據(jù)值累加一次。時鐘設(shè)置代碼如下,日歷設(shè)置代碼類似,不再贅述。

//檢測到移位按鍵2標(biāo)志信號有效,且在手動調(diào)校模式、時鐘顯示模式

else if(neg_sgn[2]=1’b1 &&swtich_0=2’d1 &&switch_1=1’b1)

begin

if(disp_drive_t< 3’b101)

disp_drive_t<= disp_drive_t +1’b1;

else

disp_drive_t<= 3’d0;

end

//檢測到移位按鍵3標(biāo)志信號有效,當(dāng)前調(diào)整數(shù)據(jù)值累加一次。

elseif(neg_sgn[2]=1 &&swtich_0=2’d 1&&switch_1=1’b1)begin

//時間驅(qū)動信號

case(disp_drive_t)

3’d0:begin

//時計數(shù)

if(hour_set< 4’b0010)

hour_set<= hour_set +1’b1;

else

hour_set<= 4’d0;

3’d1://分計數(shù)

default:…

end

else

//數(shù)據(jù)保持

begin

disp_drive_t<= disp_drive_t;

hour_set<= hour_set;

end

最后,將寄存的時鐘和日歷數(shù)據(jù)分別拼接為調(diào)校時間輸出值num_timeset和調(diào)校日期輸出值num_dataset,通過顯示模式切換信號switch_1實現(xiàn)時鐘和日歷的切換輸出,具體代碼如:assignnum_set_xs = switch_1 ? num_dataset : num_timeset,將得到的調(diào)校輸出值num_set_xs[23:0]送入到數(shù)碼管顯示模塊進(jìn)行調(diào)校模式的數(shù)據(jù)顯示,同時將調(diào)校時間輸出值num_timeset和調(diào)校日期輸出值num_dataset進(jìn)行拼接,得到設(shè)置值num_set[47:0]送入實時時鐘模塊作為實時時鐘的初值,即通過I2C總線要寫入PCF8563實時時鐘芯片中的數(shù)據(jù),并將狀態(tài)模式切換信號switch_0、顯示模式切換信號switch_1、時間驅(qū)動信號disp_drive_t、日期驅(qū)動信號disp_drive_d一并送出至后級模塊。

3.3 實時時鐘模塊設(shè)計

實時時鐘模塊通過調(diào)用I2C驅(qū)動模塊來實現(xiàn)對PCF8563實時時鐘數(shù)據(jù)的讀寫,實時時鐘模塊與I2C驅(qū)動模塊的操作時鐘一致,頻率選為250 kHz[8]。送至I2C驅(qū)動模塊的信號包括I2C讀寫控制信號I2C_r_w、I2C觸發(fā)執(zhí)行信號I2C_exe、I2C器件內(nèi)地址I2C_addr、I2C要寫的數(shù)據(jù)I2C_data_w,以及從I2C驅(qū)動模塊得到的信號包括I2C一次操作完成標(biāo)識信號I2C_done、從I2C讀的數(shù)據(jù)I2C_data_r。通過狀態(tài)機實現(xiàn)I2C數(shù)據(jù)的讀寫操作,實時時鐘模塊狀態(tài)流程如圖3所示,主體循環(huán)狀態(tài)為12個。寫狀態(tài)時,將設(shè)置初值num_set[47:0]數(shù)據(jù)分段寫入I2C_data_w寄存器;讀狀態(tài)是將I2C讀的數(shù)據(jù)I2C_data_r,分別存入秒寄存器sec[7:0]、分寄存器min[7:0]、時寄存器hour[7:0]、日寄存器day[7:0]、月寄存器month[7:0]、年寄存器year[7:0],最后將年月日時分秒寄存器值拼接為實時日期顯示值num_data[23:0]和實時時間顯示值num_time[23:0]的數(shù)據(jù),通過顯示模式切換信號switch_1實現(xiàn)實時顯示下的時鐘/日歷切換,具體代碼如:assignnum = switch_1 ? num_data : num_time,最后將得到的實時顯示輸出值num[23:0]傳遞至數(shù)碼管驅(qū)動模塊進(jìn)行顯示。

圖3 實時時鐘模塊狀態(tài)流程圖

狀態(tài)機流程描述如下:上電初始化后,延時8 ms,按照順序執(zhí)行Q1~Q12狀態(tài)。進(jìn)入Q1寫秒狀態(tài)時,I2C觸發(fā)執(zhí)行信號I2C_exe設(shè)為1,器件內(nèi)地址I2C_addr設(shè)為0x02,將設(shè)置初值中的低8位num_set[8:0]存入I2C要寫的數(shù)據(jù)I2C_data_w寄存器;進(jìn)入Q2讀秒狀態(tài)時,當(dāng)I2C一次操作完成標(biāo)識信號I2C_done=1,將從I2C讀的數(shù)據(jù)I2C_data_r存入秒寄存器sec[7:0]寄存器;其他讀寫過程類似,不同之處是器件內(nèi)地址、寫入和讀出的數(shù)據(jù)值不同。順序執(zhí)行到Q12狀態(tài)時,I2C讀寫控制信號I2C_r_w拉高。

特別指出的是,當(dāng)進(jìn)入循環(huán)狀態(tài)后,寫入數(shù)據(jù)完成,I2C一次操作完成標(biāo)識信號I2C_done拉高后,一直在執(zhí)行讀操作。設(shè)計要求完成調(diào)校設(shè)置后,需要重新寫入調(diào)校后的值。這時我們在循環(huán)體外,加入判斷條件。當(dāng)狀態(tài)模式切換信號switch_0設(shè)置為2時,即調(diào)校設(shè)置成功后,模塊中狀態(tài)和數(shù)據(jù)寄存器清零,否則進(jìn)入Q0狀態(tài)重新開始執(zhí)行循環(huán)體,實現(xiàn)了調(diào)校設(shè)置后的數(shù)據(jù)值成功寫入I2C總線,完成了時鐘/日歷初值調(diào)整。

3.4 I2C驅(qū)動模塊設(shè)計

I2C驅(qū)動模塊實現(xiàn)底層的I2C讀寫時序控制[9],讀寫狀態(tài)轉(zhuǎn)移如圖4所示。

圖4 I2C讀寫狀態(tài)轉(zhuǎn)移圖

當(dāng)I2C觸發(fā)執(zhí)行信號I2C_exe=1時,從空閑W0跳轉(zhuǎn)至W1狀態(tài), Bit_ctrl=1表示16位字地址,Bit_ctrl=0表示8位字地址,本系統(tǒng)采用8位字地址,故跳轉(zhuǎn)至W3狀態(tài)。當(dāng)I2C讀寫控制標(biāo)識信號rw_flag=0時,表示寫數(shù)據(jù),跳轉(zhuǎn)至W6狀態(tài),當(dāng)狀態(tài)結(jié)束信號done=1時,結(jié)束I2C操作W7狀態(tài),表示一次I2C寫操作完成,然后轉(zhuǎn)至空閑;當(dāng)I2C讀寫控制標(biāo)識信號rw_flag=1時,表示讀數(shù)據(jù),跳轉(zhuǎn)至W4狀態(tài),寫地址讀后,進(jìn)入W5完成讀數(shù)據(jù),檢測到done=1時結(jié)束I2C操作W7狀態(tài),表示一次I2C讀操作完成,轉(zhuǎn)至空閑。

具體各狀態(tài)的輸出,按照I2C總線協(xié)議要求設(shè)計[10-11],SDA和SCL兩條信號線同時為高電平時,總線處于空閑狀態(tài),即釋放總線。當(dāng)SCL為高電平且SDA信號由高電平跳變?yōu)榈碗娖剑礊殚_始信號S;當(dāng)SCL為高電平且SDA信號由低電平跳變?yōu)楦唠娖剑礊橥V剐盘朠,開始信號和停止信號均有主控制器(FPGA)產(chǎn)生。SDA數(shù)據(jù)在SCL為高電平期間必須保持穩(wěn)定,只有在SCL為低電平期間,SDA數(shù)據(jù)線上的電平狀態(tài)才可以改變。輸出在SDA線上的每個字節(jié)均為8位,每個字節(jié)后需要有一個應(yīng)答信號ACK,即FPGA在時鐘9期間釋放數(shù)據(jù)線SDA,由從器件(PCF8563)反饋應(yīng)答信號,確保在SCL時鐘9高電平期間為穩(wěn)定的低電平,則表示接收器(PCF8563)成功接收到該字節(jié)。當(dāng)FPGA為接收器時,即從PCF8563中讀取數(shù)據(jù),當(dāng)FPGA接收完最后一個字節(jié)后,需要發(fā)送一個非應(yīng)答信號NACK,通知PCF8563停止數(shù)據(jù)發(fā)送,并釋放數(shù)據(jù)線SDA,以便FPGA發(fā)送停止信號P。

3.5 數(shù)碼管驅(qū)動模塊

數(shù)碼管采用動態(tài)掃描顯示,通過段選和位選信號進(jìn)行分時點亮控制。為實現(xiàn)在手動調(diào)校模式下,進(jìn)行數(shù)據(jù)移位設(shè)置時,具有當(dāng)前數(shù)碼管閃爍指示功能,首先通過顯示模式切換信號switch_1對時間驅(qū)動信號disp_drive_t和日期驅(qū)動信號disp_drive_d進(jìn)行選擇,得到位選閃爍標(biāo)志信號disp_drive,在0~5范圍內(nèi)變化;通過一個延時計數(shù)器得到一個0.5 s電平翻轉(zhuǎn)一次的信號sel_reg,當(dāng)進(jìn)入調(diào)校模式后,case語句進(jìn)行0~5狀態(tài)之間的常規(guī)動態(tài)掃描,在0狀態(tài)情況下,位選信號sel[5:1] <= 5’b11111;如果位選閃爍標(biāo)志信號disp_drive = 0,則sel[0] <= sel_reg,即數(shù)碼管0閃爍顯示;否則sel[0] <= 0,即數(shù)碼管位選0點亮;在1狀態(tài)情況下,位選信號sel[5:2] <= 4‘b1111;sel[0] <= 1’b1;如果位選閃爍標(biāo)志信號disp_drive = 1,則sel[1]<= sel_reg,即數(shù)碼管1閃爍顯示;否則sel[1]<= 0,即數(shù)碼管位選1點亮;同理實現(xiàn)其他位選閃爍顯示。進(jìn)入顯示模式后,進(jìn)行常規(guī)動態(tài)掃描,從而完成數(shù)碼管數(shù)據(jù)實時顯示和調(diào)校模式的閃爍指示。

具體實現(xiàn)代碼如下:

//得到位選閃爍標(biāo)志信號disp_drive

assigndisp_drive = switch_1 ? disp_drive_t :disp_drive_d;

//得到0.5 s電平翻轉(zhuǎn)一次的信號sel_reg

if(!rst_n)

begin

sel_reg<= 1’b0;

cnt_ss<= 26’d0;

end

else if(cnt_ss 26’d24999999)

begin

sel_reg<= ~sel_reg;

cnt_ss<= cnt_ss + 1’b1;

end

else if(cnt_ss 26’d49999999)

begin

sel_reg<= ~sel_reg;

cnt_ss<= 26’d0;

end

else

begin

sel_reg<= sel_reg;

cnt_ss<= cnt_ss + 1’b1;

end

//當(dāng)進(jìn)入調(diào)校模式,數(shù)碼管閃爍指示

else if(switch_0 2’d1)

begin

//動態(tài)掃描

case(cnt)

//秒低位或日低位顯示

3’d0:begin

sel[5:1] <= 5’b11111; //數(shù)碼管1~5滅

num1 <= num[3:0]; //傳入秒低位或日低位

point1 <= point[0]; //小數(shù)點顯示

if(disp_drive 0)

sel[0] <= sel_reg; //0.5 s翻轉(zhuǎn),數(shù)碼管0閃爍

else

sel[0] <= 1’b0; //數(shù)碼管0點亮

end

//秒高位或日高位顯示

3’d1:begin

sel[5:2] <= 4‘b1111; //數(shù)碼管2~5滅

sel[0] <= 1’b1; //數(shù)碼管0滅

num1 <= num[7:4]; //傳入秒高位或日高位

point1 <= point[1]; //小數(shù)點顯示

if(disp_drive 1)

sel[1]<= sel_reg; //0.5 s翻轉(zhuǎn),數(shù)碼管1閃爍

else

圖5 SignalTap邏輯分析結(jié)果

sel[1]<= 1’b0; //數(shù)碼管1點亮

end

//分低位或月低位顯示

3’d2:…

default:…

end

//當(dāng)進(jìn)入顯示模式

else

begin

//動態(tài)掃描數(shù)碼管0~5

case(cnt)

3’d0:begin

sel<= 6’b111110; //數(shù)碼管1~5滅,0亮

num1 <= num[3:0]; //傳入秒低位或日低位

point1 <= point[0]; //小數(shù)點顯示

… : …

end

3’d5:begin

sel<= 6’b011111; //數(shù)碼管0~4滅,5亮

num1 <= num[23:20]; //傳入時高位或年高位

point1 <= point[0]; //小數(shù)點顯示

end

default:…

end

4 功能驗證

通過SignalTap邏輯分析儀進(jìn)行功能驗證,模式切換按鍵1設(shè)置為邊沿觸發(fā),在開發(fā)板上將模式切換為調(diào)校模式,設(shè)置時間為21∶11∶10,移位按鍵調(diào)整至位選信號sel[3]控制的數(shù)碼管上,點擊按鍵1后,模式切換至實時顯示,SignalTap輸出邏輯分析結(jié)果如圖5所示。

實測結(jié)果為:鍵控時鐘設(shè)置模塊輸出num_set[47∶0]=0x000000211110h,實時時鐘模塊顯示輸出num_xs[23∶0]=0x211110h,時鐘顯示驅(qū)動信號disp_drive_t=0x4h,結(jié)果符合期望要求,驗證了該設(shè)計的時鐘數(shù)據(jù)寫入和讀取以及位選閃爍指示功能的正確性,日歷數(shù)據(jù)不再贅述。

5 結(jié)束語

通過FPGA對實時芯片PCF8563進(jìn)行讀寫控制,實現(xiàn)了時鐘/日歷切換顯示,對時鐘/日歷手動調(diào)校。在調(diào)校狀態(tài)下,實現(xiàn)了數(shù)據(jù)移位時數(shù)碼管閃爍指示功能。通過SignalTap邏輯分析儀,驗證了系統(tǒng)功能實現(xiàn)的技術(shù)可行性,并在開發(fā)板上完成調(diào)試,可供FPGA開發(fā)和數(shù)字鐘感興趣的人員參考,為后續(xù)實現(xiàn)報警、秒表、星期的顯示設(shè)置提供借鑒。PCF8563是一款功能完備的實時時鐘芯片,其可靠性高、功耗和成本低,可用于便攜式儀器、電子計量等場合或?qū)嶋H產(chǎn)品中[12]。

猜你喜歡
信號
信號
鴨綠江(2021年35期)2021-04-19 12:24:18
完形填空二則
7個信號,警惕寶寶要感冒
媽媽寶寶(2019年10期)2019-10-26 02:45:34
孩子停止長個的信號
《鐵道通信信號》訂閱單
基于FPGA的多功能信號發(fā)生器的設(shè)計
電子制作(2018年11期)2018-08-04 03:25:42
基于Arduino的聯(lián)鎖信號控制接口研究
《鐵道通信信號》訂閱單
基于LabVIEW的力加載信號采集與PID控制
Kisspeptin/GPR54信號通路促使性早熟形成的作用觀察
主站蜘蛛池模板: 欧美特级AAAAAA视频免费观看| 久久99国产综合精品女同| 国产乱子精品一区二区在线观看| 久热中文字幕在线| 久一在线视频| 亚洲制服中文字幕一区二区| 国产精品不卡片视频免费观看| 中文字幕 日韩 欧美| 国产成年无码AⅤ片在线| 欧美日韩久久综合| 免费在线视频a| 全部无卡免费的毛片在线看| 园内精品自拍视频在线播放| 久久99国产综合精品1| 欧美在线中文字幕| 国产真实乱了在线播放| 国产精品手机视频| 亚洲AV无码乱码在线观看代蜜桃| 亚洲国产综合精品中文第一| 亚洲欧洲日韩综合色天使| 无码电影在线观看| 久久精品日日躁夜夜躁欧美| 国国产a国产片免费麻豆| 国产精品午夜福利麻豆| 丰满人妻中出白浆| 国产h视频免费观看| 国内黄色精品| 中文字幕亚洲电影| 亚洲精品天堂自在久久77| 久久亚洲美女精品国产精品| 色AV色 综合网站| 免费无遮挡AV| 亚洲男人的天堂久久香蕉网| 国产又粗又猛又爽| 一区二区三区国产精品视频| 国产午夜精品一区二区三| 色综合天天综合中文网| 成人一级免费视频| 超碰免费91| 国产亚洲精品精品精品| 国产亚洲欧美在线人成aaaa| 午夜a视频| 欧美性猛交一区二区三区| 日本爱爱精品一区二区| 欧美成人怡春院在线激情| 91一级片| 成人午夜视频网站| 福利片91| 久久综合婷婷| 国产欧美日韩91| www.亚洲一区二区三区| 男人的天堂久久精品激情| 国产成人av一区二区三区| 亚洲精品无码AV电影在线播放| 无码内射中文字幕岛国片| 国产成人精品综合| 国产欧美日韩另类精彩视频| 国产chinese男男gay视频网| 免费无码AV片在线观看中文| 成人免费视频一区二区三区| 在线日韩一区二区| 亚洲国产成人自拍| 一级黄色网站在线免费看| 日本草草视频在线观看| 日韩一区精品视频一区二区| 色妞www精品视频一级下载| 亚洲最新地址| 亚洲三级成人| 亚洲精品无码AⅤ片青青在线观看| 中文字幕在线观看日本| 国产成+人+综合+亚洲欧美| 亚洲色精品国产一区二区三区| 免费大黄网站在线观看| av天堂最新版在线| yjizz视频最新网站在线| 精品三级在线| 久久96热在精品国产高清| 日本爱爱精品一区二区| 国产av无码日韩av无码网站| 国产精品性| 天堂av高清一区二区三区| 国产日本欧美在线观看|