欧美成人午夜精品久久久,国产?V天堂一区二区三区,欧美精品va在线观看,亚洲一区二区三区免费在线观看,av无码精品一区二区久久,欧美性爱视频不卡一区三区,欧美乱人伦视频在线观看,国产一级牲交高潮

ARTICLE DETAIL

資訊詳情

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

nRF54L15 I2C初始化實(shí)戰(zhàn):從Zephyr配置到波形調(diào)試全解析

nRF54L15 I2C初始化實(shí)戰(zhàn):從Zephyr配置到波形調(diào)試全解析 1. 項(xiàng)目緣起為什么nRF54L15的I2C初始化值得單獨(dú)聊聊最近在折騰一塊基于nRF54L15的傳感器板子核心任務(wù)就是通過(guò)I2C總線讀取幾個(gè)外圍器件的狀態(tài)。按理說(shuō)在Nordic的NCSnRF Connect SDK框架下用Zephyr RTOS的驅(qū)動(dòng)模型初始化一個(gè)I2C外設(shè)應(yīng)該是件相當(dāng)標(biāo)準(zhǔn)化的事情照著文檔和例程抄抄改改就能跑通。但真上手了才發(fā)現(xiàn)從“能跑”到“跑得穩(wěn)”中間隔著不少細(xì)節(jié)。尤其是nRF54L15作為nRF54系列中的一員其外設(shè)配置和NCS的Devicetree綁定方式與經(jīng)典的nRF52系列有些微妙的差異稍不注意就會(huì)掉進(jìn)坑里。網(wǎng)上關(guān)于nRF54L15的實(shí)戰(zhàn)分享還不多很多經(jīng)驗(yàn)還停留在nRF52840的時(shí)代。所以我覺(jué)得有必要把這次初始化nRF54L15 I2C外設(shè)的完整過(guò)程、關(guān)鍵配置和踩過(guò)的坑系統(tǒng)地梳理一遍這不僅僅是配置幾個(gè)寄存器更是理解NCS下外設(shè)驅(qū)動(dòng)模型和硬件抽象層的一次實(shí)踐。I2C本身是個(gè)老生常談的協(xié)議但把它集成到一個(gè)具體的RTOS和芯片平臺(tái)上就需要考慮更多Devicetree里怎么定義節(jié)點(diǎn)和屬性如何選擇正確的時(shí)鐘速度和驅(qū)動(dòng)模式中斷和DMA怎么配合通信失敗時(shí)從軟件配置到硬件波形排查鏈路是怎樣的這篇文章我就以一個(gè)實(shí)際項(xiàng)目為背景手把手帶你走通nRF54L15上I2C外設(shè)的初始化全流程并分享幾個(gè)確保通信穩(wěn)定性的核心技巧。無(wú)論你是剛從nRF52遷移過(guò)來(lái)還是初次接觸NCS和Zephyr希望這些經(jīng)驗(yàn)?zāi)軒湍闵僮邚澛贰?. 環(huán)境準(zhǔn)備與項(xiàng)目骨架搭建在開始寫代碼之前確保你的開發(fā)環(huán)境是就緒的。對(duì)于nRF54系列NCS是唯一官方支持的SDK。我使用的是NCS v2.6.0版本這個(gè)版本對(duì)nRF54系列的支持已經(jīng)比較完善。你可以通過(guò)nRF Connect for Desktop中的Toolchain Manager來(lái)安裝和管理NCS版本這是最省心的方式。創(chuàng)建一個(gè)新的應(yīng)用程序項(xiàng)目。我習(xí)慣使用命令行在NCS的安裝目錄下或者通過(guò)west命令在任何位置執(zhí)行west build -b nrf54l15dk_nrf54l15 app這里的nrf54l15dk_nrf54l15是開發(fā)板的標(biāo)識(shí)符。如果你用的是自定義板需要先準(zhǔn)備自己的板級(jí)定義文件。創(chuàng)建項(xiàng)目后你會(huì)得到一個(gè)最基礎(chǔ)的src/main.c和項(xiàng)目配置文件prj.conf。接下來(lái)是理解項(xiàng)目的核心配置文件。在NCS中外設(shè)的硬件抽象主要通過(guò)Devicetree.dts文件和Kconfigprj.conf或Kconfig文件來(lái)完成。對(duì)于I2C我們主要關(guān)注以下幾點(diǎn)Devicetree配置在板級(jí)定義文件如boards/arm/nrf54l15dk_nrf54l15/nrf54l15dk_nrf54l15.dts中I2C控制器節(jié)點(diǎn)通常已經(jīng)定義好了。我們的任務(wù)是在應(yīng)用層的app.overlay文件中啟用我們需要的I2C實(shí)例并為其分配一個(gè)在代碼中可引用的標(biāo)簽同時(shí)配置其引腳。例如我想使用I2C1連接到開發(fā)板上的P0.02SCL和P0.03SDA我的app.overlay文件內(nèi)容大致如下i2c1 { compatible nordic,nrf-twim; status okay; pinctrl-0 i2c1_default; pinctrl-1 i2c1_sleep; pinctrl-names default, sleep; clock-frequency I2C_BITRATE_STANDARD; // 標(biāo)準(zhǔn)模式100kHz label I2C_1; // 自定義一個(gè)標(biāo)簽方便代碼引用 };這里的關(guān)鍵是compatible nordic,nrf-twim它告訴Zephyr使用Nordic的TWIMTwo Wire Master Interface驅(qū)動(dòng)。clock-frequency設(shè)置為I2C_BITRATE_STANDARD這是一個(gè)宏代表100kHz。如果你需要高速模式400kHz可以設(shè)置為I2C_BITRATE_FAST。Kconfig配置在prj.conf文件中我們需要啟用I2C驅(qū)動(dòng)和必要的依賴。至少需要以下配置CONFIG_I2Cy CONFIG_I2C_NRFXyCONFIG_I2C_NRFX是Nordic nRF系列I2C驅(qū)動(dòng)的實(shí)現(xiàn)。根據(jù)你的需求可能還需要啟用日志CONFIG_LOGy和I2C的調(diào)試信息CONFIG_I2C_LOG_LEVEL_DBGy來(lái)輔助排查問(wèn)題。完成這些配置后項(xiàng)目的硬件抽象層就準(zhǔn)備好了。Zephyr的驅(qū)動(dòng)模型會(huì)在編譯時(shí)根據(jù)Devicetree和Kconfig的配置自動(dòng)生成相應(yīng)的設(shè)備結(jié)構(gòu)體和初始化代碼。我們的應(yīng)用代碼只需要通過(guò)設(shè)備樹獲取設(shè)備指針然后調(diào)用標(biāo)準(zhǔn)的I2C API即可。3. 核心代碼實(shí)現(xiàn)從獲取設(shè)備到首次通信環(huán)境配置好后我們進(jìn)入核心的C代碼實(shí)現(xiàn)部分。在Zephyr中操作一個(gè)外設(shè)的標(biāo)準(zhǔn)流程是獲取設(shè)備指針 - 配置如果需要- 進(jìn)行讀寫操作。首先在main.c的開頭我們需要包含必要的頭文件#include zephyr/kernel.h #include zephyr/device.h #include zephyr/drivers/i2c.h #include zephyr/logging/log.h LOG_MODULE_REGISTER(main, LOG_LEVEL_INF);LOG_MODULE_REGISTER用于初始化日志模塊這在調(diào)試時(shí)非常有用。接下來(lái)我們需要通過(guò)Devicetree來(lái)獲取I2C控制器的設(shè)備指針。在Zephyr中這通常通過(guò)DEVICE_DT_GET宏來(lái)完成它需要一個(gè)設(shè)備樹節(jié)點(diǎn)的標(biāo)識(shí)符。還記得我們?cè)赼pp.overlay里定義的label I2C_1嗎Zephyr的Devicetree宏系統(tǒng)會(huì)為這個(gè)節(jié)點(diǎn)生成一個(gè)唯一的標(biāo)識(shí)符。我們可以這樣獲取設(shè)備// 使用DT_NODELABEL宏來(lái)引用我們?cè)趏verlay中定義的label #define I2C_DEV_NODE DT_NODELABEL(i2c1) // 注意這里的i2c1是節(jié)點(diǎn)標(biāo)簽不是我們自定義的字符串“I2C_1” static const struct device *const i2c_dev DEVICE_DT_GET(I2C_DEV_NODE); if (!device_is_ready(i2c_dev)) { LOG_ERR(I2C device %s is not ready, i2c_dev-name); return -ENODEV; }這里有一個(gè)關(guān)鍵點(diǎn)DT_NODELABEL(i2c1)中的i2c1指的是設(shè)備樹中I2C1控制器節(jié)點(diǎn)的標(biāo)簽label這個(gè)標(biāo)簽通常由芯片的SoC定義文件.dtsi決定而不是我們?cè)趏verlay里自定義的那個(gè)字符串“I2C_1”。我們自定義的label屬性主要用于日志輸出和設(shè)備樹生成的其他用途。device_is_ready函數(shù)至關(guān)重要它檢查驅(qū)動(dòng)是否成功初始化并綁定到了硬件上。如果返回false通常意味著Devicetree配置有誤、驅(qū)動(dòng)未編譯進(jìn)鏡像或者硬件初始化失敗后續(xù)任何I2C操作都會(huì)導(dǎo)致系統(tǒng)錯(cuò)誤。設(shè)備就緒后我們就可以進(jìn)行I2C通信了。假設(shè)我們要讀取一個(gè)I2C地址為0x50的EEPROM這是一個(gè)常見的外設(shè)也符合你提供的熱詞“i2c讀寫eeprom代碼”從該設(shè)備的寄存器地址0x00開始讀取2個(gè)字節(jié)的數(shù)據(jù)。標(biāo)準(zhǔn)的操作流程如下#define EEPROM_I2C_ADDR 0x50 // 7位I2C地址左移一位后為0xA0 (寫) / 0xA1 (讀) uint8_t reg_addr 0x00; // 要讀取的EEPROM內(nèi)部寄存器地址 uint8_t rx_buf[2]; // 用于存放讀取到的數(shù)據(jù) int ret; // 步驟1先寫入要讀取的寄存器地址對(duì)于大多數(shù)EEPROM和傳感器這是標(biāo)準(zhǔn)操作 ret i2c_write(i2c_dev, reg_addr, 1, EEPROM_I2C_ADDR); if (ret ! 0) { LOG_ERR(Failed to write EEPROM register address (err %d), ret); // 處理錯(cuò)誤 } // 步驟2從該地址開始讀取數(shù)據(jù) ret i2c_read(i2c_dev, rx_buf, sizeof(rx_buf), EEPROM_I2C_ADDR); if (ret ! 0) { LOG_ERR(Failed to read from EEPROM (err %d), ret); // 處理錯(cuò)誤 } LOG_INF(Read data: 0x%02x 0x%02x, rx_buf[0], rx_buf[1]);這是最基本的“先寫后讀”模式。Zephyr的i2c_write和i2c_read函數(shù)封裝了底層的傳輸細(xì)節(jié)。需要注意的是這里的EEPROM_I2C_ADDR是7位地址。有些設(shè)備的文檔會(huì)給出8位地址包含讀寫位你需要將其右移一位得到7位地址再傳入API。然而對(duì)于支持“組合格式”combined format或需要在一個(gè)事務(wù)中完成地址寫入和數(shù)據(jù)讀取的設(shè)備上述“先寫后讀”可能會(huì)因?yàn)閮纱为?dú)立的I2C傳輸中間有STOP和START信號(hào)而不符合設(shè)備時(shí)序要求。這時(shí)我們需要使用更強(qiáng)大的i2c_transfer函數(shù)。i2c_transfer允許你定義一個(gè)包含多個(gè)消息message的數(shù)組在一個(gè)I2C事務(wù)中依次執(zhí)行中間只產(chǎn)生重復(fù)START條件Repeated Start這對(duì)于許多傳感器和RTC芯片是必需的。使用i2c_transfer讀取EEPROM的代碼如下#define EEPROM_I2C_ADDR 0x50 uint8_t reg_addr 0x00; uint8_t rx_buf[2]; int ret; struct i2c_msg msgs[2]; // 第一個(gè)消息寫入寄存器地址不產(chǎn)生STOP信號(hào) msgs[0].buf reg_addr; msgs[0].len 1; msgs[0].flags I2C_MSG_WRITE | I2C_MSG_RESTART; // 關(guān)鍵WRITE RESTART // 第二個(gè)消息讀取數(shù)據(jù)產(chǎn)生STOP信號(hào) msgs[1].buf rx_buf; msgs[1].len sizeof(rx_buf); msgs[1].flags I2C_MSG_READ | I2C_MSG_STOP; // READ STOP ret i2c_transfer(i2c_dev, msgs, 2, EEPROM_I2C_ADDR); if (ret ! 0) { LOG_ERR(I2C transfer failed (err %d), ret); // 處理錯(cuò)誤 } LOG_INF(Read data via transfer: 0x%02x 0x%02x, rx_buf[0], rx_buf[1]);這段代碼通過(guò)I2C_MSG_RESTART標(biāo)志確保在寫完寄存器地址后總線不會(huì)產(chǎn)生STOP條件而是直接產(chǎn)生一個(gè)重復(fù)START條件緊接著發(fā)起讀操作。這符合絕大多數(shù)I2C從設(shè)備的讀時(shí)序要求。理解并正確使用i2c_transfer和消息標(biāo)志位是寫出穩(wěn)定可靠I2C驅(qū)動(dòng)代碼的關(guān)鍵一步。4. 深入配置與性能調(diào)優(yōu)讓I2C跑起來(lái)只是第一步讓它跑得穩(wěn)定、高效還需要進(jìn)行一些深入的配置和調(diào)優(yōu)。這部分往往在簡(jiǎn)單的例程中不會(huì)提及但卻對(duì)實(shí)際產(chǎn)品的可靠性至關(guān)重要。4.1 時(shí)鐘速度與總線負(fù)載在app.overlay中我們?cè)O(shè)置了clock-frequency。除了標(biāo)準(zhǔn)的100kHz和快速的400kHznRF54L15的TWIM還支持更高的速度如1MHz。但提高速度需要謹(jǐn)慎總線電容這是影響I2C速度的首要因素??偩€上的每個(gè)器件、每厘米導(dǎo)線都會(huì)增加電容。過(guò)大的總線電容會(huì)導(dǎo)致信號(hào)邊沿變緩可能無(wú)法滿足高速模式下的上升時(shí)間rise time要求從而產(chǎn)生通信錯(cuò)誤。如果你的設(shè)備連接線較長(zhǎng)或掛載器件較多建議先用標(biāo)準(zhǔn)模式測(cè)試。上拉電阻I2C總線需要外部上拉電阻通常SCL和SDA各一個(gè)。電阻值的選擇與總線電容和電源電壓有關(guān)。公式R_pullup (Vdd - 0.4) / (3mA)給出了一個(gè)最大值的粗略估計(jì)0.4V是低電平閾值3mA是標(biāo)準(zhǔn)模式下的最大灌電流。對(duì)于3.3V系統(tǒng)常用4.7kΩ或10kΩ。總線電容大時(shí)應(yīng)減小電阻值以加快上升沿但會(huì)增加功耗和驅(qū)動(dòng)器的負(fù)擔(dān)。nRF54L15的引腳驅(qū)動(dòng)能力較強(qiáng)但最好參考數(shù)據(jù)手冊(cè)和實(shí)際波形進(jìn)行調(diào)整。4.2 超時(shí)與重試機(jī)制工業(yè)環(huán)境或長(zhǎng)距離通信中I2C總線容易受到干擾。Zephyr的I2C驅(qū)動(dòng)提供了超時(shí)配置。你可以在prj.conf中設(shè)置CONFIG_I2C_NRFX_TIMEOUT1000 # 超時(shí)時(shí)間單位毫秒或者在運(yùn)行時(shí)通過(guò)i2c_configureAPI來(lái)設(shè)置。但請(qǐng)注意nRF54L15的TWIM驅(qū)動(dòng)i2c_nrfx_twim.c對(duì)超時(shí)的處理方式可能與你的預(yù)期不同。它主要用在從設(shè)備無(wú)響應(yīng)NACK或時(shí)鐘延展clock stretching超時(shí)的情況下。對(duì)于總線被持續(xù)拉低等“死鎖”情況超時(shí)機(jī)制可能無(wú)法恢復(fù)。因此一個(gè)健壯的系統(tǒng)需要應(yīng)用層的重試邏輯#define MAX_RETRIES 3 int retries 0; int ret; do { ret i2c_read(i2c_dev, ...); if (ret 0) { break; // 成功 } LOG_WRN(I2C read failed (attempt %d), retrying..., retries 1); k_msleep(10); // 短暫延時(shí)讓總線可能的狀態(tài)恢復(fù) retries; } while (retries MAX_RETRIES); if (ret ! 0) { LOG_ERR(I2C read failed after %d attempts, MAX_RETRIES); // 執(zhí)行更嚴(yán)格的錯(cuò)誤恢復(fù)如重新初始化I2C控制器 }4.3 電源管理與低功耗nRF54系列主打低功耗I2C外設(shè)的功耗管理也需要關(guān)注。在Devicetree中我們定義了pinctrl-0默認(rèn)狀態(tài)和pinctrl-1睡眠狀態(tài)。當(dāng)系統(tǒng)進(jìn)入低功耗模式如CONFIG_PM_DEVICE啟用驅(qū)動(dòng)會(huì)自動(dòng)將引腳切換到睡眠狀態(tài)配置這通常意味著將引腳設(shè)置為高阻輸入NRF_GPIO_PIN_NOPULL以降低漏電流。如果你的從設(shè)備如傳感器也支持睡眠你需要在通信前后管理其電源。一種常見模式是在需要讀數(shù)時(shí)通過(guò)一個(gè)GPIO控制從設(shè)備的電源或使能引腳上電后等待其穩(wěn)定通常有幾毫秒到幾十毫秒的啟動(dòng)時(shí)間再進(jìn)行I2C初始化和數(shù)據(jù)讀取讀完后再將其斷電。這能極大降低系統(tǒng)整體功耗。4.4 使用DMA提升效率對(duì)于需要頻繁傳輸大量數(shù)據(jù)的場(chǎng)景例如從I2C接口的顯示屏連續(xù)讀取幀緩沖使用DMA可以解放CPU降低系統(tǒng)負(fù)載。nRF54L15的TWIM外設(shè)支持EasyDMA。在Zephyr中I2C的DMA傳輸通常是自動(dòng)啟用的當(dāng)CONFIG_I2C_NRFX被設(shè)置且芯片支持時(shí)。你可以通過(guò)檢查i2c_nrfx_twim.c驅(qū)動(dòng)代碼或相關(guān)Kconfig選項(xiàng)來(lái)確認(rèn)。使用DMA時(shí)要確保你提供的讀寫緩沖區(qū)位于DMA可訪問(wèn)的內(nèi)存區(qū)域?qū)τ趎RF54通常的SRAM區(qū)域都是可以的。對(duì)于超大數(shù)據(jù)傳輸合理規(guī)劃緩沖區(qū)大小避免單次傳輸時(shí)間過(guò)長(zhǎng)阻塞總線。5. 實(shí)戰(zhàn)排坑從軟件配置到硬件波形的完整鏈路即使代碼和配置看起來(lái)完美I2C通信仍然可能失敗。下面我分享一個(gè)完整的排查鏈路這是調(diào)試任何I2C問(wèn)題都應(yīng)該遵循的思路從最上層軟件逐步深入到硬件底層。5.1 第一步檢查軟件配置與設(shè)備狀態(tài)日志與返回值確保CONFIG_LOGy并設(shè)置合適的日志級(jí)別。仔細(xì)查看i2c_write/read/transfer的返回值。常見的錯(cuò)誤碼有-EIO總線錯(cuò)誤如從設(shè)備無(wú)應(yīng)答NACK。-ENODEV設(shè)備指針無(wú)效或設(shè)備未就緒。-EINVAL參數(shù)無(wú)效如緩沖區(qū)為空長(zhǎng)度為零。-ETIMEDOUT操作超時(shí)。 根據(jù)錯(cuò)誤碼可以初步判斷方向。確認(rèn)設(shè)備樹綁定使用west build -t menuconfig檢查CONFIG_I2C_NRFX是否被選中。更徹底的方法是查看編譯生成的build/zephyr/include/generated/devicetree_generated.h文件搜索你的I2C節(jié)點(diǎn)如i2c1看其status屬性是否為okaycompatible是否為nordic,nrf-twim。引腳復(fù)用確認(rèn)這是nRF54系列的一個(gè)常見坑點(diǎn)。nRF54L15的引腳功能比nRF52系列更靈活一個(gè)物理引腳可能被多個(gè)外設(shè)復(fù)用。你需要確認(rèn)在app.overlay中指定的pinctrl-0如i2c1_default所引用的pinctrl節(jié)點(diǎn)其定義的SCL和SDA引腳沒(méi)有被其他外設(shè)如UART、SPI、PWM同時(shí)啟用。檢查板級(jí)DTS文件或創(chuàng)建你自己的pinctrl節(jié)點(diǎn)確保引腳分配唯一。5.2 第二步邏輯分析儀抓取波形當(dāng)軟件層面找不到原因時(shí)必須請(qǐng)出硬件調(diào)試神器——邏輯分析儀或者帶I2C解碼功能的示波器。將探頭連接到SCL和SDA線以及地線設(shè)置合適的采樣率至少4倍于時(shí)鐘頻率開始抓取通信過(guò)程的波形。你需要觀察以下幾個(gè)關(guān)鍵點(diǎn)它們對(duì)應(yīng)了你提供的熱詞中的“i2c時(shí)序圖”和“經(jīng)典的i2c write/read 波形圖”起始條件Start ConditionSDA在SCL高電平時(shí)由高變低是否清晰地址字節(jié)Address Byte起始條件后主機(jī)發(fā)送的第一個(gè)7位地址加上讀寫位是否正確你的邏輯分析儀軟件應(yīng)該能解碼出這個(gè)字節(jié)。例如對(duì)于地址0x50的寫操作解碼出的地址字節(jié)應(yīng)該是0xA00x50 1 | 0。應(yīng)答位ACK/NACK每個(gè)字節(jié)包括地址字節(jié)和每個(gè)數(shù)據(jù)字節(jié)傳輸后的第9個(gè)時(shí)鐘周期SDA是否被從設(shè)備拉低ACK如果從設(shè)備無(wú)應(yīng)答NACKSDA為高說(shuō)明地址錯(cuò)誤、設(shè)備未上電、或設(shè)備故障。數(shù)據(jù)字節(jié)Data Bytes寫入或讀出的數(shù)據(jù)字節(jié)是否符合預(yù)期停止條件Stop ConditionSDA在SCL高電平時(shí)由低變高是否產(chǎn)生重復(fù)起始條件Repeated Start如果你使用了i2c_transfer并設(shè)置了I2C_MSG_RESTART在波形上應(yīng)該能看到一個(gè)停止條件被省略SCL在高電平期間SDA先變高再變低一個(gè)新的起始條件。時(shí)鐘延展Clock Stretching觀察SCL線是否被從設(shè)備長(zhǎng)時(shí)間拉低。這是某些從設(shè)備如一些EEPROM、RTC在處理數(shù)據(jù)時(shí)的合法行為。nRF54L15的TWIM驅(qū)動(dòng)支持時(shí)鐘延展但如果延展時(shí)間過(guò)長(zhǎng)可能會(huì)導(dǎo)致驅(qū)動(dòng)超時(shí)-ETIMEDOUT。你需要確認(rèn)從設(shè)備手冊(cè)中規(guī)定的最大時(shí)鐘延展時(shí)間并與驅(qū)動(dòng)超時(shí)設(shè)置比較。毛刺與信號(hào)完整性觀察SDA和SCL線上的波形是否干凈上升沿和下降沿是否陡峭有沒(méi)有明顯的振鈴ringing或過(guò)沖overshoot。“i2c 的毛刺出現(xiàn)在什么位置會(huì)有影響”——毛刺如果出現(xiàn)在SCL高電平期間并且幅度足夠大可能會(huì)被誤判為起始或停止條件導(dǎo)致通信錯(cuò)亂。如果信號(hào)質(zhì)量差需要檢查PCB布局、總線電容、上拉電阻值或者考慮降低通信速率。5.3 第三步常見問(wèn)題與解決方案根據(jù)波形分析可以定位大部分問(wèn)題問(wèn)題無(wú)ACK地址字節(jié)后SDA為高排查確認(rèn)從設(shè)備I2C地址是否正確7位 vs 8位。用萬(wàn)用表測(cè)量從設(shè)備的電源和地是否正常。確認(rèn)SCL/SDA線路連通沒(méi)有虛焊或短路。確認(rèn)上拉電阻已正確焊接阻值合適。問(wèn)題有ACK但數(shù)據(jù)錯(cuò)誤排查檢查你的讀寫數(shù)據(jù)緩沖區(qū)內(nèi)容。對(duì)于寫操作確認(rèn)發(fā)送的數(shù)據(jù)字節(jié)順序和值。對(duì)于讀操作確認(rèn)你解析接收緩沖區(qū)的邏輯。同時(shí)檢查從設(shè)備是否有特殊的寄存器訪問(wèn)協(xié)議或需要特定的命令序列。問(wèn)題通信間歇性失敗尤其在高速模式下排查這極有可能是信號(hào)完整性問(wèn)題。降低I2C時(shí)鐘速度如從400kHz降到100kHz看是否改善。用示波器測(cè)量SCL和SDA線的上升時(shí)間從30%Vdd到70%Vdd。根據(jù)I2C規(guī)范標(biāo)準(zhǔn)模式上升時(shí)間應(yīng)小于1000ns快速模式應(yīng)小于300ns。如果上升時(shí)間過(guò)長(zhǎng)嘗試減小上拉電阻值如從10kΩ換成4.7kΩ。檢查總線布線避免過(guò)長(zhǎng)或靠近噪聲源。問(wèn)題使用i2c_transfer失敗但分開write和read成功排查這通常是因?yàn)閺脑O(shè)備不支持重復(fù)START條件或者其協(xié)議要求在兩個(gè)操作之間有明確的STOP條件。仔細(xì)閱讀從設(shè)備的數(shù)據(jù)手冊(cè)確認(rèn)其讀操作時(shí)序。有些老式EEPROM可能就需要先write地址帶STOP再read數(shù)據(jù)。5.4 一個(gè)真實(shí)的排查案例我在項(xiàng)目中遇到一個(gè)詭異的問(wèn)題I2C通信在系統(tǒng)啟動(dòng)后前幾次都成功運(yùn)行一段時(shí)間后隨機(jī)失敗錯(cuò)誤碼是-EIO。用邏輯分析儀抓取失敗時(shí)的波形發(fā)現(xiàn)主機(jī)發(fā)送起始條件后SCL線被持續(xù)拉低導(dǎo)致通信卡死。深入排查發(fā)現(xiàn)這是一個(gè)總線鎖死Bus Lock-up問(wèn)題。原因是系統(tǒng)中另一個(gè)任務(wù)優(yōu)先級(jí)更高在I2C通信過(guò)程中發(fā)生了嚴(yán)重錯(cuò)誤并進(jìn)入了死循環(huán)而這個(gè)任務(wù)也持有了某個(gè)與I2C驅(qū)動(dòng)共享的資源如一個(gè)互斥鎖導(dǎo)致I2C驅(qū)動(dòng)無(wú)法完成當(dāng)前傳輸TWIM外設(shè)狀態(tài)機(jī)異常SCL被意外拉低。解決方案軟件層面優(yōu)化任務(wù)調(diào)度和資源鎖的持有時(shí)間確保不會(huì)在關(guān)鍵通信期間發(fā)生長(zhǎng)時(shí)間阻塞。為I2C操作增加看門狗watchdog超時(shí)復(fù)位機(jī)制。硬件/驅(qū)動(dòng)層面nRF54L15的TWIM外設(shè)有超時(shí)和錯(cuò)誤恢復(fù)機(jī)制但并非萬(wàn)能。在驅(qū)動(dòng)初始化時(shí)可以配置SHORTS寄存器將STOP任務(wù)與某些錯(cuò)誤事件關(guān)聯(lián)嘗試自動(dòng)恢復(fù)。更徹底的方法是在應(yīng)用層檢測(cè)到連續(xù)多次I2C失敗后執(zhí)行一個(gè)“總線恢復(fù)”序列先嘗試發(fā)送多個(gè)時(shí)鐘脈沖通過(guò)將SCL引腳臨時(shí)配置為GPIO輸出并手動(dòng)翻轉(zhuǎn)如果無(wú)效則重新初始化deinit再initI2C控制器外設(shè)。Zephyr的驅(qū)動(dòng)APIi2c_recover_bus()就是用于此目的但在nRF54的驅(qū)動(dòng)中需要確認(rèn)其實(shí)現(xiàn)是否完善。通過(guò)這個(gè)從軟件日志到硬件波形再到系統(tǒng)級(jí)分析的完整排查過(guò)程你不僅能解決眼前的問(wèn)題更能建立起對(duì)I2C總線乃至整個(gè)嵌入式系統(tǒng)交互的深刻理解。調(diào)試I2C本質(zhì)上是在調(diào)試一個(gè)由軟件、硬件和時(shí)序精密配合的系統(tǒng)。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
久久婷婷五月天激情| 1024国产| 色婷婷国产精品综合在线观看| 五月丁香六月色婷| 五月婷免费视频| 激情五月婷婷视频一区二区三区| 欧洲色| 那里有AV网址| 色区久久| 亚洲综合五月天婷婷丁香| 日韩AV中文在线观看| 影音先锋91资源站| 色婷婷丁香五月天在线观看| 99热这里只有精品最新地址获取| 五月丁香综合久久| 激情综合网,婷婷| 色婷成人狠干| AV在线收看| 亚洲精品久久久无码| 色玖玖爱| 激情六月丁香| 狠狠综合网| 色色性爱视频| 亚洲成人av在线| 色丁香婷婷| 超碰碰碰碰| 综合激情五月综合激情五月激情1| 日本99久久| 91人在线观看| 日日色五月天| 亚洲天堂青草| 操碰99在线视频观看| 五月天激情国产综合婷婷婷| 能看的av| 七七九九色色| 99精品激情| 热99在线精品| 91色操| 色级婷婷| 日韩成人电影av| 精品成人在线| 色五月激情图片| 成人无码髙潮喷水A片| 色婷亚洲五月丁香| 大香蕉狠狠爱主页| 五月丁香好婷婷A片网| 影音先锋男人站,影音先锋男人色资源网,影音先锋AV最新资源站,影音先锋AV资源 | 国产激情综合五月久久| 这里只有精彩视频| 婷婷激情在线| 可以直接看的AV| www.婷婷,com| 国产激情视频在线观看| 99热精品在线| 色操b| 婷丁五月| 亚洲V国产V欧美V久久久久久| 就爱啪啪婷婷| 日日夜夜天天| 玖玖五月丁香| 亚洲日韩欧美综合VA| 激情五月婷婷丁香六月| 久久9热| 午夜天堂一区人妻| 丁香五月成人社区| 色婷婷a v| 日日夜夜爽爽| 色播五月丁香婷婷| 这里只有精彩小视频视频网站| 91免费啪视频| 人与禽A片啪啪| 超碰在线观看9| 99热 在线观看| 日韩成人电影AV| 国产视频婷婷| 婷婷色爱| 婷婷激情五月天亚洲综合| 亲子乱AV一区二区三区下载| caop在线| 天天婷婷综合亚洲亚洲| 婷婷五月天在线观看第二页| 五月丁香六月婷婷的女人| 26uuu国自产精品| 亚洲熟女乱色综合亚洲网站| 色色婷婷色色| 激情丁香久久| 丁香六月天婷婷| 性做久久久久久久免费看| 色五月婷婷在线| 亚州性爱99| 天天日天天干天天爱| 成人视频在线免费播放| 99人人操人人操人人精| 久综合网| 婷婷五月欧美| 国产三级在线播放| 4399在线观看免费高清毛片| 色婷婷五月在线| 久久精品4| 国产日韩av片| 日本五月婷| 99热这里都是精品| 天天狠狠六月婷丁香影院| 久久午夜丁香| 色婷婷色综合激情91| 亚州第一黄网| 人人操婷婷| 99婷婷精品推荐在线视频| 婷婷大香蕉| 思思热在线精品视频| 午夜成人天堂久久无码日韩久久| 五月丁香久久网| 99视频只有精品| 亚亚州久久高潮| 5月丁香六月婷婷| 狠狠干2007| 色五月婷婷 成人| 成人午夜无码视频| site:picc-up.com| 婷婷五月激情在线| 高清无码视频网址| 婷婷五月天AV在线| 色五月五月婷婷| 五月天色社区| 天天干一干| 激情综合色| 97人妻碰碰中文无码久热丝袜| 丁香五月综合| 国产在线aaa片一区二区99| 色九月婷婷| 六月丁香五月婷婷| 激情五月婷婷综合秋霞| 色五月大| 色婷婷丁香五月| 婷婷五月69| 蜘蛛女免费观看完整版高清电影 | 91热在线观看视频| 伊人婷婷91| 日韩日比视频| 激情五月深爱五月| 久久婷婷五月综合伊人| 色五月婷婷影院| 男人天堂99| 大香蕉伊人久久| 五月婷婷色五月| 大香蕉九九| 被强行糟蹋的女人A片| 中字幕视频在线永久在线观看免费| 丁香婷婷五月天校园春色| 99精品热| 丁香五月婷婷成人网| 99热这里只有精品在线播放 | 亚洲激情五月丁香久久久久| 婷婷五月天伊人| 婷婷97碰碰| 婷婷九月| 丁香五月大香蕉在线99| 亚洲综合草草| 婷婷六月中文字幕| 九九热婷婷| WWW,五月| 婷婷情色五月| 337p大胆噜噜噜噜噜91Av| 国产精品色色666| 国产乱妇乱子伦| 99成人在线观看| 99热这里只有精品2| 婷婷五月天成人| 亚洲在线网站| 青青热视频| 六月婷色六月| 激情AV| 中文字幕免费高清电视剧| 青青操日本摸摸看看| AA久久| 色色网站在线免费观看视频| 人人爱摸视频| 熟妇人妻中文字幕无码老熟妇 | 国产干逼片| 婷婷五月综合色拍| 丁香激激情网| 久热只有精品| 人妖色AV色综合| 青青草原中文字幕| 色五月涩涩婷婷| 色婷婷丁香五月| 婷婷丁香色性爱| 久九色| 五月天婷婷成人资源站| 丁香五月天之婷婷影院| 大香蕉九九操| 天天天摸夜夜夜玩| 操99| www.玖玖婷婷在线| 涩丁香91| peg 2区三区四区的| 五月亭亭直播| 色婷婷狠狠禁18久久| 97丁香五月| 久久婷婷青青| 亚洲成人电影aaaa| 综合久久久| 国产精品天天狠天天看| 女婷久久| 狠狠插狠狠插| 九色视频九色九色91jiuseshipin| 五月丁香六月激情综合| 亚洲成人在线五月天| 99视频精品在线| 9 1 A v久久久| 热99视频精品| 久久五月天综合| 97色视频网| 啪啪啪啪五月天| 婷婷五月色综合| 另类五月激情| 六月丁香深深爱| 99精品视频偷拍| 色六月婷婷| 精品九九视频| 97五月天| 伊人久久艹| 狠狠激情五月天| 激情久久久| 天天肏高清在线| 五月丁香激情六月| 天天日天天肏天天奸| site:hcxsz888.com| 五月天桃色深爱网| 大香蕉久久久久久久久| 丁香婷婷激情网站| 婷婷丁香五月社区亚洲| 精品久久久久久久人妻| 国产成人综合亚洲| 天天干天天干天天干天天干天天| 激情内射人妻1区2区3区| 精品九九在线观看视频| 涩综合婷婷| 强伦轩人妻一区二区电影| 丁香五月婷婷在线观看| 玖玖热99| 丁香婷婷社区| 4399在线观看免费毛片| 五月婷婷导航| 一本久道综合99| 五月天啪啪啪| 精品久久婷婷| 国产成人综合在线| 综合色色婷婷| 思思久久精品| 精品国产人人爱人人| 激情图片五月天| AV九九| 婷香五月| 五月丁香美女视频| 丁香六月婷| 亚洲 日韩色色| 精品人妻伦一二三区久久| 99视频超级精品| 欧洲色| 99热免费精品热久久66| AA丁香综合激情| 99久久黄色顶级视频| 丁香六月激情综合| 天天添天天摸天天天天做| 亚洲乱码日产精品BD| 亚洲综合丁香婷婷六月天| 99ER热精品视频| 青娱乐美女福利视频美臀| 久热婷婷综合| 综合色激情| 色开心五月丁香| 丁香五月综合久久八| 日韩乱玛久久| 九九无码| 久久久婷丁香五月天激情综合| 九九热最新| 日本人妻伦在线中文字幕| 丁香香五月激情免费视频| 五月丁香婷婷综合| 色婷婷综合网站| 日本五月婷| 天天人人综合| 丁香五月综合狠狠| 色五月大| 午夜色色色极品视频| 亚洲欧美在线观看| 丁香五月天激情免费在线观看AV777 | 人人性久久| www久久99| 精品九九在线观看视频| 五月婷婷很很色| 涩婷婷五月天| 五月婷婷欧美| 1024操逼| 久久婷婷丁香| 激情综合网,五月| 日韩中出视频| 九九99精品视频在线观看| 丁香五月自拍| 碰超在线九色| 99视频精品在线| 深爱五月中文字幕| 91肏| 国产无套精品一区二区| 欧美影院| 五月天成人在线精品| 久操大屁股女人av| 色婷网| A网在线欧洲| 色婷婷色综合激情91| 六月色色| 开心婷婷五月天激情网| 五月丁香| 久久五月天激情婷婷| wuyuedingxiang99| 99热这里只有精品一区| PORNY九色9l自拍视频成人| 国产亚洲在线观看| 亚洲色五月天| www·五月天| 97成人在线视频精品| 久久久性爱视频| 婷婷丁香成人色综合| 天天天天天天操| 日韩色色网| 国内自拍1区| 婷婷五月激情图片| 看国产探花操逼三级片| 久久久久久xxxxx| 97亚洲精品| www.久热| 色爱99| 激情五月综合ì香亚洲| 色色五月天激情| 婷婷六月香| 99精品在线观看视频| av五月天婷婷丁香| 久草五月天电影网| www.久久爱| 99操网站| 亚洲精品V天堂中文字幕| 五月天综合| 亚洲色婷婷99一9|| 青青热视频| 欧美精品999| www99精品亚| 99这里都是精品| 五月丁香性| 99精彩视频在线观看| 婷婷综合精品| 狠狠色婷婷7777久综合| 99综合五月免费视频色婷婷| 亚洲AV免费在线| 天天插天天射| www,26uuu,c0m,色情| 99热只有精品在线播放| 婷婷月综合| 女同在线9| 99视频在线观看欧| 五月丁香六月色婷| www.五月婷婷| 国产成人在线不卡AV| 亚洲九九99精品视频在线播放| 99精品视频免费观看| 四月婷婷五月丁香| 欧美va在线| 思思久久96热在精品国产,| 91啪啪视频| 麻豆123区| 亚洲综合在线丁香五月| 婷婷六月综合在线| 思思热久久阴99| 91精品91久久久中77777久久玖玖九九| 亚洲六月综合激情久久下卡| 久久久99精品免费观看| 99热精品在线在线| 九九色热| 婷婷丁香在线| 色五月激情网| 日本三级韩三级99久久| 五月婷婷啪啪| 色婷婷六月| 99热老司机| 婷婷丁香六月天| 色噜噜狠狠插综合| 夜夜夜夜撸夜夜操| 丁香婷婷视频在线| 日本色五月婷婷| 婷婷香五月天| 婷婷丁香小说| 97干婷婷| 婷香五月| 久久精彩视频| 天天综合精品| 超级碰碰97在线| 日本少妇裸体做爰高潮片| 婷婷六月色| 丁香五月天社区| 中文字幕在线免费观看视频| 拍真实国产伦偷精品| 丁香五月婷婷色| 久操热| 天天干天天干天天干| 九九热AV| 婷婷色色综合| 99久热在线精品99re6热| 99re思思久久| 色五月综合在线| 久久五月天激情| 丁香六月色婷婷| 久久er99| 丁香五月社区| 婷婷五月天影院| 五月激情婷婷在线| 办公室少妇激情呻吟A片在线观看| 禁欲电影完整版在线播放| 疯狂做受XXXX高潮A片| 国产人妻777人伦精品HD| www五月婷婷88导航| 7777久久亚洲中文字幕| 成人av观看| 丁香五月91| 婷婷五月四狠狠| 欧美色骚婷婷五月天| 丁香婷婷啪啪啪| www.99热国产| 色五月综合婷婷久久综合婷婷久久综合婷婷久久综合婷婷久久 | 狠狠草在线观看| 99re热在线观看| www.99久久久| 五月婷婷久久内射| 五月婷婷色五月| 超碰成人在线观看| 成人国产欧美大片一区| 91天堂网综合| 国产亚洲精品人人| 色色色色色网站| 激情六月天| 婷婷久久综合久| 99热久久这里只有精品| 日韩有码一区| 激情五月综合网| 五月丁香婷婷婷婷综合网| www.狠狠艹| 久久综合五月天| 嫩草AV久久伊人妇女超级A| 九九九九九九九九九九九九九九九九九九九在线视频 | 思思久久青草热| 五月天婷婷在线播放| 99热丁香| 香蕉综合网| 国产XXXX搡XXXXX搡麻豆| 99色免费在线观看| 97人人射| 9999综合99综合人| 丁香婷婷大香蕉| 五月婷婷亚洲综合网| 99热在线只有精品| 99热这里只有精品首页| www.zbzhongsen.com| 日本三级第一页| 九九热欧美| 婷婷五月天激情AV影院| 成人精品在线| 91久女| 97人人干人人操| 互月天综合| 久久色天堂| 中文字幕成人网站| 免费黄色视频网址| 日本五月天婷婷丁香| 色色色热热热| 九色无码| 久久九九大香蕉电院| 91人人爽狠狠狠| 久久九九囯产| 日本色99| 五月丁香淫淫婷婷婷| 深爱婷婷网| 色情五月| 激情婷婷六月| 日韩另类| 免费亚洲婷婷中文字幕| 六月撸婷婷| 熟女五月天久久综合| 99热在线观看精品| 久久久久久18| 爱婷婷久久视频| 狠狠狠狠狠干| 97丁香婷婷| 五月天精品视频| 亚洲精品又粗又大又爽A片| 中美日韩成人在线| 99综合网| 丁香六月婷婷久久亚洲天堂| 色五月婷婷啪啪五月| 六月婷婷综合| 9久精品视频| 激情图片五月天| 日韩成人影片网站| 久久五月丁香六月婷| 国产亚洲99久久精品| 91精品国产综合久久蜜芽解析速度| 午夜爱爱爱成人| 超碰在线91| 久久人人九| 激情亚洲网| 五月J香蕉婷婷| 26UUU亚洲欧美| 婷婷五月激情六月| 大香伊人婷婷影院| 欧美综合五月丁香六月婷| www.zbzhongsen.com| 91男同| 九九热在线视频| 亚洲一区二区 成人网站戴套| 九九久久9 9在线观看| 色婷婷婷av| 综合色色网| 99精品久久久久| 少妇综合网| 99久久終合| www.五月瑟| 日韩在线视频9色| 婷婷丁香一月| 亚洲亚洲人成综合网络| 激情五月无码| 国产免费性爱| 五月婷婷手机在线| 免费色婷婷| 激情九九综合网| 日韩青青| 久久婷婷五月天综合| 丁香五月综合网| 色婷婷在线视频综合| 天天躁日日躁狠狠躁日日躁2022年5月9日 | 任你日视频| 91.com男女操| 色狠狠综合| 五月伊人网| 五月天激情影院| 天天噜日日噜综合无码| 开心激情综合| 婷婷五月天AV激情| Aaa久久| 五月天激情啪啪| 婷婷天天色| 五月天成人网婷婷| 超碰在线超碰| 婷婷五月天最新网址| 亚洲噜色| 九九精品少妇| 26.uuu丁香五月婷婷| 91网站黄| 色色色综合色| 国产日日夜夜操| 婷婷五月天综合亚洲| 99热这里只有精品最新地址获取| 日本毛片内射| 99黄色性生活| 开心 五月 综合| www激情| 干一干xxxx| 久草热在线视频| 九九婷婷五月天| 久久人妻视步| 超级碰碰91| 激情综合网五月| 亚洲avjiujiur91| 久久综合婷婷激情| 日韩色色视频| www久久久| 成人精品视频99在线观看免费| 开心五月综合激情综合五月| www.久9| 久99久视频| 深情六月婷婷综合久久| 丁香五月玖玖| 亚洲av网站| 天天婷婷操| 久久婷婷色综合老司机| 玖玖热视频| 激情激情激情网| 激情伊人网| 噜噜在线| 色五月天成人| 五月婷婷综合热| 日本婷婷激情四射中文字幕在线观看| 欧美性猛交99久久久99| 777久久综合视频| www.久久色.com| 五月丁香激情综合网| 丁香色播五月天| 538任你爽视频不一样的| 婷婷五月天综合网| 九九亚洲视频| 色色网站免费在线视频| 婷婷日本色| 激情综合五| 亚洲色情在线| 色五月婷婷 成人| 狠狠色狠狠色综合日日91| 97人妻碰碰中文无码久热丝袜| 五月婷婷在线网站| 久久 婷婷 五月天| 玖久久网站| 色五月六月| 九九精品在线观看视频6| 男女99免费视频| 狠狠干.com| www狠狠| 五月六月激情| 九月丁香婷婷综合激情| 五月婷婷综合影院| 丁香五月亚洲综合丝袜| 夜夜爽天天干| 天天做天天爽| AV79| A√天堂网在线| 91九色小视频| 婷婷五月天久| 超碰成人公开| 激情综合网,婷婷| www.97干视频| 丁香五月之久操视频| 九九热AV| 无码色| 日本激情五月| 丁香婷婷激情综合五月激情| 99视频在线| 五月天亚洲综合网| 婷婷五月色丁香在线看| 夜夜躁狠狠 | 深爱激情五月天| 夜夜夜叫天天天做| 做爱夜夜干天天操| 日本色天堂| 激情综合另类| 综合色七七| 五月天婷婷基地| 久草天堂| 9有码中文| 精品成人a v无码内射| 丁香五月狠狠综合欧美| 亚洲网站在线鸭子av| 成人电影AV在线观看| 97丁香视频| 九九色网专区| 久久99久久99精品,久国产,久久精品免费,99久在线,久久久久国产精品免费网站,9 | 婷婷久久五月天丁香| 五月成人天| 五月天婷婷成人资源站| 丁香五月婷婷亚洲综合精品在线| 狠狠色五月激情| 色情综合| 婷婷五月天影院| 色九月婷婷丁香| 成人片在线免费看| 在线亚洲综合| 婷婷日本在线| 久久密臀婷婷| 亚洲超碰中文字幕| 色婷婷狠狠18yy| 婷婷五月激情四射手| 日日躁夜夜躁狠狠久久AV| 欧美99| 91狠狠综合久久| 激情五月天网| 久热91| 日本色婷婷| 五月激情天| 国产99热在线看| 天天日天天添| 亚洲综合网区| 影音先锋xfplay资源男人网| 538在线| 99热这只有| 亚洲俩性性爱图片久久第六页| 看黄的网站18禁| 激情五月激情综合俺也去婷婷小说| 日本色频| 亚洲色五月天在线| 丁香婷婷啪啪啪| 99.色| 新伍月婷婷| 五月六月婷婷| 天天色综合色| 五月婷六月丁香| 五月婷网站| 色婷婷www| 久久综合五月天| 色综合久久88色综合天天看| 婷婷视频网| 激情五月天视频| 国产精自产拍久久久久久蜜| 成人五月丁香花| 婷婷丁香五月视频| 丁香五月综合久久| 日韩综合网络男女香蕉a片| 激情婷婷五月天。| yazhouzonghesese| 五月激情五月婷婷五月天在线| 色五月婷婷亚洲| 久久久久网站| 婷婷五月色| 91精品激情9| 丁香五月久久社区| www.91九色| 激情五月天啪啪视频| 五月开心婷婷| 成人va视频| 婷婷五月天成人| 日本人妻伦在线中文字幕| 沈娜娜av| 亚洲综合婷婷五月| 一本久久亚洲五月婷婷| 色色色9| 五月婷精品| 成人做爰高潮A片免费视频| 久久加勤综合| 99黄色在线视频精品熟女| 国产色色在线| 激情五月深爱婷婷| 91精品久久久久| 国精产品一区一区三区免费视频| 婷婷中文网站| 五月综合激情久久| 99久久激情视频| 色9999日韩国产| 国产黄色在线| 婷婷少妇激情| 欧美毛片www| 久久色9| 成人精品在线观看| 日本欧特黄色刺激一区影视久精品无码| 秋霞性爱AV| 婷婷五月丁香久久| 丁香婷婷网| 青青草青青草五月天| 99热99精品| 久久这里都是精品视频| 99热碰碰热| 超碰成人黄色网| 激情99热| 99久久九九| 日日夜夜婷婷| 操操熟女| www.狠狠色.com| 久热AA| 婷婷五月激情基地| 东京热免费视频| 欧美成人精品一区二区 | 色很很96| 激情综合五| 风流少妇A片一区二区蜜桃 | 99热这里只有精品1025| 丁香六月婷婷姐网| 91久久久久久久| 第四色五月婷婷| 日韩成人精品一区久久久久| 婷婷色影院| 五他月天啪啪啪| 蜜乳.comcom| 久久五月激情综合| WWW久久99久久99久久| 久久五月天激情婷婷| 人人看人人草人人摸| 五月天激情啪啪| 亚洲成人免费在线| 欧美在线看| 婷婷五月天啪啪| 久久久天堂国产精品女人| 久热黄色| 婷婷开心五月| 色色色激情网| 99热国产这里只有| 特黄三级片| 中文成人在线| 99久久综合| 五月天成人综合| 日韩青青| 婷婷大美在线| 亚洲色网络| 五月天婷婷基地综合网| 欧美婷婷精品激情| 色综合99无码| 丁香五月狠狠综合欧美| 久久激情网| 久99视频在线观看| 深爱激情综合| WWW、日本色丁香、co m| 99精品在| 成人片黄网站色大片免费毛片| 亚洲精品成人| 午夜成人网站在线观看| 激情久久 婷婷| 五月开心色| 色色999三级片| 亚洲五月综合色播| 国产成人一区二区三区在线观看| 99热永久在线观看| 九九热在线99| 色人久久| 婷婷99中文字幕| 99这里都是精品| 99色6爱9热| 欧美黄色AA片哗啦啦啦| 亚洲无码播放| 婷婷无码视频| 五月婷婷啪啪网| 亚洲av日韩无码| 99九九在线视频| 五月婷婷啪啪| 久久久A级视频| 噜噜国产| 97操碰在线视频| 五月天婷婷综合| 婷婷色片| 91人操| 激情丁香九九五月综合网| h亚洲| 9999三级片| 婷婷五月香蕉| 久久九色| 久色| 丁香五月成人论坛| 天天揷综合网| 婷婷五月丁香久久| 六月色 亚洲| 天天干天天操天天拍| 婷婷中文网站| 精品99在线| 五月激情婷婷综合| 伊人久久婷婷| 丁香六月狠狠| 狠狠精品干练久久久无码中文字幕| 婷婷激情五月天亚洲综合| 久久5 9视频免费观看| 婷婷综合色播网| 五月丁香最新| 九九综合伊人| 久热只有这里有精品| www.夜夜操| 亚洲色色色色| 伊人影院久久网| 精品人妻在线| 思思热这里只有精品视频666| 91啪啪视频| 99爱视频在线免费观看| 亚洲天堂AV综合网| 超碰国产AV| 丁香成人五月天| 中文字幕日产A片在线看| 色婷婷六月精品| 五月天激情黄色网址| 久久92| 五月丁香啪啪啪免费看| 五月开心播播网| 超碰chaompinm| 色色五月丁香| 五月丁香激情婷婷综合| 九热免费视频| 五月天婷婷7米| 99啪啪视频| 无码AV免费精品一区二区三区| 热99精品视频| www.婷婷,com| 五月激情视频| 九九无码视屏| 大香蕉五月婷婷| 日日干日日| 这里只有精品视频99| 久久精品婷婷五月丁香| 精品久热| 久久偷拍综合五月天| 九九热av| 激情久久伊人| www.色色五月天.com| 国内裸舞二区| 九九热青青草| www,色婷婷| 丁香九月色| 丁香伊人网| 丁香五月婷婷色综合基地| 四射综合网| www.激情| 亚洲另类视频| 婷婷色播色五月五色五月天色妇| 成人国产网| 91久久久久久久久18| 日韩精品色| 成人在线不卡| 91热久88| 无码操B| 五月丁香六月综合激情无码软件亮点| 五月婷丁香| 婷婷不卡基地| 天天爱天天操| 日本熟女二区| 丁香五月亭亭六月综合激情网| 99超碰人人| 成人免费120分钟啪啪| 中文字幕精品在线观看| 新激情五月开心五月婷婷五月丁香五月 | 天天日天天色| 草综合14| 狠狠999| 超碰激情网| www.99操.com| 九九伊人网| 精品网站:999WWW| 九九九九九九九热| 亚洲五月天,激情视频| 五月丁香六月婷婷激情四射| 激情六月婷婷| 9久久久久久久久久久| 婷婷五月天资源| 操操操www.com| 日本女人久久| 久在线综合69| 被强行糟蹋的女人A片| AV在线观看网站| 五月婷在线播放| www.狠狠色.com| 99热精品在线播放| 99热性色| 碰人人97| 精品久久久中文字幕大豆网推荐理由| 色五月大香蕉| 色五月五月天色婷婷色五月| site:feetmall.com| 久久老码第一| 91精品久久久久久久| 免费成人网在线观看| 国产内射婷婷| 亚洲色色色| 激情婷婷| 色久女| 丁香五月成人婷婷| 开心激情网五月| 亚洲色欲AAAAAA| 久er7久热| 色色日韩网| 久久大香蕉同僚| 丁香五月性爱爱五月| 欧美日韩色色| 97碰| 夜夜操夜夜姧| 欧美婷婷六月丁香综合色连续高潮抽搐| 美女激情综合| 九九综合网色全集| 久人人操| 91主播在线| 婷婷天堂伊人| 激情五月天婷婷播播久久综合91| 99网| 国产真人做爰视频免费| 五月天激情国产综合婷婷婷| 色激情五月| 超碰免费人人| 日本三级日本三级99| 婷婷情色五月天| 日本色久| 另类图片激情五月| 在线观看免费狠狠色丁香香综合| 天天操婷婷| 久久久噜噜噜久久人妻| 久久婷婷五月天蜜桃| 美女五月天| 色噜噜五月天| 国产欧美va| 婷婷五月天av| 五月天丁香久久| av在线中文| 97操碰碰无码视频| caop在线| 日日综合网| 天天爽天天| 五月丁香色婷婷| 成人国产欧美大片一区| 熟女少妇内射日韩亚洲| 五月日韩中文字幕| 久综合4| 在线成人国产| 9久久AV| 色琪琪一综合久久激情五月视频| 天天色图| VA婷婷| 五月开心六月婷婷在线播放网站| 337p午夜影院| 五月婷久久在线| 亚洲热久久| 一本色道久久综合狠狠躁小说| 婷婷九月在线| 日韩人妻无码专区| 五月开心网| 亚洲乱码日产精品BD| 久婷婷视平| 九色porny在线观看激情四射| 色婷婷激情五月天| 激情五婷网| 中文字幕丰满乱孑伦无码专区| 2020久久婷婷五月| 伊人久久五月天| 色婷婷亚洲精品天天综| 中文字幕综合| 激情第四色| 一本色综合色| 超碰在线94| 超碰在线视屏| 99热99思午夜精品| 狠色狠色综合久久| 婷婷日欧美在线观看| 人妻中文在线| 中文字幕乱码亚洲精品一区| 97碰91| 97久久精品| 天天看片日日夜夜| 99精品22| yellow视频在线观看91| 玖玖色综合| 91婷婷丁香五月亚洲| 手机在线日韩视频中文字幕| 开心婷婷五| 久久综合激情婷婷激情| 大香蕉久热| 国产激情久久久| 婷婷九月丁香中文| 玖玖爱综合网| 黄涩毛片| 五月丁香婷婷婷激情爱爱| www色色com| 91欧美日韩| 九月激情网| 色五月色综合| 色狠狠999综合| 欧美肉大捧一进一出免费视频| 欧美六月婷婷| 婷婷99狠狠| 欧美成人精品老美女噜噜噜| 五月综合激情| 极品人妻VIDEOSSS人妻| 天堂综合久| 久久婷婷五月草视频在线播放| 99色性爰网络| 色色色综合| 人妻在线网站| 欧美天天五月丁香免费观看| 狠狠xx| 色五月六月| 色色狼人综合| 最新高清无码专区| 婷婷99狠狠躁天天躁中文| 精品婷婷五月天| 亚洲另类在线观看| 色色五月丁香| 色综合色色色色色| 色色色色综合网| 婷婷五月五月丁香| 日韩成人电影AV| 直接看的AV网站| 丁香五月香蕉| 九九热91| 五月婷婷久久综合| 久久久久久9| 亚洲第一成人AV| 亚洲人成网亚洲欧洲无码久久| 天天爽天天摸天天爱| 五月激情综合网| 色欧美影院| 五月丁香六月婷婷亚洲| www.色婷婷| 五月婷天堂视频| 婷婷五月天另类视频| 影音先锋一区| 亲子乱AV-区二区三区| 深爱丁香网| 91干在线| 热婷婷av| 伊人五月久久| 亚洲激情婷婷| 激情五月,激情综合网| 五月丁香激情欧洲啪啪| 人妻22p| 五月丁香啪啪综合网| 色色色色色网站| 少妇人妻丰满做爰XXX| 久久激情网| 九九热精品视频在线观看| 91九色白丝| 婷婷丁香五月天在线视频| 激情综合网五月婷婷| 麻豆精品| 激情六月一二| 丰满少妇猛烈A片免费看观看| 天天爽夜夜爽夜夜爽精品| 97九色视频| 人妻在线网站| 激情丁香五月婷婷啪啪| 亚洲乱码日产精品BD| 五月丁欧美| 久久婷狠狠色| 97超级操操| 99热免| 久久九九思思| 九九这里精品| 亚洲中文字幕在线观看| 色五月婷婷婷婷婷婷婷婷婷婷 | 久99久精品视频| 婷婷香五月天| 激情综合九| 五月天激情综合10p| 亚洲无AV在线中文字幕| 五月丁香婷婷福利| 婷婷亚洲天堂| 五月婷啪| 99在线视频播放| 嫩草国产| 日本色五月婷婷| 91精品视频男人的天堂| 涩婷婷五月天| 久久99激情五月天| 色婷婷色人人射| 婷婷五月天VI| 五月丁香亚洲综合网| 欧洲MV日韩MV国产| 色狠狠六月| 人妻熟人中文字幕一区二区| 五月婷婷就去色| 国产毛片欧美毛片久久久| 人人操Av| h在线看免费版在线看| 亚洲成色综合网站免费观看| 五月天婷婷色| 激情五月天婷婷久久久久久久久久久| 99精品热| 美女五月激情| 拍真实国产伦偷精品| 亚洲婷婷五月草久| 疯狂做受XXXX高潮A片| 天天cha成人综合网| 丁香久久在线| 丁香五月开心婷婷| 婷五月天| 综合XX网| 天天色丁香| 色婷婷av在线观看| 久久视屏这里只有久久| 欧美成人精品A片免费一区99| 国产成人VA| 不卡在线视频| 日韩在线五月天婷婷| 亚洲久艹| WWW,五月| 午夜大香蕉| 99热精品在线| 99热这里精| 99在线免费视频播放| 久久婷婷五月| 9久久久久久久久久久| WWW.婷婷| 婷婷丁香五月天欧美| 婷婷五月天淫荡| 欧美婷婷精品激情| se99高清无码| 色色色综合| 中文无码婷婷| 涩五月婷婷| 开心五月婷婷在线视频免费观看| 色天使色综合| 丁香五月婷婷大香蕉| 久操热线| 日本欧美成人片AAAA| 欧美激情凹凸丁香网| 激情九九六月激情免费视频| 色欲av伊人久久大香线蕉影院| 婷婷六月丁香开心深深爱| 4399无码视频| 亚洲另类视频| 亚洲永久免费| 亚洲V国产V欧美V久久久久久| 丁香六月天之亚州热女| 99热狠狠操| 精品人妻伦一二三区久久| 五月婷婷之激情五月| 激情五月婷婷啪啪| 六月丁香激情网| 热久久66| 影音先锋 一区| 99视频| 亚洲丁香五月| 五月婷六月| 国产偷人爽久久久久久老妇APP| 国产精品五月天婷婷| 久热中文字幕| 97在线观视频免费观看| 亚洲九九视频| 五月天五月色婷婷综合| 久久3级片| 97狠狠色| 很很干五月天| 91久久五月天| 免费无码毛片一区二区A片 | 激情四射婷婷| 中字幕视频在线永久在线观看免费| 婷婷香五月天| 99热99网| 狠狠 久久| 婷婷五月激情丁香| 天天高潮夜夜爽| 六月婷婷色综合| 亚州第一黄网| 六月婷婷五月天| 六月婷婷九月丁香亚洲综合| 成人片在线播放| 五月丁香六月停停停| 热99这就是精品视频| 五月丁香亚洲婷婷| 日日骑夜夜撸| 97伦色婷婷| www激情| 五月婷婷亚洲色视频| 成人必爱视| 99色日本| av操逼网| 操碰97| 婷婷五月丁香综合激情| av在线超清中文| 久久加勒比| 婷婷D区| 婷婷九月| 综合激情视频| 一本道综合网| 亚洲综合婷婷| HD久久精品视频| 欧美性生交A片免费看| 99re免费精品视频| 玖玖资源站蜜臀| 99re思思精品视频在线观看| 国产亚洲网站在线| 五月激情啪啪| www,五月天激情| 婷婷亚洲日本| 97日本在线| 丁香六月婷婷色XXXX| 婷婷伊人| 久久 天天| 就爱射中文字幕资源网| 日日天天天| 狠狠爱激情网| 亚洲AV电影美洲AV电影| 中文字幕高清av| 亚洲国产精品VA在线看黑人| 丁香五月婷中字幕| 日本女va| 91婷婷色| 激情文学 综合 九月| 日本熟妇乱妇熟色A片蜜桃 | 婷婷综合精品视频97| 五月的丁香六月的婷婷| 天天爱天天做天天日| 玖玖激情五月天| 91精品国产色猫| 99色人| 99国产精品久久久久久久久久久|