亚洲有码Av一区二区三区_国产高清啪啪免费视频_69色视频国产_国产成人人人爆出白浆_国产精品自在线拍国_一本久久伊人热热精品无码_午夜性刺激在线看免费带字幕_助力高品质欧美狂喷水_亚洲精品日韩无码_精品无码一区二区三区蜜臀_麻豆高清国产AV_熟妇人素无码中文字幕_亚洲a级片在线观看_国产欧美日韩三区_99国产成人高清在线观看

ARTICLE DETAIL

資訊詳情

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

STM32移植CANopen協(xié)議棧Festival 3.0:從驅(qū)動到對象字典全攻略

STM32移植CANopen協(xié)議棧Festival 3.0:從驅(qū)動到對象字典全攻略 簡介面向STM32開發(fā)者的開源CANopen協(xié)議棧Festival3.0源碼包適合需要在嵌入式項目中快速接入CANopen通信的工程師與學(xué)習(xí)者。協(xié)議棧覆蓋對象字典OD、節(jié)點ID管理、NMT網(wǎng)絡(luò)管理、SDO配置傳輸與PDO實時數(shù)據(jù)交換等核心機制可支撐工業(yè)自動化、汽車電子等多廠商設(shè)備互聯(lián)場景。壓縮包共65個文件以C源文件與頭文件為主體另含工程配置、調(diào)試信息及EDS/OD描述文件整體僅228KB便于快速下載和直接閱讀。目前已有2135人學(xué)習(xí)下載。資源提供完整示例工程與驅(qū)動代碼可對照主程序及inc/src/driver目錄梳理協(xié)議棧運行流程按需配置PDO映射、SDO服務(wù)和NMT事件處理從而完成從STM32 HAL庫驅(qū)動適配到應(yīng)用聯(lián)調(diào)的開發(fā)閉環(huán)也適合希望深入理解CANopen實現(xiàn)細節(jié)并做二次定制的開發(fā)者。1. 開源的CANopen源代碼配上STM32為什么說Festival 3.0是起步最快的選擇做工業(yè)設(shè)備聯(lián)網(wǎng)的工程師幾乎都會在某個項目里遇到CANopen。它是CAN總線上最普及的應(yīng)用層協(xié)議伺服、IO模塊、傳感器、PLC控制器都默認支持它。手里有STM32做主控想讓它當(dāng)一個CANopen從站最直接的想法就是用開源協(xié)議棧而Festival 3.0就是那個被反復(fù)提起、社區(qū)里問得最多的開源版本。它的價值在于NMT、SDO、PDO、心跳這些協(xié)議細節(jié)不用自己寫了你只需要把CAN收發(fā)和定時器接好再填一張對象字典表設(shè)備就能上線被主站識別。這篇文章要解決的就是這個問題怎么把Festival 3.0快速移植到STM32上從驅(qū)動對接、對象字典配置到踩坑排查一條路走通。2. 協(xié)議棧選型與Festival 3.0工作方式先搞懂它里面裝著什么2.1 CANopen的下三層模型從CAN報文到對象字典很多工程師把CANopen當(dāng)成一個把“波特率、ID、報文”配置好的工具其實它和裸CAN的思維完全不同。裸CAN時代你自己定義ID和數(shù)據(jù)字節(jié)含義每個廠商一套規(guī)則CANopen則把這些全部規(guī)范化了。一個CANopen從站里核心是三樣?xùn)|西對象字典、通信對象、狀態(tài)機。對象字典是一張表格每個條目由索引和子索引定位。比如0x1000是設(shè)備類型0x1017是心跳生產(chǎn)時間0x2000到0x5FFF是廠商自定義區(qū)你的業(yè)務(wù)數(shù)據(jù)放這里。通信對象分四類NMT負責(zé)節(jié)點狀態(tài)切換啟動、停止、復(fù)位SDO負責(zé)配置和讀寫對象字典PDO負責(zé)周期性或事件觸發(fā)的實時數(shù)據(jù)傳輸心跳負責(zé)讓主站知道你的存活狀態(tài)。我一般會在移植前畫一張自己的數(shù)據(jù)流圖主站通過SDO給你下配置你把配置寫進對象字典對應(yīng)的索引運行階段你周期性地把傳感器數(shù)據(jù)塞進TPDO主站那邊就能直接收到實時值。這張圖畫清楚之后再看協(xié)議棧源碼你就知道該找哪些函數(shù)了。2.2 Festival 3.0的源碼結(jié)構(gòu)每個文件該改什么、該忽略什么關(guān)于Festival 3.0的源碼布局不同時期放出來的版本目錄會略有差異但核心套路是一致的。下面這個結(jié)構(gòu)是幾個常見fork的母版說明文件職責(zé)canopen-stack/ ├── include/ │ ├── canfestival.h /* 協(xié)議棧對外統(tǒng)一接口必須包含 */ │ ├── objdict.h /* 對象字典頭文件生成器產(chǎn)出 */ │ └── applicfg.h /* 平臺相關(guān)宏定義需要改 */ ├── src/ │ ├── canfestival.c /* 協(xié)議核心分發(fā)入口 */ │ ├── nmt.c /* 網(wǎng)絡(luò)管理狀態(tài)機 */ │ ├── sdo.c /* SDO服務(wù)器實現(xiàn) */ │ ├── pdo.c /* PDO收發(fā)處理 */ │ ├── hb.c /* 心跳生產(chǎn)與消費 */ │ ├── sync.c /* 同步報文處理 */ │ └── objacces.c /* 對象字典讀寫訪問 */ ├── drivers/ │ ├── can_io.c /* CAN收發(fā)必須重寫 */ │ └── timer.c /* 定時器節(jié)拍必須重寫 */ └── examples/ └── stm32/ /* 平臺示例工程 */移植時你只需要動drivers目錄下的兩個文件以及applicfg.h里的平臺宏。src目錄里的協(xié)議邏輯基本不用碰那是被驗證了無數(shù)遍的黑匣子動它反而容易翻車。objdict.h一般由對象字典編輯器生成手工寫容易錯后面章節(jié)會講怎么生成。2.3 移植前必須回答的四個問題第一個問題CAN控制器是什么型號。STM32系列大部分自帶bxCAN或FDCAN驅(qū)動寫法完全不同。bxCAN用CAN_TxHeaderTypeDef結(jié)構(gòu)體FDCAN用FDCAN_TxHeaderTypeDef接口參數(shù)差別很大選錯那一套驅(qū)動編譯能過、總線絕對不通。第二個問題時鐘頻率是多少。CAN波特率誤差超過1%bus-off會頻繁出現(xiàn)。比如某個開發(fā)板APB1是36MHz你套用網(wǎng)上72MHz的預(yù)分頻參數(shù)實際波特率就是正確的兩倍其他節(jié)點全部掉線。第三個問題內(nèi)存夠不夠。Festival 3.0的核心代碼加對象字典在IAR和GCC下編譯出來RAM占用大概4到8KBFlash占用20KB左右。STM32F103C8T6這種64KB Flash的片子夠用但如果你的業(yè)務(wù)代碼已經(jīng)把RAM占滿了就得把PDO緩沖區(qū)和對象字典的動態(tài)數(shù)組好好算一遍必要時裁剪掉不用的字典段。第四個問題主站側(cè)用什么工具。常見做法是準(zhǔn)備一個CAN分析儀和對應(yīng)上位機軟件有的總線分析儀自帶CANopen主站功能能自動掃描從站、讀寫對象字典、監(jiān)控PDO。沒有主站工具你只能盲調(diào)排查問題效率會低一個量級。選型結(jié)論如果你的目標(biāo)是快速做出一個能用的CANopen從站Festival 3.0值得投入。它代碼量不大、結(jié)構(gòu)清晰網(wǎng)上能搜到的移植經(jīng)驗貼也多踩坑成本遠比從零實現(xiàn)低。接下來進入實際移植。3. 把Festival 3.0移植到STM32最小工程搭建與CAN外設(shè)驅(qū)動3.1 新建工程與CAN外設(shè)初始化先把500kbps跑起來移植的第一步不是復(fù)制源碼而是先把STM32的CAN外設(shè)調(diào)通。我一般用STM32CubeMX生成基礎(chǔ)工程勾選CAN外設(shè)、配置一個1ms定時器然后手動改參數(shù)。下面這段代碼是典型的bxCAN初始化以500kbps、APB136MHz為例/* can_init.c - 基于HAL庫的CAN1外設(shè)初始化 */ #include can.h CAN_HandleTypeDef hcan1; void CAN1_Init(void) { hcan1.Instance CAN1; hcan1.Init.Prescaler 9; /* 36MHz / 9 4MHz */ hcan1.Init.SyncJumpWidth CAN_SJW_1TQ; hcan1.Init.TimeSeg1 CAN_BS1_5TQ; /* 5個時間量子 */ hcan1.Init.TimeSeg2 CAN_BS2_2TQ; /* 2個時間量子 */ hcan1.Init.Mode CAN_MODE_NORMAL; hcan1.Init.AutoBusOff ENABLE; hcan1.Init.AutoWakeUp DISABLE; hcan1.Init.AutoRetransmission DISABLE; hcan1.Init.ReceiveFifoLocked DISABLE; hcan1.Init.TransmitFifoPriority ENABLE; if (HAL_CAN_Init(hcan1) ! HAL_OK) { Error_Handler(); } }波特率計算公式是CAN時鐘頻率 / (Prescaler × (1 BS1 BS2))。上面這個配置總時間量子是1528預(yù)分頻后4MHz500kbps剛好落在誤差要求內(nèi)。注意AutoRetransmission一定要設(shè)成DISABLE否則協(xié)議棧超時重發(fā)邏輯會和控制器自動重發(fā)打架導(dǎo)致同一幀報文被主站收到兩次。3.2 驅(qū)動層對接發(fā)送、接收、定時器三個回調(diào)必須實現(xiàn)Festival 3.0核心不會直接調(diào)用HAL庫函數(shù)它留了一組驅(qū)動接口讓你填寫。最核心的是發(fā)送函數(shù)和分發(fā)入口。發(fā)送函數(shù)要做的事很簡單把協(xié)議棧內(nèi)部定義的Message結(jié)構(gòu)體翻譯成HAL庫的CAN_TxHeaderTypeDef/* driver.c - 協(xié)議棧驅(qū)動回調(diào)實現(xiàn) */ #include canfestival.h #include can.h static Message can_msg; /* 協(xié)議棧核心調(diào)用此函數(shù)把報文發(fā)到CAN總線 */ unsigned char canSend(CANPORT port, Message *m) { CAN_TxHeaderTypeDef tx; uint8_t data[8]; uint32_t mailbox; int i; tx.StdId m-cob_id; /* 協(xié)議棧已算好COB-ID */ tx.RTR (m-rtr 1) ? CAN_RTR_REMOTE : CAN_RTR_DATA; tx.DLC m-len; tx.IDE CAN_ID_STD; tx.ExtId 0; for (i 0; i 8; i) { data[i] m-data[i]; } if (HAL_CAN_AddTxMessage(hcan1, tx, data, mailbox) ! HAL_OK) { return 0; /* 發(fā)送失敗返回0給協(xié)議棧 */ } return 1; }協(xié)議棧里Message結(jié)構(gòu)體的data數(shù)組長度是8但PDO最長就是8字節(jié)所以直接拷過去沒問題。如果用的是FDCAN這里還要額外配置FDCAN_TxHeaderTypeDef的MessageSize等字段內(nèi)容多一截。3.3 接收中斷與定時器節(jié)拍把報文喂進協(xié)議棧接收側(cè)最關(guān)鍵的一點是CAN接收中斷里只做“搬運”把報文從HAL的RxHeader轉(zhuǎn)成協(xié)議棧Message然后調(diào)用canDispatch。不要在中斷里做重活。/* stm32f1xx_it.c - CAN接收中斷回調(diào) */ void HAL_CAN_RxFifo0MsgPendingCallback(CAN_HandleTypeDef *hcan) { CAN_RxHeaderTypeDef rx; uint8_t data[8]; int i; if (hcan-Instance ! CAN1) return; HAL_CAN_GetRxMessage(hcan, CAN_RX_FIFO0, rx, data); can_msg.cob_id rx.StdId; can_msg.rtr (rx.RTR CAN_RTR_REMOTE) ? 1 : 0; can_msg.len rx.DLC; for (i 0; i 8; i) { can_msg.data[i] data[i]; } canDispatch(can_msg); /* 交給協(xié)議棧核心分發(fā) */ }定時器方面需要一個1ms周期的節(jié)拍來驅(qū)動協(xié)議棧的時鐘邏輯。用定時器3做1ms中斷在中斷里調(diào)用協(xié)議棧的TimerIntern函數(shù)/* timer.c - 1ms節(jié)拍喂給協(xié)議棧 */ void TIM3_IRQHandler(void) { if (TIM_GetITStatus(TIM3, TIM_IT_Update)) { TIM_ClearITPendingBit(TIM3, TIM_IT_Update); TimerIntern(); /* 協(xié)議棧內(nèi)部超時計時 */ } }TimerIntern會在內(nèi)部計數(shù)驅(qū)動心跳報文的生產(chǎn)、SDO超時、節(jié)點看門狗這些邏輯。如果你的主循環(huán)里有長時間阻塞的任務(wù)比如Flash擦寫請把擦寫放在CAN空閑時段實在避不開就提前把心跳周期的余量算夠否則主站會因為你心跳延遲而報節(jié)點丟失。3.4 最小驗證先讓從站上線能被主站掃描到驅(qū)動接完之后先不要寫任何應(yīng)用邏輯直接編譯燒錄用CAN分析儀主站掃描。此時從站應(yīng)該能發(fā)出心跳報文報文的COB-ID是0x700加節(jié)點號比如節(jié)點號1就是0x701。主站發(fā)NMT啟動節(jié)點命令0x000, 2字節(jié)0x01 0x01從站狀態(tài)應(yīng)該從Pre-operational切到Operational心跳繼續(xù)周期性地發(fā)。這一步如果通了說明驅(qū)動層和協(xié)議棧核心沒問題。如果掃描不到不要急著查對象字典先回到裸CAN層面用分析儀看總線上有沒有任何報文、波特率是不是真的500k、CAN收發(fā)器有沒有接對。很多移植失敗死在“裸CAN就沒通”這個最基礎(chǔ)的環(huán)節(jié)。確認裸CAN收發(fā)正常、再用示波器看CAN_H和CAN_L的差分電平幅值是否在2V左右這一步排查完再碰協(xié)議棧。4. 對象字典與PDO映射讓設(shè)備真正能被上位機控制4.1 對象字典生成思路索引、子索引、數(shù)據(jù)類型怎么對應(yīng)協(xié)議棧跑通心跳之后就該把業(yè)務(wù)數(shù)據(jù)掛上去了。對象字典不是靠手寫維護的常見做法是用對象字典編輯器生成C文件。你只需要填索引、子索引、數(shù)據(jù)類型、讀寫權(quán)限它自動產(chǎn)出objdict.h和objdict.c。如果某個fork沒有配套編輯器你也可以直接改示例工程里的對象字典數(shù)組。先理解它的結(jié)構(gòu)一張indextable表每個條目對應(yīng)一個索引條目里是子索引列表每個子索引指向一個數(shù)據(jù)庫條目。數(shù)據(jù)庫條目描述了這個對象的訪問方式、存儲位置和數(shù)據(jù)類型。舉個最簡單的自定義對象在0x2000索引下面放一個16位只讀變量/* OD_1980.h - 自定義對象字典片段 */ UNS16 myCounter 0; /* 0x2000索引1個子索引 */ const ODCallback_t OD_0x2000_callbacks[1] { NULL }; const indextable OD_IndexTable[] { { 0x2000, 1, OD_0x2000_callbacks }, { 0, 0, NULL } };這里subindex從0開始子索引0通常是條目數(shù)量子索引1才是真正的數(shù)據(jù)。不要把業(yè)務(wù)變量直接暴露到通信層而應(yīng)該通過對象字典的讀寫回調(diào)做一層轉(zhuǎn)換。比如產(chǎn)品序列號存EEPROM里可以注冊一個回調(diào)讀的時候從EEPROM取寫的時候?qū)懟谽EPROM這樣上位機訪問到的始終是持久化數(shù)據(jù)而不是易變的RAM變量。4.2 通過SDO讀寫對象從0x2000開始自定義應(yīng)用對象SDO是配置用的主站通過它讀寫字對象。一旦對象字典里加了0x2000條目主站就能用SDO訪問。你不需要寫任何SDO處理代碼協(xié)議棧的sdo.c自動響應(yīng)主站的SDO請求。你要做的是確保對象字典里注冊的變量地址和類型正確。SDO請求的報文格式分兩種快速SDO讀寫4字節(jié)內(nèi)數(shù)據(jù)和普通SDO分段傳輸。對自定義對象來說I/O數(shù)據(jù)基本都是4字節(jié)內(nèi)的走快速SDO就夠了。注意SDO服務(wù)器默認是阻塞式的協(xié)議棧在處理SDO請求期間會停住其他通信處理。如果你的主站喜歡一次連續(xù)讀幾十個對象從站側(cè)會明顯感覺響應(yīng)變慢這是正?,F(xiàn)象不是死機。真遇到那種“讀一個對象就卡2秒”的情況多半是對象字典回調(diào)函數(shù)里做了Flash讀寫又沒有做超時處理。4.3 PDO映射的兩種姿勢靜態(tài)映射和運行時修改PDO負責(zé)實時數(shù)據(jù)。一個從站通常有多個TPDO比如TPDO1發(fā)狀態(tài)字TPDO2發(fā)位置值。PDO的內(nèi)容由映射參數(shù)決定。0x1B00索引是TPDO1的通信參數(shù)0x1B01是映射參數(shù)。映射參數(shù)是一個列表每個條目寫成“對象索引.子索引.位寬”的編碼格式。映射一個16位的0x2000子索引1條目值就是0x20000110。最常見的坑是映射方向搞反。TPDO是“從站往主站推”映射的源必須是對象字典里的變量RPDO是“主站往從站灌”映射的目標(biāo)也必須先定義在對象字典里。你不能把一個不存在的對象掛進映射表。映射參數(shù)可以在本地寫死也可以通過SDO在運行時修改。靜態(tài)映射適合生產(chǎn)固件簡單可靠動態(tài)映射適合調(diào)試期代價是運行時需要執(zhí)行SDO寫映射、映射使能這一整套流程。我建議量產(chǎn)固件用靜態(tài)映射調(diào)試期臨時開動態(tài)。4.4 心跳與同步周期1ms定時器到底該喂誰這一節(jié)把時間片邏輯理清。協(xié)議棧內(nèi)部只有一條1ms節(jié)拍線它同時驅(qū)動TimerIntern的超時計數(shù)和心跳生產(chǎn)。三個常見時間參數(shù)心跳生產(chǎn)時間0x1017單位毫秒常見值是50ms到1000msPDO的傳輸類型0x1800到0x1B00的通信參數(shù)里同步周期用0x1005和0x1006配置0x1006是同步報文周期單位微秒。我的建議是調(diào)試期把心跳設(shè)成100msPDO傳輸類型設(shè)為“每第N個SYNC幀發(fā)送一次”N設(shè)為1。這樣主站能看到從站的實時數(shù)據(jù)和在線狀態(tài)邏輯最簡單。下面是心跳和通信參數(shù)的配置示例/* 通信參數(shù)區(qū)典型配置 */ #define OD_HB_PROD_TIME 0x1017 /* 心跳生產(chǎn)時間 */ #define OD_SYNC_PERIOD 0x1006 /* 同步周期單位us */ #define OD_TPDO1_TRANS_TYPE 0x1800 /* TPDO1傳輸類型 */ /* NMT狀態(tài)正常后心跳由協(xié)議棧自動按0x1017發(fā)送 */如果你用了同步傳輸主站必須周期性發(fā)SYNC幀從站才會在對應(yīng)的同步計數(shù)到達時觸發(fā)TPDO。主站沒發(fā)SYNCTPDO就永遠不觸發(fā)這是新手最容易誤解的地方。遇到“PDO不動”的故障先看總線上有沒有SYNC幀再查傳輸類型配置。5. 移植Festival 3.0的常見問題排查從編譯報錯到總線靜默5.1 現(xiàn)象編譯通過但總線上抓不到任何報文原因CAN過濾器沒有正確配置或者根本沒有使能CAN接收中斷。很多初始化代碼只調(diào)了HAL_CAN_Init忘了設(shè)置過濾器導(dǎo)致所有報文都進不了FIFO0協(xié)議棧自然收不到NMT命令。解決在初始化里加一段過濾器配置把過濾器掩碼設(shè)為全0接收所有標(biāo)準(zhǔn)幀。以bxCAN為例/* 接收所有標(biāo)準(zhǔn)幀的過濾器配置 */ CAN_FilterTypeDef filter; filter.FilterIdHigh 0x0000; filter.FilterIdLow 0x0000; filter.FilterMaskIdHigh 0x0000; filter.FilterMaskIdLow 0x0000; filter.FilterFIFOAssignment CAN_RX_FIFO0; filter.FilterBank 0; filter.FilterMode CAN_FILTERMODE_IDMASK; filter.FilterScale CAN_FILTERSCALE_32BIT; filter.FilterActivation ENABLE; HAL_CAN_ConfigFilter(hcan1, filter); HAL_CAN_Start(hcan1); HAL_CAN_ActivateNotification(hcan1, CAN_IT_RX_FIFO0_MSG_PENDING, ENABLE);檢查時用CAN分析儀掛在總線旁邊先確認從站有沒有發(fā)心跳。如果完全靜默基本就是過濾器或中斷使能的問題。注意使能接收中斷后還要在主循環(huán)或初始化里保證HAL_CAN_Start被調(diào)用否則外設(shè)沒有啟動。5.2 現(xiàn)象心跳發(fā)出去了但主站幾秒后報節(jié)點超時原因波特率偏差超過協(xié)議要求的1%或者心跳周期的0x1017被設(shè)成了0。0x1017是0時從站不發(fā)送心跳主站側(cè)當(dāng)然會報超時。另一種情況是APB1時鐘源配置和初始化參數(shù)對不上實際波特率漂了百分之幾距離短的調(diào)試階段僥幸能通線一長就掉線。解決先用CAN分析儀自帶的波特率測試功能看實際波特率是499.8k還是512k。如果是512k說明Prescaler和BS1/BS2的組合算錯了。重新按公式計算CAN時鐘經(jīng)過預(yù)分頻后必須落在目標(biāo)波特率的1%誤差內(nèi)。用庫函數(shù)打印出初始化后的實際參數(shù)不要靠肉眼估計。另外把0x1017寫成100立刻從站側(cè)能看到心跳周期變化這招能快速驗證心跳通路。5.3 現(xiàn)象SDO讀正常、寫正常但PDO數(shù)據(jù)不刷新原因映射參數(shù)配錯了常見是子索引、位寬計算錯或者把TPDO映射在了RPDO的條目區(qū)。另一個高頻原因是傳輸類型設(shè)成同步但主站沒發(fā)SYNC。如果PDO傳輸類型為255事件觸發(fā)那從站數(shù)據(jù)變化時才發(fā)數(shù)據(jù)一直不變PDO就只發(fā)一次看起來就像“沒有刷新”。解決用分析儀看主站發(fā)不發(fā)SYNC幀。如果主站發(fā)那么檢查0x1B01的映射計數(shù)確認映射條目數(shù)和實際映射的對象數(shù)一致。再檢查映射的位寬和變量類型是否匹配比如把32位浮點數(shù)映射成16位條目數(shù)據(jù)會截斷看起來就是亂碼。最粗暴的驗證方法在從站代碼里手動修改TPDO源變量的值看總線上有沒有新幀。沒有新幀問題在協(xié)議棧配置有新幀但值不對問題在映射表本身。5.4 現(xiàn)象運行一段時間后HardFault或者整個系統(tǒng)卡死原因在CAN接收中斷里直接調(diào)協(xié)議棧分發(fā)而協(xié)議棧內(nèi)部又觸發(fā)了SDO回調(diào)回調(diào)里做了耗時操作擠占了中斷時間。更常見的是臨界區(qū)沒有保護協(xié)議棧在訪問對象字典的同時主循環(huán)也在改同一個變量導(dǎo)致數(shù)據(jù)競爭。解決把canDispatch放到主循環(huán)的輪詢里中斷只做接收和置標(biāo)志位。如果一定要在中斷里分發(fā)就在調(diào)用協(xié)議棧接口的前后加上臨界區(qū)保護。還有一點容易被忽略的是堆棧大小協(xié)議棧遞歸調(diào)用的深度不算深但SDO回調(diào)里如果有printf或浮點運算每個嵌套層都會吃掉不少棧空間建議調(diào)試期把主棧調(diào)到2KB以上。6. 用CAN分析儀抓完整報文從上線到閉環(huán)控制的驗證方法驗證一個CANopen從站是否合格不能只看上位機顯示“在線”。用CAN分析儀把原始報文抓出來按時間順序核對狀態(tài)機的每一拍。以節(jié)點號1為例上電后你看到的第一個報文應(yīng)該是心跳0x701數(shù)據(jù)字節(jié)是節(jié)點狀態(tài)值。如果心跳沒發(fā)說明協(xié)議棧還沒進入正常狀態(tài)。接著手動給從站發(fā)NMT啟動命令CAN ID 0x000數(shù)據(jù)0x01 0x01。從站收到后狀態(tài)從Pre-operational切換到Operational此時SDO和PDO才允許正常工作。你要驗證的時序是NMT命令后從站在下一個心跳周期內(nèi)應(yīng)答狀態(tài)變化同時SYNC幀到來時觸發(fā)PDO。用分析儀的觸發(fā)功能抓一段10ms到100ms的窗口把NMT、心跳、SYNC、PDO四類幀的間隔量出來間隔符合配置值就算通過。我再提供一個排查技巧用分析儀統(tǒng)計總線負載率和錯誤幀數(shù)量。錯誤幀為0是基本要求負載率在20%以下時如果還頻繁重傳說明發(fā)送緩沖區(qū)的優(yōu)先級配置有問題。真遇到難纏的時序問題把分析儀的CAN報文導(dǎo)成CSV用腳本按時間戳排序檢查比盯著看快得多。常見的做法是寫一個十行左右的分析腳本把每個COB-ID出現(xiàn)的次數(shù)和間隔統(tǒng)計出來。最后聊一個讓我印象深刻的經(jīng)驗?zāi)炒雾椖坷飶恼拘奶蚉DO都正常但主站的軸控指令一執(zhí)行就超時。排查到最后發(fā)現(xiàn)是接收中斷里順手做了一位數(shù)碼管刷新刷新函數(shù)里關(guān)了中斷導(dǎo)致CAN接收在關(guān)鍵時刻被阻塞了好幾十微秒。從那以后我記住一條習(xí)慣中斷里的代碼越少越好CAN接收中斷只置標(biāo)志位協(xié)議棧分發(fā)全部挪到主循環(huán)。這個習(xí)慣后來幫我避掉了好幾次類似的坑也希望能幫到你。本文還有配套的精品資源點擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
天美精品一区二区三区四区在线观看| 久久久久夜夜夜夜| 亚洲字幕一区二区| 日韩二三区| 久 久无码人妻AV| 国产版a级片直播在线| 久久精9| 精品国模无码| 日韩三四五区| 2017天天操| 人人操av| 日韩精品啪啪啪| 欧美一区二区三区日韩| 91久久久久| 亚洲AV秘 精品久久老牛影视| 超碰97玖玖爱| 国模不卡| 亚洲综合草草| 国产精品亚洲免费| 精品人妻15区| 可以看的av| 天天干18禁| 婷婷色婷婷| 97在线免费公开视频| 五月香婷婷| 青青草在线视频播放器| 欧美躁死她一区二区| 中文字幕一区二区无码成人| 欧美亚州手机在线| 人妻无一区二区三区| 久久久99999久网站| 欧美日韩香蕉| 成人蜜乳小视频网站| 精品99999久久久久久| 亚洲日韩电影| 日本欧美色| 人人人人插| 亚洲亚洲亚洲天堂天堂| 五月丁香综合网| 亚洲丝袜在线观看| 青青草在线成人视频| 色视频蜜乳| 动漫av中文| 婷婷激情五月天小说网| 性色aV一区二区三区噜噜| 久久夜色一区二区| 日本中文字幕在线视频| 国产精品国产精品国产| 亚洲综合影片| 人妻精品一区二区在线| 97干在线| 狠狠干妹子| 中文字幕在线免费观看视频| 久久精品欧美一区二区三区不卡| 亚洲一区二区av| 夜夜操夜夜爽夜夜高潮| 上海一级黄片| 亚洲情色视频| 欧洲一区二区三区免费| 午夜男女爽爽爽在线视频| 99夜夜操| 91爱欧美| 日韩三四五区| 亚洲1区2区三区高清中文字幕| 深夜激情| 久久中出在线| 99∨VTV| 密乳无码| 91日韩| 9精品久久| 99精品在线播放| 亚洲欧洲成人在线电影| 欧美色视| 97射欧美| 性色国产东北露脸精品视频| 欧美日韩性爱精品| 人人干黄色| 亚洲精品 欧美97色色| 熟妇熟女亚洲天堂网| 亚洲性爱免费电影| 日本操逼视频在线| 超碰97COm中文| 久久成年片色大黄全免费网站| 亚洲综合贴图91| 素人播放一区| 超碰九色| 久久精品国产亚洲AV无码电影| 欧美双插| 日韩欧美~中文字| 懂色AV中文| 99精品久久| 免费福利视频中文字幕| 精品黄色电影| 超碰97COm中文| 加勒比五月天| 亚洲一区二区 麻豆传媒| 精品.99999| 日日夜夜狠狠| 看黑人AV不卡| 婷婷五月天小说| 日韩一级片在线看| 国产亚州高清国产拍精| .精品人妻一区二区三| 青青青在线高清视频在线一二三四区 | 亚洲九九九| 91在线一起| 美女主播色欲91抠b在线播放| 少妇色综合| 九月丁香| 国产精品精品系列在线观看| 女优大全 - 91n| 国产精品久久久午夜夜伦鲁鲁| 怡春苑东京热| 高跟伊人julia ann| 操穴国产| 高潮内射在线| 久久婷婷一区二| 亚洲国产精品久久久久久久久久| 女优视频第10页| 国模吧 一区二区三区| 欧美日韩国产色图在线| 激情视屏国产乱伦强奸| 激情视屏国产乱伦强奸| 久久久久久久国产视频| 99日精品欧美国产| 国产av尤物| 91美女丝袜诱惑视频| 九九RE视频在线精品| 久久亚洲AV成人精品无码| 91九色蝌蚪在线观看| 欧美精品精品一区二区| 人人干黄色| 午夜视频久久久久一区| 高清无码 国产精品| 狠狠操夜夜| 日本三级A片网站com| 日韩性爱免费观看视频| 成人av福利在线观看| 69av一区二区三区| 欧美顶级黄片AAAAA在线免费看| 黄色免费网页无码| AV天堂丝袜| 97操97色| 欧美色色人| 久湿久久| 欧美性夜| 中文字幕一区二区三区字幕| 国产人妖视频一区在线观看| 国产情侣自拍在线播放| 日本天天操| 欧美亚涩| 成人一区二区三区四区| 女上位精品在线| 夜夜高潮夜夜爽夜夜爱爱一区| 天天夜夜rb| 久久久四区| 亚洲天堂精品日韩电影| 人妻无一区二区三区| 免费伦费视频在线观看| 激情四射五月天| 色妹子A V| 天天干天天日天天射黄色片| 日日AAvv| 国产h小视频在线观看免费| a片 xxxx受爽视频| 久草视频在线视频在线视频在线观看| 两性综合网| 久久久久久性爱片| 欧美在线|亚洲| 日日摸天天爽夜夜欢| 性久久久| 亚洲熟女中文字幕在线| 日韩国产品视频中文字| 嗯~啊~快点 死我视频免费看网站| 久久9免费视频| 日本色日夜干| 欧美人妻精品一区二区| 大香蕉伊人色偷偷在线| 日本黄色天堂| 女性喷水高潮在线观看| 视频分类 国内精品| 99re6久热只有精品6在线直播| B049AV在线播放| 992视频一区| 18禁精品网站在线看| 囯产精品一区二区三区线|亚洲人成无码网WWW动漫|国产精品免费一级... | 999综合色| 91熟女网| 抽插无码高清一区| 色偷偷色偷偷欧美日韩| 日韩在线观看三级电影| 国产免费一区二区在线A片视频| 欧美专利1区2区3区4区5区免费| 精品一区二区久久| 操婢日韩| 人妻啊啊人妻啊| 狠狠干妹子| 亚洲无码成人精品| 欧美日韩国第一区| 毛片一区二区| 婷婷亚洲中文字幕在线| 好一吊区二区| 日本东京热加勒比久久| 日本精品国产视频| 熟妇xxxxx性春色| 五月丁香色婷婷| 十八禁电影伊人网| 精品国产无码中文| 欧美综合网1| 一级性爱视频免费在线| 东京太热久久久| 欧美少妇高潮视频| 精品成人av一区二区三区在线| 少妇三P| av激情亚洲五月天| 欧美天天拍| 国产麻豆91欧美一区二区久久婷婷国产精品| 中文字幕日韩电影人妻| 一区二区精品更新提醒| 强奸抽插av| 一区久久久二区| 91熟女网| 99re9在线| 亚洲av资源| 99re久久| 999国产精品999久久久久久| 成人短视频在线观看| 国产风韵犹存熟妇三区| 亚洲精品日韩国产欧美| 亚洲天天自拍| 97超碰美国| 精品一区二区三区丰满熟女-亚洲欧美一区| 国产日本久久免费精品| 竹菊一区二区三区AV线| 大香蕉伊人久久| 欧美色图亚洲色,麻豆| 操逼视频免费日韩无码| 在线观看黄色电话| 中文字幕人乱码中文字的预防方法 | 蜜臀av一区二区三区免费观看| 婷婷探花久久精品一区| 五月丁香影院| 久操免费观看| 2025亚洲男人天堂| 18啪啪手机免费性爱| 久久一二三四五六七八九区区| 国产精品露脸在线观看| 91少妇通奸网站| 久久草在线综合视频| 黄站在线免费观看| 天天爽夜夜操| 97香蕉网| 夜夜嗷嗷一区二区| 亚洲av淫乱| 青草精品视频一日本久久久久网站| 亚洲一区日韩| 2024年最新色情网站在线观看| 日本日日色视频| 欧美日韩另类在线播放| 97久久久久久久久久| 9久久精品| 牛牛操视频逼| 日日日大屁股骚女人精品| 国产AV无码AV| 中日韓欧美高清| 狠狠干精品一二三四五六2022| 91在线超高颜值国产| 欧美激情黑人| 欧美午夜精品久久久久久3D | 国产精品不卡av免费在线观看| 欧美色图偷拍另类| 8050午夜少妇无码| 东京热男人的天堂| www. 男人天堂成人在线| 日本中文字幕在线视频| 亚洲国产精品成人综合| 又黄又硬又粗又长国产视频| 大吊色| 插欧洲美女欧美精品| 无码人妻1727| 热热色AV| 打av高清| 国产高潮AA片免费看| 色网站导航大全| 色偷偷男人的天堂麻豆| 亚洲情色第一页| 久久久久亚洲?V片无码V| 麻豆一区二区三区在线看 | 五月丁香社区婷婷日韩欧美精品影院| 亚洲日韩天堂| 蜜桃臀久久| 久久伊人在线五区| 久热婷婷| 亚洲综合一区二区| 精品成人亚洲午夜电影| 蜜臀AV午夜精品久| www欧美91| 欧美情色男人的天堂| 免费一级视频特黄色大片| 国产成人亚洲精品无码最新在线| 蜜桃AV天堂| 精品一久久久| 最新AVzaixian| 日本一区二区三区四区免费观看| 毛片久久| 欧美色女人| 亚洲在线A| 久久久九九九九| 97综合在线观看| 国产67194| 大香网站| 干干干天天| 欧洲黄色网| 欧美激情1区| 国产AV天美传媒一区二区三区 | 午夜视频黄| 天天欧美| 中文字幕福利视频一区二区三区在线观看| 黄色不卡视频| 青青草黑寡妇男人天堂| 看看小穴| 国产精品制服丝袜中文字幕日韩一区二区三区| 91chinese在线| 久久亚洲AV无码专区国产精品| 中国AAAAAA黄色片| 亚洲天堂久久久久久粉红视频| 插插综合网天天影视网| 无卡一区=区| 99久在线精品99re8a| 欧美内射少妇| 久久水蜜臀亚洲AV无码精品| juliaann精品熟女一区| 这里是精品| 97亚洲一区| 国产精品91一样| 五月天开心网| 婷婷五月天成人网| 在现视频女上位好爽| 91久久久久免| 日本 成 人 小说 电影 一区二区| 婷婷香蕉| 国产视频一区二区在线| 精品久久在线区一区| 国产成人资源| 成人无码专区精品视频| 午夜后入| 国产热av| 欧亚 另类 久| 久操精品| 豆花视频操逼网址| 艹精品| 成人a大片在线观看| www.yeyecao| 日韩探花精品在线视频| 欧美疯狂做爰xxxx| 狠狠操夜夜操蜜桃视频三区| 日韩AV一区二区三区三州三州| 一区=区三区视频| 日本不卡码黄色 | 人妻精品一区二区三区| 麻豆天美传媒毛片| 午夜精品久久久久久久久久蜜桃| 亚洲啪啪视频一区二区| 欧美日韩99| 色欧美天天| 97综合在线观看| 成人A片男人的天堂| 4虎在线视频| 一本色道久久综合亚洲二区三区| 亚洲欧美91| 国产免费黄色一级大片| 国产女人与拘做受视频免费| 欧美性爱在线无码| 亚洲色天堂日韩中| 9精品在线| 99蜜月精品久久| 久久久人妻| 日韩偷拍一区二区三区| 欧美色图在线视频少妇| 欧美九九九| 麻豆国产97在线| 免费伦费视频在线观看| 色五月婷婷五月天| 国产成自自拍在线观看| 插插综合网天天影视网| 国产精品福利资源在线尤物| 人成午夜免费大片| 久久最新视频免费观看| 国产精品对白自产拍| 亚洲精品97| 国产自产自拍| 午夜情侣自拍网站| 就去色综合| 日韩有码 一区二区三区| 国产精品探花在线| 超碰97在线 欧美 国产| 日本久久久久久久久久| 人人做,人人操,人人摸| 久久久久久久人妻| 亚洲图片 激情小说| 久久久久久九九九九九| 18禁精品网站在线看| 桃色五月天| 97精品97久久| 亚洲中文字幕熟女| 91久操| 小骚逼被操的爽不爽| 性91| 国产成人精品亚洲日本| 天天日天天操VV| 美女网站91| 黄骗免费| 嗯嗯啊啊操死我| 高颜值美女口爆高潮浪叫| 亚洲无码国产精品久久| 女人妻一区| 超碰九九| 大色综合网| 人妻久热在线| 青青青青操国内视频在线| yellow网站免费观看日韩高清无码| 亚洲中文字幕噜噜噜久久久| 97视频在线视频| 国产兽交视频在线播放| 蜜臀久久一区二区| 97网色| 日韩中文字幕二区| 国产日韩中文字幕欧美| 黄色区免费观看中文字幕| 欧洲中文字幕| 97精品免费视频网站| 日韩精品一区的| 五月天加勒比啪| 秋霞一级A片黄色视频| 97久久久久久久精| 东京热综合久久一区二区| 一个人免费HD91视频| 国产精品不卡一区二区三区| 亚洲,日韩,欧美,成人播放| 久jiu久神马影院| 亚洲无码日韩电影| www.婷婷| 亚洲激情综合另类| 久久久999日本大片| 91丝袜视频在线观看| 色色五月婷| www.久久超碰| 99久久99久久综合| 伊人久久艹| 亚洲精品97p| 国产成人在线观看综合| 精品国产乱码久久久久久久| 久久大香蕉| 风韵犹存大大大大香蕉| 亚洲欧美精品一区天堂久久 | 国产女大学生AV| 天天淫人人妻日日色| 91精片| 欧美一区91大爱| 超碰美国| 国产精品国产自产拍高清AV| 性爱网站一区二区| 国产精品丝袜久久亚洲不卡| 人人操人人摸人人看人人干| 成人天天爽| 亚洲欧美日韩精品久久久一区二区| 蜜乳av一区二区三区四区不卡| 精品在线观看视频在线| 亚洲资源一区| 九九久久久久久爱| 婷婷丁香九月| 久久久久婷婷精品av电影| 岛国黄色大片网站| 男人天堂东京热| 中文字幕精品人妻丝袜| 这里只有精品视频在线观看麻豆| 蜜桃午夜视频一区二区 | 尤物网址| 五十路熟女,国产欧美精品区一区二区三区| 国产 三级自拍| 伊人超碰97| 国产精品久久久蜜臀| 日韩Va亚洲va欧美Ⅴa久久| 久久久精品一区二区| 99色热| 狠狠久久手机视频精品| 天天射夜夜| 色色色999| 国产精品成久久久久午夜午夜| 伊人久久亚洲中文字幕不卡| 日韩人妻无码专区| 日韩精品字幕| 欧美色亚洲色| 神马久久久久久久久久久久| 偷窥自拍A片| 少妇一区二区三区| 99re热| 韩国久久97| 黄色片,com| 97久久超碰日韩精品| 美女97超碰| 强奸乱亚洲| 色色毛片| 人妻少妇精品久久久久久| 后入人妻一区| 免费视频a级毛片免费视频| 久久亚洲AV无码白度| 久湿久久 | 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区老师黑人潮喷一 | 116美女午夜| 国产浮力影院第1页| 99re9| 精品欧美日韩在线观看| 久久人妻四季| 91操碰| 亚洲情色在线| 91九色网| 黄片免费久久久久久久| 久久在线观看免费视频| 亚洲 欧美 第一页| 熟妇激情| 国产熟女| 久久e6只有精品| 五月丁香色情| 久久久久九九九| 亚洲国产精品V?在线播放| 久久久涩| 另类欧美| 91路www| 激情图片伦理国产一区二区日韩| 99色色网| 午夜精品探花| 97人人操人人摸| а√天堂资源官网在线资源| 不卡二三区人妻少妇| 中文熟女五十乱码在线| www.男人天堂| 亚洲AV无码久久精品蜜桃小说| 在线观看一卡二卡| 色色色综合网| 精品人人插人人操| 被体育老师抱着c到高潮| www.黄色在线| 在线看的av| 日本中文字幕不卡视频| 国产精品久久久啊| 色姑娘综合网| 欧美狠狠| 夜夜骑夜夜操| 欧美男人天堂| 国产精品人妻无码久久久老鸭窝| 97色碰| 91骚熟女| 97欧美视频| 国产乱子伦一区二区三区在线观看| 午夜福利合集| 夜夜夜夜久久久久| 友优传媒精品在线一区二区| 午夜啊啊| 国产99热| 国产精品视频内谢女人| 国产精品精品系列在线观看| 福利视频香蕉免费一区二区在线| 欧美成人一级麻豆| 日韩特级毛片免费观看全集| 自拍偷拍第26| 亚洲色图欧美色图日韩色图| 91快色色色色色| 91三级理论片播放器| 免费观看的黄色的网站| 久久久精品无码亚免费| 十八禁视频网站| 久久久久9999| 亚洲色图超碰在线| 96AV久久久| 欧美日韩国产电影| 天欧美在线| 97 国产精品| 青草地一本线一区二区三区| 一起草视频在线| 97超碰人人模人人拍人人| se吧提供国产乱老熟视频胖女人| 欧美一级黄片视频在线| 日韩激情啪啪| 久久午夜伦| 91伊人影视综合| 国产精品丝袜久久亚洲不卡| 国内精品久9| 97日亚洲欧美| 亚洲性爱乱操x| 男人高清无码一区二区| 日韩免费性爱视频在线观看| 欧美日韩超碰在线| 国产精品色哟哟| 精人妻无码一区二区三区伊人直播| 91亚洲丝袜熟女| 九九九热| 无码高清专| 熟妇在线视频一区二区| 日韩99神马视频片| 午夜福利合集| 欧美大香蕉久| 亚洲精品日韩国产欧美| 中日无幕一二三四区| 精品一区二区三区四区外站| 一区二区三区看视频| 国产亚洲精品一区二区三区| 欧美麻豆成人同性GⅤ在线| 情色AV电影| 自拍亚洲综合| 97免费在线| 亚洲国产尤物yw在线观看| 97人人射| 婷婷另类小说| 中文字幕在线免费观看| 强奸乱伦大香蕉| 亚洲男人天堂2019| 东京热99999| 天天综合91| 在线观看综合精品亚洲| 91新在线欧美| 日韩91网站| 欧美日韩国产中文精品字幕自在自线 | 精品国产72| 久久久91| 亚洲黄色网址视频| 红桃视频高潮| 国产白丝AV| 大香网站| 色五月第四色| 一区二区三| 岛国成人av在线播放网址| 久久只有精品一区二区三区| 极品色综合| av日韩在线观看电影| 99re不伦| 91网站18| 色五月婷婷五月天| 国内外毛片在线观看| 日韩操逼性鲍| 天天综合-91入口| 精品999一区二区| 立川理惠加勒比无码| 99在线精品观看视频中文 | 91性高朝久久久久久久久| 日本人妻天堂网站在线播放| av天堂影视中文在字幕在线中文| 黄在线| 亚洲国产熟妇综合色专区| 色亚州人久干视频在线观看免费版| 欧美亚洲综合色| 人妻中文字幕日韩电影| 老熟女乱伦一区| 蜜臀一区二区三区亚洲最新章节在线观看 - 高清蜜臀一区二区三区亚洲全集播放 | 久久伊人最新网址视频| 四虎免费在线播放| 嗯,啊。舔我逼| 欧美九九99久久精品| 五月婷视频| 亚洲二区精品在线观看| 天天操人人操狠狠插| 国产深夜福利| 夜夜欢天天干| 婷婷性网| 色天天野狼综合社区| 色亚州人久干视频在线观看免费版| 欧美在线色图| 999久久久九| 蜜桃久久一区二区三区| 天天天天干| 亚洲色啪| 激情四射五月天| 久精品无码av一区二免费国产在线观看| 午夜操逼不卡| 日本欧美韩国国产在线| 中文字幕一区二区三区四区在线视频| 国产精品爆乳懂色蜜乳| 麻豆久久精品亚洲精品88| 性色aV一区二区三区噜噜| 精品天堂| 97色碰| 男女无套 免费网站| 欧美天天射| 久操免费在线| 国产精品美女久久久久久网站| 天天综合欧美| 日本久久女同性恋视频| 亚洲 欧美 精品专区 极品| 久久伊人最新网址视频| 91久久九九精品国产综合| 国产色综合亚洲色综合吹潮| 在线无码视频| 强奸乱伦资源| 五月天婷婷久久| 又黄又爽在线观看视频| 99自拍B亚洲 | 日韩无码专区| 夜夜嗨一区二区| 欧洲中文字幕| 1000午夜黄色| 国产97在线播放| 色臀AV| 国产在线观看一区二区三区| 一二三四视频中文字幕在线看| 日本狂喷奶水在线播放212| 大香网站| 大香樵伊人网| 干b在线性社区| 97超碰人操| 美女黄页网站| 高清无码久操视频| 日韩人妻中文视频| 丁香久久| 欧美激情片一区二区| 97超碰总站| 成人性交午夜免费片| 蜜臀一区二区三区在线| 韩日性爱av| 色九九综合| 九九久久国产精品| 无码人妻毛片丰满熟妇精品区| 人妻精品一区二区三区| 国产精品第一区第一页| 婷婷丁香五月天综合东京热| 日本福利社| 亚洲 欧美 另类 日韩 人妻一区| 日韩无码服务区| www.av家庭乱伦| 成人免费福利网站国产| 麻豆2区1区天美| 综合久久99亚洲人妻中文在线| 九久久九九久视频| 综合国产影视三级| 五月天丁香| 国产成人精品午夜福利| 亚州综合色| 乱伦3P视频| 啊好爽受不了无码| 婷婷人妻激情| 国产中文精品一区二区在线观看| 亚洲欧美精品一区天堂久久| 色综合99999| 91视频综合网| 亚洲av无码成人精品国产| 久草毛片电影怡| 五十路熟女人妻一区二区在线观看| 国产亚洲日韩在线三区黑人| 男女打扑克高清网站| 色777999综合| 91人妻精华帖| 素人美腿视频网站| 久久亚洲一区女同性恋中文字幕| 三级特黄60分钟播放| 欧美少妇大量自拍视频在线观看| 亚洲亚洲亚洲天堂天堂| gogogo免费高清看中国国语| 色穴精品| 精品人妻一区二区三区视频在线| 色综合av男人天堂| 超碰 av 女人天堂| av影片在线观看不卡| 99热婷婷| 另类图片五月天| 日日操丁香五月天| 欧美亚州综合图片| 翔田千里爆乳巨臀无码| 91网站18在线观看| 精品久久久久综合无码| 欧洲熟妇xxXx欧美老妇裸体 | 99色综合| 91 综合网| 色5月婷婷| 欧美伦乱| 黄色视频特级毛片| 亚州九九九精品视频| 国产欧美成人第一页在线观看| 色老汉色| 青青青国产手线观看视频2| 中文伊人大香蕉视频| 精品国产乱码久久久久久网站入口| 另类专区在线观看| 人妻熟妇一区二区三区| 操操碰| 欧美亚洲丝袜人妻制服中文99| 色狠狠综合| 97久久超碰日韩精品| 91久久久久久| 精品久9| 色嘟嘟人妻天堂网| 日本欧美中文字幕| 快点操死我| 狠狠操官网| 91欧美另类| 操逼操网| 色偷偷2020免费视频播放| 大香蕉黄色一区| 大香蕉日韩| 人人乐大香蕉| 性爱网站一区二区| 青青伊人久久| 亚洲一区二区性爱电影| 蜜汁欧美| 麻豆天美电影一区二区| 超碰日韩人妻| 亚洲和欧美裸体美女双飞视频| 中文字幕一区电影在线观看| 亚洲欧美综合网站| 五月丁香啪啪网| 啊啊啊无码| 97 超碰 人人做 人人爱| 国产女人高潮嗷嗷嗷叫小说| 超碰97欧美日韩| 色999五月色| 啪啪啪综合网| 传媒免费一区二区三区| 日韩黄色成人性爱| 亚洲91网| 神马久久69| 色99视频| 操国产逼| 久久久九精品| 亚洲精品819| 午夜亚洲国产理论秋霞| 91天天美女| 混色激情av| 国产精品成人无码a v毛片| 97久久久久久久久久| 日韩精品国产精品五码一区二区| 亚洲欧洲自拍图片专区满春格| 欧美 亚洲 另类 综合| 91粉嫩萝控精品福利网站_精品影音先锋国 | 久久婷综合| 网站A V在线| 成年人免费观看网站| 97精品国产97久久久久久| 影视综合无码少妇| 男人的天堂Va| 国产天美传媒精品| 成人情色一区二区| 国产精品激情久久久久久久| 欧美日韩中文字幕人妻| 中文一区在线日| 91爱综合| 亚洲 欧美日韩 另类| 亚洲无992tv| 丝袜加勒比| 热久日综合| 国产精品麻豆成人AV艾秋| 又大又长又粗又爽又黄| 欧美少妇色图| 国产97在线播放| 欧美日本天堂| 久久黄色网址| 国产高潮AA片免费看| 亚洲免费成人在线高清无码视频| 天堂亚洲欧美| 97热视频在线观看| 亚洲瓯美色图| 欧美黑人猛交春色影视大全| 成人免费福利在线观看| 欧美日韩啪啪电影| 九热中文字幕| 97久久超碰日韩精品| 成人欧美日超碰| 97超碰色屌| 婷婷色一区| 超碰在线人妻| 超碰成人国产| 永久免费发布性爱网| 家庭乱伦国产精品| 亚洲色人| 亚洲国产天堂| 欧美丝袜亚洲| AV男人天堂网| 九九九草| 久久精品国产久精国产| 97久久久精品| 国产久久视频| www.97在线| 亚洲色图91欧美日韩| 五月婷视频| 激情视频网址| 静品嫩模一区二区| 亚洲国产欧美中文永久| 91三级理论片播放器| www.99中文字幕| 一级片在线观看高清无码| 国产亚洲精品一区二区三区| yiqicaoav| 免费在线看黄片av| 中文字幕欧美丝袜07资源| 加勒比中文av| 久草午夜| 91社区伊人| 亚洲国产一级黄色视频| 欧美日韩大香蕉| 国产精品人妻一区二区| 亚洲成人黄色在线观看| 1000部熟女视频在线观看| 国产无码精品久久久久久| 成·人免费午夜在线观看| 亚洲国产美女久久久久| 亚洲男人综合| 日韩在线一区高清在线| 日韩欧美国产一区二区三区四区| 日韩丰满熟妇| 人人看人人摸人人色| 99碰碰| 日韩乱码Av| 厕所偷拍在线| 欧美伦乱爱| 91青青在线视频| 欧美韩日精品99综合| 亚洲熟女人妻中文字幕一区二区| 日本久久超碰| 亚洲人成网站7777| 欧亚性爱在线视频| 精品v日韩欧美国产| 色婷婷香蕉| AV天天综合| 一区二区三区四区久久视1| 久久美国毛片| 凹凸 69堂 在线播放| 九九久久玖玖| 国产一区免费午夜视频| 加勒比久久综合网高清| 天天爱天天操| 国产怡红院| 嗯嗯啊啊啊啊轻点视频| 无人区高清电影免费观看一区二区三 www.qmcai2.com | 91女在线观看| 制服中出中文人人精品| 欧美视频一区二区三区| 成人国产视频在线观看| 蜜桃视频成a人v在线| 婷婷六月色| 欧洲与亚洲欧美精品中文字幕| 台湾佬中文娱乐网久久久久久久久久com| 黄色成年| 亚洲av国产av综合av卡| 色综合久| yazhousetuoumei| 91亚.色| 超碰精品日韩欧美国产| 在线观看国产黄色| 亚洲情色婷婷五月天| 超碰久在线天天做| 老熟女91| 五月天玖玖资源站| 一区二区首页| 日韩欧美三级| 亚洲激情综合另类男同| 无码9区| 亭亭在线资源| 亚洲伊人久久综合97| 伊人久久大香大香线蕉中文| 久插不卡| 亚洲性天堂| 国产精品自在自拍视频| 欧洲Au麻豆| 91女日逼| 麻花传媒免费网站在线观看| 欧洲无码一区二区| 97在线播放| 国产精品美女久久久久AⅤ国产馆| 一本道综合色图| 亚洲怡春院| 国产精品露脸在线观看| 国产乱码久久| 91M一社| 午夜福利免费精品视频| 色五月第四色| 日韩一级欧美一级国产一级台湾| 蜜桃无码AV一区二区| 欧美日韩精品国产91| 九九热AV| 色婷婷久久| 欧美色吧综合| 激情视屏国产乱伦强奸| 另类 综合 日韩 欧美 亚洲| 视频国产成人精品日本亚洲18| 五月丁香| 久9综合在线| 黄片无码在线制服| 97视频900| 无码直播久久久| 蜜桃精品一区二区三区ww| 人人妻人人爽| 久久色情| 欧美激情 亚洲色图| 女人午夜视频777| 欧美在线视频观看一二三四区高清| av爱爱爱| 久久av色| 97无码视频在线播放| 厕所偷拍在线| 亚洲欧美综合| 久操高青| 99无码狠狠久久| 日韩中字av一区| 97在线视频观看| 日韩专区数据列表-第3230页-精品国产一区二区三区香蕉 久久99熟女人妻中文字 | 国产久久久久久久久一区二区| 色香综合天天影视综合| 91在线精品| 欧美第五页| 丁香五月天激情综合| 国产免费内射视频| 超碰超碰95| 亚洲色婷婷久久91| 色噜噜人妻丝袜AV资源| 国产极品精品美女视频| 日韩三级性| 999岛国大片| 综合久久2017| 男人下部插入女人下部 | 亚洲欧美激情小说| 久操操| 思思热一热婷婷热一热| 亚洲精品一区二区免费在线观看| 青椒国产97在线熟女| 锕锕好爽 死我在线观看| 在线啊v一区| 天美传媒AV在线| 性色高清在线| 亚洲精品人妻在线| 亚洲,欧美,综合网| 久久黄黄| av一区二区三区四区| 夜夜夜夜爽| 五月婷在线| 亚洲无码超碰免费| 九九人妻| 久操综合在线| 1级黄色夫妻对换性交免费看| 97超碰超欧美。| 天天爱天天操| 自拍偷拍草一草| 亚洲AV色图一区| 98一区二区精品| 日本性爱欧美性爱| 好湿好紧视频| 久久嫩草国产成人一区| 不卡一区二区日本视频| 日本熟妇人妻一区二区三区| 一个人在线看的黄色电影网站| 免费αⅴ在线观看| 亚洲天堂男| 欧美情色男人的天堂| 色99视频| 中文字幕精品一区二| 精品一区99999| 色狠狠综合噜一二三区| 国产18精品亚洲精品| av网站免费看| 青青草国产一区二区三区| 婷婷色一区| 操逼操网| 日韩精品字幕| 东京热,男人的天堂| 久久內射| 色婷婷电影| 天天弄天天操| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区老师黑人潮喷一 | 97综合国产| 黑人干亚洲| 91色噜噜狠狠| 操碰97| 亚洲αv一区二区三区| 久久久九九九| 美女十八禁| 久草精品视频| 97干色天堂| 丁香五月激情综合| 97人人操人人摸人人爱| 一级性爱视频免费在线| 国产精品乱码久久久| 欧美色图在线视频少妇| caopeng97人妻| 天天综合网~69| 99久re热视频精品98| 美国一区二区三区视频| 人妻精品视频一区二区三区| 亚洲激情久久久伊人综合| 免费成人在线熟妇网| 蜜桃精品一区二区三区ww| www.婷婷五月天| 色香色欲天天综合网天天来吧| 精品人妻1区| 日本一道在线播放高清| 高清视频一区| 久久久久久免费电影| 91激情综合| 中出789在线视频| 麻豆国产原创AV色哟哟| 69精品少妇一区二区三区蜜桃| 人人扣人人操| 国产成人自拍视频在线| 99久久久er直播网址| 国产精品一区午夜福利| 尹人免费观看视频在线| av网站在线看| 欧美色图片| 尤物网站91| 狠狠操狠狠操操| 91视频综合| 日本不卡五区| 丰满人妻一区二区三区色-百度| 欧美性性性| 78精品| 国产AV中文| 97干97色| 国产精品爆乳懂色蜜乳| 1769成人国产精品视频| 国产强奸乱伦第1页| 亚洲啪啪综合?v一区综合精品区| 91成人无码| 久久久999| 人人性爱视频免费| 中文字幕日韩专区精品系列| 69XX一中文字幕人妻91| 大香蕉乱级| 亚洲小电影免费涩涩成人在线高清| 日韩成人精品| 91精品国产日韩欧美综合| yellow网站免费观看日韩高清无码| 国产精品亚洲一级av第二区| 韩国一级婬片A片无码天美| 五月婷网站| 69精品久久久久中文字幕| 久久婷综合| 美女超碰978| 91殴美大片| 国产精品久久久久久久久久久久久久久久 | 国产精品农村妇女精品| 日本三级R| 亚洲综合在线视频| 天天影视射综合网| 精品中文一区二区| 99热精品在线观看| 97超碰久久| 亚洲h片在线免费观看| 一区二区三区四区免费视频| 性爱av网站| 天天看综合网| 97精品第3页| 亚洲人精品久久久| 欧美激情专区| 欧美日韩色综合网| 欧美综合区| www老逼91| 亚洲国内精品成人不卡| 欧美日韩小说| 久久中文字幕不卡人妻| 日韩一性一交一A片俄罗斯| 久久ww| 麻豆福利视频导航| 人妻喷水| 日韩av无码网站| 乱伦日本色图AⅤ|