国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

將framebuffer保存為圖片來(lái)檢查內(nèi)容正確性

STM32單片機(jī) ? 來(lái)源:STM32單片機(jī) ? 作者:STM32單片機(jī) ? 2022-04-25 10:46 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1、前言

客戶在做 GUI 項(xiàng)目開(kāi)發(fā)時(shí),會(huì)碰到許多顯示相關(guān)的問(wèn)題。

屏幕花屏是比較嚴(yán)重的問(wèn)題,如果產(chǎn)品出現(xiàn)花屏,會(huì)嚴(yán)重影響使用體驗(yàn)。正常的 UI 顯示,包括畫圖和將幀緩沖傳輸?shù)狡聊粌蓚€(gè)過(guò)程。如果畫圖過(guò)程出錯(cuò),那幀緩沖的內(nèi)容就不對(duì)了,傳輸?shù)狡聊缓箫@示也不可能正確。如果畫圖過(guò)程正確,而傳輸過(guò)程出錯(cuò),雖然幀緩沖的內(nèi)容是對(duì)的,而屏幕接收到的數(shù)據(jù)出錯(cuò)了,那屏幕顯示的內(nèi)容自然也是錯(cuò)誤的。因此在定位顯示錯(cuò)亂、花屏等問(wèn)題時(shí),需要先判斷是畫圖出錯(cuò)還是傳輸過(guò)程出錯(cuò)。

本文會(huì)介紹一種方法,將幀緩沖內(nèi)容導(dǎo)出并保存為圖片,來(lái)判斷幀緩沖內(nèi)容是否正確。由于幀緩沖的內(nèi)容為全部像素的 RGB 數(shù)據(jù),在導(dǎo)出后需要借助其它工具將 RGB 數(shù)據(jù)轉(zhuǎn)換為圖片,方便在 PC 上直接查看。

這里可以使用 pythonpillow 包,將 RGB 轉(zhuǎn)換為JPG 圖片。而讀取幀緩沖的過(guò)程可以借助 python 的 pyswd 包來(lái)實(shí)現(xiàn)。

2、環(huán)境安裝

本機(jī)環(huán)境:Windows10 64bit 安裝 python 3.9.0 (測(cè)試過(guò) 3.9.6 正常),檢查系統(tǒng)環(huán)境變量,將 python 添加到 Path中。

下載:https://www.python.org/downloads/

ec3f427c-c3d1-11ec-bce3-dac502259ad0.png

2.1. 安裝 libusb

下載:https://github.com/libusb/libusb/releases

解壓 libusb-1.0.24.7z,將 VS2019/MS64/dll/libusb-1.0.dll 拷貝到 python 安裝目錄,與 python.exe 相同目錄

2.2. 安裝 pyusb

下載:https://pypi.org/project/pyusb/#files

打開(kāi) powershell,輸入 pip install pyusb-1.2.1-py3-none-any.whl

2.3. 安裝 Pillow

下載:https://www.lfd.uci.edu/~gohlke/pythonlibs/#pil

打開(kāi) powershell,輸入 pip install Pillow-8.3.1-cp39-cp39-win_amd64.whl

2.4. 安裝 pyswd

下載:https://github.com/cortexm/pyswd/releases/tag/v1.0.0

解壓 pyswd-1.0.0.zip,打開(kāi) powershell,進(jìn)入 pyswd-1.0.0 目錄,輸入 pythonsetup.py install

3. 將幀緩沖保存為圖片

3.1. 讀取幀緩沖

通過(guò) pyswd,可以創(chuàng)建 stlink 對(duì)象連接到目標(biāo)板,用read_mem 函數(shù)來(lái)讀取目標(biāo)板內(nèi)存。

3.2. 保存圖片

從 Pillow 包導(dǎo)入 Image 類,創(chuàng)建圖片對(duì)象,將 pyswd 讀取的 framebuffer 數(shù)據(jù)填充到 image 對(duì)象中并保存實(shí)現(xiàn)代碼如下,保存為 pyswd_rgb2jpg.py 文件。

ec540446-c3d1-11ec-bce3-dac502259ad0.png

4、測(cè)試及小結(jié)

在 L4R9-DK 板上進(jìn)行了測(cè)試

(1) 無(wú) GFXMMU 時(shí),傳給腳本的參數(shù),寬和高為實(shí)際 LCD 的寬和高將 GUI 固件燒錄到開(kāi)發(fā)板后,屏幕正常顯示。在工程 map 文件中,找到 framebuffer 地址。打開(kāi) powershell,執(zhí)行 pyswd_rgb2jpg.py:

ec6040f8-c3d1-11ec-bce3-dac502259ad0.png

(2)開(kāi)啟 GFXMMU 時(shí),framebuffer 對(duì)應(yīng)為虛擬地址,傳給腳本的參數(shù)中,圖像的寬度要用GFXMMU 像素寬度

ec7b2332-c3d1-11ec-bce3-dac502259ad0.png

在完成環(huán)境安裝后,通過(guò)此腳本可方便查看 framebuffer 內(nèi)容。如果出現(xiàn)屏幕花屏的問(wèn)題,可導(dǎo)出 framebuffer 圖片查看。如果畫圖過(guò)程出錯(cuò),則導(dǎo)出的圖片顯示也是錯(cuò)誤的。反之,如果畫圖過(guò)程正常,則 framebuffer 內(nèi)容正常,導(dǎo)出的圖片也是正常的,這樣就需要查一下傳輸過(guò)程導(dǎo)致的顯示問(wèn)題。

審核編輯 :李倩

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 數(shù)據(jù)
    +關(guān)注

    關(guān)注

    8

    文章

    7335

    瀏覽量

    94774
  • 圖片
    +關(guān)注

    關(guān)注

    0

    文章

    203

    瀏覽量

    16541
  • Framebuffer
    +關(guān)注

    關(guān)注

    0

    文章

    8

    瀏覽量

    8409

原文標(biāo)題:工程師筆記|將 framebuffer 保存為圖片來(lái)檢查內(nèi)容正確性

文章出處:【微信號(hào):STM32_STM8_MCU,微信公眾號(hào):STM32單片機(jī)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    儲(chǔ)能EMS控制器(7) — 如何快捷驗(yàn)證儲(chǔ)能柜內(nèi)設(shè)備接入的正確性?

    儲(chǔ)能柜項(xiàng)目,初期要接入集成設(shè)備(PCS、BMS、電表等)進(jìn)行調(diào)試,設(shè)備調(diào)試過(guò)程比較繁瑣又容易出錯(cuò),怎樣才能便捷地驗(yàn)證儲(chǔ)能柜內(nèi)設(shè)備接入的正確性?簡(jiǎn)介儲(chǔ)能柜項(xiàng)目,初期要接入集成設(shè)備(PCS、BMS、電表
    的頭像 發(fā)表于 01-23 11:40 ?195次閱讀
    儲(chǔ)能EMS控制器(7) — 如何快捷驗(yàn)證儲(chǔ)能柜內(nèi)設(shè)備接入的<b class='flag-5'>正確性</b>?

    智能顯示模塊保存工程時(shí)為什么提示另存為?

    智能顯示模塊保存工程時(shí)為什么提示另存為?
    發(fā)表于 12-15 08:21

    基于開(kāi)源鴻蒙的圖片編輯開(kāi)發(fā)樣例(2)

    本期內(nèi)容介紹基于開(kāi)源鴻蒙在RK3568上開(kāi)發(fā)圖片編輯樣例的全流程,分為上篇和下篇,本篇為下篇,主要介紹標(biāo)記、保存圖片功能。
    的頭像 發(fā)表于 10-31 09:19 ?3210次閱讀
    基于開(kāi)源鴻蒙的<b class='flag-5'>圖片</b>編輯開(kāi)發(fā)樣例(2)

    在Linux ubuntu上使用riscv-formal工具驗(yàn)證蜂鳥(niǎo)E203 SoC的正確性

    內(nèi)容:在Linux ubuntu上使用riscv-formal工具驗(yàn)證蜂鳥(niǎo)E203 SoC的正確性 步驟: 1、下載和安裝riscv-formal工具: bash復(fù)制代碼 git clone
    發(fā)表于 10-24 07:52

    商品圖片批量上傳接口設(shè)計(jì)與實(shí)現(xiàn)

    ? 在電商平臺(tái)或內(nèi)容管理系統(tǒng)中,商品圖片的高效管理是核心需求之一。批量上傳接口允許用戶一次上傳多張圖片,顯著提升操作效率。本文逐步介紹如
    的頭像 發(fā)表于 10-13 15:25 ?446次閱讀

    【HarmonyOS 5】鴻蒙應(yīng)用實(shí)現(xiàn)發(fā)票掃描、文檔掃描輸出PDF圖片或者表格的功能

    包括 :掃描合同、票據(jù)、會(huì)議記錄并保存為 PDF 分享。拍攝課堂 PPT、書籍章節(jié)生成圖片存檔。快速識(shí)別表格數(shù)據(jù),減少手動(dòng)錄入成本。 在Harmon
    的頭像 發(fā)表于 07-11 18:16 ?1384次閱讀
    【HarmonyOS 5】鴻蒙應(yīng)用實(shí)現(xiàn)發(fā)票掃描、文檔掃描輸出PDF<b class='flag-5'>圖片</b>或者表格的功能

    ##DevEco Studio##如何讓模擬器里有圖片?【圖片下載法】

    的開(kāi)發(fā)過(guò)程中,有一次我開(kāi)發(fā)的項(xiàng)目需要將圖片下載到本地,通過(guò)文檔,我了解到了“安全控件”中的“保存控件“,簡(jiǎn)單來(lái)說(shuō),就是可以超級(jí)方便的圖片進(jìn)行保存
    發(fā)表于 06-29 22:51

    無(wú)刷雙饋異步電機(jī)潮流建模和收斂研究

    的 BDFM初值算法,給出IEEERTS系統(tǒng)中 BDFM參數(shù)計(jì)算結(jié)果,以驗(yàn)證所提 BDFM潮流算法的可行正確性。 純分享帖,點(diǎn)擊下方附件免費(fèi)獲取完整資料~~~ *附件:無(wú)刷雙饋異步電機(jī)潮流建模和收斂
    發(fā)表于 06-25 13:12

    HarmonyOS實(shí)戰(zhàn):一招搞定保存圖片到相冊(cè)

    保存圖片功能幾乎是每個(gè)應(yīng)用程序必備的功能之一,當(dāng)用戶遇到喜歡的圖片時(shí)可以保存到手機(jī)相冊(cè)。那么在鴻蒙中保存
    的頭像 發(fā)表于 06-24 17:04 ?1265次閱讀

    繞組開(kāi)放型永磁同步電機(jī)的建模及應(yīng)用

    永磁電機(jī)的 Mallab/Simulink 模型并應(yīng)用該模型進(jìn)行新型發(fā)電系統(tǒng)性能的仿真,仿真結(jié)果表明模型的正確性和發(fā)電系統(tǒng)控制策略的有效。 純分享帖,需要者可點(diǎn)擊附件免費(fèi)獲取完整資料~~~*附件
    發(fā)表于 06-12 13:52

    泰克示波器波形數(shù)據(jù)保存為CSV格式的完整指南

    在電子工程與科研實(shí)驗(yàn)中,示波器作為信號(hào)分析的核心工具,其波形數(shù)據(jù)的存儲(chǔ)與后續(xù)處理至關(guān)重要。泰克示波器憑借其卓越的性能與豐富的功能,為用戶提供了多種波形保存方式,其中CSV格式因兼容強(qiáng)、數(shù)據(jù)開(kāi)放度高
    的頭像 發(fā)表于 06-07 15:31 ?1224次閱讀
    泰克示波器波形數(shù)據(jù)<b class='flag-5'>保存為</b>CSV格式的完整指南

    求大佬解答,怎么保存為帶表頭的電子表格

    求大佬解答,怎么保存為帶表頭的電子表格
    發(fā)表于 06-04 14:14

    如何正確使用和維護(hù)水下燈具氣密檢測(cè)儀

    水下燈具氣密檢測(cè)儀對(duì)于保障水下燈具的質(zhì)量和安全至關(guān)重要,以下為你詳細(xì)介紹其正確的使用和維護(hù)方法:(一)正確使用方法使用前準(zhǔn)備檢查外觀:仔
    的頭像 發(fā)表于 05-26 11:47 ?496次閱讀
    如何<b class='flag-5'>正確</b>使用和維護(hù)水下燈具氣密<b class='flag-5'>性</b>檢測(cè)儀

    電氣設(shè)備交接試驗(yàn)預(yù)防試驗(yàn)直流電機(jī)做試驗(yàn)項(xiàng)目有哪些

    ;6勵(lì)磁回路連同所有連接設(shè)備的交流耐壓試驗(yàn);7檢查電機(jī)繞組的極性及其連接的正確性;8電機(jī)電刷磁場(chǎng)中性位置檢查;9測(cè)錄直流發(fā)電機(jī)的空載特性和以轉(zhuǎn)子繞組為負(fù)載的勵(lì)磁機(jī)
    的頭像 發(fā)表于 05-06 10:38 ?889次閱讀
    電氣設(shè)備交接試驗(yàn)預(yù)防<b class='flag-5'>性</b>試驗(yàn)直流電機(jī)做試驗(yàn)項(xiàng)目有哪些

    求助,關(guān)于SGTL5000 LINE-IN聲音錄制問(wèn)題

    。 我注意到 tinymix 設(shè)置中有一個(gè) capture mux 變量。即使我將其更改為 LINE_IN,我仍然無(wú)法正確錄制聲音。 下面,我默認(rèn)設(shè)置保存為 tinymix
    發(fā)表于 04-11 06:49