久久亚洲成a人片熟女精品色一区二区三区|国产精品视频第一精品视频|av天堂热无码手机版|亚洲?v无码久久无遮挡|国产精品偷伦视频免费观看国产|麻豆国产自产精品丰满熟妇|av无码av不卡一区二区|久久亚洲精品中文字

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線(xiàn)實(shí)戰(zhàn)洞察。

CAN總線(xiàn)從原理到STM32實(shí)戰(zhàn):差分信號(hào)、仲裁機(jī)制與調(diào)試技巧

CAN總線(xiàn)從原理到STM32實(shí)戰(zhàn):差分信號(hào)、仲裁機(jī)制與調(diào)試技巧 CAN 總線(xiàn)這東西搞嵌入式的遲早要碰。不管是做汽車(chē)電子、工業(yè)控制還是什么無(wú)人機(jī)、機(jī)械臂只要涉及多個(gè)節(jié)點(diǎn)之間穩(wěn)定通信CAN 總是那個(gè)繞不開(kāi)的選項(xiàng)。用一句話(huà)概括它一對(duì)差分線(xiàn)多節(jié)點(diǎn)掛載無(wú)主機(jī)依賴(lài)靠報(bào)文 ID 裁決優(yōu)先級(jí)。這套機(jī)制聽(tīng)起來(lái)簡(jiǎn)單實(shí)際用起來(lái)細(xì)節(jié)極多像位時(shí)序采樣、終端電阻匹配、總線(xiàn)仲裁、錯(cuò)誤處理、過(guò)濾器配置每一個(gè)環(huán)節(jié)都可能讓你調(diào)試到懷疑人生。我?guī)啄昵暗谝淮巫?CAN 通信的項(xiàng)目時(shí)也被速率配不對(duì)、收發(fā)超時(shí)這類(lèi)問(wèn)題折磨過(guò)。這篇文章不聊虛的直接從原理講到 STM32 上的手寫(xiě)代碼把我踩過(guò)的坑和常用的套路一并交代清楚。這篇文章適合誰(shuí)看如果你是剛接觸 CAN 的初學(xué)者可以從頭讀到尾建立起完整的知識(shí)框架如果你已經(jīng)在用 STM32 做開(kāi)發(fā)但只是照抄例程、不太清楚底層怎么回事那重點(diǎn)看協(xié)議細(xì)節(jié)、寄存器配置和調(diào)試經(jīng)驗(yàn)部分能解決現(xiàn)實(shí)中不少疑惑。整篇文章會(huì)用大量類(lèi)比和實(shí)例盡量讓非汽車(chē)電子背景的讀者也能輕松跟上。1. 從物理層看懂 CAN為什么它這么抗干擾1.1 差分信號(hào)一對(duì)線(xiàn)解決所有問(wèn)題CAN 總線(xiàn)物理層最核心的設(shè)計(jì)就是差分傳輸。常規(guī)串口用一根信號(hào)線(xiàn)對(duì)地傳遞電平受地電位差和電磁干擾影響大。CAN 用 CANH 和 CANL 兩根線(xiàn)傳輸電壓差接收端比較兩根線(xiàn)的電壓差來(lái)判斷邏輯電平而不是比較某根線(xiàn)對(duì)地的絕對(duì)電壓。干擾信號(hào)通常是共模形式的差分接收天然就把這種共模干擾抵消掉了所以 CAN 在電機(jī)、逆變器這類(lèi)強(qiáng)電磁干擾環(huán)境里依然能穩(wěn)定工作。CAN 的顯性電平也就是邏輯 0對(duì)應(yīng) CANH 和 CANL 的電壓差約為 2V隱性電平對(duì)應(yīng)邏輯 1電壓差約為 0V。如果你用示波器看總線(xiàn)波形空閑時(shí)總線(xiàn)電壓大約在 2.5V 附近波動(dòng)顯性位會(huì)被拉低到 1.5V 左右而 CANH 會(huì)被拉高到 3.5V 左右。這種電平定義直接決定了總線(xiàn)仲裁機(jī)制的實(shí)現(xiàn)基礎(chǔ)后文會(huì)詳細(xì)展開(kāi)。1.2 終端電阻不能省也不能亂接標(biāo)準(zhǔn) CAN 總線(xiàn)要求在總線(xiàn)兩端各接一個(gè) 120Ω 終端電阻作用是匹配傳輸線(xiàn)阻抗減少信號(hào)反射。如果只接一個(gè)、接在中間或者干脆不接板子在短距離低速通信時(shí)可能還能工作但波特率一旦提高或者線(xiàn)長(zhǎng)達(dá)到幾十米就會(huì)在隱性到顯性的跳變沿上產(chǎn)生嚴(yán)重的信號(hào)振鈴導(dǎo)致采樣錯(cuò)誤。很多用 STM32 的人第一次調(diào)試 CAN 不通過(guò)就是因?yàn)闆](méi)接終端電阻。我自己測(cè)試時(shí)一般直接把 120Ω 電阻做在轉(zhuǎn)接板上兩端的節(jié)點(diǎn)才各放一個(gè)。還有一個(gè)常見(jiàn)誤區(qū)是兩個(gè)節(jié)點(diǎn)通信時(shí)哪怕只有兩個(gè)設(shè)備也需要在各自端各接一個(gè) 120Ω合起來(lái)總線(xiàn)上的等效阻抗才是 60Ω這是 CAN 收發(fā)器輸出驅(qū)動(dòng)設(shè)計(jì)的目標(biāo)負(fù)載。如果兩端各接一個(gè)但中間還有其他節(jié)點(diǎn)那就是過(guò)度端接同樣會(huì)出問(wèn)題。注意部分開(kāi)發(fā)板上已經(jīng)集成了終端電阻并且有跳線(xiàn)開(kāi)關(guān)控制使用前務(wù)必確認(rèn)開(kāi)關(guān)狀態(tài)以免出現(xiàn)兩個(gè)電阻并聯(lián)變成了 60Ω 的異常負(fù)載。1.3 收發(fā)器選型與電平轉(zhuǎn)換STM32 內(nèi)部的 CAN 控制器只是協(xié)議控制器負(fù)責(zé)數(shù)據(jù)鏈路層的幀處理、錯(cuò)誤管理和位時(shí)序它本身不能直接接總線(xiàn)。控制器輸出的是 TX/RX 數(shù)字信號(hào)必須經(jīng)過(guò) CAN 收發(fā)器轉(zhuǎn)換成 CANH/CANL 差分電平才能掛上總線(xiàn)。常用收發(fā)器有 TJA1050、TJA1040、SN65HVD230 等。選型的時(shí)候要看速率、工作電壓和待機(jī)電流大部分應(yīng)用選 TJA1050 這類(lèi)就足夠穩(wěn)定。如果你的 MCU 是 3.3V而收發(fā)器是 5V 供電像 TJA1050即使單片機(jī)引腳是 3.3V 推挽輸出CAN 控制器和它對(duì)接也一般沒(méi)問(wèn)題因?yàn)槭瞻l(fā)器的 TXD 輸入閾值兼容 3.3V 邏輯。但要注意有些老式收發(fā)器的高電平輸入閾值偏高最好選擇支持 3.3V 邏輯輸入的型號(hào)或者做電平轉(zhuǎn)換否則偶發(fā)性的發(fā)送異常就很難查了。2. 數(shù)據(jù)鏈路層拆解報(bào)文格式、仲裁和位填充2.1 標(biāo)準(zhǔn)幀與擴(kuò)展幀別把 ID 位寬搞混CAN 2.0 協(xié)議定義了兩種幀格式標(biāo)準(zhǔn)幀和擴(kuò)展幀。標(biāo)準(zhǔn)幀的標(biāo)識(shí)符 ID 是 11 位擴(kuò)展幀是 29 位后者在多節(jié)點(diǎn)復(fù)雜網(wǎng)絡(luò)中更常見(jiàn)因?yàn)樗苋菁{更多不同優(yōu)先級(jí)的報(bào)文類(lèi)型。兩者的幀頭字段區(qū)分就在 IDE 位。幀的基本結(jié)構(gòu)包括 SOF 起始幀、仲裁段、控制段、數(shù)據(jù)段、CRC 校驗(yàn)段、ACK 應(yīng)答段和 EOF 結(jié)束段。其中控制段里的 DLC 表示數(shù)據(jù)長(zhǎng)度CAN 規(guī)定單幀數(shù)據(jù)最多 8 個(gè)字節(jié)。很多人會(huì)問(wèn)為什么不用更多這是當(dāng)年總線(xiàn)速率和工業(yè)場(chǎng)景下的折中設(shè)計(jì)保證短幀快速傳輸和低延遲。雖然后來(lái)出現(xiàn)了 CAN FD數(shù)據(jù)段最長(zhǎng)可到 64 字節(jié)但直到今天大量設(shè)備仍然跑經(jīng)典 CAN應(yīng)用層協(xié)議也大多兼容 8 字節(jié)格式。2.2 總線(xiàn)仲裁機(jī)制誰(shuí)優(yōu)先級(jí)高誰(shuí)先走這是 CAN 最核心的設(shè)計(jì)之一也是它和普通串口總線(xiàn)最大的區(qū)別。多個(gè)節(jié)點(diǎn)同時(shí)發(fā)送時(shí)總線(xiàn)不會(huì)像 I2C 那樣需要主機(jī)仲裁協(xié)調(diào)而是每一位進(jìn)行比較發(fā)送節(jié)點(diǎn)一邊發(fā) ID 位一邊監(jiān)聽(tīng)總線(xiàn)電平。如果某個(gè)節(jié)點(diǎn)發(fā)送的是隱性位1卻在總線(xiàn)上讀到顯性位0說(shuō)明有其他節(jié)點(diǎn)在發(fā)送優(yōu)先級(jí)更高的報(bào)文這個(gè)節(jié)點(diǎn)就立刻退出發(fā)送轉(zhuǎn)為接收下次再自動(dòng)重發(fā)。這種機(jī)制要求 ID 值越小優(yōu)先級(jí)越高。因?yàn)轱@性位 0 能覆蓋隱性位 1ID 前面越多的 0越容易在仲裁中勝出。在工程上通常把控制類(lèi)報(bào)文分配低 ID 值比如剎車(chē)、急停這類(lèi)實(shí)時(shí)性要求極高的優(yōu)先分配 0x0xx信息類(lèi)報(bào)文分配高 ID比如狀態(tài)監(jiān)測(cè)、溫度上報(bào)這些允許一定延遲的。設(shè)計(jì)應(yīng)用層時(shí)如果一開(kāi)始沒(méi)有規(guī)劃好 ID 分配策略后期增加節(jié)點(diǎn)會(huì)很痛苦這是實(shí)際項(xiàng)目中容易被低估的問(wèn)題。2.3 位填充和同步機(jī)制CAN 協(xié)議規(guī)定連續(xù)發(fā)送 5 個(gè)相同電平的位之后必須插入一個(gè)相反電平的填充位。接收端在接收時(shí)會(huì)把這個(gè)填充位移除。這樣做的好處是保證總線(xiàn)上不會(huì)出現(xiàn)長(zhǎng)時(shí)間無(wú)跳變沿的情況因?yàn)榻邮展?jié)點(diǎn)的時(shí)鐘同步依賴(lài)于電平跳變沿。收發(fā)雙方的時(shí)鐘始終存在微小誤差如果沒(méi)有頻繁的跳變沿來(lái)重新同步位時(shí)序時(shí)間一長(zhǎng)采樣點(diǎn)就會(huì)偏移到錯(cuò)誤的位區(qū)間通信立刻出錯(cuò)。這里有個(gè)很容易踩的坑位填充規(guī)則不影響 CRC 計(jì)算的原始數(shù)據(jù)但發(fā)送時(shí) CRC 序列本身也要做填充處理接收端校驗(yàn)時(shí)則需要先剝離填充位。所以調(diào)試時(shí)別只看數(shù)據(jù)幀內(nèi)容如果抓到的波形異??紤]是不是位填充邏輯和 CRC 邊界沒(méi)對(duì)齊特別是你自己實(shí)現(xiàn) CAN 協(xié)議或者拿到非標(biāo)準(zhǔn)控制器做兼容時(shí)。3. STM32 bxCAN 外設(shè)過(guò)濾器、報(bào)文存儲(chǔ)和中斷3.1 為什么叫 bxCAN它的內(nèi)存結(jié)構(gòu)是什么樣的STM32 里集成的 CAN 控制器叫 bxCAN基于此前某半導(dǎo)體大廠的 IP 核。它有一個(gè)專(zhuān)門(mén)的報(bào)文存儲(chǔ)區(qū)不是簡(jiǎn)單地給每個(gè)郵箱分配固定地址而是按照 SRAM 方式訪(fǎng)問(wèn)控制邏輯來(lái)管理。bxCAN 提供 3 個(gè)發(fā)送郵箱和 2 個(gè)接收 FIFO每個(gè) FIFO 深度為 3 個(gè)報(bào)文。對(duì)絕大多數(shù)應(yīng)用來(lái)說(shuō)這個(gè)硬件緩沖池完全夠用。bxCAN 還有一個(gè)顯著特點(diǎn)每個(gè)節(jié)點(diǎn)可以配置多個(gè)過(guò)濾器組STM32F103 系列提供 14 組過(guò)濾器F405 等系列更多。過(guò)濾器的作用是只讓感興趣的報(bào)文進(jìn)入接收 FIFO不屬于當(dāng)前節(jié)點(diǎn)的報(bào)文直接在硬件層面被丟棄這樣能大幅降低 MCU 的中斷負(fù)載。不理解過(guò)濾器的工程師容易把接收中斷寫(xiě)成高頻率觸發(fā)結(jié)果 CPU 大部分時(shí)間都在處理無(wú)關(guān)中斷系統(tǒng)響應(yīng)自然就慢了。3.2 過(guò)濾器模式列表模式和掩碼模式怎么選bxCAN 的過(guò)濾器支持兩種工作模式列表模式和掩碼模式。列表模式就是精確匹配規(guī)則里寫(xiě)死的 ID 必須完全一致才接收。掩碼模式則是按位匹配把掩碼中為 1 的位視為需要嚴(yán)格匹配為 0 的位視為不關(guān)心。實(shí)際項(xiàng)目中掩碼模式更適合需要接收一組連續(xù) ID 報(bào)文的場(chǎng)景比如接收 ID 0x100 到 0x10F 之間的所有報(bào)文只需把掩碼低 4 位置 0其余位置 1。配置過(guò)濾器的時(shí)候要注意32 位過(guò)濾器寬度下標(biāo)準(zhǔn)幀的 ID 在寄存器中存儲(chǔ)位置和擴(kuò)展幀不同而且數(shù)據(jù)位要左移對(duì)齊。不少初學(xué)者直接拿例程改發(fā)現(xiàn)濾出來(lái)的 ID 總是不對(duì)其實(shí)是因?yàn)闆](méi)理解寄存器位域的布局。建議配置完過(guò)濾器后先開(kāi)一個(gè)全匹配的掩碼模式驗(yàn)證接收鏈路通了再逐步收窄掩碼這樣能減少排查難度。3.3 發(fā)送郵箱機(jī)制與中斷標(biāo)志發(fā)送時(shí)bxCAN 提供 3 個(gè)發(fā)送郵箱每個(gè)郵箱可以獨(dú)立提交報(bào)文。軟件提交后硬件自動(dòng)按照優(yōu)先級(jí)順序發(fā)送郵箱中的報(bào)文并處理總線(xiàn)仲裁和重發(fā)。發(fā)送完成的標(biāo)志是郵箱的 TXOK 位置 1這個(gè)標(biāo)志可以通過(guò)中斷或輪詢(xún)方式讀取。一個(gè)常見(jiàn)的工程坑是不考慮郵箱是否空閑就直接往同一個(gè)郵箱反復(fù)寫(xiě)數(shù)據(jù)導(dǎo)致丟幀。正確的做法是每次發(fā)送前檢查郵箱空滿(mǎn)狀態(tài)或者直接使用發(fā)送完成中斷在中斷回調(diào)里處理下一幀數(shù)據(jù)。多個(gè)節(jié)點(diǎn)或高頻率周期性發(fā)送時(shí)三個(gè)郵箱很容易被占滿(mǎn)如果發(fā)送失敗標(biāo)志出現(xiàn)一定要記錄錯(cuò)誤狀態(tài)并做重發(fā)策略不能悶頭發(fā)。3.4 中斷事件全貌接收中斷、發(fā)送中斷、錯(cuò)誤中斷和喚醒中斷bxCAN 的中斷可分四類(lèi)接收 FIFO 有報(bào)文時(shí)觸發(fā)接收中斷發(fā)送完成時(shí)觸發(fā)發(fā)送中斷發(fā)生錯(cuò)誤時(shí)觸發(fā)錯(cuò)誤中斷還有 CAN 喚醒中斷和睡眠中斷。用 STM32 開(kāi)發(fā)時(shí)有些開(kāi)發(fā)者只開(kāi)了接收中斷錯(cuò)誤中斷沒(méi)開(kāi)結(jié)果總線(xiàn)一出錯(cuò)代碼就跟傻了一樣沒(méi)有反饋。真正穩(wěn)定的通信系統(tǒng)錯(cuò)誤中斷必須開(kāi)起來(lái)哪怕只是在中斷里把一個(gè)錯(cuò)誤計(jì)數(shù)器累加也對(duì)現(xiàn)場(chǎng)定位問(wèn)題極其有幫助。接收中斷也分 FIFO0 和 FIFO1 兩個(gè)獨(dú)立中斷入口對(duì)應(yīng)不同優(yōu)先級(jí)的報(bào)文策略。可以這樣設(shè)計(jì)將關(guān)鍵控制報(bào)文配置到 FIFO0 并開(kāi)啟高優(yōu)先級(jí)中斷普通狀態(tài)報(bào)文進(jìn) FIFO1 用低優(yōu)先級(jí)處理或者直接輪詢(xún)這樣高實(shí)時(shí)性報(bào)文的中斷延遲大大縮短這是從實(shí)際項(xiàng)目里總結(jié)出的實(shí)用技巧。4. 手把手 STM32 配置從 CubeMX 到標(biāo)準(zhǔn)庫(kù)實(shí)戰(zhàn)4.1 波特率計(jì)算位時(shí)間與采樣點(diǎn)CAN 波特率計(jì)算公式是波特率 APB1 時(shí)鐘頻率 / (預(yù)分頻器 × (同步段 傳播段 相位緩沖段1 相位緩沖段2))。STM32F1 系列的 APB1 時(shí)鐘是 36MHz如果目標(biāo)波特率是 500kbps可以這樣算預(yù)分頻 4時(shí)間單元 36MHz / 4 9MHz位時(shí)間 9000000 / 500000 18 個(gè)時(shí)間單元。常見(jiàn)分配方式同步段 1TQ傳播段 1TQ相位緩沖段1 為 8TQ相位緩沖段2 為 8TQ總位時(shí)間 18TQ。這些段的分配決定采樣點(diǎn)位置。采樣點(diǎn)一般設(shè)置在 75% 到 85% 之間比較穩(wěn)定這是綜合考慮線(xiàn)纜延遲、收發(fā)器傳播延遲和時(shí)鐘誤差的結(jié)果。如果你用 CubeMX 的默認(rèn)配置BS1 8TQBS2 7TQ同步段 1TQ總位時(shí)間就是 16TQ采樣點(diǎn)約 87.5%對(duì)大多數(shù)短距離總線(xiàn)來(lái)說(shuō)也行。但如果總線(xiàn)長(zhǎng)度較長(zhǎng)或者波特率高于 1Mbps建議手動(dòng)設(shè)置采樣點(diǎn)在 80% 左右更穩(wěn)妥。4.2 引腳復(fù)用和時(shí)鐘配置用 CubeMX 時(shí)CAN 引腳默認(rèn)在 PA11 和 PA12CAN RX 和 TX但確認(rèn)一下目標(biāo)板原理圖如果默認(rèn)引腳被占用或者板子引出了其他復(fù)用引腳就需要重新映射。F1 系列 CAN 也支持復(fù)用映射到 PB8、PB9配置時(shí)要選擇正確的復(fù)用功能。初始化順序建議是先配置 GPIO再使能 CAN 外設(shè)時(shí)鐘然后初始化 CAN 參數(shù)最后配置過(guò)濾器。如果順序顛倒可能出現(xiàn) CAN 初始化失敗卻查不到原因的情況。需要提醒的是CAN 外設(shè)時(shí)鐘和 GPIO 時(shí)鐘可能掛在不同的 AHB1/APB1 總線(xiàn)上有些人初始化時(shí)忘記開(kāi)某個(gè)時(shí)鐘就導(dǎo)致外設(shè)不工作這也是常見(jiàn)的低階錯(cuò)誤。檢查時(shí)鐘樹(shù)時(shí)確認(rèn) CAN 和 GPIO 所在總線(xiàn)都已使能。這一點(diǎn)看起來(lái)基礎(chǔ)但調(diào)試中出現(xiàn)莫名問(wèn)題后還是值得先排查一遍。4.3 初始化代碼參考下面給出一段基于標(biāo)準(zhǔn)庫(kù)風(fēng)格的初始化參考代碼核心實(shí)現(xiàn)步驟與寄存器操作對(duì) HAL 庫(kù)同樣適用void CAN_Init_Config(void) { GPIO_InitTypeDef GPIO_InitStructure; CAN_InitTypeDef CAN_InitStructure; CAN_FilterInitTypeDef CAN_FilterInitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE); RCC_APB1PeriphClockCmd(RCC_APB1Periph_CAN1, ENABLE); GPIO_InitStructure.GPIO_Pin GPIO_Pin_11; // RX GPIO_InitStructure.GPIO_Mode GPIO_Mode_IPU; GPIO_Init(GPIOA, GPIO_InitStructure); GPIO_InitStructure.GPIO_Pin GPIO_Pin_12; // TX GPIO_InitStructure.GPIO_Mode GPIO_Mode_AF_PP; GPIO_InitStructure.GPIO_Speed GPIO_Speed_50MHz; GPIO_Init(GPIOA, GPIO_InitStructure); CAN_DeInit(CAN1); CAN_StructInit(CAN_InitStructure); CAN_InitStructure.CAN_TTCM DISABLE; CAN_InitStructure.CAN_ABOM ENABLE; // 自動(dòng)離線(xiàn)恢復(fù) CAN_InitStructure.CAN_AWUM ENABLE; CAN_InitStructure.CAN_NART DISABLE; // 自動(dòng)重傳 CAN_InitStructure.CAN_RFLM DISABLE; // FIFO 不鎖定 CAN_InitStructure.CAN_TXFP DISABLE; // 按 ID 優(yōu)先級(jí)發(fā)送 CAN_InitStructure.CAN_Mode CAN_Mode_Normal; CAN_InitStructure.CAN_SJW CAN_SJW_1tq; CAN_InitStructure.CAN_BS1 CAN_BS1_8tq; CAN_InitStructure.CAN_BS2 CAN_BS2_7tq; CAN_InitStructure.CAN_Prescaler 4; CAN_Init(CAN1, CAN_InitStructure); CAN_FilterInitStructure.CAN_FilterNumber 0; CAN_FilterInitStructure.CAN_FilterMode CAN_FilterMode_IdMask; CAN_FilterInitStructure.CAN_FilterScale CAN_FilterScale_32bit; CAN_FilterInitStructure.CAN_FilterIdHigh 0x0000; CAN_FilterInitStructure.CAN_FilterIdLow 0x0000; CAN_FilterInitStructure.CAN_FilterMaskIdHigh 0x0000; CAN_FilterInitStructure.CAN_FilterMaskIdLow 0x0000; CAN_FilterInitStructure.CAN_FilterFIFOAssignment CAN_FIFO0; CAN_FilterInitStructure.CAN_FilterActivation ENABLE; CAN_FilterInit(CAN_FilterInitStructure); CAN_ITConfig(CAN1, CAN_IT_FMP0 | CAN_IT_ERR, ENABLE); }初始化里比較關(guān)鍵的兩個(gè)參數(shù)是 ABOM自動(dòng)離線(xiàn)恢復(fù)和 NART禁止自動(dòng)重傳。ABOM 開(kāi)啟后如果總線(xiàn)因嚴(yán)重錯(cuò)誤進(jìn)入離線(xiàn)狀態(tài)硬件會(huì)自動(dòng)等待恢復(fù)條件再重新參與通信不需要軟件干預(yù)。NART 關(guān)閉意味著自動(dòng)重傳開(kāi)啟發(fā)送失敗的幀會(huì)硬件自動(dòng)重傳直到成功或出錯(cuò)。這個(gè)配置對(duì)實(shí)時(shí)性要求高的場(chǎng)景很重要。如果不想讓一幀失敗數(shù)據(jù)一直占用郵箱可以考慮打開(kāi) NART自己管理重傳邏輯。提示在雙 CAN 的 STM32 芯片上CAN2 的時(shí)鐘來(lái)自 CAN1要啟用 CAN2 必須先初始化 CAN1。這個(gè)坑很多人到后面才遇到。4.4 發(fā)送報(bào)文輪詢(xún)與中斷兩種姿勢(shì)先寫(xiě)一個(gè)發(fā)送函數(shù)核心操作是選擇一個(gè)空閑郵箱、把 ID 和數(shù)據(jù)按位域填充進(jìn)寄存器、提交發(fā)送請(qǐng)求。標(biāo)準(zhǔn)庫(kù)寫(xiě)成這樣uint8_t CAN_SendStdFrame(uint32_t stdId, uint8_t *data, uint8_t len) { CanTxMsg TxMessage; uint8_t i; TxMessage.StdId stdId; TxMessage.ExtId 0; TxMessage.IDE CAN_Id_Standard; TxMessage.RTR CAN_RTR_Data; TxMessage.DLC len; for (i 0; i len; i) { TxMessage.Data[i] data[i]; } if (CAN_Transmit(CAN1, TxMessage) ! CAN_TxStatus_Ok) { return 1; } return 0; }這個(gè)函數(shù)只做了發(fā)送提交并不保證報(bào)文真的已經(jīng)上總線(xiàn)。如果需要確認(rèn)發(fā)送完成需要再輪詢(xún)郵箱狀態(tài)或者開(kāi)發(fā)送完成中斷。實(shí)際項(xiàng)目中我一般用一個(gè)環(huán)形緩沖區(qū)保存待發(fā)送報(bào)文發(fā)送完成中斷里取下一個(gè)發(fā)送防止高頻調(diào)用發(fā)送函數(shù)時(shí)因?yàn)猷]箱全滿(mǎn)而丟幀。另一個(gè)建議是發(fā)送函數(shù)返回錯(cuò)誤時(shí)把錯(cuò)誤碼記錄下來(lái)配合錯(cuò)誤中斷去判斷是總線(xiàn)錯(cuò)誤、仲裁丟失還是郵箱滿(mǎn)。如果發(fā)送一直失敗總線(xiàn)電壓、終端電阻、波特率和節(jié)點(diǎn) ID 沖突是最先要排查的四個(gè)方向。4.5 接收?qǐng)?bào)文中斷回調(diào)解析接收用中斷最直接。在中斷服務(wù)函數(shù)里讀取 FIFO 報(bào)文處理完必須清標(biāo)志。標(biāo)準(zhǔn)庫(kù)的接收中斷處理大致如下void USB_LP_CAN1_RX0_IRQHandler(void) { CanRxMsg RxMessage; CAN_Receive(CAN1, CAN_FIFO0, RxMessage); // 根據(jù) RxMessage.StdId 分發(fā)處理 // 放到應(yīng)用層環(huán)形緩沖區(qū)再置事件標(biāo)志 }如果 FIFO 溢出中斷可能會(huì)進(jìn)不來(lái)此時(shí)要檢查溢出標(biāo)志 CAN_FLAG_FOV0。一旦發(fā)生溢出說(shuō)明接收處理太慢或丟棄策略有問(wèn)題需要優(yōu)化中斷里的處理邏輯盡量減少耗時(shí)操作只做存 buffer 和置標(biāo)志具體解析放到主循環(huán)或?qū)S萌蝿?wù)里。5. 不得不說(shuō)的坑波特率容差、錯(cuò)誤狀態(tài)機(jī)和總線(xiàn)離線(xiàn)恢復(fù)5.1 波特率容差到底有多大CAN 通信要求每個(gè)節(jié)點(diǎn)的位時(shí)序誤差保持在特定的容差范圍內(nèi)。以 500kbps 為例位時(shí)間 2us在 16TQ 的采樣點(diǎn)配置下采樣窗口大約是 1.75us 處。晶振精度一般 ±0.1% 到 ±0.5%這是沒(méi)問(wèn)題的。問(wèn)題是很多人用了內(nèi)部 RC 振蕩器精度可能到 ±1% 甚至更高在很多情況下也能跑通但總線(xiàn)一旦拉長(zhǎng)、干擾變大就容易偶發(fā)錯(cuò)誤。所以 CAN 通信推薦使用外部晶振或者至少保證所有節(jié)點(diǎn)時(shí)鐘精度滿(mǎn)足協(xié)議要求。調(diào)試時(shí)最有效的辦法是用示波器看總線(xiàn)波形測(cè)量顯性位寬度是否等于理論位時(shí)間。如果位寬差太多說(shuō)明波特率配錯(cuò)了如果位寬正確但波形毛刺密集優(yōu)先檢查終端電阻和線(xiàn)纜質(zhì)量??偩€(xiàn)上如果出現(xiàn)連續(xù)錯(cuò)誤幀先用 CAN 分析儀抓包看看錯(cuò)誤幀的類(lèi)型是填充錯(cuò)誤、CRC 錯(cuò)誤還是應(yīng)答錯(cuò)誤這些信息能快速定位問(wèn)題方向。5.2 錯(cuò)誤計(jì)數(shù)器和總線(xiàn)離線(xiàn)恢復(fù)機(jī)制CAN 控制器內(nèi)部有發(fā)送錯(cuò)誤計(jì)數(shù)器和接收錯(cuò)誤計(jì)數(shù)器。發(fā)送錯(cuò)誤每錯(cuò)誤一次加 8接收錯(cuò)誤每錯(cuò)誤一次加 1成功發(fā)送或接收一次則減 1。當(dāng)發(fā)送錯(cuò)誤計(jì)數(shù)超過(guò) 255節(jié)點(diǎn)進(jìn)入 Bus-Off 狀態(tài)徹底與總線(xiàn)隔離不再發(fā)送任何報(bào)文。在 Bus-Off 狀態(tài)下如果 ABOM 使能硬件會(huì)自動(dòng)等待 128 次總線(xiàn)空閑重新恢復(fù)如果未使能軟件需要手動(dòng)觸發(fā)恢復(fù)流程。錯(cuò)誤狀態(tài)可以通過(guò)讀取 ESR 寄存器或調(diào)用庫(kù)函數(shù)狀態(tài)位來(lái)獲取。調(diào)試時(shí)我習(xí)慣在主循環(huán)里周期性讀取錯(cuò)誤計(jì)數(shù)一旦發(fā)現(xiàn)持續(xù)增長(zhǎng)就說(shuō)明鏈路存在系統(tǒng)性問(wèn)題而不是偶發(fā)干擾。工程現(xiàn)場(chǎng)如果出現(xiàn)間歇性 Bus-Off需要考慮屏蔽線(xiàn)接地、總線(xiàn)拓?fù)浣Y(jié)構(gòu)不要接成星形以及線(xiàn)纜長(zhǎng)度與波特率的匹配關(guān)系。5.3 用測(cè)試模式驗(yàn)證硬件鏈路在查詢(xún)具體協(xié)議問(wèn)題之前先用回環(huán)模式驗(yàn)證 MCU 那一側(cè)是否正常。bxCAN 支持靜默回環(huán)模式Silent Loopback和回環(huán)模式Loopback。回環(huán)模式中控制器發(fā)出的報(bào)文會(huì)在內(nèi)部直接被接收不經(jīng)過(guò)外部收發(fā)器。初始化時(shí)把 CAN_Mode 設(shè)置為 CAN_Mode_LoopBack然后自發(fā)自收如果接收成功說(shuō)明控制器和中斷配置沒(méi)問(wèn)題再切到 Normal 模式并連接總線(xiàn)測(cè)試如果失敗問(wèn)題就鎖定在收發(fā)器、接線(xiàn)或?qū)Χ斯?jié)點(diǎn)。這個(gè)簡(jiǎn)明的排除法能省大量時(shí)間特別是多人協(xié)作調(diào)試時(shí)可以先各自確認(rèn)自發(fā)自收通過(guò)再對(duì)接聯(lián)調(diào)避免兩邊互相懷疑浪費(fèi)精力。6. 實(shí)戰(zhàn)經(jīng)驗(yàn)工程中如何設(shè)計(jì)與調(diào)試一套 CAN 節(jié)點(diǎn)6.1 應(yīng)用層協(xié)議設(shè)計(jì)選擇實(shí)際做一個(gè) CAN 項(xiàng)目首先要確定應(yīng)用層協(xié)議。CAN 2.0 只規(guī)定了物理層和數(shù)據(jù)鏈路層的幀格式并沒(méi)有定義數(shù)據(jù)內(nèi)容的標(biāo)準(zhǔn)含義所以每個(gè)項(xiàng)目都要自己約定報(bào)文 ID 映射和數(shù)據(jù)字段含義。工業(yè)領(lǐng)域常用 CANopen汽車(chē)領(lǐng)域常用 J1939這些協(xié)議棧已經(jīng)幫你規(guī)劃了 ID 分配、對(duì)象字典、周期通信和診斷機(jī)制。如果是簡(jiǎn)單應(yīng)用自己定義一套輕量協(xié)議也完全可行關(guān)鍵要在一開(kāi)始就明確哪些報(bào)文是周期發(fā)送哪些是事件觸發(fā)哪些是主站請(qǐng)求哪些是從站主動(dòng)上報(bào)。我的習(xí)慣是先整理一張報(bào)文定義表列出每個(gè) ID 的發(fā)送節(jié)點(diǎn)、接收節(jié)點(diǎn)、周期、數(shù)據(jù)長(zhǎng)度、字節(jié)含義和字節(jié)序。后期調(diào)試對(duì)照這張表比翻代碼快得多。尤其是多團(tuán)隊(duì)協(xié)作時(shí)這張表本身就要同步更新不然代碼寫(xiě)出來(lái)各調(diào)各的聯(lián)調(diào)必然一團(tuán)亂。6.2 多節(jié)點(diǎn)組網(wǎng)和線(xiàn)纜規(guī)則CAN 總線(xiàn)拓?fù)渫扑]直線(xiàn)型也就是一根主線(xiàn)上掛所有節(jié)點(diǎn)每個(gè)節(jié)點(diǎn)的連接 STUB 線(xiàn)盡量短。STUB 線(xiàn)超過(guò) 1 米時(shí)高速通信很容易出現(xiàn)信號(hào)反射。工業(yè)現(xiàn)場(chǎng)如果節(jié)點(diǎn)分散考慮使用帶 CAN 收發(fā)器的中繼器做分段隔離??偩€(xiàn)供電方式也有講究有些設(shè)備回環(huán)供電但同一網(wǎng)絡(luò)中多個(gè)節(jié)點(diǎn)供電時(shí)要注意地電位差不要太大不然即使有共模抑制也扛不住地面環(huán)路噪音。最好在網(wǎng)絡(luò)兩端之一做單點(diǎn)接地。終端電阻的選擇上標(biāo)準(zhǔn) 120Ω 是常規(guī)配置但低速短距離應(yīng)用有時(shí)會(huì)用 1kΩ 甚至不接也能工作。從長(zhǎng)期可靠性的角度我不建議利用這種無(wú)意中的寬松性還是按規(guī)范來(lái)這樣設(shè)備和設(shè)備之間互換時(shí)不會(huì)出莫名其妙的問(wèn)題。6.3 測(cè)試工具CAN 分析儀和示波器做 CAN 開(kāi)發(fā)最好有一臺(tái) CAN 分析儀市面上很多 USB 轉(zhuǎn) CAN 的小工具價(jià)格不貴。它可以抓取總線(xiàn)報(bào)文、模擬節(jié)點(diǎn)發(fā)送、統(tǒng)計(jì)錯(cuò)誤幀功能非常實(shí)用。沒(méi)有分析儀時(shí)示波器也是必需品至少能觀察波形、測(cè)量位寬度和跳變沿質(zhì)量。示波器探頭要接在 CANH 和 CANL 之間也就是差分測(cè)量不要分別對(duì)地測(cè)量然后口頭比較誤差那樣很容易被噪聲誤導(dǎo)。調(diào)試時(shí)如果發(fā)現(xiàn)總線(xiàn)波形高電平不到 3.5V 或者電壓擺幅偏小檢查收發(fā)器供電電壓是否偏低。波形上升沿明顯傾斜先懷疑線(xiàn)纜電容太大或驅(qū)動(dòng)能力不足必要時(shí)更換更高驅(qū)動(dòng)能力的收發(fā)器。波形上莫名其妙的凹陷和振鈴檢查 STUB 線(xiàn)和終端電阻位置。這些觀察比盲目改代碼高效得多。6.4 高可靠場(chǎng)景的冗余與診斷設(shè)計(jì)在一些穩(wěn)定性要求極高的場(chǎng)景比如電梯控制、車(chē)輛通信CAN 網(wǎng)絡(luò)往往采用雙冗余總線(xiàn)或者增加健康狀態(tài)報(bào)文。健康狀態(tài)報(bào)文就是節(jié)點(diǎn)周期性上報(bào)運(yùn)行狀態(tài)、錯(cuò)誤計(jì)數(shù)和供電電壓等信息主控側(cè)一旦超時(shí)未收到某個(gè)節(jié)點(diǎn)的健康報(bào)文就能作出離線(xiàn)判斷。這個(gè)設(shè)計(jì)不復(fù)雜對(duì)定位故障節(jié)點(diǎn)和總線(xiàn)故障非常有幫助。還可以考慮使用 CAN 的遠(yuǎn)程幀RTR機(jī)制讓主站請(qǐng)求從站數(shù)據(jù)。遠(yuǎn)程幀的優(yōu)先級(jí)和數(shù)據(jù)幀一樣靠 ID 仲裁。不過(guò)遠(yuǎn)程幀的應(yīng)用沒(méi)有想象中那么普遍在很多協(xié)議棧里已經(jīng)弱化了自己設(shè)計(jì)協(xié)議時(shí)按需使用即可不要為了用而用。7. 常見(jiàn)問(wèn)題速查表與調(diào)試技巧下面整理一份經(jīng)常遇到的 CAN 故障排查表基本都是我在實(shí)際項(xiàng)目中反復(fù)看到的問(wèn)題現(xiàn)象可能原因排查方向完全收不到報(bào)文終端電阻未接或接錯(cuò)示波器測(cè) CANH/CANL 波形確認(rèn)顯隱性電平變化波特率不一致節(jié)點(diǎn)配置的位時(shí)序不通計(jì)算各節(jié)點(diǎn)實(shí)際波特率比對(duì)采樣點(diǎn)偶發(fā)錯(cuò)誤幀STUB 線(xiàn)過(guò)長(zhǎng)、接線(xiàn)松動(dòng)檢查拓?fù)渥ュe(cuò)誤幀類(lèi)型看 CRC 錯(cuò)誤比例某個(gè)節(jié)點(diǎn)單獨(dú)發(fā)不出過(guò)濾器配置錯(cuò)誤先開(kāi)全匹配掩碼確認(rèn)鏈路總線(xiàn)處于 Bus-Off嚴(yán)重短路或 ID 沖突斷開(kāi)節(jié)點(diǎn)逐個(gè)排查檢查線(xiàn)纜是否短路發(fā)送超時(shí)且 error 計(jì)數(shù)持續(xù)增長(zhǎng)對(duì)端節(jié)點(diǎn)不存在確認(rèn)節(jié)點(diǎn)是否上電、地址是否匹配、ACK 是否正常還有一個(gè)容易被忽略的問(wèn)題STM32 復(fù)位期間CAN 引腳是默認(rèn)的浮空輸入狀態(tài)。如果在復(fù)用外設(shè)配置完成后才初始化這段時(shí)間內(nèi)引腳可能被外部總線(xiàn)電平影響導(dǎo)致寄生上電或電平競(jìng)爭(zhēng)問(wèn)題。板子上若有其他外設(shè)復(fù)用同一引腳務(wù)必檢查引腳沖突這也是排查 CAN 不工作的一個(gè)方向。調(diào)試技巧方面我想強(qiáng)調(diào)日志的重要性。如果固件里開(kāi)了錯(cuò)誤中斷把錯(cuò)誤狀態(tài)和時(shí)間戳打印到調(diào)試串口存成日志聯(lián)調(diào)時(shí)對(duì)照時(shí)間軸分析總線(xiàn)事件很多時(shí)候能直接定位是哪個(gè)節(jié)點(diǎn)在哪一步觸發(fā)了錯(cuò)誤。我見(jiàn)過(guò)不少同事調(diào)試時(shí)不打錯(cuò)誤日志就靠眼睛盯邏輯分析儀效率確實(shí)低很多。再一個(gè)技巧是開(kāi)發(fā)階段抓包記錄正常發(fā)送報(bào)文的周期和時(shí)序作為后續(xù)回歸測(cè)試的基準(zhǔn)改代碼后如果報(bào)文時(shí)序出現(xiàn)明顯漂移說(shuō)明代碼引入了額外延遲。8. 從 CAN 到 CAN FD后續(xù)擴(kuò)展思路CAN FDCAN with Flexible Data-rate是經(jīng)典 CAN 的升級(jí)版最大變化是數(shù)據(jù)段可以長(zhǎng)達(dá) 64 字節(jié)并且在數(shù)據(jù)段支持更高的可變速率。它和經(jīng)典 CAN 在幀格式上做了兼容設(shè)計(jì)總線(xiàn)上可以混合運(yùn)行但需要所有節(jié)點(diǎn)都支持才能完全發(fā)揮 FD 特性。新項(xiàng)目中如果確定未來(lái)會(huì)有大數(shù)據(jù)量傳輸、固件升級(jí)這類(lèi)需求直接選支持 CAN FD 的 MCU如 STM32F405 以上系列是更長(zhǎng)遠(yuǎn)的選擇。固件升級(jí)是 CAN 應(yīng)用的經(jīng)典場(chǎng)景通過(guò) CAN 總線(xiàn)把新的固件分包發(fā)給目標(biāo)節(jié)點(diǎn)節(jié)點(diǎn)收到后寫(xiě)入 Flash 再跳轉(zhuǎn)運(yùn)行。這個(gè)功能對(duì)通信可靠性的要求比普通控制報(bào)文更高通常需要一個(gè)簡(jiǎn)單的傳輸層協(xié)議包括幀序號(hào)、總幀數(shù)、CRC32 校驗(yàn)和重傳機(jī)制。實(shí)現(xiàn)這類(lèi)功能時(shí)參考 CANopen 的 SDO 分段傳輸思想會(huì)很有啟發(fā)它把大塊數(shù)據(jù)拆成多幀傳輸?shù)臋C(jī)制非常成熟完全可以借鑒。還有多 CAN 網(wǎng)絡(luò)橋接的需求比如車(chē)身網(wǎng)絡(luò)和動(dòng)力網(wǎng)絡(luò)之間需要網(wǎng)關(guān)。網(wǎng)關(guān)節(jié)點(diǎn)用兩個(gè) CAN 通道分別接入兩個(gè)網(wǎng)絡(luò)類(lèi)似 STM32F105 的雙 CAN 特性?xún)?nèi)部做 ID 映射和數(shù)據(jù)轉(zhuǎn)發(fā)。這種場(chǎng)景下過(guò)濾器和發(fā)送優(yōu)先級(jí)配置尤為重要否則大量無(wú)關(guān)報(bào)文穿過(guò)網(wǎng)關(guān)會(huì)顯著增加負(fù)載。我在實(shí)際使用中對(duì) CAN 最大的感受是它是一種需要從物理層、協(xié)議層到應(yīng)用層全鏈路理解的總線(xiàn)。有時(shí)候問(wèn)題明明出在應(yīng)用層的 ID 規(guī)劃不合理但排查時(shí)總習(xí)慣先懷疑硬件。反過(guò)來(lái)也一樣很多人代碼調(diào)了很久最后發(fā)現(xiàn)是時(shí)鐘精度不夠或者終端電阻沒(méi)焊。所以我建議新做 CAN 項(xiàng)目的朋友先不要急著上代碼把協(xié)議設(shè)計(jì)、硬件連接和調(diào)試工具都想清楚后面能省下大量時(shí)間。最后再分享一個(gè)小技巧在 STM32 工程里提前寫(xiě)好一個(gè) CAN 狀態(tài)打印函數(shù)周期性輸出錯(cuò)誤計(jì)數(shù)、發(fā)送失敗次數(shù)、接收 FIFO 剩余空間等數(shù)據(jù)。這個(gè)函數(shù)在開(kāi)發(fā)階段和現(xiàn)場(chǎng)調(diào)試階段都能用稍微花點(diǎn)時(shí)間回報(bào)率非常高。等以后做復(fù)雜網(wǎng)絡(luò)時(shí)你會(huì)發(fā)現(xiàn)當(dāng)初花在調(diào)試工具上的時(shí)間遠(yuǎn)比想象中值錢(qián)。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
国产乱伦亚洲| 亚洲人久久久网| 亚洲午夜未满十八勿入网站日本又色又爽又黄| 天天色综合图片| 免费?级毛片无码?∨蜜芽试看| 青青草在线视频欧美| 美国日韩黄片| 中国小夫妻勾搭露脸淫荡对白| 大香蕉综合网| 亚洲精品99| 都市久久精品激情亚洲| 欧美色图99| 亚洲另类久操网| 十八岁啪啪视频免费看| 男人的午夜天堂| AV色图| 国产免费一区二区在线A片视频| 加勒比综合网| 精品日日人妻| 亚洲性少妇| 欧美熟妇乱码在线一区| 国产人妖视频一区在线观看| 国产一区二区在线播放| 九九九国产精品| 躁躁日曰躁2020| 欧美人人AAA| 人人看人人插| 91网九色蝌蚪操熟女| 婷婷激情五月综合| juliaann欧美丝袜办公室| 亚洲日韩欧美一区二区| 国产乱婷婷精品二区三区| 九九综合久久| av资源在线观看少妇| 国产精品点击进入在线影院| 欧美极品美女aaaaaa级黄片| 射久久| 国产精选视频| 丝袜视频网国产90| 97天天插| 日本精品一区二区三| 国产少妇与亚洲av| 亚洲欧美色综合| 清柠毛片| 91女在线观看| 成人无码专区精品视频| 欧美日日网| 日韩一级成人毛片免费观看| 偷看洗澡一二三区美女| 欧美久久伊人| 日本黄 R色 成 人网站| 爱媛媛久久国产福利| 亚洲欧美自拍偷拍| 国产一区二区视频在线播放| 久久久97| 97干日韩| 一区中文字幕二区日韩| 久久国产精品,久久国产| 九九人人操| 婷婷深爱五月| 9 9精品一区二区三区| 色99在线| 人妻出轨一区二区三区| 久久精品老司| 9ⅰ久久久天天| 97视频900| 超碰免费欧美7| 91高跟美女在线播放| 91亚洲欧美色图| 妇女视频网站| 99久在线精品99re8蜜桃| 91大香蕉伊人| 偷拍盗拍亚洲色图图片| 大香蕉伊人75| 国产丝袜美女在线一区| 亚洲精品天天影视综合网| 麻豆亚洲Av成人无码一区精品| 殴美牲| 人妻精品综合中文字幕在线 | 色妇91| 天美传媒av在线| 欧美91久久久久| 亚洲骚男同com| 2019天天干| 国产日韩精品无码去免费专区国产| 一区二区三区亚洲| 99性爱视频| 久久久9品一区二区三区| 色狠人在线99| 亚洲无码一区成人免费午夜| 操操操五月天婷婷丁香影院| 无码日韩人妻av一| 欧美色五月| 免费网站观看www在线观| 国产精品亚洲日韩骚欢乐谷最新地址发布页huanieguty性屋娱乐妖精视频 | 国产精品午夜福利亚洲综合网| 午夜福利激情在线视频| 熟女六十路| 99少妇精品视频| 91欧美丨精品丨入口| 九九超碰综合网| 久久久9999| 丰满人妻一区二区三区四区| 99综合自拍| 99精品无码| 天天色图| 男人的天堂在线有码| 中文字幕诱惑制服人妻丝袜美丝袜美| 国产精品爆乳懂色蜜乳| 国产精品99久久久www| 亚洲激情AV| 色五月激情AV在线| 超碰97人人cao| 国产精品国产拍高清AV| 一本一首道人妻少妇免费久久| 国产久9| 美国黄片aaa| 婷婷五月天激情小说| 老司机久久| 国产品精品自在在线午夜免费| 日韩av影片在线观看| 综合干干干av久久久综合网| 亚洲日韩人妻中文字幕一区| 99国产精品在线观看| 国产蜜臀精品一区二区尤物| 日韩免费大片一级播放| 亚洲青色欧美| 国产一区自拍欧美日韩| 精品久久99| 久久精品成人| 亚洲国产日韩欧美熟妇在线| 一卡二卡三卡| 久久九九综合| 亚洲区 欧美区| 久久久久9999| 亚洲资源吧| 深夜激情无码| 激情婷婷丁香| 欧美性爱五月天| 欧美色图在线视频少妇| 另类一区| 日韩欧美三级| 免费人人搞97| 啪啪资源网| 亚洲 欧美 另类 日韩 人妻一区 | 亚洲无码免费看| 九九自拍伦理| 亚洲欧美在线观看免费| 久久綜合很很很| 国产精品午夜福利亚洲综合网| 伊人成人情色综合| 99视频这有这里有精品| 青草综合| 成 人 影视 一区 二区 三区 四区 | 日日夜夜狠狠| 91人妻熟女| GVH-003 母子姦 青木玲-麻豆视频,麻豆视传媒短视频网站入口,麻豆视传媒官网直 | 人妻少妇精品久久久| 久久久久久日韩| 综合性视频99| 中文字幕jul-617人妻熟女| 久久久天堂| 人妻久久久| 97超碰日韩| 亚洲精品欧洲精品| 日韩黄色成人性爱| 丰满人妻区一区二区三| 999 久久久| 女人爽到高潮潮喷18禁网站| 日本一区不卡| 97超碰影音| 欧美亚州手机在线| 日韩AV无码中文一区二区| 青青草在线视频播放器| 97一区二压| 色爱综合网| 亚洲一二三四区| 99精品丰满人妻无码| 天天日天天爽| 2020中文在线一区二区三区| 欧美极品| 99国产精品自在自在| 熟女丰满人妻一区| 黄色网址在线免费观看| 91色交| 国产熟女精品区| 婷婷五月天激情四射| 日韩极品无码B| 久久精品导航| 韩日自拍| 性色一线| 日本精品高清一二区一本到| 日婷婷| 熟妇色99| 91白虎| 91女优在线观看| 人妻少妇久久久| 五月天丁香婷婷综合网站| 天天综合91| 少妇高潮一区二区三区在线| 少妇高潮一区二区三区在线| 亚洲欧美内射| 97精品在线| xxx亚洲午夜天堂| 920日本午夜免费| 亚洲日韩精品一区视频在线| 精品高清一区二区三区三州| 热99这里有精品综合久久 | 91精品国产长腿丝袜美女| www.99热在线只有精品| 天天综合91在线| 蜜桃无码AV一区二区| 艹精品| 青娱乐休闲视频在线观看| 男人天堂毛片| 粉嫩av一区二区三区四季| 欧美熟女妇同| 最新精品久久蜜桃| 麻豆久久久久久久久丝袜 | 黄片com.| 成人免费毛片| 亚洲精品白浆高清久久久久久| 青娱乐黄色录像| 日本高清一本二本免费不卡| 亚洲91射| 伊人午夜福利视频| 蜜桃臀一区二区三区久久| 久久精品国产97欧美精品亚洲| 日韩精品人妻中文字幕有码午| 99热精品在线观看| 欧美精品99久久久| 久久久久久久久久久久久久久性生活视频 | 蜜桃臀一区二区三区久久| 日韩中文字幕熟妇人妻| 亚洲自拍一区夜夜操| 国产精品午夜成人福利| 亚洲污污网站| 99999这里都精品| 精品人妻视频一区二区在线播放| 91色噜噜狠狠| 诱惑人妻欧美一区在线播放| 久久久久ab| 欧美日韩亚洲电影| 久久成人东京热人妻| 日本最新1区2区3区| 超碰欧美在线欧美| 欧美另类丝袜熟女| 欧美懂色综合网| 国产在线综合福利网站| 免费视频在线一区二区不卡| 最新日韩黄片| 国产在线76页| 91美女看B| 亚洲色图第一页| 日韩精品一二三| 四虎精品永久在线播放| 午夜爽爽爽在线观看永久入口姬片| 成人aⅴ一区二区三区| 久久精品美女一区| 好看的久久不射无码影视影院| 97精品久久久久中文字幕| 一本色道久久综合亚洲二区三区| 日韩一级二级三级在线不卡观看完整| 精品亚洲黄色片 国产精品导航一区二区 | 美女91在线| 91 欧美| 久久久亚洲Av| 亚洲色五月| 嫩草伊人久久精品| 天天干人人乐| a一区二区三区乱码在线| 色乱二区| 好看的91视频| 搡老女人老91二区| 金莲网址| 日韩伦理久 久久 清纯| 欧美97网| AV污污污污| 欧美精品另类人妖xxxx| 999九九九九国产动| 超碰97人妻| 黑人操一区二区| 密臀在线免费观看| 97天天操| 97人人超| 伊人骚琪琪亚洲天堂网站| 午夜福利无毒不卡| 亚洲自拍另类丝袜综合| 大香蕉欧美| 操逼网站视频漫画国产| 大香蕉在线免| 亚洲美女AV无码| 熟女突然公开看18禁影片| 中文久久一区| 天天上日日上日韩精品| 久久久啊啊| 黄页网站成人免费| 日韩性爱播放| 夜夜嗨一区二区三区三州加勒比| 操逼天美3区| 亚洲国产欧美日韩精品一区二区三区,国产一区二区三区在线看片,欧美性猛交 XXX | 能直接看AV的网站| 欧美国产有色电影| 人妻献身系列第54部| 色性综合| 精品久| 五月天婷精品激情| 制服诱惑亚洲一区二区三区在线观看| 无码高清操逼| 欧美白嫩在线放| A级在线视频| 欧美精品久久久久久久久88| 色噜噜人妻av中文字幕| 亚洲无码色| 综合网亚洲在线| 欧美日韩岛国大片在线观看| 久久久精精精| av资源在线播放天堂| 欧美日韩人妻少妇 一区二区三区| 日本精品网站在线中文| 九九九热| 亚洲免费精品一区| 黑人娇小av在线播放| 久久大香蕉手机高清视频| 12一15性XXXX粉嫩国产| 日本熟人妻中文字幕在线|...久久国产精品-国产精品_日本一区二区三区中文字幕 | 蜜乳Av成人片网站| 欧美日韩另类字幕中文| 欧美日韩色综合网| av草草在线电影| 久久欧美性爱视频| 五十路一区无码| 区日韩亚洲乱码av电影| 免费的黄片有限公司| 91天射| 亚洲欧美日韩精品久| 亚洲网污污污污| 国产黄色av大片网站| 精品无人区麻豆乱码1区2区图片| 欧美男女午夜啪啪| 嗯啊抽插大香蕉网页| nuu12国产麻豆精品| www超碰| 麻豆成人影音在线| 久久日本熟女精品一区| 欧美性猛交美女自慰91| 无遮挡一级毛片视频免费的| 激情文学亚洲| 欧美激情视频一区二区三区不卡| 亚洲精品国产熟女久久久久久| 97天天在线| 亚洲精品一区中文字幕乱码| 亚洲一区二区三区不卡国产欧美| 欧美熟妇精品黑人巨大91| 精彩视频日韩| 黄aaaaaaaaaaaaaaaaaa色网站| 天天肏视频| 少妇天堂网络| 日本中文字幕在线电影| 性久久久| 综合久久2017| 久久久99999久网站| 十八禁啪啦拍视频无遮挡| 国产无码精品久久久久久| 久久原创中文| 97人人爱人人做人人乐| 99操99| 国语精品内射在线观看| 97资源亚洲| 人妻天天爽| 极品丝袜无码| 激情婷婷五月天| 久久无码一区二区二三区性色| 久久久久久99999国产精品| 厕所偷拍在线| 国产精品久久久亚洲一区| 国语对白露脸XXXXXX| 天天干嫩逼网| 日韩欧美三级| 呻吟 欧美 日本 中出| 亭亭丁香激情| 六六久久日韩不卡| 久久伊人大香蕉| 精品一区二区综合熟妇| AV一区观看| 亚洲欧美另类激情小说| 97欧美视频| 美女上床网站| 久久网亚洲| 九七毛片九九毛片| 男生女生啊啊啊啊| 伦在线97| 97 九色| 一区二区三区四区久久视1| 一区二区 韩日AV| 99热婷婷| 亚洲色图大香| 精品国产精品一区二区| 婷婷色播婷婷| 99色热| 五月婷婷激情| 久久人妻办公室视频| 精品久久久亚洲AV成人网站| 亚洲啪啪性视频| 男女做爰猛烈动高潮A片免费应用| 一区二区中文| 国产亚洲99久久精品熟| 久久精品久久久久久久久| 91在线秘 男同| 亚洲欧洲自拍图片专区满春格| 超碰在线欧美性爱激情| 成人性爱av| 无套内射人妻在线播放| a人欧美综合天堂麻豆| 99热97| 欧中日成人免费影视| 亚洲综合码| 久久久久久9999| 内射卯月麻衣| 91热| 中国AAAAAA黄色片| 男人高清无码一区二区| 成人性爱电影一区二区| 亚洲色图大香| 日韩人妻精品中文字幕| 91操熟女视频 | 激情看片网站| 十八禁视频网站| 99这里有精品视频| 久九九九九九九热| 精品一区二区久久| 久久久四区| 国产家庭乱伦表演| 日本三级韩三级99久久| 午夜一区| 激情文学欧美| 99re这里只有精品2| 97精品在线视频| 人妻无一区二区三区| av爱爱爱| 五月天婷婷久久| 久久视网78| 在线电影亚洲色图| 99999亚洲| 精品无码久久久久久国产浪潮| 性爱Av免费| 色99色| 欧美日韩色图片| 日韩少妇在线视频| 国产精品懂色tv影视免费观看| 伊人影院综合是一个与深夜成人在线| 精品国产乱码久久久久久影片| 国产丝袜美腿美女麻豆| 9丨久久九九九| 91艹B视频| 96精品在线| 风月影院男女十八禁| 97免费视频在线观看| 国产精品宅男免费| 婷婷激情一区二区三区俺也去| 亚洲91射| 搡老人老9丨女老熟人| 五月天社区| 色噜噜国产在线| 哈哈操 大香蕉| 亚洲91在线播放影院| 偷窥自拍亚洲色图| 99999久久精| 一区操逼日比视频| 日韩精品9999| 偷拍亚洲熟女视频播放| 久久久影院| 美女丝袜激情小说| 影视综合无码少妇| 97干色天堂| 火箭成精品视频884必出精品| 日本免费亚洲欧美| 久久精品操| www国产天美久久久| 激情五月天网| 国产精品一区二区三区免费视频| 黄片www.| 精品二区三四区五电影 | 啪啪啪东京| 久久久久久性爱视频| 91老熟女视频| 亚洲欧美一区二区三区在钱蜜桃 | 久草免费在线一区二区| 国产丝袜高跟美女av免费观看| 久久精品国产Aⅴ| 亚洲性综合9| 美女91网站| 天美传媒国产原创中文字幕亚洲欧美另类 | 国产精品婬乱一级毛片彝族| 91丝袜在线视频| 国产av强奸美女| 97这里只精品| 亚洲码专区| 91日韩网站| 六月天婷婷| 青青草好吊色| 亚洲一二三精品久久网| 新久久AV| 欧美图片校园春色| 天天91~综合入口| 久久免费精品视频免一| 超碰 国产熟女精品一区| 亚洲日韩成人性爱视频| 97超碰欧美精品| 91亚·色| 国产免a费看黄片在线| 亚洲人码13| 性爱1区| 久久六六| 小骚逼被操的爽不爽| 黄色操人| 欧美性五月| 五月激情在线| 麻豆国产视频精品观看| 黄站在线免费观看| 日韩中字av一区| 日本激情免费大片| 欧成人精品H无码| 日韩国产十八禁| 日本www操操操| 大香蕉中文网| 丝袜亚洲91| 九九亚洲视频| 国产对白刺激视频| 精品国产99999| 91天堂视频| 影音先锋国产精品| 国产一区二区三区白丝| 国产嫩草精品A88AV| 综合五月婷婷| a片自拍直播视频| 成人网欧美风情| 亚洲一区中文字幕一区| 人妻欧美| 中文字幕精品亚洲熟女| 欧美激情 日韩精品| 91天堂色男人的天堂| 日本精品五区| 91超碰在线观看| 久插不卡| 大香蕉碰碰| 亚洲天堂无码| 少妇人妻好深太紧了vr91| 久久久亚洲精品中文字幕人妻| 韩国女主播青草在线| 超碰久热| 伊人色综合网电影| 91碰超| 精品国产Av无码久久久亚洲| 99re在线精品78| 好吊色一区| 无码又爽又硬又激情免费视频| 日韩欧美aⅴ综合网站发布| 少妇天堂| 四虎精品永久在线观看| 中文字幕人乱码中文字的预防方法 | 亚洲动态色图| 人妻喷水| 国产一| 欧美亚洲se91| 97人亚洲综合字幕| 婷婷国产精品九区| 97人肏| 五月天激情婷婷| 国产97色在线| 97色干| 思思热免费视频观看| 操逼国产免费| 中文字幕日韩人妻视频一区二区三区 | 日本www操操操| 久久成人午夜精品影院| 高清一区AV无码| 国产操伦| 日韩欧美亚洲一区二区三区影院| 欧美一级黄色18片免费看| 亚洲AV噜噜狠狠网址蜜桃动漫| 中文字幕99999| 澳门色噜噜色噜噜色噜噜色噜噜色噜噜| 人人摸人人舔一区二区| 欧美瑟综合| 黄页网站成人免费| 狠狠爱夜夜| 日韩无码一区二区三区| 国产一级内射高清视频| 欧美天天| 2017人人操,人人摸| 熟妇的味道HD中文字幕| 日韩人妻免费精品| 国产成人久久久精品免费AV| 综合激情五月丁香| 后入 亚洲 美女 射| 91oumei| 97国产成人精品免费视频| 91黑人无码激情在线| www.狠狠| 久草资源欧美在线视频| 亚洲男人的天堂网| 久久久青草青青国产亚洲免观精品高清完整版_97久久综合区小说区图片区,国精品 | 免费一二区| 亚洲一区日韩精品| 国产精品自拍欧美在线| 国产丝袜视频| 日本不卡二三区| 女人天堂网| 亚洲精品人体| 韩国一级AAA| AV九九| 人人操天天爽| 亚洲 中文 欧美 日韩 在线| 91美女小视频| 操逼1区| 性吧在线视频| 日日摸日日碰| 女人精品内射国产99| 思思久热在线精品66| 岛国片国产成人亚洲播放| 婷婷五月天丁香花| 一区,二区,三区视频| 伊人网在线点播| 操操操五月天婷婷丁香影院| 久久人妻视频网| 国产97综合| 逼操网站| 久久97资源 网| 久久人妻| 女人的久久久| 久久女人| 亚洲视频小说| 操日韩第| 日韩精品午夜操呦呦不卡影院| 欧美熟妇精品黑人巨大91| 国产在线视频午夜精华在| 男女真人网18| 欧美成人综合| 国产乱伦搜索结果91P| www99热| 很很很很操| 国产强奸无码乱伦| 欧美婷婷| 亚洲色图日韩丝袜制服一区二区五月在线| 亚洲网站一区二区在线| 五月天激情四射| 插B在线观看| av网站在线看| 怡红院视频在线| 白嫩91在线亚洲| 国产精品69人妻无码久久久| 欧美成人9797| 少妇干B| 欧美另类天堂| 国产亚洲女v在线观看| 99爱久久视频频| 2019天天干| 蜜色网色哟哟| 91网九色蝌蚪操熟女| 高凊专区人人操| 天天射夜夜操| 99久久综合| 影音先锋视频在线| 一摸二插三插| 婷婷五月天成人网| 七月丁香婷婷| 97欧美色资源| 日韩AV熟女乱伦| 校园春色亚洲色图| 中文字幕在线观看AV| 岛国在线免费视频| 天天搞欧美| 2020中文字幕| 人人操人人色人人摸| 韩日精品福利视频一区不卡在线免| 色噜噜精品一区二区三| 欧美日韩制服| 欧色综合| 在线观看综合精品亚洲| 一起草视频在线| 色噜噜人妻丝袜AV资源| 91精品无码人妻系列| 日韩熟女精一区二区三区不卡| 国产有码一区| 国产无码一二三区| 秋霞 色色| 精品美女久久一二三| 亚洲成人综合在线| 大香蕉乱级| 久9久9久9久9久9久9| 91人妻超碰| 操高情无码| 97在线免费视频观看| 综合97亚洲| 五月丁香综合激情| 日韩无码三级影院| 特色a在线上| 在线小视频| 九九天堂| 五月婷婷无码| 青青伊人这里只有精品| 大香蕉78| 久久久久幕乱码| 很黄很污的免费网站| 久久性爱免费送| 亚洲欧美国产中文视频| 这里都是精品| 超碰一区二区| 久久有碼| 丰满人妻一区二区三区在线| 国产精品岛国片在线观看| 视频国产欧美在线播放| 超碰97日韩| 国桃视频产巨乳精品一区二区在线| 成年女人一区| 日本综合久久| 草莓精品视频| 精品九九国产无码| 日韩成人高清一区二区| 97这里有精品| 玖玖爱视频网站| 欧美大干日韩| 九一精品牛牛一区二区| 亚洲。日韩。欧美| 91亚州日韩高清| 亚洲九九夜夜| 亚洲日韩精品在线播放| 秋霞曰韩R级| 亚州免费啪啪视频| 超碰色男人操熟女| 一二三四视频中文字幕在线看| 一区二区乱码福利| 97天堂| 熟妇女伦乱视频| 国产区在线| 怡红院久久老司机| 中文字幕一区二区三区人妻不卡 | 亚洲αv一区二区三区| 欧美人人曰人人操人人射射| 日语五十路和六十路亚洲国产精品| 色吊丝 日日骚 清纯唯美| 久久久免费高清中文视频| 天天综合站| 97在线播放| 综合亚洲网| 97Ai亚洲| 国产精品久久久啊| 在线观看不卡一区二区三区| 八戒午夜福利理论片| 浓厚中出中文字幕在线| 亚洲性爱电影| 欧美,日韩综合久久| 国产成人手机视频激情| 国产中文字幕曰本毛片| 日韩成人性爱电影在线播放| 久久露脸国产老熟女| 色色色欧美| 日韩免费人妻色情网站| 91欧美长吊| 91五月天| 久久精品国产97欧美精品亚洲| 超碰九九| 91中文字幕| 蜜乳成人AV| 乱欲一区二区| 色婷婷视频| 操我啊啊啊啊啊| 欧美国产一区二区三区麻豆传媒| 欧亚日韩综合精品国产| 欧美黑人与女人91| 熟女探花啪啪| 中国乱伦一区二区| www五月| caopeng97人妻| 人妻熟女一区二区| 欧美 亚洲 第一页 | 啊啊啊不要啊啊受不了了视频在线| 免费成人在线熟妇网| 综合亚洲网| 波多野结衣之双飞调教在线播放| 一区操逼日比视频| 超碰人人妻| 欧美亚洲高清不卡| 一本久道久久综合狠狠爱一密臀精| 国产精品无码成人精品| 乱伦系列一区二区| 蜜臀人妻少妇久久在线观看| 97天天插| 欧美夜夜草视频| 人妻-91porn| 久久精品一区| 色吊丝 日日骚 清纯唯美| AV麻豆免费一区| 超碰久热| 欧美日韩亚洲电影| 老司机福利青青草| 伊人久久亚洲中文字幕| 99re99视频在线免费观看| 亚洲av资源| 亚洲中文国际强奸字幕| 青青青操| 久区视频| 日本操逼视频导航| 蜜臀AV成人精品蜜臀AV久久| 91女日逼| 日韩人妻免费精品| 国产精品。| 亚洲色图一区二区三区| 人妻熟女av国产网站| A啊啊在线观看| 亚洲欧美不卡线| 深田咏美亚洲精品福利社| 亚洲性猛交| 亚洲人妻中文在线视频| 97超碰jingpin| 农村少妇久久久久久久| 国产一区二区欧美日本| 操逼999| 国产精品高清2021在线| 97视频网站在线观看| 九九九国产| 丁香五月天激情网站| 后入式在线免费观看60秒| 国产精品白丝在线播放| 天天插天天舔舔天天干| 亚州色综合| 婷婷色网| 亚洲人妻精品一区二区| 成人在线视频网| 天天操天天干美女网址导航| 丝袜熟女一区二区三区| 日本加勒比无码专区一二三| 女人被男人桶爽视频网站| 男人久久精品| 密乳无码| 加勒比东京热五月天天堂网| 久久社区一区二区三区| 国产情色第一第二页在线观看| 久久久久亚洲av综合波多野制衣| 九九夜精品九九在线| 久久国产熟女影院| 亚洲欧洲色情高清| 欧美操逼熟女| 亚洲精品久久一区二区三区蜜桃臀| 一区操逼日比视频| 五月天欧美色图| 日本中文字幕在线视频| 日本久久久久久久久久| 婷婷性爱| 欧美精品三区| 尤物av网站| 日小BB小视频| 劲爆欧美人妖三区91| 伊人久操| 人人妻人人爽一区二区三区| 欧美亚洲玖玖玖| 乱性AV| 韩国国产欧美情侣视频在线| 91小视频| 91精品网站| 看黑丝美女操逼青青网站| 强奸乱伦大香蕉| 国产丝袜一区二区三区| 激情网五月天| 一区AV| 啊啊啊啊啊好舒服视频| 丁香五月性| AAAA级日本片免费视频| 亚洲精品一区二区免费在线观看| wwwcaobibi| 国产传媒日韩欧美| 久久一本大香蕉| 高清无码国产亚洲| 亚洲伊人久久综合97| 好爽免费视频,| 色情综合网| 操逼逼一区视频| 乱操9999| 亚洲精品一二三四区| 日本Xx性爱| 亚洲色图欧洲| 欧美大片一区二区三区| 99精品在线播放| 国产三级在线现体验区| 天天综合站| av婷婷色网| 国产日本久久免费精品| 乱伦熟妇一区二区| 97久久超碰亚洲| 屌妞视频久久久久久久| 九九99精品| 日婷婷| 三及片网站| 天美传媒av一区二区| 淫淫总合网| 久久一区二区三区入口| 激情熟女12P| 这里都是精品| 人妻激情在线视频| av婷婷色网| 亚洲激情AV| 亚洲成人福利电影免费| 日韩中文字墓| 国产精品白丝www| 9999九九九久久久| 天天综合网久久ww| 嗯啊不要在线| 性爱av网站| 国语国产操逼伊人AV网| 国产精品第一区第一页| 九九久久久| 91N综合网| 伊人96在线| 国产精品久久久久久久久久久久久久久久 | 五月婷婷综合在线| 亚洲最大的综合性av| 亚洲高清无毛一区二区| 久久一二三四| 久热最新在线杭州| 亚洲色图欧美色18直播在线| 中国熟女91| 青青草成人视频在线观看二区| 97干com| 日韩另类色图| 99爱在线视频| 操人91| 九九碰九九爱97超碰| 久久久精品成人国产| 九九久久一区二区伦理| 亚洲精品无码成人久久久99| 亚洲图片色图欧美另类| 久久欲| 免费av高清无码| 国产无马在线| 欧美成熟性爱精品| 亚洲春色欧美激情自拍| 思思视频免费看网站| 色欲Av人妻精品一区二| 国产午夜精品理论片一二三区区| 97亚洲综合| 国产精品女aA片爽爽视频| 中文乱码字字幕在线第5页| 蜜臀一区二区三区在线| 日韩性爱一级片| 最近2018中文字幕在线高清第一页| 亚洲欧美日韩免费观看| www熟女乱伦com| 岛国A V在线免费看| 午夜激情成人在线观看| 日韩精品一区二区日韩| 色噜噜精品一区二区三| 人人干人人搞人人摸| 超碰成人国产| 亚洲男人天堂2019| 久久久999网站| 欧美精品丝袜久久久中文字幕| 大香蕉伊在线久草麻豆天堂故事| 亚州高清色综合| 国产精品午夜精品| 亚洲 欧美综合| 成年人网站在线免费观看| 午夜.DJ高清在线观看免费7| 国产高清成人mv在线观看| 亚洲国产一区二区三区四区国产| 五月色丁香| 欧美性区| 欧美高清在线| 少妇高潮九九九九| 性爱综合一区二区| 日韩乱插| 91国产丝袜足交精品视频| 欧美伦乱爱| 十八禁黄色| 91搞逼视频| 欧美性爱另类综合| 欧美黄色图片| 玖玖大干人妻| 日本孕妇一区二区视频操逼免费看| 蜜乳Av成人片网站| 色婷婷视频| 操死我了嗯嗯嗯| 久久女人| 激情五月天插| 嗯嗯啊中文字幕| 伊人久久蜜月| 无码人妻1727| 亚洲αv一区二区三区| 蜜臀久久一区二区| 精吧天堂| 另类图片欧美激情综合| 自拍偷拍2025在线观看| 欧美三级一级| 久久精品成人| 国产中文字幕在线点播| 国产成人网址| 人妻内射一区二区在线视频| 亚洲国产精品无石码久久| 18禁美女裸体无遮挡啪啪| 亚洲综合网电影91| 欧美激情亚洲情色| 夜夜草天天| 69精品人人人人| 美女91av| 日小BB小视频| 白嫩嫩一区| 999色欧美中文字幕| 国产精品嫩草久久久久| 四虎 精品 WWW| 成人三级片一区二区三区视频| av天堂天堂av日韩| 日韩伦理久 久久 清纯| 久久尹人大香焦视| 日韩中文字幕视频在线观看| 日韩美女高潮喷水视频| 囯产精品久久久久久久久久梁医生 | 久久久久国产精品喷潮免费观看臀| 国产不卡精品91| 精品人妻少妇| 日韩不卡av一二三| 天天操天天日天天干| 午夜福利无毒不卡| 日日日啊啊啊| 超碰午夜| 99re6久热只有精品6在线直播| 欧美综合天堂| 一块操欧美| 丰满少妇精品一区二区| 九九久久一区二区伦理| 91久久堂| 色色网91| 欧美久久婷婷| 乱伦色图网址是多少| 久艹伊人精品综合在线| 日本成a人v网站在线观看| 97天天摸天天碰| 久久国产精品m码| 久久人妻办公室视频| 黄色工厂这里只有精品| 欧美99| 上特色A在线| 九九毛片这里只有精品| 97超碰中文在线| 少妇蜜汁| 国产亚洲深夜激情| 欧美色天堂网在线视频| 美女视频尤物网在线看| 一区二区国产视频在线观看| 在线欧美69V免费观看视频| 中文字幕诱惑制服人妻丝袜美丝袜美 | 亚洲男人天堂视频| 国产小u女在线观看| a啊啊啊啊啊啊啊啊一区二区| 亚洲色婷婷| 欧美天天综合网| 欧美综合第一| 高清成年美女黄网站免费大全 | 婷婷丁香九月| 69丨亚洲丨精品丨入口免费播放| 日本高清一区二区在线| 欧美日韩不卡传媒| 校园春色制服丝袜中文字亚洲| 久久久新亚洲AV| 麻豆精品A片免费观看| 老熟女乱子伦中文字幕一区二区 | 狠狠激情综合狠狠操中文字幕| 久艹免费| 日本一二区免费| 巨爆乳一区二区爆乳区| 久久r精品| 精品久久久久,69国产成人精| 日韩性爱一级片| 九九九精品一区二区无码| WWW黄片COM| 91综合中文字幕| 97免费视频网| 婷婷中文网| 精品福利| 99精品高潮| 五月婷婷色| 91在线秘 男同| 欧美肥臀在线| 成人影 天天操 亚洲| 园内精品自拍视频在线播放| 97爱爱官网| 欧美激情 日韩精品| 亚州AV无码国产精品| 91欧美亚洲| 国产精品久久久久久久免牛肉蒲团| 精品少妇一区二区三区在线视频| 亚洲欧美色图| 熟妇高潮精品一区二区三区下载| 久热无码| 国产亚洲女v在线观看| 亚洲小说视频| 日欧毛片久久| 欧美另类色图片| 国产精品美女在线一区| 亚洲全色网| 天操天操夜操夜月月年年操操| 800zy一区二区| 91精品国产高清久久久久久,亚洲成人| 女人天堂av在线播放| 久久人妻一区二区三区高清| 97视频在线免费看| 国产欧美一区激情交| 国产一级137片内射麻豆| 另类欧美色| 亚洲中亚日激情视频| 欧美精品第四五页中文字幕在线观看| 97人人模人人爽人人| 国产又黄又爽又刺激久久久久久| 欧美色综合网| 啊啊啊啊好疼视频| 蜜臀AV成人精品蜜臀| 欧美v日韩欧亚洲电影天堂色诱,国产传媒| 欧美性爱十八禁| 免费啪啪av| 国产一区二区三区高清视频| 欧美成97爱| 欧美黑人168页欧美黑人167| 色情亚洲日本成人| 麻豆视频test| 丰满人妻-区二区三区免费| 欧美日韩国产色图在线| 隔壁邻居波多野结衣中文字幕| 日本影视久久免费| 亚洲天堂2020| 成人一二三区| 校园春色美腿丝袜 | 色欧美天天| 欧洲熟妇xxXx欧美老妇裸体 | 中亚黄色三级大片| 亚洲欧美色图片| 五月天精品| 国产av色网| 综合97久久| 九九热午夜欧亚国产视频| 91天美传媒在线观看| 99啪啪| 禁十八久久| 欧美天堂日韩三级国产传媒| 亚洲精品一区二区三区新线路| 五月丁香色综合| 超碰在线99| 91美女丝袜诱惑视频| 五月天丁香| 六六久久日韩不卡| 另类图片五月| 日韩精品.久久精品.AV女优.天美传媒 | 一二三啪啪专区| 91亚洲青青草原精品1区| 婷婷国产精品九区| 亚洲乱色视频一区、二区在线| 中文字幕 一区二区 亚洲无码| 天天影视综合网欧美精品| 亚洲综合五月天婷婷丁香| 国产女人高潮视频| 蜜桃精品一区二区三区ww| 欧美成不卡网|