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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

開源自己做的CPLD+SRAM液晶驅動verilog代碼

  [復制鏈接]
跳轉到指定樓層
樓主
斷斷續續地學了verilog HDL和FPGA一段時間,一直沒有完整的做一個東西,看到論壇上有做TFT控制器的,于是就仿制了一個.
verilog程序大部分是自己寫的,一些部分如異步寫入,HSync,VSync時序產生部分參考了"dzng11"
廢話不說了:直接上圖上資料


電路原理圖如下:




verilog HDL源程序如下:
  1. /**********************************************************************
  2. 通用4.3寸tft驅動
  3. 地址1位
  4. -----------------------------------------------------------------——----
  5. A0=0寄存器,寄存器0-7
  6. 0 SRAM數據
  7. 1 xIdex x軸寄存器
  8. 2 yIdex y軸寄存器
  9. 3 yend  結束寄存器,用于窗口繪圖加速

  10. 4 前景顏色
  11. 5 背景色
  12. 6
  13. 7 系統狀態0-15位
  14.   bo-b2          b3          b4-b6              b7-b9             b10-b12   
  15.    背光        顯示開/關      顯示方式           要寫入的頁          當前顯示頁
  16.                                                必須位x00                必須位x00
  17.                                                                                                                          x可改變(b7)      x可改變(b10)
  18. -----------------------------------------------------------------------
  19. AO=1數據

  20. 2011.12.5
  21. ***********************************************************************/

  22. /*
  23. 接口說明:
  24. Clk54:系統晶振,選擇54M晶振
  25. SysRst:系統復位線.
  26. ExDataBus:外部16位數據總線
  27. ExCs:控制器片選,
  28. ExRs:數據批令選擇
  29. ExWr:寫信號
  30. ExRd:讀信號
  31. RamAddrBus:顯存地址線.
  32. RamDataBus:顯存數據總線
  33. RamCs:顯存片選
  34. RamWe:顯存寫選通.
  35. LedOn:背光控制PWM
  36. DE:TFT屏
  37. DE:VSyncTFT屏,
  38. HSync:TFT屏
  39. RGB:TFT屏
  40. Pclk:TFT屏);
  41. */

  42. module tft43(Clk54, SysRst, ExDataBus, ExCs, ExRs, ExWr, ExRd, RamAddrBus,
  43.              RamDataBus, RamCs, RamWe,RamOe, LedOn, DE, VSync, HSync, RGB, Pclk);
  44.     input Clk54, SysRst, ExCs, ExRs, ExRd, ExWr;
  45.     inout [15:0] ExDataBus;
  46.     inout [15:0] RamDataBus;
  47.     output [17 : 0] RamAddrBus;
  48.     output [15:0] RGB;
  49.     output RamCs, RamWe,RamOe, LedOn, DE, VSync, HSync, Pclk;

  50.     reg [2:0] ClkCnt_Q3;
  51.     reg DotClkEn_Q;
  52.     reg Pclk_Q;
  53.     reg WrEn_Q;
  54.     reg [15:0]ExBusOut_Q;
  55.     reg [15:0] ExOutM;
  56.     reg [15:0] WriteRgb_Q;
  57.     reg ExWrClk_Q;
  58.     reg ExRsR_Q;
  59.     reg ExCsR_Q;
  60.     reg ExRdClk_Q;
  61.     reg ExRdClk_Q1;
  62.     reg ExRdClk_Q2;
  63.   
  64.     reg ExWrClk_Q1;
  65.     reg ExWrClk_Q2;


  66.     reg [12:0] SramAddr;
  67.     reg [15:0] PrePareData;
  68.     reg [7:0] IndexData;
  69.     reg InRamWe;
  70.     reg IncAddr;
  71.     reg XRegOver;
  72.     reg YRegOver;
  73.     reg AskWr;

  74.     reg [15:0] RGB_Q;
  75.     reg [15:0] InBusOut_Q;
  76.     reg [8:0] XRegValue_Q;
  77.     reg [8:0] YRegValue_Q;
  78.     reg [15:0] SysCmdValue_Q;
  79.     reg [2:0] RegAddr_Q;
  80.     reg RamWeReg_Q;
  81.     reg RamTriState_Q;
  82.     reg [2:0] FillCount_Q;
  83.     reg [15:0] BRGBValue_Q;
  84.     reg [15:0] FRGBValue_Q;
  85.     reg [17:0] RamAddrBus_Q;
  86.     reg FillHead_Q;
  87.     reg [8:0] HsCount_Q;
  88.     reg [8:0] DotCount_Q;
  89.     reg SelDispRam_Q;
  90.     reg RamCsReg_Q;
  91.     reg DsMark;
  92.     reg HsMark;
  93.     reg [1:0]DsState_Q;
  94.     reg [1:0]HsState_Q;
  95.     reg DE_Q;
  96.     reg [4:0]LedCount_Q;
  97.     reg LedOn_Q,LedOn_W;

  98.     assign Pclk = Pclk_Q;
  99.     assign RGB = RGB_Q;
  100.     assign RamAddrBus = {RamAddrBus_Q};
  101.     assign RamWe = RamWeReg_Q;
  102.     assign RamCs = RamCsReg_Q;
  103.          assign RamOe = RamCsReg_Q;/////
  104.     assign RamDataBus = (RamTriState_Q | Clk54)?16'bzzzzzzzzzzzzzzzz:InBusOut_Q;
  105.     assign VSync = DE_Q;
  106.     assign HSync = DE_Q;//1'b0;
  107.     assign DE = DE_Q;
  108.     assign LedOn = LedOn_Q;
  109.     assign ExDataBus = ExOutM;   
  110. /*
  111. --1.將54M主時鐘6分頻,產生9M時鐘并輸出至引腳Pclk
  112. --2.輸出DotClkEn為9M信號同步其他進程.高電平為1個主時鐘周期,低電平5個主時鐘周期
  113. --3.技巧: 001,010,011,100,101,110.共6個狀態,高位剛好是6分頻等寬.
  114. */
  115.     always @(posedge Clk54 or negedge SysRst)
  116.     begin
  117.         if (!SysRst) begin
  118.             ClkCnt_Q3   = 3'd1;
  119.             Pclk_Q      = 1'b0;
  120.             DotClkEn_Q  = 1'b0;
  121.         end else begin
  122.             if (ClkCnt_Q3[2] & ClkCnt_Q3[1]) begin
  123.                 ClkCnt_Q3 <= 3'd1;
  124.             end else begin
  125.                 ClkCnt_Q3 <= ClkCnt_Q3 + 3'd1;
  126.             end
  127.             Pclk_Q <= (SysCmdValue_Q[3])?1'b0:ClkCnt_Q3[2];
  128.             DotClkEn_Q <= ((~ClkCnt_Q3[2]) & ClkCnt_Q3[1] & ClkCnt_Q3[0]);
  129.         end
  130.     end
  131. /*
  132. --外部接口在RD及CS低電平期間輸出內部數據
  133. --RS為0時輸出忙信號.RS為1時輸出當前地址的內部數據
  134. */
  135.     always @(SysRst or ExBusOut_Q or WrEn_Q or ExCs or ExRs or ExWr or ExRd)
  136.      begin
  137.         if (!SysRst) begin
  138.             ExOutM = 16'bzzzzzzzzzzzzzzzz;
  139.         end else begin
  140.             if ((~ExCs) & ExWr & (~ExRd)) begin
  141.                 ExOutM = (ExRs)?ExBusOut_Q:({15'd0,WrEn_Q});
  142.             end else begin
  143.                 ExOutM = 16'bzzzzzzzzzzzzzzzz;
  144.             end
  145.         end
  146.     end
  147. /*
  148. --外部異步WR寫入數據.
  149. */
  150.     always @(posedge ExWr or negedge SysRst)
  151.     begin
  152.         if (!SysRst) begin
  153.             WriteRgb_Q = 16'd0;
  154.             ExWrClk_Q  = 1'b0;
  155.             RegAddr_Q  = 3'd0;
  156.          end else begin
  157.             if (!ExCs) begin
  158.                 if (!ExRs) begin
  159.                     RegAddr_Q <= ExDataBus[2:0];
  160.                 end else begin
  161.                     WriteRgb_Q <= ExDataBus;
  162.                     ExWrClk_Q <= ~ExWrClk_Q;
  163.                 end
  164.             end
  165.         end
  166.     end
  167. /*
  168. --外部異步RD讀出數據.
  169. */
  170. always @(negedge ExRd or negedge SysRst)
  171. begin
  172.         if (!SysRst) begin
  173.             ExRsR_Q = 1'b0;
  174.             ExCsR_Q = 1'b1;
  175.          end else begin
  176.             ExCsR_Q <= ExCs;
  177.             ExRsR_Q <= ExRs;
  178.         end
  179. end
  180. always @(posedge ExRd or negedge SysRst)
  181. begin
  182.         if (!SysRst) begin
  183.             ExRdClk_Q = 1'b0;
  184.          end else begin
  185.             if  ((~ExCsR_Q) & ExRsR_Q) begin
  186.                 ExRdClk_Q <= ~ExRdClk_Q;
  187.             end
  188.         end
  189. end
  190. /******************************************
  191. --主時鐘打兩拍同步采用外部讀寫信號
  192. ******************************************/
  193.     always @(posedge Clk54 or negedge SysRst)
  194.     begin
  195.         if (!SysRst) begin
  196.             ExRdClk_Q1 = 1'b0;
  197.             ExRdClk_Q2 = 1'b0;
  198.             ExWrClk_Q1 = 1'b0;
  199.             ExWrClk_Q2 = 1'b0;
  200.            
  201.         end else begin
  202.             ExRdClk_Q1 <= ExRdClk_Q;
  203.             ExRdClk_Q2 <= ExRdClk_Q1;
  204.             ExWrClk_Q1 <= ExWrClk_Q;
  205.             ExWrClk_Q2 <= ExWrClk_Q1;
  206.         end
  207.     end

  208.     always @(posedge Clk54 or negedge SysRst)
  209.     begin
  210.         if (!SysRst) begin
  211.             InBusOut_Q  = 16'd0;
  212.             ExBusOut_Q  = 16'd0;
  213.             XRegValue_Q = 9'd0;
  214.             YRegValue_Q = 9'd0;
  215.             SysCmdValue_Q = 16'b0000000000110000;
  216.             WrEn_Q = 1'b0;
  217.             RamWeReg_Q = 1'b1;
  218.             RamTriState_Q = 1'b1;
  219.             RGB_Q = 16'd0;
  220.             FillCount_Q = 3'd7;
  221.             BRGBValue_Q  = 16'd0;
  222.             FRGBValue_Q  = 16'd0;
  223.             RamAddrBus_Q = 18'd0;
  224.             RamCsReg_Q = 1'b1;
  225.             PrePareData = 16'd0;
  226.         end else begin
  227.             if (ExRdClk_Q2 ^ ExRdClk_Q1) begin
  228.                 IncAddr = 1'b1;
  229.             end else begin
  230.                 IncAddr = 1'b0;
  231.             end
  232.             if (ExWrClk_Q2 ^ ExWrClk_Q1) begin
  233.                 AskWr = 1'b1;
  234.             end else begin
  235.                 AskWr = WrEn_Q;
  236.             end
  237.             XRegOver = (XRegValue_Q == 9'b111011111)?1'b1:1'b0;
  238.             YRegOver = (YRegValue_Q == 9'b100001111)?1'b1:1'b0;
  239.             PrePareData = WriteRgb_Q;
  240.             IndexData[7:0] = WriteRgb_Q[7:0];
  241.             InRamWe = 1'b1;
  242.             if (!ClkCnt_Q3[0]) begin
  243.                 if (AskWr) begin
  244.                     case (RegAddr_Q)
  245.                     3'b000:begin
  246.                             XRegValue_Q <= PrePareData[8:0];
  247.                             WrEn_Q <= 1'b0;
  248.                         end
  249.                     3'b001:begin
  250.                             YRegValue_Q <= PrePareData[8:0];
  251.                             WrEn_Q <= 1'b0;
  252.                         end
  253.                                                   3'b010:begin
  254.                             InRamWe = 1'b0;
  255.                             IncAddr = 1'b1;
  256.                             WrEn_Q <= 1'b0;
  257.                         end
  258.                     3'b100:begin
  259.                             FRGBValue_Q <= PrePareData;
  260.                             WrEn_Q <= 1'b0;
  261.                         end
  262.                     3'b101:begin
  263.                             BRGBValue_Q <= PrePareData;
  264.                             WrEn_Q <= 1'b0;
  265.                         end
  266.                     3'b110:begin
  267.                             SysCmdValue_Q <= PrePareData;
  268.                             WrEn_Q <= 1'b0;
  269.                         end
  270.                     
  271.                     3'b011:begin
  272.                             if (!IndexData[FillCount_Q]) begin
  273.                                 PrePareData = BRGBValue_Q;
  274.                                 InRamWe = SysCmdValue_Q[12];
  275.                             end else begin
  276.                                 PrePareData = FRGBValue_Q;
  277.                                 InRamWe = 1'b0;
  278.                             end
  279.                             IncAddr = 1'b1;
  280.                             WrEn_Q <= (FillCount_Q[0] | FillCount_Q[1] | FillCount_Q[2]);
  281.                             FillCount_Q <= FillCount_Q + 3'd7;
  282.                         end
  283.                     3'b111:begin
  284.                             if (FillHead_Q) begin
  285.                                 IncAddr = 1'b1;
  286.                                 InRamWe = 1'b0;
  287.                                 if (YRegOver & XRegOver) begin
  288.                                     WrEn_Q <= 1'b0;
  289.                                 end
  290.                             end else begin
  291.                                 WrEn_Q <= 1'b1;
  292.                             end
  293.                         end
  294.                     endcase
  295.                 end
  296.                 RGB_Q <= (SysCmdValue_Q[3])?16'd0:RamDataBus;
  297.                 SramAddr[12:4] = YRegValue_Q[8:0];
  298.                 SramAddr[3:0] = XRegValue_Q[8:5];
  299.                 RamAddrBus_Q[4:0] <= XRegValue_Q[4:0];
  300.                 RamAddrBus_Q[17] <= SysCmdValue_Q[7];
  301.             end else begin
  302.                 if (AskWr) begin
  303.                     WrEn_Q <= 1'b1;
  304.                 end
  305.                 ExBusOut_Q <= RamDataBus;
  306.                 SramAddr[12:4] = HsCount_Q[8:0];
  307.                 SramAddr[3:0] = DotCount_Q[8:5];
  308.                 RamAddrBus_Q[4:0] <= DotCount_Q[4:0];
  309.                 RamAddrBus_Q[17] <= SelDispRam_Q;
  310.             end
  311.             InBusOut_Q <= PrePareData;
  312.             RamTriState_Q <= InRamWe;
  313.             RamWeReg_Q <= InRamWe;
  314.             SramAddr[12:0] = SramAddr[12:0] - {4'd0,SramAddr[12:4]};
  315.             RamAddrBus_Q[16:5] <= SramAddr[11:0];
  316.      /*根據配置字調整XY*/
  317.             if (IncAddr) begin
  318.                 case (SysCmdValue_Q[6:4])
  319.                 3'b001:begin
  320.                         if (XRegOver) begin
  321.                             XRegValue_Q <= 9'd0;
  322.                         end else begin
  323.                             XRegValue_Q <= XRegValue_Q + 9'd1;
  324.                         end
  325.                     end
  326.                 3'b011:begin
  327.                         if (XRegOver) begin
  328.                             XRegValue_Q <= 9'd0;
  329.                             if (YRegOver) begin
  330.                                 YRegValue_Q <= 9'd0;
  331.                             end else begin
  332.                                 YRegValue_Q <= YRegValue_Q + 9'd1;
  333.                             end
  334.                         end else begin
  335.                             XRegValue_Q <= XRegValue_Q + 9'd1;
  336.                         end
  337.                     end
  338.                 3'b110:begin
  339.                         if (YRegOver) begin
  340.                             YRegValue_Q <= 9'd0;
  341.                         end else begin
  342.                             YRegValue_Q <= YRegValue_Q + 9'd1;
  343.                         end
  344.                      end
  345.                 3'b111:begin
  346.                         if (YRegOver) begin
  347.                             YRegValue_Q <= 9'd0;
  348.                             if (XRegOver) begin
  349.                                 XRegValue_Q <= 9'd0;
  350.                             end else begin
  351.                                 XRegValue_Q <= XRegValue_Q + 9'd1;
  352.                             end
  353.                         end else begin
  354.                             YRegValue_Q <= YRegValue_Q + 9'd1;
  355.                         end
  356.                     end
  357.                 default:begin
  358.                     end
  359.                 endcase
  360.             end
  361.             RamCsReg_Q <= SysCmdValue_Q[3];
  362.         end
  363.     end
  364.     /*--產生TFT行同步*/
  365.     always @(posedge Clk54 or negedge SysRst)
  366.     begin
  367.         if (!SysRst) begin
  368.             DotCount_Q = 9'd0;
  369.             DsState_Q = 2'd0;
  370.             DsMark = 1'b0;
  371.         end else begin
  372.             if (DotClkEn_Q) begin
  373.                 case (DsState_Q)
  374.                 2'd0:/*=>--41 相當于<= 40*/
  375.                     DsMark = (DotCount_Q[5] & DotCount_Q[3]);
  376.                 2'd1:/*when "01" =>--2 相當于<= 1*/
  377.                     DsMark = DotCount_Q[0];
  378.                 2'd2:/*=>--480 相當于<= 479*/
  379.                     DsMark = (DotCount_Q[0] & DotCount_Q[1] & DotCount_Q[2] & DotCount_Q[3] &
  380.                               DotCount_Q[4] & DotCount_Q[6] & DotCount_Q[7] & DotCount_Q[8]);
  381.                 2'd3:/*--2 相當于<= 1*/
  382.                     DsMark = DotCount_Q[0];
  383.                 endcase
  384.                 DsState_Q <= DsState_Q + {1'b0,DsMark};
  385.                 DotCount_Q <= (DsMark)?9'd0:(DotCount_Q + 9'd1);
  386.             end
  387.         end
  388.     end
  389. /*--產生TFT幀同步信號*/
  390.     always @(posedge Clk54 or negedge SysRst)
  391.     begin
  392.         if (!SysRst) begin
  393.             DE_Q  = 1'b0;
  394.         end else begin
  395.             DE_Q <= (SysCmdValue_Q[3])?1'b0:(HsState_Q[1] & (~HsState_Q[0]) & DsState_Q[1] & (~DsState_Q[0]));
  396.         end
  397.     end
  398. /*--產生幀同步時鐘*/
  399.     always @(posedge Clk54 or negedge SysRst)
  400.     begin
  401.         if (!SysRst) begin
  402.             HsCount_Q = 9'd0;
  403.             HsState_Q = 2'd0;
  404.             FillHead_Q = 1'b0;
  405.             SelDispRam_Q = 1'b0;
  406.             LedCount_Q = 5'd0;
  407.         end else begin
  408. ……………………

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

所有資料51hei提供下載:
tft43.rar (9.52 MB, 下載次數: 112)
stm32程序.7z (559.44 KB, 下載次數: 87)



評分

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

查看全部評分

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

使用道具 舉報

沙發
ID:199411 發表于 2019-9-6 11:47 | 只看該作者
謝謝分享
回復

使用道具 舉報

板凳
ID:199411 發表于 2019-9-6 13:51 | 只看該作者
正好需要,放謝分享
回復

使用道具 舉報

地板
ID:265614 發表于 2019-10-10 15:05 | 只看該作者
SramAddr[12:4] = YRegValue_Q[8:0];
                SramAddr[3:0] = XRegValue_Q[8:5];
                RamAddrBus_Q[4:0] <= XRegValue_Q[4:0];
                RamAddrBus_Q[17] <= SysCmdValue_Q[7];
版主能解釋一下這段代碼嗎
回復

使用道具 舉報

5#
ID:265614 發表于 2019-10-23 14:42 | 只看該作者
這個板子哪里有賣
回復

使用道具 舉報

6#
ID:97678 發表于 2019-12-8 14:08 | 只看該作者
這個板子有的賣嗎? 想買一個看看,找了很久才發現
回復

使用道具 舉報

7#
ID:483587 發表于 2020-1-2 17:01 | 只看該作者
這個板子有的賣嗎? 想買一個看看,找了很久才發現
回復

使用道具 舉報

8#
ID:726712 發表于 2020-4-11 08:24 來自觸屏版 | 只看該作者
寫的不錯,謝謝樓主開源
回復

使用道具 舉報

9#
ID:242064 發表于 2020-5-28 11:50 來自觸屏版 | 只看該作者
我也想買一個?板子有買的嗎?
回復

使用道具 舉報

10#
ID:242064 發表于 2020-5-29 23:31 來自觸屏版 | 只看該作者
ExOutM = (ExRs)?ExBusOut_Q:({15'd0,WrEn_Q}
回復

使用道具 舉報

11#
ID:242064 發表于 2020-5-29 23:33 來自觸屏版 | 只看該作者
是什么意思?
回復

使用道具 舉報

12#
ID:242064 發表于 2020-5-29 23:43 來自觸屏版 | 只看該作者
ExOutM = (ExRs)?ExBusOut_Q:({15'd0,WrEn_Q});
回復

使用道具 舉報

13#
無效樓層,該帖已經被刪除
14#
ID:242064 發表于 2020-6-11 23:42 來自觸屏版 | 只看該作者
是拼接
回復

使用道具 舉報

15#
無效樓層,該帖已經被刪除
16#
ID:77220 發表于 2020-8-17 05:10 | 只看該作者
thanks very good
回復

使用道具 舉報

17#
ID:83553 發表于 2020-9-4 08:27 | 只看該作者
板子有買的嗎?
回復

使用道具 舉報

18#
ID:575109 發表于 2020-10-5 21:58 來自觸屏版 | 只看該作者
剛學一個月,感覺這代碼問題挺多, 時序邏輯語句塊中間使用了阻塞賦值,這樣不對吧?!  另外這些塊內部描述的語句過多,估計很難綜合出正確的結果
回復

使用道具 舉報

19#
無效樓層,該帖已經被刪除
20#
ID:434018 發表于 2022-7-17 10:19 | 只看該作者
看看!
寫的不錯!
回復

使用道具 舉報

21#
ID:97678 發表于 2022-9-14 12:13 | 只看該作者
好東西!值得收藏
回復

使用道具 舉報

22#
ID:97678 發表于 2022-9-14 12:16 | 只看該作者
樓主,能夠分享一下原理圖和PCB嗎?
回復

使用道具 舉報

23#
無效樓層,該帖已經被刪除
您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
无遮挡的视频在线观看| 99在线精品免费视频九九视| 97影院在线观看| 婷婷五月综合久久中文字幕| 色欲av无码一区二区三区| 中日韩在线视频| 国产精品老女人视频| 欧美少妇性性性| 久久人人爽人人爽| 亚洲人体偷拍| 激情不卡一区二区三区视频在线| 成年午夜在线| 成人免费视频77777| 人妻va精品va欧美va| 国产香蕉在线视频| 国产视频久久久久久| 精品国产免费av| 欧美一进一出视频| 日本高清视频精品| 在线性视频日韩欧美| 欧美日韩aaaaaa| 亚洲综合色婷婷| 91在线国内视频| 日本午夜精品视频在线观看| 四季av一区二区凹凸精品| 久久国产精品美女| 激情视频网站在线播放色| 桃乃木香奈av在线| 好看的黄色网址| 亚洲国产精品区| 99在线小视频| 国产高潮久久久| 中文字幕电影av| 亚洲第一香蕉网| 欧美色图校园春色| wwwwww.色| 国产乱人伦精品一区二区三区| 国产精品久久精品视| 国产成人久久久| 色综合久综合久久综合久鬼88| 日韩精品亚洲元码| 日韩欧美亚洲国产另类| 欧美这里有精品| 天天综合日日夜夜精品| 国产午夜精品久久久久久免费视| 高清国产午夜精品久久久久久| 视频在线在亚洲| 国产一区白浆| 99精品福利视频| 欧美日韩国产成人精品| 国产精品成久久久久| 国产精品三级| 九色成人国产蝌蚪91| 久久久久97| 欧美尿孔扩张虐视频| 亚洲日本视频在线| 精品成人18| 警花av一区二区三区| 97久久精品一区二区三区的观看方式| 在线手机中文字幕| 中文字幕高清在线播放| 国产自产自拍视频在线观看| 激情影院在线| 第一av在线| 无遮挡爽大片在线观看视频 | 老熟妇一区二区三区| 国产精品久久久精品四季影院| 少妇特黄一区二区三区| 日本japanese极品少妇| 国产精品麻豆入口| 国产制服丝袜在线| 中文字幕在线播放视频| 37p粉嫩大胆色噜噜噜| 中文字幕av观看| 久久婷婷五月综合| 成人一级黄色大片| 日本三级网站在线观看| 丁香六月婷婷综合| 国产精品乱码一区二区| 国产草草影院ccyycom| 高h震动喷水双性1v1| 中国女人内谢69视频| 亚州欧美色图| 五月天黄色网址| 18激情网站| 日韩男人天堂| jizz在线观看视频| 国产伦理精品| 成年永久一区二区三区免费视频| 国产精品一区三区在线观看| 久久精品66| 欧美福利网址| 久久久久国产精品一区三寸 | 麻豆精品久久久久久久99蜜桃| 草莓视频18免费观看| av网站免费播放| 日本精品www| 人人干人人视频| 苍井空张开腿实干12次| 美女爆乳18禁www久久久久久 | 意大利激情丛林无删减版dvd| 欧美成人明星100排名| 国产精品视频二区三区| 青草影视电视剧免费播放在线观看| 国产乱码精品一区二三赶尸艳谈| 99精品女人在线观看免费视频| 欧美电影在线观看免费| 女同性一区二区三区人了人一| 国产亚洲亚洲| 91亚洲精品久久久蜜桃网站| 亚洲人成网站精品片在线观看| 日本久久电影网| 日韩美女av在线| 久久久综合免费视频| 国产日本欧美一区| 亚洲国产一区二区在线 | 亚洲第一页在线播放| 尤物视频网址| 992tv在线| 国产天堂在线播放视频| 久久麻豆视频| 成人aaaa| 久久99深爱久久99精品| 久久久亚洲精品石原莉奈| 亚洲国产aⅴ天堂久久| 欧美成人vr18sexvr| 久久99热这里只有精品国产| 亚洲在线免费观看| 丰满少妇久久久| 国产精品300页| 无码人妻丰满熟妇精品| av中文字幕网| 天天噜天天色| 黄色软件视频在线观看| 国产一区二区区别| 经典三级在线一区| 亚洲主播在线观看| 亚洲精品乱码久久久久久按摩观| 欧美在线欧美在线| 日韩精品欧美专区| 国产5g成人5g天天爽| 久久久无码一区二区三区| 亚洲成a人片77777精品| 亚州av影院| www.超碰在线| 久久裸体网站| 成人av一区二区三区| 色婷婷av久久久久久久| 日韩在线播放av| 国产精品xxx在线观看www| av免费观看网| 中文字幕另类日韩欧美亚洲嫩草| 天天干天天爽天天操| 日韩加勒比系列| 亚洲精品国产嫩草在线观看| 欧美视频一区| 色综合久久网| 国产精品系列在线播放| 日韩欧美有码在线| 欧美日本高清一区| 久久亚洲综合网| 亚欧美一区二区三区| av图片在线观看| 日本三级视频网站| www在线观看播放免费视频日本| 欧美韩一区二区| 国产精品亚洲一区二区三区在线| 欧美日韩在线电影| 欧洲成人免费视频| 日本一本中文字幕| 国产探花在线免费观看| 明星国产一级毛片范冰冰视频| 成人高清免费在线播放| 麻豆精品少妇| 99精品视频在线观看| 精品福利二区三区| 国产精品日韩高清| 秘密基地免费观看完整版中文 | 小泽玛利亚一区二区三区视频| 色一色在线观看视频网站| 色爱综合区网| 91精品天堂福利在线观看| 中文文精品字幕一区二区| 亚洲免费一在线| 久久av一区二区三区亚洲| 久久精品女同亚洲女同13| 午夜久久久久久久久久| 最猛黑人系列在线播放| 精品欧美午夜寂寞影院| 成人av在线观| 亚洲欧美在线磁力| 一区二区免费电影| 欧美日韩大片在线观看| 日本羞羞视频| 麻豆久久久久| 国产99精品在线观看| 亚洲国产精品热久久| 久久av二区| 国产精品久久久久久久精| 蜜桃传媒入口| 国产精品国产三级在线观看| 国产成人av影院| 亚洲欧洲在线播放| 中日韩在线视频| 51国产偷自视频区视频| 午夜3点看的视频| 亚洲综合小说图片| 中文字幕中文字幕在线一区| 欧美成年人视频网站欧美| 日韩精品一区在线视频| 最新中文字幕在线观看视频| 最近中文字幕在线中文视频 | 欧美日韩免费观看一区二区三区| 91在线视频一区| 少妇光屁股影院| free性欧美69巨大| 综合久久伊人| 久久精品视频一区二区三区| 久久国产精品久久精品| 日韩有码免费视频| 日本一区二区三区网站| 亚洲国产视频在线观看| 99久久综合国产精品二区| 国产成人免费视频网站高清观看视频| 亚洲美女av网站| 激情成人开心网| 国产又粗又猛又爽| 免费a级在线播放| 视频一区欧美日韩| 日韩av有码在线| 日韩a∨精品日韩在线观看| 亚洲一卡二卡在线| 少妇激情av一区二区| 欧美阿v一级看视频| 欧美日韩精品专区| 亚洲电影免费| 日本中文字幕在线观看视频| 日韩精品毛片| 久久99精品国产91久久来源| 亚洲黄色有码视频| 国产免费一区二区视频| 日本高清不卡码| 色哟哟免费在线观看 | 91电影在线| 青娱乐极品盛宴一区二区| 激情都市一区二区| 日韩小视频在线| 想看黄色一级片| 国产性色视频| 国产成人一二| 五月综合激情婷婷六月色窝| 亚洲精品日韩激情在线电影| 农村妇女精品一区二区| 最近2018年手机中文在线| 好看的日韩av电影| 亚洲精品电影网| www日韩视频| 国产乱在线观看完整版视频| 大伊香蕉精品在线品播放| 欧美日韩在线视频首页| 亚洲美女搞黄| 天天操天天干天天| 国产精品任我爽爆在线播放| 91久久久免费一区二区| a级网站在线观看| 三级小视频在线观看| 99精品视频在线免费播放| 欧美日韩国产中文字幕| 国产精品h视频| 被男人吃奶添下面好舒服动态图| 伊人久久大香线蕉av超碰| 欧美在线视频全部完| 蜜臀av色欲a片无码精品一区| 女人18毛片九区毛片在线| 第一区第二区在线| 91精品国产综合久久福利| av网站在线观看不卡| 国产偷窥女洗浴在线观看亚洲| 少妇精品久久久一区二区三区 | 日本免费专区| 日本不卡123| 国内自拍欧美激情| 精品人妻伦九区久久aaa片| 午夜在线小视频| 久久综合五月天婷婷伊人| 91精品免费视频| 中文字幕一区二区三区四区免费看 | 日本黄区免费视频观看| 国精产品999国精产品官网| 亚洲成人直播| 日韩在线播放视频| 日本美女bbw| 国产三级在线播放| 国产精品色在线| 日韩成人在线资源| 色悠久久久久综合网小说| 久久国产电影| 精品国产欧美一区二区五十路| 波多野结衣在线免费观看| 狠狠干婷婷色| 国产不卡免费视频| 国产乱码精品一区二区三区中文| 国产精品丝袜黑色高跟鞋| h视频久久久| 日韩福利在线播放| 性欧美13一14内谢| 国产精品va在线观看视色| 亚洲欧美经典视频| 97干在线视频| 97高清视频| 波波电影院一区二区三区| 鲁鲁狠狠狠7777一区二区| 岛国中文字幕| 精品成人国产| 国产精品av在线| 国产口爆吞精一区二区| 亚洲精品国产setv| 中文字幕无线精品亚洲乱码一区| 国产精品酒店视频| 日本不卡影院| 欧美性xxxxxxx| 午夜视频在线网站| 亚洲女人天堂a在线播放| 久久精品青草| 26uuu国产精品视频| 国产又爽又黄免费软件| 成人系列视频| 羞羞色国产精品| 亚洲中文一区二区三区| 在线日本制服中文欧美| 久久夜精品香蕉| 中文字幕日韩免费| 九九久久成人| 韩国美女主播一区| 国产女人爽到高潮a毛片| 欧美老女人另类| 欧美—级a级欧美特级ar全黄| 特黄视频免费看| 欧美禁忌电影| 日本电影亚洲天堂| 亚洲aⅴ乱码精品成人区| 在线成人黄色| 亚洲最大福利网| 久久精品成人欧美大片免费| 日韩国产在线一| 精品免费二区三区三区高中清不卡| 欧美三级超在线视频| 美国欧美日韩国产在线播放| 国产主播欧美精品| 免费在线观看国产黄| 久久99精品国产麻豆不卡| 日韩av在线资源| 天天鲁一鲁摸一摸爽一爽| 自拍偷拍亚洲图片| 久久av.com| 国产永久免费视频| 亚洲国产精品一区| 国产精品一区二区三区免费 | 99热在线观看免费精品| 免费日韩一区二区三区| 欧美激情视频在线免费观看 欧美视频免费一 | 国产精品午夜一区二区三区| 欧美黄色片在线观看| 亚洲经典一区二区三区| 国产欧美日本| 欧美日产一区二区三区在线观看| 不卡的av电影| 日日鲁鲁鲁夜夜爽爽狠狠视频97| 亚洲免费视频一区二区三区| 7777精品伊人久久久大香线蕉完整版 | 看黄色一级大片| 日韩成人激情| 国产噜噜噜噜噜久久久久久久久| 最新版天堂资源中文官网| 国产自产2019最新不卡| 91午夜在线观看| 高清免费电影在线观看| 欧美成人aa大片| 成人免费视频国产免费| 国产日韩欧美三区| 在线国产99| 春暖花开成人亚洲区| 欧美久久久影院| 日韩欧美一级视频| 亚洲国产精品一区制服丝袜| 亚洲精美视频| 福利在线观看| 亚洲精品福利在线| 国产精品久久久午夜夜伦鲁鲁| 日韩国产成人精品| 久久国产精品免费观看| 欧美69xxxx| 精品亚洲aⅴ在线观看| 国产偷拍一区二区| 国产一区高清在线| 天堂网在线免费观看| 亚洲综合视频| 国产精品久久久久久一区二区| jizz视频| 在线精品视频小说1|