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

ARTICLE DETAIL

資訊詳情

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

ESP32S3+LVGL9驅(qū)動(dòng)SPI屏全攻略:從ST7789到ILI9488

ESP32S3+LVGL9驅(qū)動(dòng)SPI屏全攻略:從ST7789到ILI9488 簡(jiǎn)介本資源是一套專(zhuān)為ESP32-S3平臺(tái)適配LVGL v9圖形庫(kù)的SPI LCD驅(qū)動(dòng)代碼集合面向嵌入式開(kāi)發(fā)工程師、物聯(lián)網(wǎng)項(xiàng)目開(kāi)發(fā)者及LVGL初學(xué)者解決多型號(hào)屏幕在ESP-IDF環(huán)境下快速移植與穩(wěn)定顯示的核心痛點(diǎn)。壓縮包共13個(gè)文件29KB涵蓋核心驅(qū)動(dòng)源碼lcd_lvgl.c、硬件抽象層頭文件config.h、構(gòu)建配置CMakeLists.txt、sdkconfig、idf_component.yml、開(kāi)發(fā)環(huán)境支持.vscode配置、項(xiàng)目說(shuō)明README.md及分區(qū)表partitions.csv等關(guān)鍵組件結(jié)構(gòu)清晰、開(kāi)箱即用。已有950人學(xué)習(xí)下載代碼已實(shí)測(cè)兼容ST7789、ST7735、ST7796、ILI9341和ILI9488五類(lèi)主流SPI屏覆蓋135×240至480×320等多種分辨率顯著降低LVGL在ESP32-S3上的顯示適配門(mén)檻助力用戶(hù)聚焦UI設(shè)計(jì)與業(yè)務(wù)邏輯開(kāi)發(fā)。 ESP32S3 配 LVGL9再把 SPI 接口的 ST7789、ST7735、ST7796、ILI9341、ILI9488 這些常見(jiàn)屏全跑起來(lái)這事我前后折騰了挺長(zhǎng)時(shí)間踩過(guò)的坑最后都變成了經(jīng)驗(yàn)。如果你正在做小尺寸 HMI、桌面擺件、溫濕度計(jì)、甚至開(kāi)源手表之類(lèi)的東西這篇文章基本能把你從“不知道從哪下手”帶到“一次點(diǎn)亮并流暢跑動(dòng)畫(huà)”的階段。先說(shuō)結(jié)論ESP32S3 的 SPIn 外設(shè)足夠強(qiáng)LVGL9 的接口比 LVGL8 清晰不少真正會(huì)卡人的地方反而不是 LVGL 本身而是屏幕 IC 的初始化序列、偏移量設(shè)置、以及 DMA 傳輸?shù)耐椒绞?。這篇文章不會(huì)只貼一份 ST7789 的代碼就完事我會(huì)把常見(jiàn)屏的差異、LVGL9 的 display 驅(qū)動(dòng)結(jié)構(gòu)、SPI 參數(shù)選擇、以及花屏和偏移的排查方法全部拆開(kāi)講。1. 整體設(shè)計(jì)思路為什么這個(gè)組合值得寫(xiě)1.1 ESP32S3 在 GUI 項(xiàng)目里的定位ESP32S3 跟早期的 ESP32 比最大的變化是增加了向量指令和 SIMD 支持雖然主頻還是 240MHz但在跑 LVGL 這種 2D 圖形庫(kù)時(shí)軟件渲染的功耗和流暢度都會(huì)好一些。關(guān)鍵是這顆芯片的 SPIn 控制器支持 DMA最大傳輸數(shù)據(jù)量可以做到按描述符走完一整塊顯存數(shù)據(jù)不需要 CPU 一點(diǎn)點(diǎn)往外擠。這個(gè)是決定你能不能跑“高分屏動(dòng)畫(huà)”的核心。很多人會(huì)問(wèn)那為什么不用 ESP32-S3 直接接 RGB 并口屏因?yàn)?RGB 屏需要的引腳太多而且需要 PSRAM 配合幀緩沖成本也比 SPI 屏高一截。SPI 屏雖然帶寬有限但勝在引腳少6 根線(xiàn)搞定、驅(qū)動(dòng) IC 成熟、資料多而且 LVGL9 本身對(duì)低帶寬的優(yōu)化做得不錯(cuò)緩存策略合理的話(huà)日常刷新 320x240 的屏沒(méi)有任何壓力。1.2 為什么選擇 LVGL9 而不是繼續(xù)用 LVGL8LVGL9 改了不少底層接口最大的變化是把顯示驅(qū)動(dòng)從lv_disp_drv_t重構(gòu)為lv_display_t注冊(cè)方式、buffer 處理、flush 回調(diào)的觸發(fā)邏輯都有調(diào)整。網(wǎng)上大量教程還停留在 LVGL8 甚至 LVGL7直接抄代碼在 LVGL9 下面沒(méi)法編譯。這篇文章所有的代碼都基于 LVGL9.x你拿最新的 release 過(guò)來(lái)可以直接用。還有一點(diǎn)就是 LVGL9 對(duì) partial refresh局部刷新的處理更聰明了它不再要求每次全屏 flush而是會(huì)計(jì)算 dirty area配合 ESP32S3 的 DMA實(shí)際跑起來(lái)幀率比 LVGL8 有明顯提升。所以如果你是新項(xiàng)目別猶豫直接用 LVGL9。2. LVGL9 的顯示驅(qū)動(dòng)接口變化2.1 LVGL8 到 LVGL9 哪些舊代碼不能抄LVGL8 時(shí)代典型的初始化代碼長(zhǎng)這樣static lv_disp_draw_buf_t draw_buf; static lv_color_t buf[240 * 10]; lv_disp_draw_buf_init(draw_buf, buf, NULL, 240 * 10); static lv_disp_drv_t disp_drv; lv_disp_drv_init(disp_drv); disp_drv.flush_cb my_flush_cb; disp_drv.draw_buf draw_buf; lv_disp_drv_register(disp_drv);到了 LVGL9這段代碼里的lv_disp_drv_t已經(jīng)被拆掉統(tǒng)一走lv_display_tstatic lv_display_t *disp; disp lv_display_create(240, 320); lv_display_set_flush_cb(disp, my_flush_cb); lv_display_set_buffers(disp, buf1, buf2, sizeof(buf1), LV_DISPLAY_RENDER_MODE_PARTIAL);注意 LVGL9 里 buffer 是用字節(jié)數(shù)傳入的不是用像素?cái)?shù)。而且有兩個(gè) buffer 的話(huà)就是雙緩沖LVGL9 會(huì)在后臺(tái)渲染一個(gè) buffer 的同時(shí)把另一個(gè) buffer 通過(guò) flush_cb 送出去。這個(gè)機(jī)制是流暢度的關(guān)鍵。2.2 flush_cb 到底該怎么寫(xiě)LVGL9 的 flush_cb 簽名是void my_flush_cb(lv_display_t *disp, const lv_area_t *area, uint8_t *px_map);它比 LVGL8 更直接第三個(gè)參數(shù)直接給你渲染好的像素?cái)?shù)據(jù)指針px_map就是你要通過(guò) SPI 發(fā)給屏幕的內(nèi)容。你需要做的是把px_map里的數(shù)據(jù)切分成 16 位的 RGB565 數(shù)據(jù)通過(guò) SPI 發(fā)出去發(fā)送完成后調(diào)用lv_display_flush_ready(disp)告訴 LVGL 可以繼續(xù)渲染下一幀。這里最容易犯錯(cuò)的是LVGL9 默認(rèn)的像素格式是 RGB565但很多屏幕尤其是國(guó)產(chǎn)屏內(nèi)部實(shí)際是按 BGR 方式排列的你需要額外配置LV_COLOR_16_SWAP或者自己轉(zhuǎn)換字節(jié)順序否則顏色會(huì)明顯偏色。px_map是像素?cái)?shù)據(jù)不是完整的“要發(fā)送的 frame buffer”它只是 dirty area 的那部分。你拿到area結(jié)構(gòu)體后要自己計(jì)算出顯存地址偏移然后把 area 的坐標(biāo)換算成屏幕的起始 column 和 row通過(guò) SPI 寫(xiě)命令設(shè)置 window再發(fā)送像素?cái)?shù)據(jù)。這一步是整個(gè)驅(qū)動(dòng)里最容易寫(xiě)錯(cuò)的地方。3. 常見(jiàn) LCD 驅(qū)動(dòng) IC 適配記錄3.1 ST7789現(xiàn)在用得最多的“街屏”ST7789 是當(dāng)前 1.3 寸到 2.0 寸小屏里最常見(jiàn)的驅(qū)動(dòng) IC分辨率全覆蓋240x240、240x320、320x480 甚至部分圓屏。它支持 RGB565 和 RGB666 兩種格式通常我們走 RGB565。ST7789 的一個(gè)特點(diǎn)是它沒(méi)有單獨(dú)的VCOM引腳初始化序列較短而且很多模組已經(jīng)把 madctl內(nèi)存訪問(wèn)控制的翻轉(zhuǎn)電路做在 PCB 上了所以你拿到屏之后可能需要在代碼里根據(jù)實(shí)際顯示方向調(diào)整MADCTL寄存器的值。初始化序列里有一個(gè)坑ST7789 在 240x320 和 240x240 屏上的 row/column 偏移不一樣。大部分 240x240 的模組其實(shí)都是 240x320 的玻璃只是為了做方形顯示而已驅(qū)動(dòng) IC 內(nèi)部仍然有 320 行的尋址空間所以你需要把 row offset 設(shè)置成 80。也就是說(shuō)當(dāng)你要刷新第 0 行的時(shí)候?qū)嶋H上要寫(xiě)命令到 row 80 開(kāi)始的位置。這個(gè)偏移量不確定時(shí)可以查模組資料或者通過(guò)反復(fù)改 x/y offset 看屏幕顯示情況來(lái)確定。3.2 ST7735小尺寸花屏重災(zāi)區(qū)ST7735 常見(jiàn)于 1.8 寸 128x160 和 1.44 寸 128x128是 ST7789 的“老前輩”。ST7735 的初始化序列更麻煩因?yàn)樗卸鄠€(gè)版本A/B/C不同版本的 gamma 曲線(xiàn)和偏壓配置不完全一樣。如果初始化不對(duì)最常見(jiàn)的現(xiàn)象是白屏或者顯示重影。ST7735 的另一個(gè)坑是它的 MADCTL 默認(rèn)掃描方向和很多 128x160 模組的實(shí)際接線(xiàn)不匹配你經(jīng)常需要在代碼里反轉(zhuǎn) RGB 順序MADCTL中的 BGR 位才能得到正確的顏色如果顏色反了把MADCTL的 BGR 位從 0 改成 1 或者反過(guò)來(lái)即可。ST7735 的偏移量128x160 屏通常沒(méi)有偏移問(wèn)題但 128x128 方屏需要把 row offset 設(shè)成 2也就是數(shù)據(jù)區(qū)域從第 2 行開(kāi)始。如果沒(méi)有設(shè)置這個(gè)偏移圖形會(huì)整體向下偏兩行像一條細(xì)線(xiàn)出現(xiàn)在頂部。3.3 ST7796 和 ILI9341大屏兼容性ST7796 和 ILI9341 都常見(jiàn)于 2.4 寸和 2.8 寸的 320x240 屏這兩顆 IC 的初始化序列有很多相似之處網(wǎng)上也經(jīng)常有人用同一套初始化序列去兼容兩種情況但嚴(yán)格來(lái)說(shuō)還是不一樣。ILI9341 是最經(jīng)典的 SPI LCD 驅(qū)動(dòng) IC幾乎所有單片機(jī)教程都會(huì)提到它。它的初始化序列很長(zhǎng)但兼容性很好如果你不確定自己手里的屏是哪顆 IC先用 ILI9341 的序列試著點(diǎn)亮成功的概率很高。ST7796 跟 ILI9341 默認(rèn)的 gamma 不同ST7796 的色彩更鮮艷一些但如果你把 ILI9341 的 gamma 設(shè)置到了 ST7796 上屏幕可能會(huì)發(fā)白或者發(fā)灰。我實(shí)測(cè)過(guò)如果你的屏是 ST7796 而用了 ILI9341 的初始化序列部分屏能顯示但對(duì)比度明顯差一截建議還是找對(duì)應(yīng) IC 的初始化序列來(lái)跑。3.4 ILI9488RGB666 的坑ILI9488 常見(jiàn)于 3.5 寸 480x320 屏有一個(gè)大坑它默認(rèn)是 RGB666 格式不是 RGB565。如果你直接把 LVGL 的 RGB565 buffer 發(fā)給它顯示顏色會(huì)明顯不對(duì)幾乎是扭曲的。解決辦法有兩種初始化序列里切換到 RGB565 模式如果 IC 支持具體操作是在COLMOD3Ah 命令里設(shè)置 16 位色深。如果你的屏模塊不支持 RGB565 模式就得在 flush_cb 里把 RGB565 轉(zhuǎn)換成 RGB666。但這樣不僅費(fèi) CPU還會(huì)降低幀率。所以我一般不建議在 ESP32S3 上用 ILI9488除非你確實(shí)需要大屏且沒(méi)有替代方案。下面是這幾顆 IC 的直觀對(duì)比表方便你快速定位自己手上的屏。IC 型號(hào)常見(jiàn)分辨率色深支持常見(jiàn)偏移問(wèn)題初始化復(fù)雜度實(shí)測(cè)推薦度ST7789240x240 / 240x320RGB565 / RGB666240x240 需 row offset 80低高ST7735128x160 / 128x128RGB565128x128 需 row offset 2中中ST7796320x240RGB565基本無(wú)低高ILI9341320x240RGB565基本無(wú)中高ILI9488480x320RGB666 默認(rèn)色深轉(zhuǎn)換麻煩高低4. 實(shí)操完整驅(qū)動(dòng)配置與初始化4.1 引腳分配與接線(xiàn)ESP32S3 的 SPIn 外設(shè)很靈活GPIO 矩陣允許你幾乎把 SPI 信號(hào)映射到任意引腳。但為了 DMA 性能和信號(hào)穩(wěn)定我個(gè)人建議把 SCLK、MOSI 固定到一組相鄰引腳上MISO 不用接LCD 輸出我們一般不讀。我常用的引腳分配是這樣信號(hào)GPIO說(shuō)明SCLKGPIO12SPI 時(shí)鐘MOSIGPIO11SPI 數(shù)據(jù)輸出CSGPIO10片選DCGPIO9數(shù)據(jù)/命令選擇RSTGPIO8復(fù)位BLGPIO45背光控制每個(gè)人手里的板子不一樣引腳完全可以根據(jù)自己的布局換。注意 DC 引腳很關(guān)鍵LCD 通過(guò) DC 來(lái)區(qū)分命令和數(shù)據(jù)如果你的 DC 接錯(cuò)屏幕能亮但顯示內(nèi)容會(huì)是一堆亂碼。RST 可以用 GPIO 也可以用 ESP32S3 的上電自動(dòng)復(fù)位電路但手動(dòng)控制更可靠。SPI LCD 常用 7 根線(xiàn)包含 GND 和 VCC有些模組是 6 針省掉了 RST 或 BL這就意味著 RST 要靠寄存器軟復(fù)位、BL 要一直拉高在代碼里要注意別去操作不存在的引腳。4.2 SPI 初始化配置使用 ESP-IDF 的spi_bus_initialize來(lái)初始化 SPI 主機(jī)ESP32S3 有 SPI2 和 SPI3 兩個(gè)可用主機(jī)LCD 接到 SPI2 比較常見(jiàn)spi_bus_config_t bus_cfg { .sclk_io_num 12, .mosi_io_num 11, .miso_io_num -1, .quadwp_io_num -1, .quadhd_io_num -1, .max_transfer_sz 240 * 320 * 2 8, }; spi_bus_initialize(SPI2_HOST, bus_cfg, SPI_DMA_CH_AUTO);重點(diǎn)在max_transfer_sz這個(gè)值決定了 DMA 能一次傳輸?shù)淖畲笞止?jié)數(shù)。如果你要直接傳輸整個(gè) 320x240 的 RGB565 frame153600 字節(jié)這里必須留夠空間。我一般會(huì)設(shè)成屏幕寬 * 屏幕高 * 2 8留一點(diǎn)余量。SPI_DMA_CH_AUTO讓驅(qū)動(dòng)自動(dòng)分配 DMA 通道ESP32S3 上可用 DMA 通道比老 ESP32 多這個(gè)建議別手動(dòng)指定讓系統(tǒng)自動(dòng)管理。4.3 LCD 初始化序列與偏移量設(shè)置先把 GPIO 和 SPI 總線(xiàn)準(zhǔn)備好然后對(duì) LCD 進(jìn)行復(fù)位和初始化。下面是一份標(biāo)準(zhǔn) ST7789 初始化序列的核心部分適用于 240x240 或 240x320 屏// 復(fù)位 gpio_set_level(RST_PIN, 0); vTaskDelay(pdMS_TO_TICKS(20)); gpio_set_level(RST_PIN, 1); vTaskDelay(pdMS_TO_TICKS(120)); // 初始化命令 lcd_cmd(0x01); // SWRESET vTaskDelay(pdMS_TO_TICKS(20)); lcd_cmd(0x11); // SLPOUT vTaskDelay(pdMS_TO_TICKS(120)); lcd_cmd(0x3A); // COLMOD lcd_data(0x05); // 16-bit color // 設(shè)置偏移 uint16_t x_offset 0; uint16_t y_offset 80; // 240x240 屏常見(jiàn)偏移 lcd_cmd(0x2A); // CASET lcd_data(x_offset 8); lcd_data(x_offset 0xFF); lcd_data((x_offset width - 1) 8); lcd_data((x_offset width - 1) 0xFF); lcd_cmd(0x2B); // RASET lcd_data(y_offset 8); lcd_data(y_offset 0xFF); lcd_data((y_offset height - 1) 8); lcd_data((y_offset height - 1) 0xFF); lcd_cmd(0x21); // INVON lcd_cmd(0x11); vTaskDelay(pdMS_TO_TICKS(20)); lcd_cmd(0x29); // DISPON這里最重要的就是CASET和RASET也就是 column address set 和 row address set。LVGL 告訴你需要刷新窗口的左上角和右下角坐標(biāo)你要把這兩個(gè)坐標(biāo)加上偏移量后換算成屏幕內(nèi)部顯存地址。如果偏移量設(shè)置有誤顯示的內(nèi)容會(huì)整體偏移輕則邊緣出現(xiàn)黑邊重則內(nèi)容錯(cuò)位或被截?cái)唷?.4 LVGL9 display 注冊(cè)代碼初始化完 LCD 之后把 display 注冊(cè)到 LVGL9 里static lv_color_t buf1[240 * 10]; static lv_color_t buf2[240 * 10]; lv_display_t *disp lv_display_create(240, 320); lv_display_set_flush_cb(disp, lcd_flush_cb); lv_display_set_buffers(disp, buf1, buf2, sizeof(buf1), LV_DISPLAY_RENDER_MODE_PARTIAL);注意兩個(gè) buffer 各是240*10像素?fù)Q算成 RGB565 就是 4800 字節(jié)。這個(gè) buffer 大小是我實(shí)測(cè)下來(lái)性能和內(nèi)存占用的平衡點(diǎn)太小會(huì)導(dǎo)致 LVGL 頻繁刷新太大又浪費(fèi)內(nèi)存。如果你開(kāi)了 PSRAM 且不在意內(nèi)存可以把 buffer 擴(kuò)大到一行像素的 2~4 倍幀率會(huì)更好。flush 回調(diào)里需要根據(jù) LVGL 傳入的 area 來(lái)控制 LCD 的 window。假設(shè)我們的屏是 240x320LVGL 的坐標(biāo)原點(diǎn)在左上角物理屏的坐標(biāo)原點(diǎn)也在左上角void lcd_flush_cb(lv_display_t *disp, const lv_area_t *area, uint8_t *px_map) { uint16_t x1 area-x1; uint16_t x2 area-x2; uint16_t y1 area-y1; uint16_t y2 area-y2; uint16_t w x2 - x1 1; uint16_t h y2 - y1 1; // 設(shè)置 window lcd_cmd(0x2A); // CASET lcd_data((x1 x_offset) 8); lcd_data((x1 x_offset) 0xFF); lcd_data((x2 x_offset) 8); lcd_data((x2 x_offset) 0xFF); lcd_cmd(0x2B); // RASET lcd_data((y1 y_offset) 8); lcd_data((y1 y_offset) 0xFF); lcd_data((y2 y_offset) 8); lcd_data((y2 y_offset) 0xFF); lcd_cmd(0x2C); // RAMWR // 發(fā)送像素?cái)?shù)據(jù) spi_transaction_t t { .length w * h * 2 * 8, .tx_buffer px_map, }; spi_device_polling_transmit(spi_dev, t); lv_display_flush_ready(disp); }spi_device_polling_transmit是阻塞式發(fā)送簡(jiǎn)單但會(huì)浪費(fèi) CPU。更好的方式是使用spi_device_queue_trans配合傳輸完成中斷在中斷回調(diào)里調(diào)用lv_display_flush_ready。不過(guò)這套異步邏輯對(duì)初學(xué)者不太友好我建議先把阻塞式跑通再改成 DMA 中斷。5. 性能優(yōu)化DMA、雙緩沖、幀率調(diào)整5.1 SPI DMA 為什么是剛需如果不使用 DMA每次發(fā)送像素?cái)?shù)據(jù)都要 CPU 把數(shù)據(jù)搬到 SPI 外設(shè)的 FIFO320x240 一幀 153600 字節(jié)按每字節(jié) 8 個(gè) SPI 時(shí)鐘算純 SPI 傳輸就需要約 240 萬(wàn)次外設(shè)寫(xiě)入操作。即使 SPI 跑到 80MHzCPU 也會(huì)被 SPI 中斷占滿(mǎn)LVGL 的渲染時(shí)間被嚴(yán)重?cái)D壓。ESP32S3 的 SPI 主機(jī)支持 DMA 方式發(fā)送你需要用spi_device_queue_trans接口或者在初始化 SPI 設(shè)備時(shí)把spi_device_interface_config_t里的.flags設(shè)置上SPI_DEVICE_HALFDUPLEX和SPI_DEVICE_NO_DUMMY。發(fā)送大塊 buffer 時(shí)驅(qū)動(dòng)會(huì)自動(dòng)拆分成 DMA 描述符傳輸過(guò)程中 CPU 可以繼續(xù)做下一幀渲染。我用 80MHz SPI 時(shí)鐘 DMA 的方式跑 240x320 的 ST7789LVGL9 的動(dòng)畫(huà)幀率能到 50fps 左右簡(jiǎn)單場(chǎng)景日常 UI 操作也不卡。如果 SPI 時(shí)鐘降為 40MHz幀率會(huì)掉到一半感官上就明顯“肉”了。5.2 雙緩沖與 LVGL9 的渲染模式LVGL9 的雙緩沖機(jī)制比 LVGL8 要順暢原因在于它的渲染任務(wù)和 flush 任務(wù)可以并行。你在lv_display_set_buffers里傳入兩個(gè) buffer 后LVGL 會(huì)在 buffer 1 上渲染渲染完成觸發(fā) flush_cb然后立刻開(kāi)始在 buffer 2 上渲染下一幀DMA 傳輸 buffer 1 的同時(shí)CPU 在渲染 buffer 2等于把傳輸時(shí)間和渲染時(shí)間重疊起來(lái)了。如果你的內(nèi)存緊張可以退化成單緩沖但代價(jià)是每次渲染完必須等 SPI 發(fā)送完GPU 和 IO 完全串行流暢度會(huì)明顯下降。所以我建議哪怕是犧牲一點(diǎn) buffer 大小也要保留雙緩沖。5.3 SPI 時(shí)鐘頻率與傳輸優(yōu)化ESP32S3 的 SPI 時(shí)鐘在驅(qū)動(dòng) LCD 時(shí)通??梢耘艿?60~80MHz但不是所有屏都能穩(wěn)定跑 80MHz。如果你的屏模組走線(xiàn)很長(zhǎng)或者使用了杜邦線(xiàn)連接跑 80MHz 大概率會(huì)出現(xiàn)隨機(jī)花屏或條紋。這時(shí)候不要懷疑代碼先把 SPI 時(shí)鐘降到 40MHz 試試90% 的“花屏”都能好。另外SPI 設(shè)備初始化時(shí)有一個(gè)clock_source參數(shù)。ESP32S3 上可以選擇SPI_CLK_SRC_DEFAULT或SPI_CLK_SRC_XTAL。我實(shí)測(cè)發(fā)現(xiàn)用外部晶振作為 SPI 時(shí)鐘源在高溫環(huán)境下更穩(wěn)定。不過(guò)這個(gè)差異很小一般不需要專(zhuān)門(mén)改。6. 常見(jiàn)問(wèn)題與排查技巧實(shí)錄6.1 花屏 / 顯示錯(cuò)位花屏是一大類(lèi)問(wèn)題我把它拆成幾個(gè)具體現(xiàn)象現(xiàn)象大概率原因排查方法全屏噪點(diǎn) / 雪花SPI 時(shí)序不穩(wěn)或頻率太高降低 SPI 時(shí)鐘到 20MHz 測(cè)試顯示內(nèi)容偏移 80 行ST7789 240x240 屏 offset 未設(shè)置加 row offset 80局部區(qū)域內(nèi)容錯(cuò)位window 設(shè)置不正確檢查 CASET/RASET 是否使用了正確的 x_offset / y_offset頂部有一條彩色線(xiàn)偏移量少了 1~2 像素調(diào)整 row/column offset 的細(xì)微值刷新時(shí)撕裂單緩沖 高速刷新改用雙緩沖花屏排查有一個(gè)通用技巧先用純色填充命令來(lái)測(cè)試 LCD 本身是否正常。如果你調(diào)用lcd_cmd(0x2C)后直接發(fā)送 2 字節(jié)的紅色像素?cái)?shù)據(jù)屏幕能正常顯示紅色說(shuō)明 LCD 和 SPI 底層沒(méi)問(wèn)題問(wèn)題出在 LVGL 的坐標(biāo)或 buffer 管理上。6.2 顏色不對(duì)顏色不對(duì)的原因主要有兩個(gè)RGB 順序不對(duì)如果你的紅色顯示成藍(lán)色、綠色顯示成紫色多半是 RGB 與 BGR 順序反了。在初始化序列里嘗試把 MADCTL36h中的 BGR 位翻轉(zhuǎn)或者設(shè)置LV_COLOR_16_SWAP 1取決于你的屏和 ESP32S3 的字節(jié)序。RGB565 與 RGB666 混用ST7789 默認(rèn) RGB565 沒(méi)問(wèn)題但 ILI9488 初始狀態(tài)往往是 RGB666如果不顯式切換顏色會(huì)整體發(fā)灰需要手動(dòng)設(shè)置 COLMOD 寄存器。另外ESP32S3 是小端 CPU當(dāng)你把 RGB565 顏色存入內(nèi)存時(shí)字節(jié)序是反的。LVGL9 默認(rèn)會(huì)處理這個(gè)但如果你直接輸出了裸 buffer可能就要手動(dòng) swap 一下高低字節(jié)。這個(gè)看具體編譯選項(xiàng)不需要死記先跑起來(lái)再根據(jù)現(xiàn)象調(diào)。6.3 亮度、閃爍背光控制建議用 PWM 引腳不要直接 GPIO 拉高拉低。一級(jí)線(xiàn)性調(diào)光時(shí)ESP32S3 的 LEDC 外設(shè)就能勝任。接線(xiàn)時(shí)把 BL 接到 LEDC 輸出引腳即可。閃爍問(wèn)題則大概率不是背光的問(wèn)題而是 LVGL 的刷新頻率過(guò)低或 buffer 太小。比如 240x320 的屏只給了 240x4 的 bufferLVGL 就得把屏幕切成幾十個(gè)局部區(qū)域刷新人眼看起來(lái)就像一直在閃。這時(shí)候加大 buffer、關(guān)閉 LVGL 的LV_DISPLAY_RENDER_MODE_DRAW_UNIT或者調(diào)整刷新周期都會(huì)有效果。6.4 初始化不成功白屏白屏通常說(shuō)明 LCD 已經(jīng)上電、背光也亮了但沒(méi)有收到有效的初始化序列或命令參數(shù)不對(duì)。先檢查 RST 和 DC 引腳是否連接正確然后用邏輯分析儀抓 SPI 信號(hào)確認(rèn) MOSI 上有沒(méi)有數(shù)據(jù)、SCLK 有沒(méi)有時(shí)鐘。如果手頭沒(méi)有邏輯分析儀就寫(xiě)一個(gè)最簡(jiǎn)單的循環(huán)反復(fù)發(fā)送0x2C命令和全紅像素?cái)?shù)據(jù)。如果屏幕有反應(yīng)但顏色不對(duì)說(shuō)明 SPI 通信正常只是初始化序列或者 RGB 配置有問(wèn)題。這個(gè)循環(huán)排查法能快速把問(wèn)題從“通信”和“時(shí)序配置”里分離出來(lái)。7. 我的實(shí)際配置參考與最后提醒最后給一套我用著比較順手的模板配置你可以直接照著抄一部分。屏幕是 1.86 寸 240x320 ST7789SPI 時(shí)鐘 80MHzLVGL9.1ESP-IDF 5.2static spi_device_interface_config_t dev_cfg { .clock_speed_hz SPI_MAIN_FREQ, // 80MHz .mode 0, .spics_io_num PIN_CS, .queue_size 7, .flags SPI_DEVICE_HALFDUPLEX, .pre_cb NULL, };static lv_display_t *disp lv_display_create(240, 320); lv_display_set_flush_cb(disp, lcd_flush_cb); lv_display_set_buffers(disp, buf1, buf2, sizeof(buf1), LV_DISPLAY_RENDER_MODE_PARTIAL); lv_display_set_rotation(disp, LV_DISPLAY_ROTATION_0);其他屏的適配其實(shí)就是替換初始化序列和調(diào)整 x_offset / y_offsetflush_cb 里的邏輯完全通用。你只需要知道手里屏的 IC 型號(hào)和玻璃分辨率就能把整套驅(qū)動(dòng)遷移過(guò)去。我個(gè)人在實(shí)際操作中的體會(huì)是SPI LCD 驅(qū)動(dòng)的難點(diǎn)從來(lái)不在 LVGL 本身而在于你對(duì)“屏幕內(nèi)部顯存尋址”的理解。只要把 CASET / RASET 偏移量、RGB 順序、以及 SPI 傳輸?shù)耐椒绞脚靼譙PI LCD 就是一個(gè)數(shù)據(jù)搬運(yùn)工的角色。說(shuō)白了你是在用一根 SPI 線(xiàn)往屏幕顯存里不斷的寫(xiě)LVGL9 負(fù)責(zé)告訴你“該往哪里寫(xiě)、寫(xiě)什么顏色”你負(fù)責(zé)用最省 CPU 的方式把數(shù)據(jù)送出去。剩下的就是調(diào)參和磨代碼的過(guò)程了。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
成人AV素股で擦久久| 欧美日韩97在线| 色月天AV导航| 日韩精品一区二区人人人| 97情超碰色| 日韩欧美性爱电影在线观看| 日韩操人| 国产青视频| 外国免费性情大片| 婷婷香蕉| 啊啊在线| 综合久久中文字幕综合日韩精品 | 少妇九九九九| 伦激情人妻另类人妻| 亚洲影视综合网| 小骚逼被操的爽不爽| 深夜激情| 91久久99久久91熟女精品| 另类av天堂| 色97干| www.色婷婷色综合| 人妻色情天天操| 美女国产一区二区久久| 少妇熟女视频一区二区三区 | 亚洲人成网站7777| 成人影 天天操 亚洲| 神马麻豆福利院| 九九九九九九九精品视频| 久久久久久久久女黄| 一区二区三区视频在线观看免费| 色噜噜综合在线| 久久久久久人体| 香蕉视频精品亚洲一区二区三区在线播| 色色色综合网| 精品人成视频在线观看| 爱啪精品一区| 黑人黄片在线免费观看| 欧美成人性活片| 久久激情五月| 亚洲高清无码在线桃色| 91精品国产一区三一| 人妻少妇久久久| 欧差乱伦二三| 久久久久久中文| 亚洲四虎熟女精品| 大黄片做爱的大的| 天天爱天天操| 九九九九免费高| 先锋精品av色鲁| 亚洲色欲天天天堂色欲网女| 超碰超碰超碰超碰的大鸡吧操黑丝袜| 色 婷97| 精品人人插人人操| 国产黄片精品在线| 亚洲久9| 色五月AV在线| 土豪酒店各种姿势玩弄极品幼稚| 97色色色综合网站| 黄总AV色图| www超碰| 影音先锋视频在线| 中文字幕久热视频在线| 亚洲日韩国产精品| 自拍第一页| 99re在线精品78| 欧美午夜色妇色鬼| 国产乱弄免费在线视频。 | 在线观看高清AV| 一区AV| 神马麻豆福利院| 啊啊啊啊啊好多水| 久久啊啊| 久久这里只精品免费福利| 狠狠操,使劲操| 深夜国产福利| 色吧5亚洲| 日语五十路和六十路亚洲国产精品| 精品国产乱码久久久久久久久久毛片| 91中出视频| 久区视频| 岛国黄片网站| 激情丁香五月婷婷| 大香伊人在线一区| 9999久久久久| julia ann久久| 亚洲色图A| 色五月av| 91精品丝袜在线观看| 欧美黑人性猛交91| 中文字幕人乱码中文字的预防方法 | 欧美美女自慰一区二区三区| 九九久久国产精品| 国产97亚洲| 美女操逼A A| 久久成年片色大黄全免费网站| 成人av毛片在线观看| 亚洲欧美日韩免费电影| 久久久啊啊| 91久久精品美女高潮喷水| 天天色综合影视网| 亚洲成a人在线观看久| 啊灬啊灬啊灬好深灬快高潮了动漫-国产字幕国产在线观看-B049AV | 999久久久久久久久| 91中文字幕在线观看| 日本媚薬中文字幕在线| 一区二区娱乐网站| 国产成人主播| 亚洲啪啪综合?v一区综合精品区| 男人天堂一区二区| 性高潮久久久久久久久久久| 蜜桃一区二区三区| 999综合网| 午夜福利成人免费视频| 97超碰中文字幕| 翔田千里爆乳巨臀无码| 久久久久久91香蕉国产| 久综合国内精品自在自线| 免费看一级a性色生活片久久无| 日日夜夜国产综合| 可以在线观看AV的网站| 九九九九免费视频| 日韩av在线播放不卡| 久久噜噜噜精品国产亚洲综合| 日日操免费视频| 久久不卡一区二区| 黄色AAAAA欧美| 极品粉嫩少妇视频| 亚洲天堂一区二区久久| 黑人综合色| 色婷婷九月| 麻豆av一区二区| 99热这里都是精品| 不卡中文字幕aⅴ在线| 色婷婷电影网| 97在线视频免费观看| 宅男午夜在线视频| 亚洲精品日日夜夜52| 婷婷丁香人妻 | 大香蕉琪琪日本女优不卡| 日韩中文字幕视频在线观看| 九九AV| 欧美色图私拍91| 亚洲暴力强奸AV| 啪啪啪精品| 亚洲性刺激| 精品十三区| 大香蕉520| 热久久国产| 97在线免费公开视频| 欧美图片色综合| 国产不卡免费在线视频| 国产家庭乱伦表演| 黄片www视频免费| 成人老鸭窝人人在线视频| 色婷婷网| 日韩精品.久久精品.AV女优.天美传媒 | 午夜精品久久999热蜜桃介男人用| 大香网伊人久久综合| 精品国产无码中文| JIZZJIZZ亚洲女人被躁| 亚洲欧美日韩偷拍色图| 亚州91| 国产精品一区二区密臀| 人妻一区二区三区熟女| 草草草视频| 91狠狠狠| www久久精品| 啊灬啊灬啊灬啊灬高潮奶出了免费视 | 绑缚麻绳人妻寝取完整版| 色色色热| 久久e6只有精品| 青青草视频久久| 九九99精品| 久久鲁干| 99啪啪| 亚洲图片 91| 五月天综合在线| 免费看一级a性色生活片久久无| 99精品成人免费看| 欧美精品久久久久久久久88| 正在播放:深夜激情大战,自带黑丝袜全力输出骚穴 | 六月丁香网| 夜夜操狠狠操| 60秒免费小视频| 久久久成人免费av电影| 在线观看亚洲成人精品| 日本性爱网址| 嗯阿好爽好紧| 亚洲图片偷拍欧美| 日韩性爱小视频| 天天激情干| 影音先锋国产精品| 欧美日韩人妻婷婷一区| 国产高清自拍视频| 亚洲日韩AV视色| 欧美色日| 激情小说在线视频| 国模精品娜娜一二三区| 96国产污污污丝袜| 91综合色噜噜| www.色五月| 精品丰满熟妇人妻一区| 大香蕉久| 校园春色亚洲无码| 亚洲色狠| 久久久久久久极品香蕉视频| 大香蕉手机在线| 大黄片做爱的大的| 午夜精品久久久99| 综合97| 婷婷另类小说| 成人五月天丁香激情综合| www.99视频| 久久大线蕉一区| 78操B| 探花精品视频| 校园春色第一页| 热天堂一区二区| 青娱乐国产剧情av一区| 国产 日韩 欧美 人妻 熟女 中文| 久久av色| 亚洲男人久久综合天堂| 啊啊啊啊在线观看网址| 天天看夜夜看日日干| 国产精品熟女AV中文字幕在线播放| 91热| 亚洲aV性爱| 情色图区| 色www精品视频在线观看| 日本孕妇一区二区视频操逼免费看| 思思热免费视频观看| 亚洲日韩黑丝| 久久草在线综合视频| 日本久久久久久久久久| 欧美色三级片91| 久久成人东京热人妻| 一区二区娱乐网站| 日韩成年人性爱视频| 抽查国产福利主播| 在线v中文字幕一区二区三区| 日逼五月天| 丁香六月东京热| 欧美97免费| 91伊人影视综合| 久操不卡视频| 欧美视频一区二区在线| 国产AV色黄看到爽| 亚洲午夜AV| 97操| 精品国产综合久久福利,热99这里有精品综合久久,99热这里只有免费国产精品,精 | 亚洲 小说 欧美 激情 另类| 欧美综合网1| 青娱乐av在线| 精品日韩| 男女啪啪网站免费视频| 99热欧美| 99热欧美| 极品色综合| 加勒比av网| 欧洲精品区| 日韩AV中文字幕电影| 五月婷婷AV| 久草国产在线视频| 97国产高清视频在线观看| 精品亚洲成人免费在线| 男女做爰猛烈动高潮A片免费应用 少妇厨房愉情理伦片bd在线观看 不卡中文字幕aⅴ在线 | 国产黄片精品在线| 九九热免费国产视频婷婷伊人| 六月天婷婷| 亚 欧 美 综合| 五月丁香综合激情| 天操老女人| 中美日韩毛片| 久久久久久中文版| 天堂精品一区| 欧美色偷偷| 国产精品一区二区久久精品| 亚洲囯产精品女人久久久| 18禁无码永久免费无限制| 精品人成视频在线观看| 一类无码操逼视频| 亚洲久热| 色综合加勒比四四季| 综合伊人网12色| 日日噜噜夜夜狠狠视频无| 韩国一区二区精品亚洲| 俺去俺来也在线www| 国产精品亚洲色婷婷久久久| 亚洲成人精品久久久| 1769一区二区| 操b网站亚洲无码| 久久久精| 干日本人少妇午夜寂寞影院| 97干色天堂| 97中文热色| 日欧操屄| 日本一区二区三区精品| 91欧美少妇| 精品国产无码中文| 久草视频制服诱惑| 一本色道久久综合精品婷婷| AV污污污污| 色五月婷婷麻豆在| 久草老司机| 亚洲无码视频免费在线观看网址!| 亚洲无码一二三区| 亚洲中亚日激情视频| av爱爱爱| 97超碰天天爱天天爱| 欧美色图99| 家庭乱伦网站国产| 91欧美性| 亚洲精品精品一区二区| 91处女在线视频| 日韩熟妇二区| 另类图片天天影视| 六六久久日韩不卡| 黑人免费福利视频| 欧美一区二区传媒| 亚洲欧美日韩二区视频| 国产亚洲日本精品在线| 色婷婷基地| 成人26uuu| 欧美啪啪啪91| 四虎在线免费视频| 色女综合| 无码一区二区三区四区五区六区七区八区九区十区视频 | 久久精品国产99久久,亚洲日韩久久日本一区一区三区 | www亚洲免费| 中文字幕第2页| 超碰久在线天天做| 91总综合网| 亚洲免费精品一区| 久久精品视-一级做a爰片性色毛片16美国-中国女与老外在线精品 | 久久免费老司机精品| 人妻系列无码专区中文有码| 99久久久无码精品国产人| 另类图片天天影视| 91另类| 欧美成人精品欧美一级乱黄一区二…| av线电影| 亚洲图片 欧美电影| 91青青在线| 亚欧操逼片在线观看| 日日爽熟女| 男人天堂毛片| 日韩成人高清一区二区| 人妻色偷色噜| 思思热国产在线视频| 日韩综合无码色欲vv| 中文字幕精品探花视频| www.久久最新地址| 国产丁香精品露脸视频| 男啪女色黄无遮挡免费观看| 97色婷婷| 一本久道在线综合视频| 国产精品久久| 国产91丝袜在线播放蜜月| 五月婷婷六月色| 干日本人少妇午夜寂寞影院| 91人妻少妇| 99热99re6国产在线播放| 啊a一区在线| a在线视频免费观看| 97操| 欧美色九九| 亚洲色欧| 超碰久久.com| 97超碰大| 色图四区| 综合亚州欧美| 青青草原av| 精品人妻无码一区二区三区不卡-精品人妻无码一区二区...|精品少妇一区二区三 | 91国产精品熟女| 日本女人操逼| 亚洲天堂性爱| 插老姨肥穴| 91欧美美女日韩国产婷婷| 天天香香欲综合| 超碰97首页| 中文字幕-区二区三区四区视频中国| 亚洲色图久久成人| 蜜臀精品1区2区| 精品乱子一区二区三区99| 国产视频一区二区三区久久亚洲天堂| 亚洲另类久操网| 97免费视频网| 久久久久幕乱码| 久久午夜色播影院免费高清| 又大又大又大又粗爽高潮观看 | 天天香香欲综合| 夜精品久无码| 日韩猛交| 9999免费精彩视频| 亚洲视频小说| 屁股久久久久久久| 国产av美女被艹的乱叫| 亚码激情| 欧美亚洲厕所精品偷拍91| 男人天堂新在线| 久久性爱视频99| 欧美成人一区二区三区在线播放| 久久色激情一区二区三区| 高潮嗯啊性感美女久久久| 精品9999| 成人美女av| 中文字幕五区| 嗯嗯啊好大| 人妻铁牛TV| www.99热| 97天天日| 九九内射在线| 竹菊一区二区三区AV线| 人人干人人操人人..com| 亚洲第一视频 欧美风情 日韩| 蜜臀视频网站| 精品久久視頻在线| 中文久久| 中文字幕片| 欧美少妇人妻| 亚洲婷婷五月天| 久久久青草青青国产亚洲免观精品高清完整版_97久久综合区小说区图片区,国精品 | 有码色中文字幕在线观看| 欧美性高潮| 717影院理论午夜伦八戒| 1.igao73.com 加入收藏 免费专区 国产精品 中文字幕 日韩精品 欧美精品 精彩 | 欧成人精品一区二区三区| 91精品人妻一区二区三区蜜桃| 日韩av免费一级电影| 神马九九九| 黄色二级片网站| 久久激情视频| 可以在线观看的黄色网址| 激情综合五月| 欧美日本视频一区| 人妻丰满熟妇一区二区三| 探花激情视频| 欧美在线干| 日va操| 九九九九88| 亚州男人天堂| 91在线美女| 啊啊啊啊啊啊好多水| 无码99| 日本幼女18+| 久久久久9| 国产精品乱码久久久久久久久| 自拍丝袜美腿人妻| 97爱综合| 91色久| 欧美激情亚洲| 婷婷三区| 又大又长又粗又爽又黄| 四虎影视永久在线观看精品免费网站 | 中文字幕在在线观看网站| 老妇女91| 欧美精品 - 91爱爱| 色综合一本| 泰国AV在线观看| 色色毛片| 97公开久久| 日韩成人性爱电影在线播放| 久久久久熟女| www.高清无码诱惑一区.com | 乱人伦 国语对白:视频直接看| 91人妻熟女| 色妹子A V| 精品久久久九九九孕妇| 亚洲 欧美 日韩 国产一区二区| 伊人久久大香线蕉亚洲五月天,青草青草欧美日本一区二区,欧美日产欧美日产国产 | 好爽要喷了| 少妇二级| 国产精品视频一区二区三区八戒| 天天噜| 超碰日韩美妻| 啊操爽品善一区二区三区| 2018色综合天天操| 啪啪视频亚洲第一| 秋霞 色色| 蜜臀在线看片| 欧美熟女丝袜| 亚洲AV高潮| 黄色乱论网站| 中出91| 九九热AV| 欧美激情综合色综合啪啪五月| 在线观看不卡一区二区三区| 男人的天堂免费| 一二视频神马久久传媒| 日韩精品一区,二区 九九...老司机| 男插女青青影院| 91久久久久免| 久久婷婷五月天| 久/久精品99看9| 欧美日韩99| 女人双腿搬开让男人桶| 涩五月婷婷| 91九九| 午夜福利成人免费视频| 可以免费观看的AV| 草草影院在线视频| 欧美日韩人人精品| 国产又猛又粗又爽又黄| 高潮毛片无遮挡高清免费| 牛牛AV人人夜夜澡人人爽| 亚洲中文字幕在线视频一区二区| 黄片免费日韩| 欧美日韩国产高清在线一二三区| www.av在线视频| 伊人网综合在线视频| 日本福利二区视频| 亚洲五区熟女| 骚妻少妇精品性色无码四色A V| 欧美啪啪啪91| 中文字幕欧美日韩三级| 欧美性生活免费网| 人妻少妇视频在线播放| 欧天美中出| 91热热色| 做爱A级亚欧| 人妻加勒比东京热| 老女人91| 欧美精品二区视频在线| 激情久久av一区av二区av| 蜜桃久久一区二区三区| 欧美 日韩 另类 亚洲| 啊啊啊啊啊啊啊在线| 国产真乱mangent| 久久性爱大全| 热久久九九热| 日本国产欧美一区三区二区| 亚洲一卡2卡3卡4卡乱码网站| 欧美精品另类人妖xxxx| 国产精彩女在线观看视频| 欧美超碰在线| 国产福利第一视频| 精品久久久久黄少妇| 少妇第一页| 日本αv| 伊人天堂在线| 久久久四区| 日本理论在线| 欧美少妇高潮视频| 日本性爱少妇| AV色五月| 国产亚洲禁久一区二区| 色亚州人久干视频在线观看免费版| 97在线免费| 999久久久精品国产| 综合熟妇一区二区三区| 免费看欧美美女黄色大片| 天美传媒在线一区| 午夜无码精品免费看性色| 日韩AV色图| 超碰免费人妻人人| 亚洲色图国产另类| 强奸a片网| 五月婷婷青青草娱乐伊人| 能在线播放的国产三级| 五毛骚逼极品美女怕怕| 欧美18 在线观看| 亚洲熟妇无码一区二区三区| 亚洲AV噜噜狠狠网址蜜桃动漫| 国产青视频| 国产suv精品一区二区四| 国产AV中文| 97在线免费看| 欧美日韩亚洲天堂| 久草精品热视| 中文字幕国产| 男人午夜天堂| 91亚洲丝袜熟女| 亚洲天堂性爱| 色综合久| 1000部熟女视频在线观看| 爱爱久久| 亚洲一二三精品久久网| 人摸人人操人| 无码137片内射在线影院| 一二三卡欧美日韩人妻免费精品| 亚洲古典另类欧美在线| 思思热在线视频在线| 午夜亚洲| 色情婷婷久久五月天| 人妻天堂综合网| 日韩激情中文字幕有码| 乱性AV| 69精品| 久久久国产护士丝袜美腿一| 亚洲精品1区| 色综合一区二区三巨| 97国产高清视频在线观看| 一个色导综合| 91美女小视频| 国产剧情在线| 欧美一级A一级a爱片久久| 久久是精品| 亚洲人在线| 国产精品国产自产拍高清AV| 婷婷综合久久| 99精品网| 中文字幕精品一区二区精品| 国产h片在线观看视频| 蜜臀人妻少妇久久在线观看| 超碰在线成人| 色老汉玖玖爱| 欧美狠狠弄| 你草精品在线视频| 大香网伊人久久综合网eew| 不卡人妻少妇精品毛片一区23区视频| 四虎影库国产精品免费| 欧美精品 - 91爱爱| 天天日日本| 东京热一区二区三区四区五区六区| 欧美香蕉视xxx| 美女毛片999| 亚洲天堂日本| 人人妻人人玩人人澡人人爽| 欧美Ⅴ性爱| 人人摸.人人色| 无码抄逼网| 欧美熟妇视频| 夜夜嗨免费视频| 国产白丝精品在线观看| 欧美探花网| 亚洲各类熟们中文字幕| 色综合加勒比四四季| 久久久禁| 精品九九九九九九| 亚洲精品啪视频| 91 亚洲 欧洲| 中文字日本乱码| 在线五区| wwwxxx日本爽| 五月天婷婷基地| 亚洲天堂人人妻| 欧美双插| 婷婷视频在线免费观看| 大香蕉欧美伊| 春色91| 欧洲一级性爱视频在线观看| 宅男91视频在线播放| 玖色av| 国产亚洲精品美女久久久久久2021| 蜜臀久久99精品久久久久久久久| 久久精品一区二区三区蜜桃臀| 韩日无码在线观看| 国产精品 午夜福利| 天天综合色图| AV 少妇 人妻 偷拍| 天天性射网| 中国一级操逼视频| 久久综合日韩亚洲欧美| 中文字幕乱码在线| 国产欧美第五页| 欧美熟女丝袜| 天天干夜夜一操| 天天谢天天干| 97露脸精品丝袜| 亚洲黄片免费在线播放| 色爱欲亚洲| 天天射天天操天天干天天吃2018| 国产超碰国产97| 美女9118禁| 97久久精品亚洲| 超碰在线人妻中文字幕| 久久爽爽精品| 一区操逼日比视频| 91美女精品| 国产玖玖| 久久久久久电影| 蜜臀一二三区| 加勒比在线视频| 精品国产91内射久久| 蜜臀99999| 日本人人操人人操| 亚洲激情视频| 亚洲情色一区二区三区| 色婷婷六月| 啪啪啪精品| 插插综合网天天影视网| 欧美成人精品一区二区三区| 乱伦图一区| 欧洲人妻视频| 亚洲青色欧美| 91neishe| 色九月婷婷| 午夜无遮挡男女啪啪视频| 亚洲综合大片| 大香蕉狠狠爱| 黑人与人妻| 久久久99久9| 啊视频在线| 五月丁香拍拍激情综合三级| 酒色综合网| 久草电影网| 1区2区3区中文字幕日韩| 国产一区二区三区精品观看啪| 精品美女久久久久| 91丰满| 91艹| 色97国产69香蕉| 青青草日韩免费观看高清在线| 欧亚第一综合网| 久久精精区一区二区一蜜桃一区二区| 无遮挡猛进视频免费无限观看| 亚洲成人性爱网站在线播放| 91AV入口| 超碰在线欧美性爱激情| 丰满人妻一区二区三区免费 | 熟妇最新先锋一二三区| 荡小穴在线观看| 色香色欲天天综合网天天来吧| 91啦人妻| 中国一级操逼视频| 人人艹亚洲| 精品玖九九久| 亚洲情色 自拍| 后入合集| 97超碰久久| 一区二区中文| 综合伊人网12色| 国产精品成人久久一区二区三区| 377p欧洲日本亚洲大胆| 亚洲图片色图欧美另类| 精品人妻中文字幕4399| 人妻熟女av国产网站| www五月| 99久久这里只有精品| 国产精品。| 天天操狠狠日夜夜干超大胆开放com大香蕉视频在线观看 | 亚洲日韩精品在线播放| 色久桃花影院在线观看| 国产自产一区视频在线| 91精品国产91综合久久蜜臀| 日本精品一级二级三级| 家庭乱伦国产精品| 亚洲黄色a级片| 亚洲五月丁香花狠狠干一区二区三区 | 91 国产丝袜在线播放-百度| 粉嫩av一区二区三区四季| 蜜桃精品视频一区二区三区| 精品少妇高潮久久| 免费久久一级毛片大黄| 91久久久久久| www.高清无码诱惑一区.com | 99热这里都是精品| 国产精品无码久久久久2028| 亚洲 欧美 91| 国产乱码久久久| 国产熟女乱论| 老女人碰碰在线碰碰视频| 国产女同视频在线播放| 少妇高潮99p| 成人精品一区二区三区| 欧美亚洲今日在线| 久久草在线综合视频| 一牛一区二区三区久久| 天天日天天干天天色| 婷婷五月天成人网| 久久m| AAAA欧美日韩| 久久人妻四季| 先锋女优在线观看视频| 成人情色一区二区| 91青青草| 欧美性爱91| 色网在线| 午夜超爽| 久久视频,这里只有精品| 淫荡熟女乱伦网| 欧美综合 站| 久久久久亚洲Aⅴ无码| 日韩淫色网| 国产视频不卡在线观看| 日韩成人人妻网站| 日本三级韩国三级99| 久久六六| 台湾大香蕉99热| 国岛片视频| 女上位精品在线| 一起草精品人妻| 亚洲成人在线乱码色午夜| 无码乱人伦中文视频| 久久久久久久| 精品十三区| 天天干人妇| 欧美后入| 啊啊啊啊啊,啊啊啊啊好舒服,操我舒服啊啊啊 | 嗯嗯啊啊好大好爽| 91成人在线免费视频| 天天亚洲| 土豪酒店各种姿势玩弄极品幼稚| 超碰人人妻| 欧美性爱第一页久久| 2019午夜福利视频| 亚洲有薄码区日本系列中文字幕| 亚洲蜜乳av| 91无遮挡| 加勒比久久av| 禁十八久久| 国产又黄又猛又粗又爽的网站| 国产精品无码av在线| 免费在线看黄片av| 色路综合| 污污污8888| 天无日色综合| 99精品久久| 成人八戒网站| 少妇高潮流水av免费| 国产极品馒头逼| 精品少妇高潮久久| 成人开心网在线视频| 天天操人人操骚逼网站| 开心六月色| 亚洲aw毛茸茸在线| 桃花色涩综合影院| 亚州操逼网| 黄片aaaaa一区| 久久五十路熟女人妻| 国产成人自拍视频视频| 波多野结衣一级视频| 2024年最新色情网站在线观看 | 91精品电影18| 开心激情婷婷| 长长久久免费视频| 天天射网| 中文字幕日韩精品一区二区三区| 日日日啊啊啊| 久草视频制服诱惑| 97色色色综合网站| 夜夜爽爽爽| 99丝袜福利在线播放| 婷婷三区| 亚洲黄色网址| 我爱操| 传媒在线观看一区二区三区| 久草午夜| 少妇高潮对白在线观看| 久久久网站| 四季AV综合网址| 天天爱综合网| 伊人影院日本| 亚洲精品毛片在线观看| **一级毛片国产| 啊灬啊灬啊灬好深灬快高潮了动漫-国产字幕国产在线观看-B049AV | 天天综合网1| 一本色道久久综合亚洲二区三区| 男人的天堂99| 少妇无码av专区线| 久热伊人99re| 亚洲中字慕不卡| 91丝袜在线观看| 五十路三级片| 少妇二级| 黄色成年| 亚欧日韩成人| 艳尻美人妻| 日韩性爱小视频| 丁香婷婷啪啪| 嗯~啊~轻一点 视频| 亚洲精品无码成人久久久99| 亚洲aw毛茸茸在线| 天天影视91看看| 日本高清视频xxxx| 视频二区美腿丝袜制服人妻欧美| 人妻熟女一区二区| 欧美日韩色综合网| 国产AV天美| 久久精品一区二区一8| 九九热男人天堂| 97免费视频在线观看| 五月天婷婷色| 国产精品扒开腿做爽爽爽视频| av资源在线播放天堂| 欲色啪| 欧美大香蕉同搞| 九一精品牛牛一区二区| 性在久久久久久| 夜夜爽爽夜夜精品视频| 国产区91柔拿会所技师| 粉嫩久久久久| 欧美网站免费| 人妻天堂网| 91国产丝袜足交精品视频| 国产午夜精品理论片一二三区区| 91偷拍欧美亚洲| 蜜乳AV免费观看| 欧天美中出| 亚洲图片偷拍视频区| 青青草久草| 欧美日韩国第一区| 国产精品视频麻豆入口| 在线观看A啊啊啊| 午夜120视频在线观看| 日韩美女高潮喷水视频| 自拍大香蕉乱插| 亚洲色图91| 99精品久久久久久| 国产欧美精品日韩区二区麻豆天美| 蜜臀久久99精品久久久久| 中文字幕伊人| 人人乐大香蕉| 国产一区二区啪啪视频| 免费中文综合精品| 久久蜜桃一区二区| 99久久综合| 99这里有精品视频| av天堂精品久久| 伦理第一页| 大香蕉啪啪啪啪在线| 麻豆2区1区天美| 日韩亚洲精品一区二区| V A在线| 夜夜免费视频| 精品十三区| 91无人区卡一卡二卡三乱码入口最新版:能让用户有更多选择的选择-经典说说-爱 | 夜夜嗨一区| 国产成人精品午夜福利| 96精品在线| 久久性爱城| 91丨熟女丨丰满熟女| 国产亚洲精品农村妇女| 中文字幕欧美日韩三级| 色综合加勒比| 无码人妻一区二区三区免费九色| 国偷自 一区| 好吊爽好吊爽在线视频,中文字幕精品一区二区日本,国产良妇出轨视频在线观看, | 午夜天堂精品久久| 宅男91视频在线播放| 五月婷婷激情网| 亚洲国产成人高清在线| 黄色视频特级毛片| 五月婷婷丁香中文字幕| 天天日天天干天天整| 亚洲啪啪视频一区二区| 无码高清少妇久久| 无码137片内射在线影院| 欧美激情 亚洲色图| 熟女精品日韩一区二区三区| 黄站在线免费观看| 国产9熟妇视频网站| 亚洲风情在线观看| 国产精品不卡一区二区三区av| 老熟女搡BBBB搡BBBB视频| 日韩一级成人毛片免费观看| 日操粉逼逼| 丁香五月婷婷啪啪| 国产精品电影| 超碰三级秋霞| 欧美九九99久久精品| 天堂伊人久久| 国产一区麻豆免费观看| 五月天色电影| 亚91网| 看大黄色大片原件| 亚洲无套久久嗯嗯| 91美女视频直播| 性爱网站一区二区| 97超碰色五月| oumeizonghese,www| 91色香| 亞洲久久直播| 夜夜一区二区| 999熟女精品| 欧洲久久一二线| 人人妻人人狠人人| av在线人气| 91人妻人人澡人人爽人人精品| 无码 黑人一区二区三区| 91爱综合| 精品免费囯产一区二区三区| 婷婷亚洲五月***久久| 日韩av色图综合| 91看黄片| 99re不伦| 色黄污美女啪啪啪免费网站| 久久久影院| 天天综合-91入口| 95人妻爽爽人人做人人澡| 久久华人网| 国产高清成人mv在线观看| 99re9这里只有精品| 一区二区中文| 96AV精品| а√天堂资源官网在线资源| 狠狠躁AV| 国产极品精品美女视频| 久久久久久91香蕉国产| 人妻丰满熟妇一区二区三| 大香蕉宅男伊人| 丰满岳乱妇一区二区三区 | 精品无av| 五月丁香综合激情| 少妇精品久久| 人妻出轨一区二区三区| 精品无码欧美三级| 久久夜夜夜| 国产一区二区欧美日本| 97干色| 色诱中文字幕| 中文字幕亚洲热播人妻| 欧美国产婷婷久久| 裸模AV女优| 亚洲AV无码成人精品久久| 欧美色另类| 中文在线久久字幕| 国产一区二区三区影片| 欧美色就是色| 精品久久久久久久久久久久 | 欧美精品,四区。五区| 激情开心五月天| 国产精品永久免费10000| 婷婷丁香人妻| 狠狠2050在线观看| A V少妇特黄三级| 艹比视频国产精品| 国语对白露脸XXXXXX| 亚州色图欧美色图| 91性| wwe 天天干.com| 99激情视频| 亚洲成人久久一区二区| 四虎国产精品永久入口| 亚州性色| 久久久性爱| 日韩成人小视频| 97天天在线| 60秒免费视频| 91性高| 91久久堂| 超碰天天久久79| 国产精品第二页| 久草综合视频| 国产视频第2页| 日日日色色色色色| 欧美 亚洲 综合 制服 另类| 99在线观看无大码| 99国产精品在线观看| 久久久久久性爱视频| 亚洲av热热色| 久久少妇视频| 亚洲精品1区| 蜜臀无码一区二区| 国产美女高潮视频| 丰满人妻一区二区三区免费 | 91色夜| 日本欧美不卡| 无码人妻精品酒店| WWW操逼| 久久精品毛片免费不卡| 欧美日韩性爱操大逼| 久久九九综合| 久久亚洲影院一区二区| 人人操天天爽| 99黄页网站| 日日骚一区二区三区| 操国产逼| 亚洲少妇综合在线播放| 国产精品一区二区 尿失禁| 亚洲成人无码影院| 欧美色三级片91| 日韩电影天堂视频一区二区| 色欧美在线| 亚洲国产精品无码AV久久久| 五月天黄色激情视频| 国产精品九9| 另类专区加勒比| 一级乱伦网站| 99久久9| 人妻黑丝袜电影| 国语av狠狠色丁香婷婷综合激情| 成人性爱视频在线看| 天天综合网~69| 色综九九九一区| 成年女人黄网站| 亚洲熟妇熟在线电影视频| 偷拍99| 91成人精品在线播放| 国产又大又粗又色生活片亚洲国产精品成人久久久综合免费 | 精品高潮| AV中文在线| 欧美日韩亚洲国产中文永久天天看| 最新av中文字幕高清| 日本 欧美 亚中文字幕| 亚洲美腿丝袜香蕉影视欧美成人| 国产一级高跟丝袜| 国产传媒一区日韩| 一区二区三区美女超清| 另类综合另类| 国产精品不卡高清在线观看| 四虎永久在线精品免费网址| 国产精品一区二区三| 亚洲人妻一区二区三区| 超碰97日韩| 九九热精品| 欧美亚洲天堂| 91色碰| 九月激情婷婷| 91在线/欧洲| 亚洲精品第一| 国产一二三在线视频五十路| 激情视频网址| 91天天综合| 2019午夜福利视频| 极品白嫩美女白浆成人福利在线看| 天天久久久久久| 亚洲精品丝袜-不卡成人免费……| 99999re| 天天看特黄的免费网站| av无码精品久久久久| 亚洲欧美在线丝袜| 欧洲乱码视频| 一本一道vs波多野结衣| 白丝AV| 另类老少妇| 午夜福利久久久噜久噜久久综合| 大黄片做爱的大的| 日韩在线电影| 国产精品久久久久久9999| 好吊色在线观看| 黄色AAAAAAAAAAA大片| 蜜臀久久99精品久久久久久婷婷| 蜜臀亚洲综合一二三四区| 国内精品伊人久久久久影院会| 黄片www视频免费| 欧美色91| 很很很很操| 午夜精品久久久久久久99热影院| 久久9视频| 色在线亚洲视频www| WWW.操逼.COM| 久久久日本电影| 久久人妻一区二区三区高清| 精品乱子一区二区三区99| AV污污污污| 综合激情97 | 91路www| www.高清无码诱惑一区.com | 性性欧美| 欧美精品另类人妖xxxx| 黄色av片三级三级三级免费看| 国产福利一区二| 香蕉视频欧美一卡二卡| 天天网综合| 中出91视频| 骚货操死你| 亚洲欧美不卡线| 超碰欧美| 黄色香蕉视频网站一区| 曰韩操B| 日本人妻伦在线中文字幕| 国产精品4p在线观看| 午夜超爽| 高清无码 国产精品| 免费在线观看AV无码网站| 五月婷婷六月激情| 长长久久88视频| 亚洲人妻熟妇三十三区| 亚洲性综合|