国产成人欧美一区二区三区vr_久久国产精品人人爽人人爽_国产精品永久免费播放_肉欲啪啪a∨无码精品一区二区_国产超短裙jk丝袜在线_亚洲AV片高清资源在线观看_国模无码一区二区三区久久_国产成年人未进视频_中文字幕无码精品夜_一区二区三区在线视频免费看_亚洲成AV人片在线观看网址_日本激情视频高清综合久久_亚洲午夜视频福利_国内大量揄拍人妻精品視_久久国产精品福利二区三区

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
返回資訊列表
大肥女高潮bbwbbwhd视频| 色偷偷男人的天堂麻豆| 国产60页| 久久精品无码一区二区三区| 91视频综合在线| 亚 欧 美 综合| 强奸乱伦大香蕉| 久久午夜色播影院免费高清| 欧美在线第五页| 日本加靬比网站发布页| 天天欧美欧美亚洲网| 国产精品蜜乳AV| 久久精品午夜国产亚洲AV无码| 超碰一区二区| 天天内射| 99色婷婷中文字幕乱色| 性感女人网页在线观看视频| 欧美精品99久久久| 最新国产精品久久精品| 乱伦AVxx| 日本操逼二区| 强奸乱伦亚洲第一页| 欧美gv在线观看| 九九碰九九爱97超| 亚洲色图91| 91精品人妻| 97久久久久| 欧美同性恋 的搜索结果 - 91n| 操操操操网黑人| 亚洲AV无码| 禁片 高清 在线观看视频网站| 天天躁日日躁AAAXX| 久久综合资源一区二区| 国产无马视频| 亚洲精品aa久久伊人| 亚洲制服aⅴ中文字幕| 欧美成熟性爱精品| 熟妇的味道HD中文字幕| 日韩成人电影AV| 成人福利视频网| 天天躁日日躁AAAXX| 超碰在线人妻| 日韩免费人妻色情网站| 国内精品久久国产,www香蕉久久五月丁香,亚洲欧美日韩精品永久在线,日本精品一 | 日本超碰在线国产一区| 综合网~91综合网| 亚洲图片欧美另类综合免费视频大大香| 欧美亚洲美少妇一区二区| 亚洲限制级| 青久久| 亚洲国产福利视频| 91狠狠| 爽极品影院| 中国国产精品一区视频| 簧片免费看视频| 成人免费不卡在线视频| 色99在线| 麻豆国产原创AV色哟哟| 97在线无精品| 婷婷涩嫩草鲁丝久久午夜精品| 欧美亚洲自拍另类人妻| 欧美精品日韩久久久九| 蜜臀久久99精品久久综合| 色五月69夫妻| 亚洲人精品午夜不卡| 久久久涩| 91人妻人人澡人人爽人人精品| 亚洲日韩在线a不卡99精品| 2017人人操,人人摸| 色丁香五月婷婷| 91久精品| 啊啊啊水好多| 国产最新小视频在线播放下载| 国产亚洲禁久一区二区 | 青草伊人网| 国产乱子伦久久精品综合一区二区三| 日本1区2区不卡视频| 国产在线精品偷| 青青草视频久久久久| 久久是精品| 91天天看| 992这里有精品| 老女人91| 少妇高潮流水av免费| 秋霞欧美性爰视频| 久久夜精品一区二区三区| 亚洲另类色综合网站| 性夜影院爽黄A爽免费动漫| 日韩在线一区高清在线| 有码免费观看| 一级AV性爱| 97综合在线| 久久熟女嫩草成人片免费| 久久精品国产亚洲5555| 熟妇人妻一区二区三区| 欧美一二三| 五月丁香六月婷综合成人综合| 韩日男人的天堂| 大茄子熟女AV导航| 99久久精品无码一区二区| 精品久久久中文字幕不| 国内一区二区免费| 亚洲综合码| 国产精品96久久久久久| 综合网色| 性生活性生大爱77AV国产| 欧美日韩激情无码专区| 亚洲性猛| 99久久久er直播网址| 看黑丝美女操逼青青网站| 一本色道综合久久欧美日韩精品| 五月婷婷丁香| 久久久久夜夜夜夜| 98一区二区精品| 午夜福利 成人 91| 婷婷丁香五月激情啪啪| 久久精品国产99久久,亚洲日韩久久日本一区一区三区 | 欧美韩国你懂得在线 | 成人AV超碰免费在线| 国产18精品亚洲精品| 九九av| 日本操大逼| 欧美在线啊啊啊| 国产亚洲色停停久久99精品91| 色综合91| 东北少妇高潮zzzz| 亚洲drav色图| 天天色综亚洲91污| 欧美色图99| 婷婷午夜| 人妻无一区二区三区| 农村妇女精品一区二区| 久草免费福利在线播放| 青久久| 欧美日韩性爱精品| 国产精品操| 久久av色| 中文自拍欧美影视| 九月伊人中文字幕| 久草资源欧美在线视频| 色综合久久88色综合久久天天| 国产情色第一第二页在线观看| 国产成人无码啪| 91成人久久| 欧美日综合| 日韩少妇无码| 欧美在线55555| a v网站在线播放| 欧美激情一| 亚洲一区深夜| 国产成人久久久精品免费AV| 欧美18老人禁| 少妇大屁屁| 久久精品欧美一区蜜桃| 91人妻做a观看视频| 无码动漫av中文字幕| 亚洲AV免费在线观看| 97在线观看播放视频| 91中出在线| 色嘟嘟人妻天堂网| 精品人妻一区| 国产成人精品必看| 特色a在线上| 欧美激情亚洲情色| 亚洲凸凹超碰成人| 60秒试看最爽10分钟网站| 无码抄逼网| 午夜舔阴达高潮视频免费看| 九九九久久久W精品| 久久精品免视看国产成人﹣蜜臀av一区. 久久精品免视看国产成人,蜜臀av一区 | 91精品免费| 色蜜AV| 97人人操人人摸人人爱| 99无码狠狠久久| 热热色AV| 丰满熟妇大乳做爰| 玖玖超碰熟| 欧美人妻二区三区| 日韩精品区二区三区不卡| 26uuu性| 久久久精品网| aV中文麻| 嫩草 我啊~嗯~在线| 久久久999日本大片| 思思性爱| 色综合av男人天堂| 秋霞网—男女啪啪亚洲免费体验区 | 加勒比无码毛片| 欧美亚洲厕所精品偷拍91| 综合网,亚洲,欧美| 三级三级三级日本99| 日本国产欧美高清在线| 探花熟女,姿勢到位,體驗感也到位| 91中文字幕| 97亚洲在线| 高清无码学生妹高潮| 色妇91| 日韩人妻无码不卡网站| 国产情色在线| 性爱AV天堂| 天堂伊人久久| 亚洲国产精品久久久男人的天堂| 密臀在线免费观看| 麻豆区99999| 97网址www| 伊人久久88国产女| 99热色这里只有精品| 亚洲色五月| 91九色首页| 午夜男人一级A片7777| 亚洲国产成人精品无码专区| 女人喷水视频在线观看| 手机看av网站在线看| 色色福利| 狠狠爱综合网| 你操综合| 91久久18禁| 欧美A√综合网 | 九九碰九九爱97超碰| 色欧洲| 欧美一级在线观看成人| 人人玩人人添人人澡免费| 少妇一区二区三区高速| 欧美精品1区2区3区| 婷色五月| 欧美最婬乱婬爆婬性视频 | 久久精品免视看国产成人﹣蜜臀av一区. 久久精品免视看国产成人,蜜臀av一区 | 亚洲暴力强奸AV| 在线 亚洲 网爆 自拍| 国产60页| 一区久久久二区| 国产成人精品日本视频| 人人操人人摸人人看人人干| 精品成人亚洲午夜电影| 午夜精品久久久久久久99热影院| a男人的天堂久久一级A毛片| 97久久资源| 亚洲欧美97√| 人人摸人人添人人操| 国产美女mm131爽爽爽爽| 超碰成人国产| 久久精品天美| 白嫩妹子国产骚| 97视频免费播放| WWW操逼| 中日亚韩免费视频| 长长久久免费视频| 美欧老女人97| 中文字幕福利视频一区二区三区在线观看| 美女天天干| 人人射人人操人人摸| 男人的天堂亚洲| 东京热av男人的天堂| 久久九九久精品国产尤物|国产精品爽黄69天堂A片潘金莲,国产亚洲精品第一综合 | 夜夜 中文视频rt| 精品人妻一区二区三区蜜桃视频| 人妻无一区二区三区| 久久久久久久久成人av解说| 9久综合网| 四季AV一区二区凹凸精品小说| 啊啊啊骚| 久久婷婷国产一区二区色| 国产极品久久久| 夜夜高潮夜夜爽夜夜爱爱一区| 一区二区三区免费视频入口| 99综合视频一体| 国产乱人妻精品入口| 91欧美综合| 日韩激情中文字幕有码| 精品9区| 神马久久久久久| 五月色网| 后入式五六区| 性爱av在线免费观看| 免费久久9999| 亚洲学生妹高清av| 99自拍B亚洲 | 一区二区日韩欧美久久| 久久久久九九九九九| 性久久| 蜜臀AV成人精品蜜臀AV久久| 欧美不在线| 中国探花熟女| 青青草国产一区二区三区| 无码人妻精品一区二区三区99不卡| 五月天偷拍| 国产丝袜一区二区三区| 亚洲日韩美女中文字幕乱| 人妻在线中出视频| 成人性爱免费播放| 天天操女人| 亚洲中文字幕在现观看| 美女露胸露尿口| 欧美日韩1234| 手机久操欧美综合色码| 日韩无码黄色片| 97看操| 亚洲最大成人a毛毛片| 白丝AV网站| 一级片视频啪啪| 99热97| 9久在线视频只有精品| 久久精品人体| 熟女精品va中文字幕| 久久国产999| 男男H黄动漫啪啪无遮挡网站| 91色综合色| 日韩中文字幕在线视频观看| 久久丝袜| 天堂资源欧美| 婷婷中文网| 欲综合网| 99999无码| 中文字幕在线免费观看2| 九九九综合精品| 国产亚洲色停停久久99精品91| 天天碰操中国年青熟妇| 欧美经典一区二区三区| 后入合集| 嗯~啊~快点 死我视频| 家庭乱伦麻豆| 少好三P| 超碰在线看| 亚洲97在线观看| 60秒试看最爽10分钟网站| 欧美|91色综合| 国产JDAV无码视频在线观看| 91无摭挡| 色女综合| 国产欧美日韩在线不卡第一页| 精品人妻一区二区三区不卡断 | 欧姜老司机| 夜夜夜夜夜夜夜夜夜狠狠狠狠狠狠狠| 日韩激情啪啪啪| 东北女人高潮视频| 国产精品一区二区后入| 99成人| 嫩草美女久久| 中文字幕精品码亚洲| 四虎884a| 亚洲欧美一区二区三区在钱蜜桃 | 欧美成人一区二区| 日韩熟女精品无码专区一区二区| 欧美在线观看综合国产| 亚洲无码国产探花在线观看| 亚洲日韩狠狠撸视频| 亚洲自拍另类丝袜综合| 亚洲丝袜二区| 色综合网1| 乱伦a片视频| 超碰色图| 97亚洲自在精品在线观看| 成人综合网 欧美| www.99在线| Av手机版天堂网| 中文字幕一区二区无码成人| 一区超碰一区| 嗯嗯啊啊好疼| 97超视频在线观看| 精品一区二区麻豆| 国产高清不卡视频| 色诱avtt| 久久久久久久久久久久久久久乱码| 91精品无码人妻系列| a片 xxxx受爽视频| 九九九九热只有精品| 亚洲天堂日本| 日韩欧亚中文在线| 加勒比伊人综合| 欧美另类自拍| 亚州久久9| 亚洲熟妇无码一区二区三区| 嗯啊啊啊轻点视频 | 中文熟女五十乱码在线| 大屁股熟女一区二区三区| 久草婷婷| 91成人社区| 欧美性生活内射| 天天综合影院91| 久久伊人在线五区| 欧美 中文字幕 一区| 荡小穴在线观看| 理论久久婷婷网 8| 麻豆国产av网| 午夜精品久久久99| 超碰98综合网| 97少妇人妻中文字幕久久| 中文字幕精品免费一区二区| 国产高清自拍视频| 伊人网青青| 久久首页| 这里都是精品在线观看| 色综合久| 久久久久久久久久久97| 9超碰免费| 妇女视频网站| 精品一区99999| 亚洲丨在线| 97久久国产| 九九九热| A V视频日本| 亚欧高清在线| 久久黄黄| 久久国产精品熟女人妻| 夜夜精品视频一区二区| 清纯唯美亚洲| 91在线视频免费播放| 亚洲最大AV网| 冬京热男人的天堂| 国产视频第2页| 欧美草草高清日韩视频| J?P?NESEHD熟女熟妇伦| 伊人久久综合精品欧美| 超碰精品在线| 欧美日韩222| 天天干夜夜肏| 人人看黄色视频| 亚洲成人福利电影免费| 夜夜高潮夜夜爽| 国产精品在线一区二区| 中日韓欧美高清| 26uuu偷拍亚洲欧洲综合| 黄色视频特级毛片| 情色日播放AV| 九九热午夜欧亚国产视频| 老熟女91视频| 成人午夜小视频手机在线看| 爱爱动态120秒| 蜜桃狠狠色伊人亚洲综合| 精品九九九九九| 曰本人妻人人澡人人夹| 78久久久| 婷婷色香伊人| 69精品久久久久中文字幕| 亚洲 中文 女同| 亚洲欧美视| 看免费的黄片| 富二代亚洲精品99| 青青草依人大香蕉| 综合久久欧美| 欧美 日韩 婷婷 五月| 亚洲狠| 国模无码一区二区三区在线| 青草香蕉网| 欧亚日韩中文在线| 女人高潮抽搐喷水视频网站| 欧美在线55555| 中文一区二区三区影院| 992这里有精品| 欧美第五页| 国产中文精品一区二区在线观看| 在线女人91| 天天做天天爱| 男人天堂一区二区| 欧美综合综合| 日韩精品一区二区三区色欲| 青青草久久在线| 370p日韩欧美亚洲精品| 97精品视频免费| 亚洲不卡三级手机播放| 国产欧美第五页| 91丝袜美女视频| 久久久久久人妻| 啊啊在线| 九九在线视频| 91精品网站| 五月天综合| 久久久久白虎| 久久侵犯人妻爽爽爽| 欧美天天干| 国产亚洲99久久精品| 国产精品午夜福利| 夜夜爽77777| 久久久精品网| 国产视频一区二区三区久久亚洲天堂 | 九九热久久99精品re| 男生女生啊啊啊啊| 色黄色美女大长腿午夜视频| 成人一区二区三区四区| 人妻 丝袜美腿 中文字幕| 60秒免费小视频| 中文字幕交换人妻| 美女十八禁| 91无码中出人妻视频| 欧美日韩在线小说| 欧美18禁91| 无码操逼网| 国产自偷| 丝袜制服字幕在线| 香蕉久久AⅤ...| 中文字幕一区二区在线日韩精品| 高清不卡国产| 91丨豆花丨熟女| 久久久成人免费av电影| 激情综合五月| www.av家庭乱伦| 亚洲伊人a线观看视频| 澳门人妻久久| 强奸乱伦大香蕉| 久草成人影片| 少妇蜜汁| 精品国产www久久| 欧美日韩资源| 狠色婷婷久久一区二区三区_| 白嫩国模丰满一二三区| 天天色图| 久久人妻无码毛片A片麻豆| 国产99热| 国产精品毛片?v一区二区三区| 日本一级不卡一二区| 丝袜美腿欧美| 人妻乱仑一区二区三区| 日韩一级欧美一级国产一级台湾| 久久AV色| 超碰亚洲欧美日韩无| 欧美性爱无码一区二区三区| 欧美92| 欧美日韩国产男人| 精品少妇后入一区二区三区四区人妻巨乳| 五月婷婷六月丁香网址| 成人羞羞视频国产| 麻豆色约约| 美女啪欧美一区| 色情五月婷婷| 欧美丝袜制服久久| 十八禁视频一区二区| 啊啊啊骚| 欧美成人国产精品| 伊人丝袜美腿高跟在线观看高清 | 四季av一区二区凹凸精品小说| 国产不卡精品91| 无码国产精品久久久久| 国产亚洲欧美每日在线| 日韩人妻丝袜中文字幕| 久久九九热| 久久久久久九九九九-美女久久久久久久-成人AV| 色婷亚洲五月在线观看| 免费亚洲黄色视频在线观看 | 少妇毛片久久| 免费黄色片子| 国产一区二区欧美日本| www.伪伪| 超碰人人操97碰| 日本506070| 国产麻豆91欧美一区二区久久婷婷国产精品 | 啊啊啊男女| 久湿久久| 欧美日韩另类字幕中文| 日韩中文字幕av在线播放| 久久大香蕉手机高清| 我爱大香蕉| 日韩成人大片一区二区| 粉嫩av在线一区二区| 国产中文大片资源中文字幕| 亚洲色图欧美色图日韩色图| 成人性爱av| 翔田千里无码中出中文字幕| 岛国片在线视频网站| 欧美色www亚洲国产阿娇要播| 精品人妻一区二区三区在| 欧美不在线| 天天影视亚洲| 久久在线观看免费视频 | 欧美亚洲一区二区久久久婷精品大包诱| 亚码激情| 久久一留热品黄| 精品国产一区二区三区久久久蜜臀 | 九九热精品免费视频| 中文字幕av色| 欧美 综合| 久草在| 免费99精品国产自在在线| 玖玖爱伊人玖玖爱| 精品女同一区| 99热一区二区三区四区| 精品999999| 亚洲春色欧美激情自拍| 探花熟女,姿勢到位,體驗感也到位| 欧美强奸乱能| 九九色图| 厕所偷拍在线| 亚洲文学偷乱拍啪啪啪啪 | 91狠狠综合久久| 你操综合| 粉嫩小泬久久久一区二区| 懂色av中文字幕| 美欧色综合| 欧州一区二区三区四区| 日韩一区二区三区四区五区 | 男人久久天堂| 国产精品网址| 色婷婷99| 性老妇一区二区三区| 日韩特一级久久| 人人妻人人爱人人玩| heyZO天然素人无码AⅤ专区| 欧美婷婷五月天| 国产视频一区二区在线| 久久原创中文| 91精品无码久久久久久久| 色综合久久88色综合久久天天| 99爱精品| 天天超级碰碰碰| 天天噜| 精品亚洲国产成人精品| 六九九九| 天天综合网亚洲综合网| 欧美人与动性人交a| 亚洲中文日韩精品| 91久久伊人婷婷青青草| 日韩精品人妻一区二区| 人人妻人射| 偷拍网站久久男女男| 97久久久久久久久久| 日本乱人伦片中文三区| 五月天综合网| 亚洲AV不卡在线观看| 欧美gv在线观看| 丰满人妻一区二区三区| 久热99999| 丰满美女一级毛片在线播放| 夜夜嗨AV一区天天| 国产97色在线 | 亚洲| 秋霞网—男女啪啪亚洲免费体验区 | 亚洲淫乱骚妇AV| 99在线精品视频| 人人操人人摸人| 久久超碰98| 免费看黄片现成| 久久久久13| 奶水 人妻 哺乳 在线| 亚洲色图亚洲无码强奸乱伦| 97在线青| 91精品国产日韩欧美综合| 亚洲最大的黄色电影网站。| 欧美性暴力| 日韩三级一区| 色欲久久99国产精品久久久久久| 97网色| 欧美一区二区观看在线| 日本岛国黄色网址| 日本中文字幕熟妇| 色网在线视频观看免费| 欧美性爱一区| 日韩视频精品在线观看| 午夜精品99久久久久传媒| 密臀在线一区尤物| 婷婷亚洲天堂| 欧洲视频在线| 狠狠色婷婷| 欧美性夜| 99青草| 一区AV| 96免费视频在线| 一本色道久久天天射天天干| 亚洲男人天堂2012| 精品无码一区二区三区| 中国黑人三级片网站上区| 狠狠色噜噜狠狠狠狠2018| 物尤视频一区二区| 福利社区午夜一区二区| 免费亚洲国产精品久久一区| 中文字幕精品区先锋资源| 国产少妇内射| 婷婷五月天福利| 国产女人视频三四五区| 久久人体一区二区| 中文字幕日韩人妻视频一区二区三区| 国产区91柔拿会所技师| 免费观看欧美日韩操逼视频| 亚洲激情网一二三四区| A啊啊在线观看| 色网在线视频观看免费| 2020中文字幕在线| 日韩人妻大香蕉| 欧美18老人禁| 天天日天天屌天天操| 亚洲av无线观看| 高清无码人妻久久久一区二区三区aⅴ| 深夜啪啪啪视频免费| av三级电影在线播放| 亚洲自拍一区夜夜操| 极品白嫩美女白浆成人福利在线看| aV中文麻| 精品人妻一区二区免费蜜桃| 国产 日韩 另类 视频一区爱| 超碰美国| 欧美天堂超碰97| 九九久久99| 牛牛操视频逼| 东京热91| 91爱做| 99视频内射三四| 黄色片A级一区二区三区| 欧亚日韩三区| 亚洲风情在线观看| 色女网日韩| 91操人| 一起草三级AV电影在线观看 | 久久影视二区三区行押| 性欧美另类高清| 思思热er精品视频| 蜜桃狠狠色伊人亚洲综合网站| A一级色女| 九久9热| 色婷婷香蕉| 日本成人A片网站| 色汉综合| 青青草色AV| 2026国产精品视频| 91视频观看网站| 亚洲丁香花色| 亚洲综合精品国产一区| 十八禁视频一区二区| 色妇综合网| 亚洲丝袜二区在线| 天海翼久久| 狠狠图片青青草| 日韩情色视频| 欧美1727免费观看视频| 色婷婷五月综合激情中文字幕| 欧美日韩免费性爱| 老司机午夜精品视频| 精品亚洲天堂| 丰满人妻一区二区三区四区| 一本大道久| 久久久久久波多野吉衣高潮| 国产性刺激| 操91| 国产成人主播| 图色综合网| 91 在线亚洲| 狠狠干狠狠干| www.yw尤物| 午夜丁香| 婷婷综合五月天| 99热这里只有精| 女人爽到高潮潮喷18禁网站| 亚洲综合中文字幕有码| 亚洲国产午夜真人一级片中文字幕精品黄网站 | 欧美东京热青青草| 97精品人妻一二三四| 97视频www| 久色99999| 亚洲 综合 第一页| 亚洲黄a三级三级三级看三级| 色情亚洲日本成人| 97久久久精品| 走光一区92下载| 99re在线精品78| 五月天欧美色图| 中国黄色特级精品一区二区三区片| 好舒服视频| 99精品高潮| 91亚洲狠狠色| 91中出在线| 96久久久久久久| 91综合中文字幕| 成年人网站在线免费观看| 日韩欧美大片免费高清啪啪| 一级黄色视频网| 日欧亚洲二三区大片不卡| 国产一区二区视频在线播放| 五月天激情婷婷| 狠狠躁AV| 亚洲美女 晚间男人天堂| AV色图| 亚洲综合嫩| 人人操,人人液| 强奸乱伦大香蕉| 日本日逼视频网| 熟女丰满人妻一区| 亚州综合色图| 一区二区三区一亚洲中文字幕、综合区灬 | 成年女人18级毛片毛片免费观看| 95人妻爽爽人人做人人澡| 国产视频一区二区三区久久亚洲天堂| 久草在| 人妻丝袜一区二区三区在线| 奇米四色网| 四虎影院成年人片| 日韩影片中文字幕一区二区三区| 91无码人妻| 国产精品久久久久久久久久久久久久吹 | 日韩99999| 欧美18 在线观看| 中日韩久久人妻一区二区| 狠狠干妹子| TS人妖另类精品视频系列| 激情国产乱伦Av| 嗯嗯啊中文字幕| 欧美日韩国产人人| 加勒比综合| 欧美人妻一区| 久9久| 另类欧美综合| 日本免费专区| 江都AV在线| 90后后入| 亚洲成人日韩小说| 97网址www| 蜜臀在线网站| 99国产精品视频尤物| 91亚州日韩高清| 俺去啦自拍| 国产精品人人爽人人做可爱福利| 天美精品av| 舔人妻中文免费视频| 国产精品网址| 大香蕉十区| 91丝袜美女视频| 九九色图| 欧美激情黑人| 久久久久久久久久va| 日韩人妻大香蕉| 骚日日av| av网页一区二区三区| 夜夜嗷嗷一区二区| 九九九九热| 五月婷婷影院| 天天操妹子| 桃花色涩综合影院| 夜夜做夜夜爽精品视频| 2020中文在线一区二区三区| AV高清一区| 欧美一区二区三区不卡高清视频| 丁香五月激情五月| 久久午夜色播影院免费高清| 快播电影网日韩新片| 99在线无码精品秘 入口黑人| 超碰 另类 欧美 | 狠狠综合网| 日日躁狠狠躁天天躁精品| 日本性爱网址| 精品妇操一区二区三区| 操逼视频亚洲| 天天草AV| 欧美日韩操操操| x97av| 韩国三级理论在线| 啊啊啊啊啊舒服| 福利色色| 欲色综合| 天天摸,夜夜摸| 精品视频在线观看| 伊人大香蕉在线| 伊人热综合| 青久操| 丝袜剧情| 亚洲第一男人天堂| 婷婷丁香六月天| 欧美在线啊啊| 偷拍亚洲高清图片| 国内偷自视频区视频综合| 熟女AV一区| 无码黑人精品一区二区三区三| 亚洲性综合| 欧美一区二区亚洲天堂| 先锋女优在线观看视频| 欧美精品人妻视频| 日韩黄片影院| 视频二区熟女人妻| 久久性视频| 久九九九| 天美传媒AV国产在线| 亚洲乱码国产乱码精网站| 欧美日综合| 性欧美另类高清| 在线观看无码三级少妇| 男人天堂网手机版婷婷| 综合久久99| 国产无码三级视频在线观看| 少妇内射www在线观看视频| 国产精品自拍欧美在线| 亚洲欧洲激情卡通另类文学四射小说网站 | 夜夜中出国产| 亚洲一区二区三区播放在线| 亚洲美女高潮喷水视频| 嗯嗯嗯不要不要免费视频| 精品亚洲黄色片 国产精品导航一区二区| 中文字幕免费在线观看| 红桃视频高潮| 婬女免费一二三区A片| 国产91影院| 国产操逼视频在线观看| 一区二区三区精品久久| 91亚.色| 国精品一区二区三| 国产又色又爽又舒服的三级视频| 精品无码欧美三级| 中日992视频| 欧美性色综合网| 日韩另类| 色天使亚洲综合在线观看| 欧美激情高清性猛交| 情色五月天网| 精品无码久久久| 国产自偷自拍一区| 欧美1区二区三区公司| 狠狠爱夜夜| 性九九九九九九| 久久AV无码1区2区3区| 91丨九色丨大屁股| 91快色色色色色| 国产日韩精品suv| 久肏视频字幕| 加勒比伊人影院| 麻豆国产原创AV色哟哟| 激情五月综合网| 日韩精品亚洲专区在线影视| 亚洲精品自拍| 爱爱动态60秒| 天堂亚洲精品| 大干人妻| 中国熟女网站| 超碰天天久久79| 爆乳免费黄网站| 亚洲色图大香| 激情专区综合| 极品色www影院| 成人八戒网站| 精品人妻av在线播放| 国产亚洲深夜激情| 欧美视频一| 色综合一区二区三区| 亚洲成成熟女人综合一区二区| 久久久少妇诱惑精品视频| 欧美午夜视频| 麻豆精品天美| 日欧毛片久久| 二三四区精品| 欧美 亚洲 另类 综合| 97se综合网| 欧美精品丝袜久久久中文字幕| 久久免费老司机精品| 婷婷久久五月天| 色噜噜婷婷| 色婷婷电影网| 色综合天天| 25国产精品免费观看| 婷婷五月丁香五月| 欧美亚州手机在线| 伊人综合色网| 中文字幕在线观看AV| 黄页18禁| 97 国产一区| 久久婷婷欧美| 国产精品久久久久久9999| 91网站在线播放| 极品少妇久久久久| 最新制服中文第一页| 酒色综合网| 熟女乱3伦999| 新久久AV| 欧美网站免费| 亚洲宅男天堂| 少妇一区二区三区在线观看| 东北老女人的激情视频| 色欧洲97| 国内一级精品| 精品无码秘 人妻一区二区| 久久丁香久草综合网| 日本成人A片网站| 图片区小说区| 久久久艹艹艹| 91挑色欧美| 久艹视频在线| 国产捆绑一区| 欧美一级久久久久久久大片动画| 91天堂色男人的天堂| 精品久久久久久亚洲| 久久最新视频免费观看| 精品人妻伦一区二区三区久久| 久九九九九九九九热| 日韩三级伊人| 欧美大香蕉同搞| 99操碰| 激情亚洲天堂| 欧美性第1页| 中文字幕国产在线天堂| 97人妻免费中文字幕| 婷婷综合视频| 老熟妇综合| 熟妇女伦乱视频| 国产亚洲深夜激情| 无码伊人久久大杳蕉中文无码| 亚洲国产欧美日韩人妻日中文| 2026国产精品视频| …亚洲黄色厕厕女女在线播…| 天堂а√在线最新版在线| 人妻熟女午夜精品在线| 白 大 人妻 区 在线| 久久系列| 强奸乱伦av电影| 中文字幕av久久爽Av| rivers-china.com| 婷婷av在线中文字幕| 六月丁香啪啪| 亚洲国产亚洲天堂| 福利视频香蕉免费一区二区在线| 国产日本久久免费精品| 久久久久一本一区二区青青蜜月| 国产黑白丝在线| 国产一级137片内射麻豆| 99在线免费观看| 夜夜嗨老熟女AV一区二区三区| 三级日韩一区二区三区| 久久婷婷五月| 天天操天天7| 秋霞一级A片黄色视频| 懂色AV一区二区三区| 日韩青久久| 狠狠色狠狠色狠狠五月| 国产精品久久久蜜臀| 久草这里只有精品 | 国产精品情侣啪啪| 91操熟女视频| 欧美专区日本专区| 97国产色图| 日本高清视频xxxx| 韩国轻伦国内自拍一区| 射久久| 国内外色色色色色成人视频| 国产自偷| 欧美自拍偷拍免费观看| 国产情色第一第二页在线观看| 国产黄色在线播放观看| 夜夜操91744565| 亚洲天堂精品日韩电影| 天天天天干| 欧美亚洲系列| 久久99久久99久久99人受| 欧美啪啪啪91| 婷婷伊人网| 91模特在线观看| 91干熟女| 国产尤物在线三区| 九九无码视频| 深爱伊人影院| 97人人操人人干| 凹凸 69堂 在线播放| 一区二区娱乐网站| 超碰97极品9| 六月丁香五月婷婷| 熟妇色99| 狠狠中文字幕| a亚洲欧美色欲| 在线 亚洲 网爆 自拍| 国产家庭乱伦表演| 97色欧州| 亚洲第一狼人丝袜美女另类| 加勒比东京热五月天天堂网| 偷拍自拍在线视频观看| 怡红院网站在线视频| 亚洲国产日韩欧美熟妇在线| 人妻久久| 日韩在线AB| 99热99色| 超碰97亚洲| 亚洲第一页欧美| 综合免费无码中文| 青青草原成人| 五月婷婷丁香六月| 91视频精品| 亚洲综合九| 一区二区三区欧美激情| 啊啊啊啊好爽好舒服一区二区易域| 丰满人妻一区二区三区四| 国产狂喷潮在线精品| 日本新免费二区三区| 无码自拍SM| 亚洲无992tv| 欧美激情久| 婷婷丁香熟妇综合网| 亚洲97| 色臀aV| 天天爽天天爽| 中文字幕乱码人妻二区三区| 亚洲 无码 有码 中文字幕| 色婷婷综合久久久久中文国产精品一区中文字幕,国产福利电影一区二区三区 | 100啪啪视频大全| 欧美高潮| 一区黄二区黄| 久久久国产亚洲精品系列| 91性网| 加勒比海成人视频网 | 五月婷亚洲精品天堂| 国产视频第2页| 99爱视频| 四虎国产精品永久地址入口| 亚洲男人天堂网站| 日韩精品99久久久久久中文字幕| 国产精品久久久久综合| 粉嫩av平台| 欧美色老汉| 青青草精品| 啊啊啊操一区| 精品性爱一区二区| 另类图片欧美激情综合| 伊人国产AV| 精品九九淫乱男| 欧美中文字幕男人天堂久久精品| 国产综合永久精品日韩鬼片| 国产在线能看的你懂的| 精品日日人妻| 亚洲人久久久网| 亚洲色图20p| 日韩欧美视频青青| 亚洲强奸乱伦影视网| 中字幕人妻一区二区三区| 男人综合网| 久久久九九| 综合av影片| 欧美亚男人的天堂| 久久性爱视频| 91天堂色男人的天堂| 亚洲国产欧美一区二区潘金莲| 天堂综合网| 青青草在线视频美女| 久久久久久久久久精| 蜜臀亚洲中文| 精品久久久久,69国产成人精| 欧美很很操视频| 国产精品制服丝袜清纯唯美 | 99re这里| 大香蕉在线免| 97激情97激情| 欧美乱色| 久久午夜伦| 涩五月婷婷| 免费观看啪视频| 在线国产一区二区av| 性色av蜜臀av色欲aV| 激情五月综合开心五月| 中文操逼字幕| 日韩色| 国产日本一区二区三区蜜臀在线观看| 综合亚洲网| 96一区二区三区| 久久久999国产精品| 亚洲激情深爱文学小说网站| 日本久久999| 久久久成人免费av电影| 狠狠做深爱婷婷久久二区| 久久99草| 色香伊人| 日韩欧美蜜桃精品久久中文字幕久久| 亚洲 欧美 第一页| 国产综合永久精品日韩鬼片| 波多野42部无码喷潮在线观看 | 国产欧美日韩在线观看麻豆传媒公司 | 免费看污网址| 欧美午夜视频| 欧美91久久久久| 九九九九97| 高潮9999外国| 欧美 亚洲 第一页| 一二三区操逼国产91| 日韩综合无码一区久久92| 在线观看一级α片刺激高潮视频|