日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【串口发送中断】基于赛元单片机使用三合一串口的UART功能

發布時間:2023/12/31 编程问答 49 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【串口发送中断】基于赛元单片机使用三合一串口的UART功能 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

  • 前言
  • 中斷的方式發送數據
  • 代碼示例
    • 準備工作
    • 宏定義及全局變量
    • 初始化
    • 中斷服務函數
    • ==發送邏輯函數==
    • 啟動發送函數
  • 總結

前言

關于賽元單片機觸摸的那篇文章確實幫助到過一些網友,后來有網友私信說賽元單片機的三合一串口功能遇到了問題,考慮到我之前的項目中用到過這個串口,也調通了,便想寫下這篇文章,目的是幫助遇到問題的網友,以及記錄學習的過程。
所用單片機型號:SC92F8463B(同系列的都可以參考本篇文章),主頻:12Mhz
之前用過STM32F103C8T6的單片機,在那次的使用經歷中,第一次了解并學習到了串口的使用方法,當時的項目中,參考的是原子哥的示例代碼進行串口的收發,后面測試的過程中,發現串口功能會影響到其它的功能。在老工程師的指導下,才了解到,原子哥的串口發送方式是不太適用于工作中的項目的,原因也很簡單,以阻塞的方式發送數據幀,再說直白一點,通過while()查詢標志位以此完成數據的發送。
因此,我便想先介紹一種不一樣的數據發送方式!

中斷的方式發送數據

使用串口時,經常會用到以中斷的方式接受數據,但很少使用以中斷的方式發送數據,網上相關的資料也很少。但是這是一種非常好的方式,特別是在實際的工作中,會更加深刻的體會到這一點。而且不論是51單片機還是基于ARM的單片機,我所使用過的單片機都能以中斷的方式發送數據。

先來看看SC92F846XB的規格書

PS:這里我截的是UART0的相關寄存器,而不是三合一串口的,因為三合一串口沒有解釋的這么清楚,但是我在實際使用時,發現三合一串口和UART0一樣,都沒什么區別,一樣有發送中斷的功能,只是寄存器不一樣而已。

先看第一幅圖中紅框里的內容:發送和接收完成時可產生中斷RI/TI,該中斷標志需要軟件清除。
接收就不說了,用過串口的都清楚這個方式,主要說發送,我來大致描述一下以中斷發送數據這個過程:

#mermaid-svg-swZCRECQUNKe7PXI .label{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);fill:#333;color:#333}#mermaid-svg-swZCRECQUNKe7PXI .label text{fill:#333}#mermaid-svg-swZCRECQUNKe7PXI .node rect,#mermaid-svg-swZCRECQUNKe7PXI .node circle,#mermaid-svg-swZCRECQUNKe7PXI .node ellipse,#mermaid-svg-swZCRECQUNKe7PXI .node polygon,#mermaid-svg-swZCRECQUNKe7PXI .node path{fill:#ECECFF;stroke:#9370db;stroke-width:1px}#mermaid-svg-swZCRECQUNKe7PXI .node .label{text-align:center;fill:#333}#mermaid-svg-swZCRECQUNKe7PXI .node.clickable{cursor:pointer}#mermaid-svg-swZCRECQUNKe7PXI .arrowheadPath{fill:#333}#mermaid-svg-swZCRECQUNKe7PXI .edgePath .path{stroke:#333;stroke-width:1.5px}#mermaid-svg-swZCRECQUNKe7PXI .flowchart-link{stroke:#333;fill:none}#mermaid-svg-swZCRECQUNKe7PXI .edgeLabel{background-color:#e8e8e8;text-align:center}#mermaid-svg-swZCRECQUNKe7PXI .edgeLabel rect{opacity:0.9}#mermaid-svg-swZCRECQUNKe7PXI .edgeLabel span{color:#333}#mermaid-svg-swZCRECQUNKe7PXI .cluster rect{fill:#ffffde;stroke:#aa3;stroke-width:1px}#mermaid-svg-swZCRECQUNKe7PXI .cluster text{fill:#333}#mermaid-svg-swZCRECQUNKe7PXI div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:12px;background:#ffffde;border:1px solid #aa3;border-radius:2px;pointer-events:none;z-index:100}#mermaid-svg-swZCRECQUNKe7PXI .actor{stroke:#ccf;fill:#ECECFF}#mermaid-svg-swZCRECQUNKe7PXI text.actor>tspan{fill:#000;stroke:none}#mermaid-svg-swZCRECQUNKe7PXI .actor-line{stroke:grey}#mermaid-svg-swZCRECQUNKe7PXI .messageLine0{stroke-width:1.5;stroke-dasharray:none;stroke:#333}#mermaid-svg-swZCRECQUNKe7PXI .messageLine1{stroke-width:1.5;stroke-dasharray:2, 2;stroke:#333}#mermaid-svg-swZCRECQUNKe7PXI #arrowhead path{fill:#333;stroke:#333}#mermaid-svg-swZCRECQUNKe7PXI .sequenceNumber{fill:#fff}#mermaid-svg-swZCRECQUNKe7PXI #sequencenumber{fill:#333}#mermaid-svg-swZCRECQUNKe7PXI #crosshead path{fill:#333;stroke:#333}#mermaid-svg-swZCRECQUNKe7PXI .messageText{fill:#333;stroke:#333}#mermaid-svg-swZCRECQUNKe7PXI .labelBox{stroke:#ccf;fill:#ECECFF}#mermaid-svg-swZCRECQUNKe7PXI .labelText,#mermaid-svg-swZCRECQUNKe7PXI .labelText>tspan{fill:#000;stroke:none}#mermaid-svg-swZCRECQUNKe7PXI .loopText,#mermaid-svg-swZCRECQUNKe7PXI .loopText>tspan{fill:#000;stroke:none}#mermaid-svg-swZCRECQUNKe7PXI .loopLine{stroke-width:2px;stroke-dasharray:2, 2;stroke:#ccf;fill:#ccf}#mermaid-svg-swZCRECQUNKe7PXI .note{stroke:#aa3;fill:#fff5ad}#mermaid-svg-swZCRECQUNKe7PXI .noteText,#mermaid-svg-swZCRECQUNKe7PXI .noteText>tspan{fill:#000;stroke:none}#mermaid-svg-swZCRECQUNKe7PXI .activation0{fill:#f4f4f4;stroke:#666}#mermaid-svg-swZCRECQUNKe7PXI .activation1{fill:#f4f4f4;stroke:#666}#mermaid-svg-swZCRECQUNKe7PXI .activation2{fill:#f4f4f4;stroke:#666}#mermaid-svg-swZCRECQUNKe7PXI .mermaid-main-font{font-family:"trebuchet ms", verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-swZCRECQUNKe7PXI .section{stroke:none;opacity:0.2}#mermaid-svg-swZCRECQUNKe7PXI .section0{fill:rgba(102,102,255,0.49)}#mermaid-svg-swZCRECQUNKe7PXI .section2{fill:#fff400}#mermaid-svg-swZCRECQUNKe7PXI .section1,#mermaid-svg-swZCRECQUNKe7PXI .section3{fill:#fff;opacity:0.2}#mermaid-svg-swZCRECQUNKe7PXI .sectionTitle0{fill:#333}#mermaid-svg-swZCRECQUNKe7PXI .sectionTitle1{fill:#333}#mermaid-svg-swZCRECQUNKe7PXI .sectionTitle2{fill:#333}#mermaid-svg-swZCRECQUNKe7PXI .sectionTitle3{fill:#333}#mermaid-svg-swZCRECQUNKe7PXI .sectionTitle{text-anchor:start;font-size:11px;text-height:14px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-swZCRECQUNKe7PXI .grid .tick{stroke:#d3d3d3;opacity:0.8;shape-rendering:crispEdges}#mermaid-svg-swZCRECQUNKe7PXI .grid .tick text{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-swZCRECQUNKe7PXI .grid path{stroke-width:0}#mermaid-svg-swZCRECQUNKe7PXI .today{fill:none;stroke:red;stroke-width:2px}#mermaid-svg-swZCRECQUNKe7PXI .task{stroke-width:2}#mermaid-svg-swZCRECQUNKe7PXI .taskText{text-anchor:middle;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-swZCRECQUNKe7PXI .taskText:not([font-size]){font-size:11px}#mermaid-svg-swZCRECQUNKe7PXI .taskTextOutsideRight{fill:#000;text-anchor:start;font-size:11px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-swZCRECQUNKe7PXI .taskTextOutsideLeft{fill:#000;text-anchor:end;font-size:11px}#mermaid-svg-swZCRECQUNKe7PXI .task.clickable{cursor:pointer}#mermaid-svg-swZCRECQUNKe7PXI .taskText.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-swZCRECQUNKe7PXI .taskTextOutsideLeft.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-swZCRECQUNKe7PXI .taskTextOutsideRight.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-swZCRECQUNKe7PXI .taskText0,#mermaid-svg-swZCRECQUNKe7PXI .taskText1,#mermaid-svg-swZCRECQUNKe7PXI .taskText2,#mermaid-svg-swZCRECQUNKe7PXI .taskText3{fill:#fff}#mermaid-svg-swZCRECQUNKe7PXI .task0,#mermaid-svg-swZCRECQUNKe7PXI .task1,#mermaid-svg-swZCRECQUNKe7PXI .task2,#mermaid-svg-swZCRECQUNKe7PXI .task3{fill:#8a90dd;stroke:#534fbc}#mermaid-svg-swZCRECQUNKe7PXI .taskTextOutside0,#mermaid-svg-swZCRECQUNKe7PXI .taskTextOutside2{fill:#000}#mermaid-svg-swZCRECQUNKe7PXI .taskTextOutside1,#mermaid-svg-swZCRECQUNKe7PXI .taskTextOutside3{fill:#000}#mermaid-svg-swZCRECQUNKe7PXI .active0,#mermaid-svg-swZCRECQUNKe7PXI .active1,#mermaid-svg-swZCRECQUNKe7PXI .active2,#mermaid-svg-swZCRECQUNKe7PXI .active3{fill:#bfc7ff;stroke:#534fbc}#mermaid-svg-swZCRECQUNKe7PXI .activeText0,#mermaid-svg-swZCRECQUNKe7PXI .activeText1,#mermaid-svg-swZCRECQUNKe7PXI .activeText2,#mermaid-svg-swZCRECQUNKe7PXI .activeText3{fill:#000 !important}#mermaid-svg-swZCRECQUNKe7PXI .done0,#mermaid-svg-swZCRECQUNKe7PXI .done1,#mermaid-svg-swZCRECQUNKe7PXI .done2,#mermaid-svg-swZCRECQUNKe7PXI .done3{stroke:grey;fill:#d3d3d3;stroke-width:2}#mermaid-svg-swZCRECQUNKe7PXI .doneText0,#mermaid-svg-swZCRECQUNKe7PXI .doneText1,#mermaid-svg-swZCRECQUNKe7PXI .doneText2,#mermaid-svg-swZCRECQUNKe7PXI .doneText3{fill:#000 !important}#mermaid-svg-swZCRECQUNKe7PXI .crit0,#mermaid-svg-swZCRECQUNKe7PXI .crit1,#mermaid-svg-swZCRECQUNKe7PXI .crit2,#mermaid-svg-swZCRECQUNKe7PXI .crit3{stroke:#f88;fill:red;stroke-width:2}#mermaid-svg-swZCRECQUNKe7PXI .activeCrit0,#mermaid-svg-swZCRECQUNKe7PXI .activeCrit1,#mermaid-svg-swZCRECQUNKe7PXI .activeCrit2,#mermaid-svg-swZCRECQUNKe7PXI .activeCrit3{stroke:#f88;fill:#bfc7ff;stroke-width:2}#mermaid-svg-swZCRECQUNKe7PXI .doneCrit0,#mermaid-svg-swZCRECQUNKe7PXI .doneCrit1,#mermaid-svg-swZCRECQUNKe7PXI .doneCrit2,#mermaid-svg-swZCRECQUNKe7PXI .doneCrit3{stroke:#f88;fill:#d3d3d3;stroke-width:2;cursor:pointer;shape-rendering:crispEdges}#mermaid-svg-swZCRECQUNKe7PXI .milestone{transform:rotate(45deg) scale(0.8, 0.8)}#mermaid-svg-swZCRECQUNKe7PXI .milestoneText{font-style:italic}#mermaid-svg-swZCRECQUNKe7PXI .doneCritText0,#mermaid-svg-swZCRECQUNKe7PXI .doneCritText1,#mermaid-svg-swZCRECQUNKe7PXI .doneCritText2,#mermaid-svg-swZCRECQUNKe7PXI .doneCritText3{fill:#000 !important}#mermaid-svg-swZCRECQUNKe7PXI .activeCritText0,#mermaid-svg-swZCRECQUNKe7PXI .activeCritText1,#mermaid-svg-swZCRECQUNKe7PXI .activeCritText2,#mermaid-svg-swZCRECQUNKe7PXI .activeCritText3{fill:#000 !important}#mermaid-svg-swZCRECQUNKe7PXI .titleText{text-anchor:middle;font-size:18px;fill:#000;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-swZCRECQUNKe7PXI g.classGroup text{fill:#9370db;stroke:none;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:10px}#mermaid-svg-swZCRECQUNKe7PXI g.classGroup text .title{font-weight:bolder}#mermaid-svg-swZCRECQUNKe7PXI g.clickable{cursor:pointer}#mermaid-svg-swZCRECQUNKe7PXI g.classGroup rect{fill:#ECECFF;stroke:#9370db}#mermaid-svg-swZCRECQUNKe7PXI g.classGroup line{stroke:#9370db;stroke-width:1}#mermaid-svg-swZCRECQUNKe7PXI .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5}#mermaid-svg-swZCRECQUNKe7PXI .classLabel .label{fill:#9370db;font-size:10px}#mermaid-svg-swZCRECQUNKe7PXI .relation{stroke:#9370db;stroke-width:1;fill:none}#mermaid-svg-swZCRECQUNKe7PXI .dashed-line{stroke-dasharray:3}#mermaid-svg-swZCRECQUNKe7PXI #compositionStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-swZCRECQUNKe7PXI #compositionEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-swZCRECQUNKe7PXI #aggregationStart{fill:#ECECFF;stroke:#9370db;stroke-width:1}#mermaid-svg-swZCRECQUNKe7PXI #aggregationEnd{fill:#ECECFF;stroke:#9370db;stroke-width:1}#mermaid-svg-swZCRECQUNKe7PXI #dependencyStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-swZCRECQUNKe7PXI #dependencyEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-swZCRECQUNKe7PXI #extensionStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-swZCRECQUNKe7PXI #extensionEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-swZCRECQUNKe7PXI .commit-id,#mermaid-svg-swZCRECQUNKe7PXI .commit-msg,#mermaid-svg-swZCRECQUNKe7PXI .branch-label{fill:lightgrey;color:lightgrey;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-swZCRECQUNKe7PXI .pieTitleText{text-anchor:middle;font-size:25px;fill:#000;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-swZCRECQUNKe7PXI .slice{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-swZCRECQUNKe7PXI g.stateGroup text{fill:#9370db;stroke:none;font-size:10px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-swZCRECQUNKe7PXI g.stateGroup text{fill:#9370db;fill:#333;stroke:none;font-size:10px}#mermaid-svg-swZCRECQUNKe7PXI g.statediagram-cluster .cluster-label text{fill:#333}#mermaid-svg-swZCRECQUNKe7PXI g.stateGroup .state-title{font-weight:bolder;fill:#000}#mermaid-svg-swZCRECQUNKe7PXI g.stateGroup rect{fill:#ECECFF;stroke:#9370db}#mermaid-svg-swZCRECQUNKe7PXI g.stateGroup line{stroke:#9370db;stroke-width:1}#mermaid-svg-swZCRECQUNKe7PXI .transition{stroke:#9370db;stroke-width:1;fill:none}#mermaid-svg-swZCRECQUNKe7PXI .stateGroup .composit{fill:white;border-bottom:1px}#mermaid-svg-swZCRECQUNKe7PXI .stateGroup .alt-composit{fill:#e0e0e0;border-bottom:1px}#mermaid-svg-swZCRECQUNKe7PXI .state-note{stroke:#aa3;fill:#fff5ad}#mermaid-svg-swZCRECQUNKe7PXI .state-note text{fill:black;stroke:none;font-size:10px}#mermaid-svg-swZCRECQUNKe7PXI .stateLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.7}#mermaid-svg-swZCRECQUNKe7PXI .edgeLabel text{fill:#333}#mermaid-svg-swZCRECQUNKe7PXI .stateLabel text{fill:#000;font-size:10px;font-weight:bold;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-swZCRECQUNKe7PXI .node circle.state-start{fill:black;stroke:black}#mermaid-svg-swZCRECQUNKe7PXI .node circle.state-end{fill:black;stroke:white;stroke-width:1.5}#mermaid-svg-swZCRECQUNKe7PXI #statediagram-barbEnd{fill:#9370db}#mermaid-svg-swZCRECQUNKe7PXI .statediagram-cluster rect{fill:#ECECFF;stroke:#9370db;stroke-width:1px}#mermaid-svg-swZCRECQUNKe7PXI .statediagram-cluster rect.outer{rx:5px;ry:5px}#mermaid-svg-swZCRECQUNKe7PXI .statediagram-state .divider{stroke:#9370db}#mermaid-svg-swZCRECQUNKe7PXI .statediagram-state .title-state{rx:5px;ry:5px}#mermaid-svg-swZCRECQUNKe7PXI .statediagram-cluster.statediagram-cluster .inner{fill:white}#mermaid-svg-swZCRECQUNKe7PXI .statediagram-cluster.statediagram-cluster-alt .inner{fill:#e0e0e0}#mermaid-svg-swZCRECQUNKe7PXI .statediagram-cluster .inner{rx:0;ry:0}#mermaid-svg-swZCRECQUNKe7PXI .statediagram-state rect.basic{rx:5px;ry:5px}#mermaid-svg-swZCRECQUNKe7PXI .statediagram-state rect.divider{stroke-dasharray:10,10;fill:#efefef}#mermaid-svg-swZCRECQUNKe7PXI .note-edge{stroke-dasharray:5}#mermaid-svg-swZCRECQUNKe7PXI .statediagram-note rect{fill:#fff5ad;stroke:#aa3;stroke-width:1px;rx:0;ry:0}:root{--mermaid-font-family: '"trebuchet ms", verdana, arial';--mermaid-font-family: "Comic Sans MS", "Comic Sans", cursive}#mermaid-svg-swZCRECQUNKe7PXI .error-icon{fill:#522}#mermaid-svg-swZCRECQUNKe7PXI .error-text{fill:#522;stroke:#522}#mermaid-svg-swZCRECQUNKe7PXI .edge-thickness-normal{stroke-width:2px}#mermaid-svg-swZCRECQUNKe7PXI .edge-thickness-thick{stroke-width:3.5px}#mermaid-svg-swZCRECQUNKe7PXI .edge-pattern-solid{stroke-dasharray:0}#mermaid-svg-swZCRECQUNKe7PXI .edge-pattern-dashed{stroke-dasharray:3}#mermaid-svg-swZCRECQUNKe7PXI .edge-pattern-dotted{stroke-dasharray:2}#mermaid-svg-swZCRECQUNKe7PXI .marker{fill:#333}#mermaid-svg-swZCRECQUNKe7PXI .marker.cross{stroke:#333}:root { --mermaid-font-family: "trebuchet ms", verdana, arial;}#mermaid-svg-swZCRECQUNKe7PXI {color: rgba(0, 0, 0, 0.75);font: ;}1.向串口數據寄存器寫入數據2.物理層面發送數據,軟件執行其它任務3.物理層面發送完畢,TI置位,進入發送中斷服務函數4.TI標志位清0,由內部邏輯決定繼續發送或者停止發送

整個發送的過程其實非常簡單和順暢,而且單片機的效率也能達到最高。
再來對比下查詢的方式進行發送:

#mermaid-svg-VKYVZL7ClDmbEjGk .label{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);fill:#333;color:#333}#mermaid-svg-VKYVZL7ClDmbEjGk .label text{fill:#333}#mermaid-svg-VKYVZL7ClDmbEjGk .node rect,#mermaid-svg-VKYVZL7ClDmbEjGk .node circle,#mermaid-svg-VKYVZL7ClDmbEjGk .node ellipse,#mermaid-svg-VKYVZL7ClDmbEjGk .node polygon,#mermaid-svg-VKYVZL7ClDmbEjGk .node path{fill:#ECECFF;stroke:#9370db;stroke-width:1px}#mermaid-svg-VKYVZL7ClDmbEjGk .node .label{text-align:center;fill:#333}#mermaid-svg-VKYVZL7ClDmbEjGk .node.clickable{cursor:pointer}#mermaid-svg-VKYVZL7ClDmbEjGk .arrowheadPath{fill:#333}#mermaid-svg-VKYVZL7ClDmbEjGk .edgePath .path{stroke:#333;stroke-width:1.5px}#mermaid-svg-VKYVZL7ClDmbEjGk .flowchart-link{stroke:#333;fill:none}#mermaid-svg-VKYVZL7ClDmbEjGk .edgeLabel{background-color:#e8e8e8;text-align:center}#mermaid-svg-VKYVZL7ClDmbEjGk .edgeLabel rect{opacity:0.9}#mermaid-svg-VKYVZL7ClDmbEjGk .edgeLabel span{color:#333}#mermaid-svg-VKYVZL7ClDmbEjGk .cluster rect{fill:#ffffde;stroke:#aa3;stroke-width:1px}#mermaid-svg-VKYVZL7ClDmbEjGk .cluster text{fill:#333}#mermaid-svg-VKYVZL7ClDmbEjGk div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:12px;background:#ffffde;border:1px solid #aa3;border-radius:2px;pointer-events:none;z-index:100}#mermaid-svg-VKYVZL7ClDmbEjGk .actor{stroke:#ccf;fill:#ECECFF}#mermaid-svg-VKYVZL7ClDmbEjGk text.actor>tspan{fill:#000;stroke:none}#mermaid-svg-VKYVZL7ClDmbEjGk .actor-line{stroke:grey}#mermaid-svg-VKYVZL7ClDmbEjGk .messageLine0{stroke-width:1.5;stroke-dasharray:none;stroke:#333}#mermaid-svg-VKYVZL7ClDmbEjGk .messageLine1{stroke-width:1.5;stroke-dasharray:2, 2;stroke:#333}#mermaid-svg-VKYVZL7ClDmbEjGk #arrowhead path{fill:#333;stroke:#333}#mermaid-svg-VKYVZL7ClDmbEjGk .sequenceNumber{fill:#fff}#mermaid-svg-VKYVZL7ClDmbEjGk #sequencenumber{fill:#333}#mermaid-svg-VKYVZL7ClDmbEjGk #crosshead path{fill:#333;stroke:#333}#mermaid-svg-VKYVZL7ClDmbEjGk .messageText{fill:#333;stroke:#333}#mermaid-svg-VKYVZL7ClDmbEjGk .labelBox{stroke:#ccf;fill:#ECECFF}#mermaid-svg-VKYVZL7ClDmbEjGk .labelText,#mermaid-svg-VKYVZL7ClDmbEjGk .labelText>tspan{fill:#000;stroke:none}#mermaid-svg-VKYVZL7ClDmbEjGk .loopText,#mermaid-svg-VKYVZL7ClDmbEjGk .loopText>tspan{fill:#000;stroke:none}#mermaid-svg-VKYVZL7ClDmbEjGk .loopLine{stroke-width:2px;stroke-dasharray:2, 2;stroke:#ccf;fill:#ccf}#mermaid-svg-VKYVZL7ClDmbEjGk .note{stroke:#aa3;fill:#fff5ad}#mermaid-svg-VKYVZL7ClDmbEjGk .noteText,#mermaid-svg-VKYVZL7ClDmbEjGk .noteText>tspan{fill:#000;stroke:none}#mermaid-svg-VKYVZL7ClDmbEjGk .activation0{fill:#f4f4f4;stroke:#666}#mermaid-svg-VKYVZL7ClDmbEjGk .activation1{fill:#f4f4f4;stroke:#666}#mermaid-svg-VKYVZL7ClDmbEjGk .activation2{fill:#f4f4f4;stroke:#666}#mermaid-svg-VKYVZL7ClDmbEjGk .mermaid-main-font{font-family:"trebuchet ms", verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-VKYVZL7ClDmbEjGk .section{stroke:none;opacity:0.2}#mermaid-svg-VKYVZL7ClDmbEjGk .section0{fill:rgba(102,102,255,0.49)}#mermaid-svg-VKYVZL7ClDmbEjGk .section2{fill:#fff400}#mermaid-svg-VKYVZL7ClDmbEjGk .section1,#mermaid-svg-VKYVZL7ClDmbEjGk .section3{fill:#fff;opacity:0.2}#mermaid-svg-VKYVZL7ClDmbEjGk .sectionTitle0{fill:#333}#mermaid-svg-VKYVZL7ClDmbEjGk .sectionTitle1{fill:#333}#mermaid-svg-VKYVZL7ClDmbEjGk .sectionTitle2{fill:#333}#mermaid-svg-VKYVZL7ClDmbEjGk .sectionTitle3{fill:#333}#mermaid-svg-VKYVZL7ClDmbEjGk .sectionTitle{text-anchor:start;font-size:11px;text-height:14px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-VKYVZL7ClDmbEjGk .grid .tick{stroke:#d3d3d3;opacity:0.8;shape-rendering:crispEdges}#mermaid-svg-VKYVZL7ClDmbEjGk .grid .tick text{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-VKYVZL7ClDmbEjGk .grid path{stroke-width:0}#mermaid-svg-VKYVZL7ClDmbEjGk .today{fill:none;stroke:red;stroke-width:2px}#mermaid-svg-VKYVZL7ClDmbEjGk .task{stroke-width:2}#mermaid-svg-VKYVZL7ClDmbEjGk .taskText{text-anchor:middle;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-VKYVZL7ClDmbEjGk .taskText:not([font-size]){font-size:11px}#mermaid-svg-VKYVZL7ClDmbEjGk .taskTextOutsideRight{fill:#000;text-anchor:start;font-size:11px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-VKYVZL7ClDmbEjGk .taskTextOutsideLeft{fill:#000;text-anchor:end;font-size:11px}#mermaid-svg-VKYVZL7ClDmbEjGk .task.clickable{cursor:pointer}#mermaid-svg-VKYVZL7ClDmbEjGk .taskText.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-VKYVZL7ClDmbEjGk .taskTextOutsideLeft.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-VKYVZL7ClDmbEjGk .taskTextOutsideRight.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-VKYVZL7ClDmbEjGk .taskText0,#mermaid-svg-VKYVZL7ClDmbEjGk .taskText1,#mermaid-svg-VKYVZL7ClDmbEjGk .taskText2,#mermaid-svg-VKYVZL7ClDmbEjGk .taskText3{fill:#fff}#mermaid-svg-VKYVZL7ClDmbEjGk .task0,#mermaid-svg-VKYVZL7ClDmbEjGk .task1,#mermaid-svg-VKYVZL7ClDmbEjGk .task2,#mermaid-svg-VKYVZL7ClDmbEjGk .task3{fill:#8a90dd;stroke:#534fbc}#mermaid-svg-VKYVZL7ClDmbEjGk .taskTextOutside0,#mermaid-svg-VKYVZL7ClDmbEjGk .taskTextOutside2{fill:#000}#mermaid-svg-VKYVZL7ClDmbEjGk .taskTextOutside1,#mermaid-svg-VKYVZL7ClDmbEjGk .taskTextOutside3{fill:#000}#mermaid-svg-VKYVZL7ClDmbEjGk .active0,#mermaid-svg-VKYVZL7ClDmbEjGk .active1,#mermaid-svg-VKYVZL7ClDmbEjGk .active2,#mermaid-svg-VKYVZL7ClDmbEjGk .active3{fill:#bfc7ff;stroke:#534fbc}#mermaid-svg-VKYVZL7ClDmbEjGk .activeText0,#mermaid-svg-VKYVZL7ClDmbEjGk .activeText1,#mermaid-svg-VKYVZL7ClDmbEjGk .activeText2,#mermaid-svg-VKYVZL7ClDmbEjGk .activeText3{fill:#000 !important}#mermaid-svg-VKYVZL7ClDmbEjGk .done0,#mermaid-svg-VKYVZL7ClDmbEjGk .done1,#mermaid-svg-VKYVZL7ClDmbEjGk .done2,#mermaid-svg-VKYVZL7ClDmbEjGk .done3{stroke:grey;fill:#d3d3d3;stroke-width:2}#mermaid-svg-VKYVZL7ClDmbEjGk .doneText0,#mermaid-svg-VKYVZL7ClDmbEjGk .doneText1,#mermaid-svg-VKYVZL7ClDmbEjGk .doneText2,#mermaid-svg-VKYVZL7ClDmbEjGk .doneText3{fill:#000 !important}#mermaid-svg-VKYVZL7ClDmbEjGk .crit0,#mermaid-svg-VKYVZL7ClDmbEjGk .crit1,#mermaid-svg-VKYVZL7ClDmbEjGk .crit2,#mermaid-svg-VKYVZL7ClDmbEjGk .crit3{stroke:#f88;fill:red;stroke-width:2}#mermaid-svg-VKYVZL7ClDmbEjGk .activeCrit0,#mermaid-svg-VKYVZL7ClDmbEjGk .activeCrit1,#mermaid-svg-VKYVZL7ClDmbEjGk .activeCrit2,#mermaid-svg-VKYVZL7ClDmbEjGk .activeCrit3{stroke:#f88;fill:#bfc7ff;stroke-width:2}#mermaid-svg-VKYVZL7ClDmbEjGk .doneCrit0,#mermaid-svg-VKYVZL7ClDmbEjGk .doneCrit1,#mermaid-svg-VKYVZL7ClDmbEjGk .doneCrit2,#mermaid-svg-VKYVZL7ClDmbEjGk .doneCrit3{stroke:#f88;fill:#d3d3d3;stroke-width:2;cursor:pointer;shape-rendering:crispEdges}#mermaid-svg-VKYVZL7ClDmbEjGk .milestone{transform:rotate(45deg) scale(0.8, 0.8)}#mermaid-svg-VKYVZL7ClDmbEjGk .milestoneText{font-style:italic}#mermaid-svg-VKYVZL7ClDmbEjGk .doneCritText0,#mermaid-svg-VKYVZL7ClDmbEjGk .doneCritText1,#mermaid-svg-VKYVZL7ClDmbEjGk .doneCritText2,#mermaid-svg-VKYVZL7ClDmbEjGk .doneCritText3{fill:#000 !important}#mermaid-svg-VKYVZL7ClDmbEjGk .activeCritText0,#mermaid-svg-VKYVZL7ClDmbEjGk .activeCritText1,#mermaid-svg-VKYVZL7ClDmbEjGk .activeCritText2,#mermaid-svg-VKYVZL7ClDmbEjGk .activeCritText3{fill:#000 !important}#mermaid-svg-VKYVZL7ClDmbEjGk .titleText{text-anchor:middle;font-size:18px;fill:#000;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-VKYVZL7ClDmbEjGk g.classGroup text{fill:#9370db;stroke:none;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:10px}#mermaid-svg-VKYVZL7ClDmbEjGk g.classGroup text .title{font-weight:bolder}#mermaid-svg-VKYVZL7ClDmbEjGk g.clickable{cursor:pointer}#mermaid-svg-VKYVZL7ClDmbEjGk g.classGroup rect{fill:#ECECFF;stroke:#9370db}#mermaid-svg-VKYVZL7ClDmbEjGk g.classGroup line{stroke:#9370db;stroke-width:1}#mermaid-svg-VKYVZL7ClDmbEjGk .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5}#mermaid-svg-VKYVZL7ClDmbEjGk .classLabel .label{fill:#9370db;font-size:10px}#mermaid-svg-VKYVZL7ClDmbEjGk .relation{stroke:#9370db;stroke-width:1;fill:none}#mermaid-svg-VKYVZL7ClDmbEjGk .dashed-line{stroke-dasharray:3}#mermaid-svg-VKYVZL7ClDmbEjGk #compositionStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-VKYVZL7ClDmbEjGk #compositionEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-VKYVZL7ClDmbEjGk #aggregationStart{fill:#ECECFF;stroke:#9370db;stroke-width:1}#mermaid-svg-VKYVZL7ClDmbEjGk #aggregationEnd{fill:#ECECFF;stroke:#9370db;stroke-width:1}#mermaid-svg-VKYVZL7ClDmbEjGk #dependencyStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-VKYVZL7ClDmbEjGk #dependencyEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-VKYVZL7ClDmbEjGk #extensionStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-VKYVZL7ClDmbEjGk #extensionEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-VKYVZL7ClDmbEjGk .commit-id,#mermaid-svg-VKYVZL7ClDmbEjGk .commit-msg,#mermaid-svg-VKYVZL7ClDmbEjGk .branch-label{fill:lightgrey;color:lightgrey;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-VKYVZL7ClDmbEjGk .pieTitleText{text-anchor:middle;font-size:25px;fill:#000;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-VKYVZL7ClDmbEjGk .slice{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-VKYVZL7ClDmbEjGk g.stateGroup text{fill:#9370db;stroke:none;font-size:10px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-VKYVZL7ClDmbEjGk g.stateGroup text{fill:#9370db;fill:#333;stroke:none;font-size:10px}#mermaid-svg-VKYVZL7ClDmbEjGk g.statediagram-cluster .cluster-label text{fill:#333}#mermaid-svg-VKYVZL7ClDmbEjGk g.stateGroup .state-title{font-weight:bolder;fill:#000}#mermaid-svg-VKYVZL7ClDmbEjGk g.stateGroup rect{fill:#ECECFF;stroke:#9370db}#mermaid-svg-VKYVZL7ClDmbEjGk g.stateGroup line{stroke:#9370db;stroke-width:1}#mermaid-svg-VKYVZL7ClDmbEjGk .transition{stroke:#9370db;stroke-width:1;fill:none}#mermaid-svg-VKYVZL7ClDmbEjGk .stateGroup .composit{fill:white;border-bottom:1px}#mermaid-svg-VKYVZL7ClDmbEjGk .stateGroup .alt-composit{fill:#e0e0e0;border-bottom:1px}#mermaid-svg-VKYVZL7ClDmbEjGk .state-note{stroke:#aa3;fill:#fff5ad}#mermaid-svg-VKYVZL7ClDmbEjGk .state-note text{fill:black;stroke:none;font-size:10px}#mermaid-svg-VKYVZL7ClDmbEjGk .stateLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.7}#mermaid-svg-VKYVZL7ClDmbEjGk .edgeLabel text{fill:#333}#mermaid-svg-VKYVZL7ClDmbEjGk .stateLabel text{fill:#000;font-size:10px;font-weight:bold;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-VKYVZL7ClDmbEjGk .node circle.state-start{fill:black;stroke:black}#mermaid-svg-VKYVZL7ClDmbEjGk .node circle.state-end{fill:black;stroke:white;stroke-width:1.5}#mermaid-svg-VKYVZL7ClDmbEjGk #statediagram-barbEnd{fill:#9370db}#mermaid-svg-VKYVZL7ClDmbEjGk .statediagram-cluster rect{fill:#ECECFF;stroke:#9370db;stroke-width:1px}#mermaid-svg-VKYVZL7ClDmbEjGk .statediagram-cluster rect.outer{rx:5px;ry:5px}#mermaid-svg-VKYVZL7ClDmbEjGk .statediagram-state .divider{stroke:#9370db}#mermaid-svg-VKYVZL7ClDmbEjGk .statediagram-state .title-state{rx:5px;ry:5px}#mermaid-svg-VKYVZL7ClDmbEjGk .statediagram-cluster.statediagram-cluster .inner{fill:white}#mermaid-svg-VKYVZL7ClDmbEjGk .statediagram-cluster.statediagram-cluster-alt .inner{fill:#e0e0e0}#mermaid-svg-VKYVZL7ClDmbEjGk .statediagram-cluster .inner{rx:0;ry:0}#mermaid-svg-VKYVZL7ClDmbEjGk .statediagram-state rect.basic{rx:5px;ry:5px}#mermaid-svg-VKYVZL7ClDmbEjGk .statediagram-state rect.divider{stroke-dasharray:10,10;fill:#efefef}#mermaid-svg-VKYVZL7ClDmbEjGk .note-edge{stroke-dasharray:5}#mermaid-svg-VKYVZL7ClDmbEjGk .statediagram-note rect{fill:#fff5ad;stroke:#aa3;stroke-width:1px;rx:0;ry:0}:root{--mermaid-font-family: '"trebuchet ms", verdana, arial';--mermaid-font-family: "Comic Sans MS", "Comic Sans", cursive}#mermaid-svg-VKYVZL7ClDmbEjGk .error-icon{fill:#522}#mermaid-svg-VKYVZL7ClDmbEjGk .error-text{fill:#522;stroke:#522}#mermaid-svg-VKYVZL7ClDmbEjGk .edge-thickness-normal{stroke-width:2px}#mermaid-svg-VKYVZL7ClDmbEjGk .edge-thickness-thick{stroke-width:3.5px}#mermaid-svg-VKYVZL7ClDmbEjGk .edge-pattern-solid{stroke-dasharray:0}#mermaid-svg-VKYVZL7ClDmbEjGk .edge-pattern-dashed{stroke-dasharray:3}#mermaid-svg-VKYVZL7ClDmbEjGk .edge-pattern-dotted{stroke-dasharray:2}#mermaid-svg-VKYVZL7ClDmbEjGk .marker{fill:#333}#mermaid-svg-VKYVZL7ClDmbEjGk .marker.cross{stroke:#333}:root { --mermaid-font-family: "trebuchet ms", verdana, arial;}#mermaid-svg-VKYVZL7ClDmbEjGk {color: rgba(0, 0, 0, 0.75);font: ;}1.向串口數據寄存器寫入數據2.物理層面發送數據,軟件阻塞在while中等待標志位置位3.標志位置位,由內部邏輯決定繼續發送或者停止發送

從流程圖中應該會比較容易看出這兩種發送方式的區別。采用中斷方式發送時,可以說全是優點,莫得缺點~

代碼示例

本文主要是為了解決網友的問題,再搞清楚中斷發送這件事后,以三合一串口為例,從初始化開始,到發送一幀數據結束,來完整的演示一下。

準備工作

前提條件:需要在main()函數中定時調用uart1_start_trans()函數,推薦500ms,1000ms。
實驗現象:每間隔一次定時時長,會在串口助手中接收到data_for_tx中的數據。

宏定義及全局變量

//相關宏定義 #define SYSTEM_CLK ((unsigned long int)12000000) #define UART1_BAUD_9600_LOAD_VALUE 9600static u8 data_for_tx[5] = {0x11, 0x22, 0x33, 0x44, 0x55}; //定義一個待發送數據的數組

初始化

/*************************************************************/ /*函數名:hw_uart1_init /*輸 入:無 /*輸 出:無 /*功 能:初始化串口1的IO口,波特率9600并開啟中斷; /*************************************************************/ void hw_uart1_init(void) {P2CON &= 0xFC; //TX/RX設置為輸入帶上拉P2PH |= 0x03;OTCON |= 0xC0; //串行接口SSI選擇Uart1通信SSCON0 = 0x50; //設置通信方式為模式一,允許接收SSCON1 = SYSTEM_CLK/UART1_BAUD_9600_LOAD_VALUE; //波特率低位控制SSCON2 = (SYSTEM_CLK/UART1_BAUD_9600_LOAD_VALUE)>>8; //波特率高位控制IE1 |= 0x01; //開啟SSI中斷IP1 |= 0x01; //中斷優先級設置為高EA = 1; }

這部分沒啥可說的,就是按照示例代碼和規格書寫的。

中斷服務函數

/*************************************************************/ /*函數名:uart1_isr /*輸 入:無 /*輸 出:無 /*功 能:串口1中斷服務函數,以中斷方式進行收發; /*************************************************************/ void uart1_isr(void) interrupt 7 {u8 temp_char = 0;if(SSCON0&0x02) //發送標志位判斷{SSCON0 &= 0xFD; //清中斷uart1_send_data(); //發送邏輯}if((SSCON0&0x01)) //接收標志位判斷{SSCON0 &= 0xFE; //清中斷temp_char = SSDAT;uart1_receive_data(temp_char); //接收邏輯 } }

中斷服務函數其實是很簡潔的,這里不再介紹接收邏輯的編寫,只說發送邏輯的函數,以中斷方式發送數據的重點也在這里~

發送邏輯函數

/*************************************************************/ /*函數名:uart1_send_data /*輸 入:無 /*輸 出:無 /*功 能:發送邏輯判斷,控制發送數據; /*************************************************************/ void uart1_send_data(void) {static u8 index = 0; //函數內部局部變量,用做待發送數組的下標if(index>=5){index = 0;}else{SSDAT = data_for_tx[index++];} }

分析一下這個過程:index的初始值為0,在發送邏輯函數中,會將data_for_tx[0]寫入數據寄存器,物理層會發送data_for_tx[0],index變為1;發送完畢后,便會再次進入發送中斷函數,調用在發送邏輯函數時,會將data_for_tx[1]寫入數據寄存器,物理層會發送data_for_tx[1],index變為2,循環幾次后index變為5時,data_for_tx數組中的5個元素都已經發送完畢了(即這一幀數據發送完畢),這時已經不需要再發送了,需要做的僅僅是將index給清零,等待main函數中啟動下一幀數據的發送。
以上是理解發送中斷的重點,一遍看不懂就多看幾遍,也可以自己動手畫一畫流程圖。

啟動發送函數

/*************************************************************/ /*函數名:uart1_start_trans /*輸 入:無 /*輸 出:無 /*功 能:啟動串口1發送; /*************************************************************/ void uart1_start_trans(void) {SSCON0 |= 0x02; //手動置位發送中斷標志位,進入發送中斷,啟動發送 }

總結

以上便是此篇文章的全部內容,不僅僅是三合一串口的使用,更是介紹了中斷方式發送數據這種方式,掌握它,很有必要。
如果本文對你有用,請點個贊吧,這是對我莫大的支持,當然也更歡迎評論區留言討論以及收藏哦~
祝:變得更強!

總結

以上是生活随笔為你收集整理的【串口发送中断】基于赛元单片机使用三合一串口的UART功能的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

黄网在线免费观看 | 顶级欧美色妇4khd | 亚洲成人免费 | 久久这里有 | 精品一区二区视频 | www.天天色.com| 亚洲一区精品二人人爽久久 | 国产手机在线精品 | 国产啊v在线 | 丁香午夜婷婷 | 日韩国产精品一区 | 久久久久久久久久久电影 | 中文字幕在线国产 | 在线 成人 | 美女视频一区二区 | 欧美二区三区91 | 免费av网站观看 | 丁五月婷婷 | 亚洲综合精品在线 | 狠狠干免费 | 看全黄大色黄大片 | 有码中文字幕在线观看 | 免费又黄又爽的视频 | 欧美成人h版电影 | 国产午夜影院 | 国产黄影院色大全免费 | 国产精品亚洲人在线观看 | 麻豆网站免费观看 | 丁香五香天综合情 | 91chinese在线| 国产明星视频三级a三级点| 玖玖精品在线 | 97视频在线免费观看 | 国产一区二区三精品久久久无广告 | 在线观看免费色 | 国产超碰97| 在线观看精品一区 | 六月丁香久久 | 在线免费观看黄色av | 日日夜夜免费精品 | 在线观看成人网 | 黄色在线小网站 | 亚洲国产精品成人精品 | 国产精品 中文字幕 亚洲 欧美 | 有码视频在线观看 | 久久99中文字幕 | 日韩福利在线观看 | 欧美 日韩 成人 | 中文字幕亚洲精品在线观看 | 6080yy午夜一二三区久久 | 日本xxxx裸体xxxx17| 91福利视频免费观看 | 国产高清 不卡 | 91最新视频在线观看 | 四虎影视成人永久免费观看亚洲欧美 | www黄色| 99视频| 日韩免费在线观看 | 成人免费一级 | 亚洲成人午夜av | 在线成人免费电影 | 国产色婷婷在线 | 欧美日韩免费看 | 国产成人精品午夜在线播放 | 久久96 | 一区二区三区日韩在线观看 | 国产香蕉视频在线播放 | 欧美在线视频日韩 | 中文字幕在线观看你懂的 | 国产精品第一 | 亚洲乱码在线 | 欧美性色综合 | 17婷婷久久www | 国产乱视频 | 国产97在线播放 | 97在线观看 | 97超碰福利久久精品 | 911香蕉视频| 日韩一区二区三 | 日韩免费一区二区三区 | 久草在线免| 久久y | 精品美女久久久久久免费 | 亚洲精品婷婷 | 日韩久久视频 | 99re6热在线精品视频 | 亚洲情感电影大片 | 午夜久久福利视频 | 免费在线观看av网站 | 免费aa大片 | 又黄又爽又湿又无遮挡的在线视频 | 欧美夫妻性生活电影 | 在线看一区二区 | 国产在线精品一区二区三区 | 国产日产在线观看 | 亚洲色图av | 丁香婷婷综合激情五月色 | 91精品一区在线观看 | 久久99久久精品国产 | 91精品国产成 | 99久久精品免费看国产 | 久久电影网站中文字幕 | 成人影片在线播放 | av电影中文字幕 | 免费国产视频 | 日韩美精品视频 | 国产午夜av | 欧美日韩高清 | 玖玖视频在线 | 日本色小说视频 | 三级视频片 | 亚洲免费专区 | 亚洲精品乱码久久久久久9色 | 久久av免费 | 国产91全国探花系列在线播放 | 午夜国产一区二区 | 欧美日韩另类在线观看 | 91重口视频 | 三级av在线| 91桃色国产在线播放 | 午夜123| 中文字幕 91 | 五月婷婷激情综合网 | 日韩精品视频在线观看网址 | 国产a免费| 久久亚洲在线 | 成人在线观看免费视频 | 四虎影视www| 亚洲视频免费在线看 | 欧美一区在线观看视频 | 久久激情日本aⅴ | 黄色大片免费网站 | 精品影院 | 99久久这里有精品 | 精品国精品自拍自在线 | 亚洲区另类春色综合小说校园片 | 色婷婷狠狠五月综合天色拍 | 日韩免费久久 | 99久久精品国产一区二区三区 | 蜜臀av性久久久久蜜臀aⅴ四虎 | 在线观看一 | 久久久网址 | 久久男人免费视频 | 亚洲精品在线网站 | 亚洲涩涩网站 | 国产探花 | 国产91勾搭技师精品 | 久草在线观看 | 成人小电影在线看 | 亚洲精品乱码久久久久久按摩 | 国产剧情一区二区 | 亚洲精品视频在线观看免费 | 国产精品亚洲片夜色在线 | 久草在线视频网 | 中文字幕在线观看免费 | 免费看黄的 | 免费成人av电影 | 婷婷综合导航 | 久草在线视频资源 | 国产在线看一区 | 俺要去色综合狠狠 | 久久久久这里只有精品 | 欧美一区三区四区 | 久久久国产精品亚洲一区 | 国产黄影院色大全免费 | 欧美激情第一页xxx 午夜性福利 | 色噜噜狠狠狠狠色综合久不 | 毛片基地黄久久久久久天堂 | 国产精品成人自产拍在线观看 | 中文字幕免费不卡视频 | 亚洲精品自拍视频在线观看 | 国产精品久久久久影院日本 | 国产 在线观看 | av在线小说| 国产一区二区三区在线免费观看 | 欧美一级免费在线 | 日韩欧美高清一区二区 | 91av超碰 | 精品91久久久久 | 天天插天天干 | 在线看的毛片 | 亚洲黄色免费网站 | 国产视频在线一区二区 | 夜夜操夜夜干 | 亚洲三级国产 | 一区二区 精品 | 久久午夜免费观看 | 波多野结衣久久资源 | 国产最新视频在线 | 97天堂 | 国产精品mv | 国产午夜精品一区二区三区四区 | 99久久久国产精品免费99 | 涩涩网站在线看 | 97在线视频观看 | 久久久午夜精品福利内容 | 人人射人人射 | 91自拍视频在线 | 一区二区三区四区影院 | 午夜久久久精品 | 国产亚洲成av人片在线观看桃 | 成人午夜性影院 | 国产99久久精品一区二区永久免费 | 女人18毛片a级毛片一区二区 | 婷婷色网站| 成年人免费电影 | 一本一本久久a久久精品综合 | 波多在线视频 | 国产一区二区三区网站 | 欧美一区二区三区在线播放 | 精品国产黄色片 | 99热手机在线观看 | 不卡av在线免费观看 | 亚洲国产精品女人久久久 | 婷婷国产一区二区三区 | 亚洲乱码在线观看 | 97人人艹 | 91久久国产综合精品女同国语 | 免费a视频在线 | 九九亚洲精品 | 日韩电影在线一区二区 | 久久久视频在线 | 久久人人看 | 精品国产一区二区三区久久影院 | 日韩精品一区二区三区三炮视频 | 九九视频精品在线 | 日韩精品免费一区二区在线观看 | 最近的中文字幕大全免费版 | 亚洲一二视频 | 亚洲日韩中文字幕在线播放 | 国产精品成人品 | 丁香激情五月 | 亚洲精品午夜久久久久久久久久久 | 天天综合天天综合 | 一个色综合网站 | 久久久久久久久久久久电影 | 久久久麻豆精品一区二区 | 香蕉视频在线播放 | 国产精品24小时在线观看 | 国产主播99 | 色综合亚洲精品激情狠狠 | 日韩高清观看 | 久久久久久看片 | 国产精品麻 | 97夜夜澡人人爽人人免费 | 一区二区电影在线观看 | 亚洲精品tv| 日本激情动作片免费看 | 中文字幕国产视频 | 日本在线观看一区 | 欧美成人高清 | 欧美综合色在线图区 | 午夜性福利 | 亚洲一区日韩 | 国产91aaa| 国产资源在线视频 | 精品国产一区二区三区蜜臀 | 日本精品一区二区 | 亚洲午夜精| 91精品国产高清自在线观看 | 久热色超碰| 免费av网站在线看 | 黄色影院在线观看 | av中文字幕在线电影 | 亚洲精品短视频 | 国产你懂的在线 | 亚洲成成品网站 | 91自拍视频在线观看 | 欧美少妇影院 | 久久精品视频2 | 欧美一区日韩一区 | 97超碰资源总站 | 精品中文字幕在线 | 胖bbbb搡bbbb擦bbbb| 久久天天躁狠狠躁亚洲综合公司 | 青春草视频 | 99久久精品免费看国产四区 | 在线观看亚洲视频 | 免费av在| 手机成人av在线 | 久久国语露脸国产精品电影 | 日韩二区三区 | 亚洲午夜精 | 一本一道波多野毛片中文在线 | 国产精品9区 | 久草在线观| 日韩大片免费在线观看 | 在线观看亚洲国产精品 | 成人午夜剧场在线观看 | 天天曰天天曰 | 久久免费影院 | 高清一区二区三区 | 天天操天天操天天爽 | 国产黄色精品网站 | 日p视频 | 国产999精品久久久久久绿帽 | 福利视频导航网址 | 国产资源在线视频 | 很黄很污的视频网站 | 成人在线免费看 | 婷婷5月色 | 成人免费看片网址 | 成人午夜毛片 | 亚洲成熟女人毛片在线 | 欧美日bb | 国产精品99页 | 日韩电影一区二区在线 | 久久高清视频免费 | 中文字幕高清av | 中文亚洲欧美日韩 | 亚洲国产精品免费 | 国产精品久久久久久高潮 | 免费看一级黄色大全 | 亚洲精品在线国产 | 国产美女视频一区 | 国产婷婷一区二区 | 免费在线观看日韩 | 久久精品电影网 | 天天鲁一鲁摸一摸爽一爽 | 91免费在线看片 | 日韩理论在线观看 | av黄色在线播放 | 欧美一级视频免费看 | 久艹在线观看视频 | 视频在线精品 | 狠狠的干 | 久久黄色免费观看 | 日韩网站在线观看 | 99热超碰 | 91在线视频网址 | 婷婷干五月| 欧美日韩国产精品一区二区 | 久久99热这里只有精品国产 | 亚洲成人软件 | 日韩伦理片一区二区三区 | 99视频在线精品国自产拍免费观看 | 色婷婷av一区二 | 国产成人亚洲在线观看 | 国产精品不卡在线观看 | 色视频在线观看免费 | 丰满少妇在线 | 国产精品嫩草在线 | www.激情五月.com| 日韩电影中文 | 不卡av在线| 超级碰碰碰视频 | 人人干,人人爽 | 国产在线精品一区二区 | a√天堂中文在线 | 亚洲高清在线视频 | 99视频在线免费播放 | 麻豆一区在线观看 | 日本女人在线观看 | 九九久久国产 | 一区二区三区免费在线观看 | 亚洲不卡123 | 色网站在线免费观看 | 亚洲成人av片在线观看 | 国产精品一区二区三区在线免费观看 | 久久久久综合精品福利啪啪 | 日本公妇在线观看高清 | 日韩精品欧美精品 | 色多视频在线观看 | 综合久久网站 | 国产aaa毛片| 黄色一级性片 | 在线观看成人福利 | 91精品国产欧美一区二区成人 | 69av国产| 亚洲国产小视频在线观看 | 日韩欧美高清免费 | 国产资源 | 午夜久久福利视频 | 国产资源av| 激情黄色一级片 | 一区在线电影 | 香蕉成人在线视频 | www四虎影院 | 日韩免费在线看 | 五月婷网站| 国产成人免费网站 | 欧美日韩亚洲在线观看 | 国产精品久久久影视 | 超碰在线最新地址 | 国产精品美女999 | 麻豆成人网 | a电影免费看 | 国产麻豆精品传媒av国产下载 | 91精品国产92久久久久 | 日本久久片 | 免费看国产视频 | 99精品在线免费在线观看 | 精品久久久久久久久久久久久 | 狠狠狠狠狠狠干 | 中文字幕中文字幕在线一区 | 日韩精品久久久久久久电影99爱 | 久久av中文字幕片 | 久久涩视频| 国产视频在线观看免费 | 欧美精品午夜 | a色视频 | 91久久在线观看 | 国产探花 | 99热 精品在线 | 亚洲伊人网在线观看 | 亚洲精品色婷婷 | 不卡av免费在线观看 | 综合网在线视频 | 久热只有精品 | 久久69精品久久久久久久电影好 | 亚洲精品美女久久17c | 国产精品女主播一区二区三区 | 99福利片 | 中日韩免费视频 | 91色偷偷| 日韩欧美在线播放 | www久久久 | 99草视频在线观看 | 久久精品久久精品久久精品 | 99成人免费视频 | 日韩有码在线观看视频 | 久久资源在线 | 中文字幕在线视频一区 | 亚州日韩中文字幕 | 日韩一区视频在线 | 欧美污污视频 | 国产中文在线视频 | 国产网红在线 | 欧美一级性生活视频 | 黄色在线免费观看网址 | 欧美日韩高清一区二区 国产亚洲免费看 | 2021国产在线| 成人午夜久久 | 操综合| 国产免费影院 | 成人久久18免费网站图片 | 国产精品久久久久久久电影 | 精品欧美小视频在线观看 | 国产精品久久久久久久久久久久午夜片 | 欧美激情另类 | 欧美影院久久 | 日本黄色免费观看 | 亚洲日本va在线观看 | 日韩在线一级 | 92av视频 | 成年人电影毛片 | 精品国产伦一区二区三区观看说明 | 国精产品满18岁在线 | 深夜免费福利网站 | 久久99久久精品 | 久久久 激情 | 色婷婷狠狠18 | 最新日韩电影 | 国产精品99蜜臀久久不卡二区 | 成人av电影在线 | 午夜精品久久久久久久久久久久 | 国产99久久 | 国产一级高清视频 | 五月天婷婷在线播放 | 天天操天天射天天添 | 国产午夜三级一区二区三 | 又湿又紧又大又爽a视频国产 | 国产亚洲成av片在线观看 | 精品欧美在线视频 | 中文字幕视频三区 | 99久久www免费 | 中文字幕91在线 | 久久精品视频网站 | 久久久久久久久久久影视 | 视频一区二区精品 | 精品免费视频123区 午夜久久成人 | 黄色视屏在线免费观看 | 国产三级精品三级在线观看 | 超碰在线最新网址 | 人人艹视频| 在线视频观看亚洲 | 最新av网址在线观看 | 成年人免费在线看 | 一区二区三区高清在线 | 国产一区二区不卡在线 | 国产伦精品一区二区三区在线 | 国产成人久久精品一区二区三区 | 亚洲一区二区三区在线看 | 成人精品一区二区三区电影免费 | 国产精品午夜在线观看 | 午夜av一区 | 夜夜操狠狠操 | 国外av在线 | 欧美成人免费在线 | 成人在线网站观看 | 日日操天天操夜夜操 | 日日日天天天 | 久久综合九色综合久99 | 欧美日韩亚洲一 | 91九色视频 | 中文字幕免费高清在线 | 成人国产电影在线观看 | 国产精品亚洲a | 亚洲精品资源在线观看 | 欧美性色黄大片在线观看 | 日韩黄色在线观看 | 91av视频在线播放 | 久久久男人的天堂 | 天天爱天天射天天干天天 | 中文字幕欧美激情 | 黄色在线免费观看网址 | 99av国产精品欲麻豆 | 人人看97| 99久久99| 日韩小视频 | 九九热av| 一区二区三区四区五区六区 | av黄色一级片 | 在线观看欧美成人 | 特黄色大片 | 日本不卡久久 | 成人av电影免费在线播放 | 91在线你懂的 | 97av视频在线| 一区二区 不卡 | 国产91对白在线播 | 激情中文在线 | 国内精品久久久久影院一蜜桃 | 欧美综合在线观看 | 91精品国 | 免费福利在线 | 成人a视频在线观看 | 久久视频在线观看 | 欧美最猛性xxxx| 亚洲精品tv久久久久久久久久 | 天天鲁天天干天天射 | 一区二区精品在线 | 国产资源站 | 婷婷丁香花五月天 | 嫩草av影院 | 国产一区二区三区网站 | 国产精品网站 | 色婷婷综合久久久 | 国产一区电影在线观看 | 五月婷婷综合久久 | 玖玖在线观看视频 | 99国产在线视频 | 色先锋av资源中文字幕 | 激情丁香久久 | 91精品久久久久久久久 | 黄色成人av| japanese黑人亚洲人4k | 黄色av影视 | 国产成人久久精品一区二区三区 | 一区三区视频 | 91精品视频免费观看 | www色网站| 草久久久久久 | 免费在线观看日韩欧美 | 天天综合天天做天天综合 | 91在线观看欧美日韩 | 成人在线一区二区 | 99在线精品免费视频九九视 | 久久精品人人做人人综合老师 | 亚洲欧美在线视频免费 | 欧美性成人 | 欧美日韩中文在线视频 | 久久久久久久影视 | 日本三级吹潮在线 | 久久精品成人欧美大片古装 | 99精品在线观看视频 | 骄小bbw搡bbbb揉bbbb | 伊人黄 | 黄色大片国产 | 麻豆视频入口 | 九九热av| 国产精品国产自产拍高清av | 久久99精品视频 | 国产精品专区h在线观看 | 成年人在线观看 | 九九久久久 | 天天干夜夜操视频 | 激情av五月婷婷 | 久久精品视频在线看 | 麻豆国产网站入口 | 射射射av | 亚洲四虎 | 西西www4444大胆在线 | 精品久久久久久久久亚洲 | 一二区精品 | 亚洲综合成人专区片 | 成年人免费看的视频 | 久久国产精品一区二区三区 | 玖玖在线观看视频 | 久久久久国产精品一区二区 | 91九色精品国产 | 国产啊v在线观看 | 国产午夜在线观看视频 | a天堂免费 | 九九亚洲精品 | 中文字幕色在线 | 久人人 | www.日韩免费 | 欧洲激情在线 | 亚洲精品乱码久久久久v最新版 | 成人在线免费观看网站 | 麻豆一精品传二传媒短视频 | 日韩精品亚洲专区在线观看 | 麻豆视频在线观看免费 | 97在线精品视频 | 91九色网站| 欧美黑人猛交 | 中文字幕国内精品 | 久久精品国产一区二区三 | 久久久国产影院 | 麻豆影视网 | 亚洲每日更新 | 欧美精品三级 | 操操日 | www亚洲视频 | www.久久婷婷 | 久久精品4 | 久久艹国产 | 四虎影视国产精品免费久久 | 久久久久久久久影院 | 免费三级影片 | 九九热有精品 | 久久美女免费视频 | 91在线视频免费91 | 亚洲欧美视频 | 欧美aaa级片| 91视频91蝌蚪 | 在线性视频日韩欧美 | 精品视频在线观看 | 欧美日韩中文字幕综合视频 | 91热精品| 超碰在线97观看 | a在线观看国产 | 在线免费视 | 久久无码精品一区二区三区 | 国产精品视频大全 | 夜夜骑天天操 | www.69xx| 99精品久久久久 | 久久视频 | 91九色网站 | 99国产视频在线 | 中文字幕亚洲情99在线 | 99久久影院 | 欧美色综合| 在线成人一区 | 色综合国产 | 香蕉影院在线观看 | 亚洲伦理精品 | 超碰人人国产 | 亚洲日日射 | 夜夜嗨av色一区二区不卡 | 日韩欧美在线高清 | 伊人色综合久久天天网 | 精品一区二区在线免费观看 | 久久久影片 | 天天干天天操人体 | 青青草在久久免费久久免费 | 日本精品中文字幕 | 免费观看一区二区三区视频 | 爱爱av在线| 欧美伦理一区二区 | 黄色三级免费网址 | 岛国av在线 | 91久久精品一区二区二区 | 国产黄色片在线免费观看 | 国产精品久久久久久久久久免费 | 69国产在线观看 | 成人91在线观看 | 日韩在线一二三区 | 一区二区欧美在线观看 | 毛片网站观看 | 五月天激情在线 | 亚洲成av人电影 | 97色婷婷 | 麻豆视频免费版 | 99久久激情| 亚洲永久字幕 | 久草视频一区 | 一区在线电影 | 色婷婷亚洲综合 | 成人wwwxxx视频 | 日本中文字幕网站 | 午夜精品久久久久久久99婷婷 | 高清不卡一区二区在线 | 中文字幕制服丝袜av久久 | 91亚洲狠狠婷婷综合久久久 | 久久歪歪 | 97av精品 | 久久久久国产成人免费精品免费 | 国产精品一区二区久久精品爱涩 | 91精品视频在线免费观看 | 黄色成人av网址 | 视频在线99 | 91精品久久久久久综合乱菊 | 字幕网av| 国产精品久久久久久久久久久久 | 日韩一级理论片 | 91精品一区在线观看 | 五月开心婷婷网 | 日韩中文字幕在线 | 日韩欧美电影网 | 亚洲视频一级 | 日韩在线视频线视频免费网站 | 午夜精品一二三区 | 日韩一级片网址 | 亚洲成人黄色av | 久久国产精品免费看 | 国产免费三级在线观看 | 国产美女黄网站免费 | 天天干,天天插 | 99精品久久精品一区二区 | 亚洲精品久久激情国产片 | 国产99自拍 | 最近免费中文字幕mv在线视频3 | 欧美乱码精品一区 | 久久久亚洲影院 | 日本在线h | 亚洲成av人影片在线观看 | 在线精品视频在线观看高清 | 日韩在线观看av | 久久不射电影院 | av大片免费在线观看 | 西西大胆免费视频 | 久久精品国产免费看久久精品 | 欧美日韩精品综合 | 国产小视频91 | 亚洲国产精品va在线 | 欧美日韩国产精品一区二区三区 | 午夜三级在线 | 91在线亚洲 | 亚洲天天做 | 99久久99久国产黄毛片 | 国产视频午夜 | 欧美精品久久99 | 五月婷综合网 | 免费观看黄色av | 免费观看丰满少妇做爰 | 亚洲 欧美日韩 国产 中文 | 亚洲国产精品小视频 | av天天干 | 精品一区二区免费视频 | 香蕉视频导航 | 国产在线精品一区二区三区 | 99热亚洲精品 | 日韩av不卡在线播放 | 国产一区二三区好的 | 成人黄色av网站 | 成年人在线看片 | 日韩精品免费专区 | 亚洲国内在线 | 91精品国产麻豆 | 日韩精品久久久免费观看夜色 | 国产精品大片免费观看 | 三级a视频 | 午夜av影院| 国产在线观看不卡 | 天天干,狠狠干 | 九九久久影视 | 国产一区二区在线免费视频 | 久久综合九色综合97婷婷女人 | 草 免费视频 | 中文字幕无吗 | 国产精品免费视频观看 | 亚洲精品视频中文字幕 | 久久久在线 | 97色婷婷成人综合在线观看 | 好看av在线 | 欧美激情视频一二三区 | 日韩在线无 | 亚洲综合色av | 亚洲免费在线观看视频 | 中文字幕在线播放一区二区 | 激情电影在线观看 | 久久久激情视频 | 91亚洲欧美 | 一区二区三区四区在线免费观看 | 黄色一及电影 | 国产一区在线看 | 天天射天天干天天爽 | 久草a视频| 欧日韩在线视频 | 色婷婷国产精品 | 中文字幕在线视频一区 | 五月婷婷网站 | 国产精品99久久久久的智能播放 | 日韩二区在线 | 亚洲黄色成人 | 久久国产精品久久久久 | 久射网| 999国内精品永久免费视频 | www.黄色| 人人干人人做 | 超碰在线色 | 免费看片网站91 | 色免费在线| 欧美一区二区精品在线 | 日韩成人不卡 | 色综合中文字幕 | 久久精品在线 | 日韩不卡高清 | 久久伦理影院 | 91麻豆精品国产91久久久使用方法 | 久久成人视屏 | 五月婷婷激情综合网 | 九九九九热精品免费视频点播观看 | 天天视频亚洲 | 精品国产一区二区三区男人吃奶 | 欧美analxxxx | 天天干,天天射,天天操,天天摸 | 久久综合九色综合久久久精品综合 | 成片免费观看视频 | 日韩欧美一区二区不卡 | 久久精品国产99 | 精品久久精品 | 久久国产精品二国产精品中国洋人 | 久久你懂的 | 国产一级特黄毛片在线毛片 | 成人资源在线观看 | 国产精品麻豆三级一区视频 | 国产美女精品人人做人人爽 | www免费视频com━ | 中文字幕影片免费在线观看 | 九九九在线 | 免费观看的av网站 | 成年人电影毛片 | 久久精品波多野结衣 | 一级a毛片高清视频 | www99久久| 亚洲男男gaygayxxxgv | 99在线观看视频网站 | 在线免费色 | 久久国产精品免费一区二区三区 | 久久这里只有精品首页 | 中文不卡视频在线 | 日韩视频中文 | 91一区在线观看 | 美女黄网站视频免费 | 国产高清免费观看 | 99久久99久国产黄毛片 | 国产一级性生活视频 | 在线观看视频日韩 | 狠狠狠狠狠操 | 亚洲成人精品在线观看 | 久艹视频在线免费观看 | 国产一二三四在线视频 | 亚洲精品一区二区三区在线观看 | 久久精品日本啪啪涩涩 | 色亚洲网 | 亚洲黄色在线观看 | 天堂av网站 | 中国美女一级看片 | 久久久久久久久久免费视频 | 日韩一区二区三区观看 | 久久你懂得 | 免费热情视频 | 久久久久免费精品视频 | www.99av| 超碰免费成人 | 日韩欧美精品免费 | 日韩欧美在线免费 | 韩国av免费 | 91网站免费观看 | 成年在线观看 | 国产成本人视频在线观看 | 人人爱人人做人人爽 | 一级黄色网址 | 香蕉网在线观看 | 日本精品久久久一区二区三区 | 日韩av中文字幕在线免费观看 | 婷婷在线网站 | 精品久久免费看 | 黄色毛片视频免费观看中文 | 久久免费视频4 | 欧美视屏一区二区 | 日精品在线观看 | 伊人手机在线 | 午夜私人影院 | 亚洲欧洲精品一区二区精品久久久 | 久草在线视频精品 | 麻豆免费视频 | 日韩视频免费 | 久久综合亚洲鲁鲁五月久久 | 涩五月婷婷 | 激情综合色播五月 | 日韩欧美视频免费在线观看 | 啪啪av在线| 亚洲精品中文在线资源 | 精品国产99国产精品 | 成人免费看片98欧美 | 亚洲丝袜一区二区 | 成年人三级网站 | 精品一区二区免费在线观看 | av在线短片 | 日韩有码在线播放 | 亚洲春色奇米影视 | 婷婷色中文字幕 | 久久婷综合| 九九视频免费观看视频精品 | 视频一区亚洲 | 高清av不卡 | 久久人人爽人人 | 在线影院 国内精品 | 久久国产精品影片 | 欧美电影在线观看 | 99久久精品网 | 日韩在线色视频 | 日韩亚洲国产精品 | 国产精品毛片完整版 | 狠狠干狠狠久久 | 最近日本韩国中文字幕 | 精品久久久久久久 | 国产精品一区二区三区久久 | 久久久亚洲影院 | 国产精品理论片在线观看 | 九九热免费在线观看 | 久久久国产影院 | 久久久久久久网站 | 久久久久久免费毛片精品 | 亚洲精品在线观看视频 | 99精品国产99久久久久久福利 | 亚洲成aⅴ人在线观看 | 欧美日韩精品在线观看 | 国产日产精品久久久久快鸭 | 久久国色夜色精品国产 | 国产黄免费在线观看 | 一区二区视频电影在线观看 | 中文字幕在线看 | 亚洲三级影院 | 成人久久精品 | 免费看片色 | 天堂av免费观看 | 色视频网址 | 精品国产网址 | 久久久久久久久久久久电影 | 韩国精品视频在线观看 | 日韩午夜在线观看 | 超碰在线观看av.com | 91精品在线免费观看 | av在线免费观看黄 | 国产精品黄色在线观看 | 亚洲综合丁香 | 日韩美在线观看 | 亚洲视频456| 一级片视频在线 | 狠狠色噜噜狠狠狠狠 | 亚洲成av人电影 | 国产在线日韩 | 在线观看国产一区二区 | 精品国产123 | 日韩在线网址 | 九九热免费在线视频 | 久久亚洲区 | 字幕网资源站中文字幕 | 91av大全| 最近中文字幕第一页 | 国产人免费人成免费视频 | 欧美一级电影片 | 激情视频二区 | 久草久草在线观看 | 啪啪精品 | 亚洲午夜精品久久久久久久久久久久 | zzijzzij亚洲日本少妇熟睡 | 97色综合 | 欧美成人一二区 | 91精品毛片| 成人久久影院 | 久草久草视频 | 亚洲一区二区视频在线 | 国产亚洲综合精品 | 91av资源网 | 色噜噜在线观看 | 丁香激情网| 亚洲九九九在线观看 | 超碰人人91 | 久久999精品 | 中国黄色一级大片 | 免费视频久久 | 婷婷丁香在线 | 中文字幕一区二区三区四区视频 | 成人黄色小说网 | 一区二区激情视频 | 欧美一二三区在线观看 | 精品国产精品一区二区夜夜嗨 | 国产一区影院 | 九九久久国产 | 欧美黑人xxxx猛性大交 | 国产综合婷婷 | 五月婷婷.com | 91免费版成人 | 99性视频 | 成片免费 | 国产一区二区在线视频观看 | 欧美色操 | 日韩在线一区二区免费 | 国产91在线免费视频 | 在线观看mv的中文字幕网站 | 国产老熟 |