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

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

?? uart.vhd

?? 串口通訊rs232,時(shí)鐘頻率為40Mhz,波特率為19200,沒有奇偶校驗(yàn),在xilinx XC3S200A板子上驗(yàn)證過(guò).
?? VHD
?? 第 1 頁(yè) / 共 2 頁(yè)
字號(hào):
--總體設(shè)計(jì)思路:
--1)預(yù)計(jì)實(shí)現(xiàn)效果:通過(guò)串口調(diào)試助手,由PC發(fā)送數(shù)據(jù)給小系統(tǒng)板,板子接收到的數(shù)據(jù)在數(shù)碼管上即時(shí)顯示
--	并且通過(guò)發(fā)送模塊發(fā)送回PC,在串口調(diào)試助手上顯示出來(lái)。
--2)模塊劃分:六大模塊,1:波特率發(fā)送模塊(clock_tx);2:fpga_to_pc 發(fā)送模塊 (uart_tx);3:采樣時(shí)鐘模塊(uart_re);
--	4:pc_to_fpga接收模塊(uart_re);5:數(shù)碼管顯示模塊(segment);6:頂層模塊(top_level).
--3)基本設(shè)定:板上晶振頻率40M,發(fā)送數(shù)據(jù)波特率為19200,數(shù)據(jù)格式為1bit起始位(0)+8bit有效數(shù)據(jù)+1bit停止位(1)構(gòu)成一幀數(shù)據(jù).
	
--注:
--1)一般編寫程序在quartus中完成,在該目錄下新建modelsim的仿真目錄,
--	調(diào)用modelsim仿真時(shí),添加quartus中的原始設(shè)計(jì)文件時(shí),
--	若選擇copy形式,則quartus與modelsim中文件互相不影響;若選擇refenrence形式,
--	則quartus中設(shè)計(jì)文件改變時(shí),會(huì)影響到modelsim中文件.
--2)若要精確的指向電平跳變點(diǎn),可以使用波形操作界面上的圖標(biāo)find next transition.



--模塊1:clock_tx:發(fā)送時(shí)鐘模塊,即波特率發(fā)生器.
--1) 設(shè)定
--	預(yù)設(shè)發(fā)送數(shù)據(jù)波特率為19200,分頻時(shí)鐘需要利用計(jì)數(shù)器來(lái)實(shí)現(xiàn),計(jì)數(shù)值為40M/19200=2084.
--2) 設(shè)計(jì)
--	通過(guò)計(jì)數(shù)器來(lái)分頻,在原始時(shí)鐘周期下計(jì)數(shù),判斷滿計(jì)數(shù)值一半時(shí)清零,同時(shí)對(duì)中間值取反,否則自加.則該中間值即為所分頻率.
--3) 仿真
-- 	在modelsim中進(jìn)行功能仿真,原始時(shí)鐘為40M(25000ns)
--4) 調(diào)試
--	下載程序,本部分沒有出現(xiàn)問(wèn)題.
--design file:clock_tx
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY clock_tx IS
		PORT(
						clk_in: IN STD_LOGIC;
						rst: IN STD_LOGIC;
						clk_out: OUT STD_LOGIC
				);
END clock_tx;

ARCHITECTURE behav OF clock_tx IS

SIGNAL clk_count: STD_LOGIC_VECTOR(15 DOWNTO 0);
SIGNAL clk_bit: STD_LOGIC;

BEGIN
		PROCESS(rst,clk_in)
		BEGIN
				IF rst='0' THEN
						clk_count<="0000000000000000";
						clk_bit<='0';
				ELSIF clk_in'EVENT AND clk_in='1' THEN
						IF(clk_count=1042) THEN
								clk_count<="0000000000000000";
								clk_bit<=not clk_bit;
						ELSE
								clk_count<=clk_count+1;
						END IF;
			 	END IF;
		END PROCESS;
		
		clk_out<=clk_bit;
END behav;

--testbench: tb1
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY tb1 IS
END tb1;

ARCHITECTURE be OF tb1 IS
COMPONENT clock_tx 
		PORT(
						clk_in: IN STD_LOGIC;
						rst: IN STD_LOGIC;
						clk_out: OUT STD_LOGIC
				);
END COMPONENT;
SIGNAL clk_in: STD_LOGIC;
SIGNAL rst: STD_LOGIC;
SIGNAL clk_out: STD_LOGIC;
CONSTANT clk_period: time:=25 ns;

BEGIN
		uut:clock_tx PORT MAP(clk_in=>clk_in,rst=>rst,clk_out=>clk_out);
		clk_gen: PROCESS
		BEGIN
	  		clk_in<='0';
	   		WAIT FOR clk_period/2;
	    	clk_in<='1';
	  	  WAIT FOR clk_period/2;
		END PROCESS;
	
		rst_gen: PROCESS
		BEGIN
				rst<='0';
    		WAIT FOR clk_period;
	  	  rst<='1';
				WAIT ;
		END PROCESS;
END be;	

--模塊2 uart_tx:發(fā)送模塊 
--1) 設(shè)定
--	根據(jù)模塊1生成的發(fā)送時(shí)鐘波特率,按位將數(shù)據(jù)通過(guò)串口發(fā)送給PC機(jī),在串口通信助手上顯示出來(lái).
--2)設(shè)計(jì)
	
	
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY uart_tx IS
		PORT(
						rst: IN STD_LOGIC;
						clk_in: IN STD_LOGIC;
						send_data: IN STD_LOGIC; --來(lái)自接收模塊,表示一幀數(shù)據(jù)準(zhǔn)備好,等待本模塊接收.
						data_in: IN STD_LOGIC_VECTOR(7 DOWNTO 0); --data from uart_re
						busy: OUT STD_LOGIC; --when high ,it means data is sending
						data_out: OUT STD_LOGIC --parallel data in , serial data out
				);
END uart_tx;

ARCHITECTURE behav OF uart_tx IS
COMPONENT clock_tx 
		PORT(
						clk_in: IN STD_LOGIC;
						rst: IN STD_LOGIC;
						clk_out: OUT STD_LOGIC
				);
END COMPONENT;
COMPONENT clock_re 
		PORT(
						rst: IN STD_LOGIC;
						clk_in: IN STD_LOGIC;
						clk_out: OUT STD_LOGIC
				);
END COMPONENT;
SIGNAL clk_tx: STD_LOGIC;
SIGNAL data_count: INTEGER RANGE 0 TO 10;
SIGNAL data_buf: STD_LOGIC_VECTOR(9 DOWNTO 0);
SIGNAL data_temp: STD_LOGIC_VECTOR(7 DOWNTO 0);
signal clk_re: std_logic:='0';
signal num: std_logic_vector(2 downto 0);

BEGIN
		uut: clock_tx PORT MAP(clk_in,rst,clk_tx);
		uut_re:clock_re PORT MAP(rst,clk_in,clk_re);
		PROCESS(rst,clk_in)
		BEGIN
				IF rst='0' THEN
						data_temp<="11111111";				
				ELSIF clk_in'EVENT AND clk_in='1' THEN
						IF send_data='1'  THEN  --uart_re模塊數(shù)據(jù)準(zhǔn)備好,將其接收進(jìn)來(lái).
							data_temp<=data_in;
						else
							data_temp<=data_temp;
						END IF;	
				END IF;
		END PROCESS;

		process(rst,clk_re) --因?yàn)閟end_data=1只持續(xù)很短的時(shí)間,約為1個(gè)clk_re周期,所以敏感信號(hào)采樣clk_re
		begin
			if rst='0'  then
				data_count<=10;
				num<="000";  
			elsif clk_re'event and clk_re='1' then
				if send_data='1' and data_count=10 then --數(shù)據(jù)接收進(jìn)來(lái),同時(shí)總線空閑.
					data_count<=0; --重新開始一次新的發(fā)送
				elsif data_count<10 then
					num<=num+"001";
					if num="111" then --8個(gè)clk_re周期構(gòu)成一個(gè)clk_tx周期,在此周期下數(shù)據(jù)位加1
						num<="000";
						data_count<=data_count+1; --data_count為10后,不清0,保證接收一幀數(shù)據(jù),發(fā)送一幀數(shù)據(jù).
					end if;
				else
					data_count<=data_count; --對(duì)應(yīng)send_data/=1 and data_count=10
				end if;
			end if;
		end process;
		--之所以data_count要計(jì)數(shù)到10,是因?yàn)楦鶕?jù)上一進(jìn)程,計(jì)數(shù)歸零是在接收進(jìn)來(lái)數(shù)據(jù)的同時(shí),
		--而此時(shí)clk_tx并沒有觸發(fā),參考modelsim仿真波形可知,發(fā)送第一位數(shù)據(jù)的起始,是在data_count
		--數(shù)值為0和1處,所以,要發(fā)送完10位數(shù)據(jù),停止位所占的時(shí)間在data_count為9時(shí)開始,在為10時(shí)
		--才能結(jié)束,因此data_count必須計(jì)數(shù)到10,否則有可能檢測(cè)不到停止位,從而產(chǎn)生錯(cuò)誤.
		process(rst,clk_tx)
		begin
			if rst='0' then
				data_buf<="1111111111"; --保證總線空閑時(shí)被拉高
			elsif clk_tx'event and clk_tx='1' then
				if data_count=0 then  --data_count為0時(shí),裝入待發(fā)送數(shù)據(jù)
					data_buf<='1' & data_temp & '0';
				elsif data_count<10 then --移位發(fā)送
					data_buf<='1' & data_buf(9 downto 1); --高位為1,保證發(fā)送完一幀后,總線拉高.
				elsif data_count=10 then --為10后,data_buf為全1,保證總線拉高.
					data_buf<=data_buf;
				end if;
			end if;
		end process;
		
		busy<='1' WHEN 	data_count<10 ELSE '0';
		data_out<=data_buf(0) ; --發(fā)送最低位.
END behav;

--testbench: tb2
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;

ENTITY tb2 IS
END tb2;

ARCHITECTURE be OF tb2 IS
COMPONENT uart_tx IS
		PORT(
						rst: IN STD_LOGIC;
						clk_in: IN STD_LOGIC;
						send_data: IN STD_LOGIC;
						data_in: IN STD_LOGIC_VECTOR(7 DOWNTO 0);
						busy: OUT STD_LOGIC;
						data_out: OUT STD_LOGIC
				);
END COMPONENT;
SIGNAL rst: STD_LOGIC;
SIGNAL clk_in: STD_LOGIC;
SIGNAL send_data: STD_LOGIC;
SIGNAL data_in: STD_LOGIC_VECTOR(7 DOWNTO 0);
SIGNAL busy: STD_LOGIC;
SIGNAL data_out: STD_LOGIC;
CONSTANT clk_in_period: time:=25ns;
CONSTANT clk_tx_period: time:=52083ns;
BEGIN
uut: uart_tx PORT MAP
(rst=>rst,clk_in=>clk_in,send_data=>send_data,data_in=>data_in,busy=>busy,data_out=>data_out);
clk_gen: PROCESS
BEGIN
		clk_in<='0';
		WAIT FOR clk_in_period/2;
		clk_in<='1';
		WAIT FOR clk_in_period/2;
END PROCESS;

rst_gen: PROCESS
BEGIN
		rst<='0';
	WAIT FOR clk_tx_period;
		rst<='1';
	WAIT ;
END PROCESS;

others_gen: PROCESS
BEGIN
		send_data<='0';
		data_in<="00000000";
		WAIT FOR clk_tx_period;
		send_data<='1';  
		data_in<="10101010";
		WAIT FOR clk_tx_period/8;
		send_data<='0';
		data_in<="11111111";
		WAIT;
END PROCESS;
END be;


--模塊3 接收時(shí)鐘
--1)設(shè)定:
--	接收時(shí)鐘是波特率時(shí)鐘的8倍頻,即clk_re=clk_tx/8.
--	這樣可以保證在發(fā)送時(shí)鐘周期的特定時(shí)刻對(duì)數(shù)據(jù)進(jìn)行采樣.
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
--USE IEEE.NUMERIC_STD.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY clock_re IS
		PORT(
						rst: IN STD_LOGIC;
						clk_in: IN STD_LOGIC;
						clk_out: OUT STD_LOGIC
				);
END clock_re;

ARCHITECTURE behav OF clock_re IS 
SIGNAL clk_count: STD_LOGIC_VECTOR(9 DOWNTO 0);
SIGNAL clk_bit: STD_LOGIC;
BEGIN
		PROCESS(rst,clk_in)
		BEGIN
				IF rst='0' THEN
						clk_count<="0000000000";
						clk_bit<='0';
				ELSIF clk_in'EVENT AND clk_in='1' THEN
						IF(clk_count=130) THEN
								clk_count<="0000000000";
								clk_bit<=not clk_bit;
						ELSE
								clk_count<=clk_count+1;
						END IF;
				END IF;
		END PROCESS; 
		clk_out<=clk_bit;
END behav;

--testbench:tb3
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY tb3 IS
END tb3;

ARCHITECTURE be OF tb3 IS
COMPONENT clock_re 
		PORT(
						rst: IN STD_LOGIC;
						clk_in: IN STD_LOGIC;
						clk_out: OUT STD_LOGIC
				);
END COMPONENT;
SIGNAL clk_in: STD_LOGIC;
SIGNAL rst: STD_LOGIC;
SIGNAL clk_out: STD_LOGIC;
CONSTANT clk_period: time:=25ns;

BEGIN
		uut:clock_re PORT MAP(clk_in=>clk_in,rst=>rst,clk_out=>clk_out);
		clk_gen: PROCESS
		BEGIN
				clk_in<='0';
				WAIT FOR clk_period/2;
				clk_in<='1';
				WAIT FOR clk_period/2;
		END PROCESS;
	
		rst_gen: PROCESS
		BEGIN
				rst<='0';
				WAIT FOR 25ns;
				rst<='1';
				WAIT ;
		END PROCESS;
END be;	

--模塊4 接收模塊
--1)設(shè)定
--	在接收數(shù)據(jù)時(shí),如果接收時(shí)鐘與發(fā)送時(shí)鐘相同的話,則只需要輕微的頻率偏移,就能產(chǎn)生極大的誤差,
--所以,為了提高接收的準(zhǔn)確性,減少誤碼率,接收時(shí)鐘一般都必須采用高頻時(shí)鐘,本例中,每一位數(shù)據(jù)都采用8倍頻的
--波特率來(lái)對(duì)數(shù)據(jù)進(jìn)行采樣,即在每發(fā)送一位數(shù)據(jù)的時(shí)間內(nèi),接收模塊已經(jīng)進(jìn)行了8次接收,這樣保證了數(shù)據(jù)的正確性。
--接收數(shù)據(jù)起始位與停止位采用四次采樣判斷,即在第2,3,4,5個(gè)接收數(shù)據(jù)時(shí)鐘周期,對(duì)數(shù)據(jù)進(jìn)行判斷,在起始位,若四次采樣均為0,
--則判定該位為0,即為有效的起始位,在停止位,則四次為1,判定為1.
--接收數(shù)據(jù)有效部分采用三次采樣判斷,即在第4,5,6個(gè)接收數(shù)據(jù)時(shí)鐘周期,對(duì)數(shù)據(jù)進(jìn)行判斷,也即是在第4,5,6次采樣值上,
--判斷接收到的數(shù)據(jù)的值,判斷時(shí)采用多數(shù)表決原則,即三次采樣中有兩次為某個(gè)值,則判斷為該值。
--2)設(shè)計(jì)
--	采樣狀態(tài)機(jī)實(shí)現(xiàn),分為四個(gè)狀態(tài),初始化,采樣,得到數(shù)值,數(shù)據(jù)準(zhǔn)備好.
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY uart_re IS
		PORT(
						rst: IN STD_LOGIC;
						clk_in: IN STD_LOGIC;
						ser_in: IN STD_LOGIC;--來(lái)自外部(PC機(jī))的串行輸入數(shù)據(jù)
						data_ready: INOUT STD_LOGIC;--一幀數(shù)據(jù)接收完畢,可以輸出進(jìn)行處理.
						data_out: OUT STD_LOGIC_VECTOR(7 DOWNTO 0)--有效數(shù)據(jù)8位并行輸出
				);
END uart_re;

ARCHITECTURE behav OF uart_re IS
COMPONENT clock_re 
		PORT(
						rst: IN STD_LOGIC;
						clk_in: IN STD_LOGIC;
						clk_out: OUT STD_LOGIC
				);
END COMPONENT;
COMPONENT clock_tx 
		PORT(
						rst: IN STD_LOGIC;
						clk_in: IN STD_LOGIC;
						clk_out: OUT STD_LOGIC
				);
END COMPONENT;
--串口接收一般采用狀態(tài)機(jī)實(shí)現(xiàn),定義為:初始化,采樣,得到數(shù)據(jù),幀格式準(zhǔn)備好.
TYPE uart_states IS (idle,sampling,get_data,data_ok);
SIGNAL state: uart_states;
SIGNAL clk_re: STD_LOGIC;
SIGNAL clk_tx: STD_LOGIC;
SIGNAL ser_buf1: STD_LOGIC; --級(jí)聯(lián)D觸發(fā)器,接收輸入數(shù)據(jù),根據(jù)跳變沿判斷起始位到來(lái).
SIGNAL ser_buf2: STD_LOGIC;
SIGNAL bit_count: STD_LOGIC_VECTOR(3 DOWNTO 0);--位計(jì)數(shù)器
SIGNAL data_buf: STD_LOGIC_VECTOR(9 DOWNTO 0);
SIGNAL ser_sig2: STD_LOGIC;--采樣值寄存器
SIGNAL ser_sig3: STD_LOGIC;
SIGNAL ser_sig4: STD_LOGIC;
SIGNAL ser_sig5: STD_LOGIC;
SIGNAL ser_sig6: STD_LOGIC;
SIGNAL sample: STD_LOGIC; --采樣點(diǎn)處理所得結(jié)果值
SIGNAL sample_count: STD_LOGIC_VECTOR(2 DOWNTO 0);--采樣個(gè)數(shù)計(jì)數(shù)值

BEGIN
	uut_re:clock_re PORT MAP(rst,clk_in,clk_re);
  uut_tx:clock_tx PORT MAP(rst,clk_in,clk_tx);
	process(rst,clk_tx)
	begin
		if rst='0' then
			ser_buf1<='1'; --對(duì)應(yīng)總線空閑時(shí)為1
			ser_buf2<='1';
		elsif clk_tx'event and clk_tx='1' then --clk_tx觸發(fā),因?yàn)檩斎氪袛?shù)據(jù)在clk_tx周期下變化,保證能夠采樣到變化值,
			ser_buf1<=ser_in;										 --又保證了ser_buf1/2的值會(huì)保持足夠長(zhǎng)的時(shí)間,使得clk_re時(shí)鐘下能夠采樣得到
			ser_buf2<=ser_buf1;									 --所需要的正確值.
		end if;
	end process;
		
	process(rst,clk_re) --clk_re觸發(fā),保證采樣
	begin
		if rst='0' then
			state<=idle; --復(fù)位下為初始狀態(tài)
			data_ready<='0';--不發(fā)送數(shù)據(jù)
			sample_count<="000";--采樣計(jì)數(shù)器清0
			bit_count<="0000"; --位計(jì)數(shù)器清0
			sample<='1'; --采樣結(jié)果值置1,與sampling狀態(tài)下第一個(gè)起始位采樣值為0區(qū)分
			ser_sig2<='1';--采樣寄存器初始值全為1,保證了采樣起始位時(shí),根據(jù)要求,必須全變化為0方能得到代表起始位的0
			ser_sig3<='1';
			ser_sig4<='1';
			ser_sig5<='1';
			ser_sig6<='1';
			data_buf<="1111111111";
		elsif clk_re'event and clk_re='1' then
			case state is
				when idle=>
					if ser_buf2='1' and ser_buf1='0' then --ser_buf1先變化,此處對(duì)應(yīng)為接收到一個(gè)下跳變
						state<=sampling; --檢測(cè)到下跳變脈沖,啟動(dòng)采樣
					else
						state<=idle;
					end if;
					data_ready<='0';
					data_buf<="1111111111"; --對(duì)應(yīng)總線空閑掛起為1
					bit_count<="0000";
					sample_count<="000";
				when sampling=>
					if bit_count="0000"  then   --start bit,代表起始位
						--采樣賦值來(lái)源是根據(jù)ser_buf1,個(gè)人理解也是針對(duì)先變化的這個(gè)值,
						--參考一些程序是根據(jù)ser_buf2,
						--總之可以先仿真,再根據(jù)仿真圖上波形,來(lái)決定是ser_buf1/2能夠得到正確采樣結(jié)果.
						--或者可以在實(shí)際運(yùn)行時(shí),分別比較兩者的正確性.
						if sample_count="001" then --第二個(gè)采樣點(diǎn)

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩免费视频| av电影天堂一区二区在线| 99久久亚洲一区二区三区青草 | 午夜精品一区二区三区电影天堂 | 久久成人免费日本黄色| 99re热这里只有精品免费视频 | 91国内精品野花午夜精品| 久久久精品人体av艺术| 免费高清在线一区| 欧美日韩一区视频| 亚洲精品国产视频| 成人av网站在线观看免费| 久久尤物电影视频在线观看| 亚洲女女做受ⅹxx高潮| 成人h动漫精品一区二区| 国产精品国产三级国产aⅴ入口| 成人性生交大片免费看在线播放| 日韩女优电影在线观看| 性做久久久久久| 91福利视频在线| 三级在线观看一区二区| 99热这里都是精品| 国产无一区二区| 国产九九视频一区二区三区| 久久免费精品国产久精品久久久久 | 日本不卡123| 欧美色综合网站| 亚洲精品高清视频在线观看| 99精品欧美一区二区蜜桃免费| 久久久久久久网| 蜜臀久久久久久久| 欧美卡1卡2卡| 午夜精品一区二区三区免费视频| 欧亚洲嫩模精品一区三区| 亚洲美女精品一区| 色一情一乱一乱一91av| 亚洲女同一区二区| 色噜噜狠狠成人网p站| 亚洲视频在线一区| 色综合中文字幕国产| 国产三级一区二区三区| 国模娜娜一区二区三区| 国产午夜亚洲精品羞羞网站| 国产精品99久久久久久久vr| 国产网红主播福利一区二区| 成熟亚洲日本毛茸茸凸凹| 中文字幕免费观看一区| 91亚洲精品久久久蜜桃| 亚洲人成影院在线观看| 91黄色免费观看| 午夜av一区二区三区| 91精品国产福利| 久久99日本精品| 国产情人综合久久777777| 不卡的电视剧免费网站有什么| 日韩理论在线观看| 欧洲一区在线电影| 日韩和欧美一区二区| 日韩美女一区二区三区四区| 国产高清在线精品| 亚洲色图制服诱惑| 欧美亚洲禁片免费| 免费黄网站欧美| 国产三级欧美三级日产三级99| 成人国产精品免费观看| 亚洲影视资源网| 91精品国产综合久久久蜜臀图片| 老色鬼精品视频在线观看播放| 久久久精品天堂| 色中色一区二区| 日本伊人精品一区二区三区观看方式| 日韩一区二区三区免费观看| 国产成人av影院| 亚洲免费在线观看| 日韩一区二区在线观看视频| 从欧美一区二区三区| 亚洲一区二区欧美激情| 26uuuu精品一区二区| 色综合婷婷久久| 日本在线不卡一区| 国产精品三级电影| 欧美精品日韩一本| 国产精品18久久久久久久久久久久 | 日韩黄色免费电影| 久久久www成人免费毛片麻豆 | 狠狠v欧美v日韩v亚洲ⅴ| 国产精品三级久久久久三级| 欧美日韩三级在线| 国产精品羞羞答答xxdd | 精品国免费一区二区三区| 成人中文字幕合集| 五月激情综合色| 国产免费观看久久| 欧美日韩亚洲综合在线| 国产91丝袜在线播放0| 亚洲无人区一区| 国产午夜精品久久| 欧美三级电影在线看| 国产v综合v亚洲欧| 日韩国产欧美一区二区三区| 国产精品福利影院| 日韩一区二区电影网| 色综合天天在线| 国产在线麻豆精品观看| 亚洲成人tv网| 一区视频在线播放| 2021国产精品久久精品| 欧美日韩一级二级三级| 99综合电影在线视频| 毛片一区二区三区| 亚洲国产一区二区在线播放| 国产三级一区二区三区| 欧美一级片在线| 在线免费观看成人短视频| 国产69精品久久久久毛片| 蜜桃视频一区二区| 亚洲一级二级三级在线免费观看| 欧美精彩视频一区二区三区| 制服丝袜一区二区三区| 在线免费观看视频一区| av亚洲精华国产精华精华 | 亚洲国产综合视频在线观看| 国产精品久线观看视频| 精品国产一区二区在线观看| 欧美日韩国产一级二级| 色综合久久久久综合99| 国产成人免费在线视频| 美女一区二区视频| 日日骚欧美日韩| 亚洲天堂福利av| 国产精品久久久久久久久久久免费看 | 国内成人精品2018免费看| 日韩一区精品字幕| 亚洲一区中文在线| 亚洲同性gay激情无套| 中文字幕不卡在线观看| 久久久精品影视| 一区二区在线观看视频| 美洲天堂一区二卡三卡四卡视频| 一区二区三区小说| 国产精品久久久99| 91精品国产免费| 9191国产精品| 欧美日韩中文另类| 欧美综合久久久| 91福利在线免费观看| 色综合久久综合网欧美综合网| 成人精品鲁一区一区二区| 国产成人精品免费网站| 国产精品一卡二卡| 国产精品伊人色| 丁香天五香天堂综合| 国产高清不卡一区| 成人国产免费视频| 91原创在线视频| 欧美综合一区二区三区| av亚洲精华国产精华精华| 五月婷婷综合在线| 久久综合色播五月| 337p亚洲精品色噜噜噜| 另类欧美日韩国产在线| 久久综合网色—综合色88| 国产一区二区三区在线观看精品| 久久蜜臀精品av| 成人av午夜电影| 亚洲va在线va天堂| 欧美成人猛片aaaaaaa| 韩国精品主播一区二区在线观看| 久久综合中文字幕| 91视频免费观看| 日韩精品影音先锋| 2023国产一二三区日本精品2022| 久久先锋资源网| 中文字幕精品三区| 亚洲人成人一区二区在线观看| 亚洲自拍偷拍av| 日本欧美在线观看| 国产综合色产在线精品| 成人一二三区视频| 色一情一伦一子一伦一区| 欧美人成免费网站| 欧美成人精品3d动漫h| 欧美激情自拍偷拍| 亚洲精品高清在线| 男女性色大片免费观看一区二区| 韩国在线一区二区| a在线播放不卡| 欧美日韩亚洲综合一区二区三区| 日韩欧美资源站| 国产精品视频你懂的| 亚洲午夜三级在线| 日本美女一区二区三区| 国产成人在线色| 欧美色精品在线视频| www日韩大片| 一区二区三区电影在线播| 青娱乐精品在线视频| 成人av第一页| 91精品国产综合久久香蕉麻豆| 国产喂奶挤奶一区二区三区|