日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁(yè) > 嵌入式 > 嵌入式硬件
[導(dǎo)讀]在桌面級(jí)操作系統(tǒng)中,下載一個(gè)截圖軟件就能實(shí)現(xiàn)截屏操作,但在嵌入式Linux系統(tǒng)中,要實(shí)現(xiàn)小小的截圖功能卻沒有那么簡(jiǎn)單。本文為您介紹嵌入式Linux系統(tǒng)中實(shí)現(xiàn)截屏功能的方法和步驟。

在桌面級(jí)操作系統(tǒng)中,下載一個(gè)截圖軟件就能實(shí)現(xiàn)截屏操作,但在嵌入式Linux系統(tǒng)中,要實(shí)現(xiàn)小小的截圖功能卻沒有那么簡(jiǎn)單。本文為您介紹嵌入式Linux系統(tǒng)中實(shí)現(xiàn)截屏功能的方法和步驟。

1 . 原理

由于 Linux 系統(tǒng)的 FrameBuffer 機(jī)制,會(huì)把屏幕上的每個(gè)點(diǎn)映射成一段線性內(nèi)存空間,程序就可以通過改變這段內(nèi)存的值來改變屏幕上某一點(diǎn)的顏色。屏幕色彩的原始數(shù)據(jù)保存在/dev/fb0文件內(nèi),因此我們可以直接cat /dev/fb0 > fb.raw讀取該文件獲得數(shù)據(jù)。

 

 

圖1 原始截屏數(shù)據(jù)

顯然,這種原始數(shù)據(jù)無法通過簡(jiǎn)單的工具直接查看,特別是在精簡(jiǎn)的嵌入式Linux系統(tǒng)上。因此,我們找到了一個(gè)不錯(cuò)的工具——gsnap。這個(gè)工具可以將framebuffer中的數(shù)據(jù)直接保存為png或者jpeg格式的圖片。當(dāng)然,我們需要獲得該工具的源碼,并且在交叉編譯后移植它。

2 . 原材料

本次嘗試筆者選擇周立功/致遠(yuǎn)電子開源開發(fā)套件EasyARM-i.MX283A3,宿主機(jī)選用Ubuntu14.04。首先,我們需要獲取gsnap源碼,該源碼可在網(wǎng)絡(luò)中搜索下載。源碼解壓后得到的文件如圖2:

 

 

圖2 gsnap源碼

其中g(shù)snap.c為解析算法,感興趣的讀者可以打開研究,本文我們不做分析。我們直接打開跟編譯相關(guān)的Makefile文件,內(nèi)容如下。從下圖可知,該源碼依賴libpng、libjpeg、zlib、libmath四種庫(kù)。由于交叉編譯器的庫(kù)種包含有l(wèi)ibmath,因此我們需要準(zhǔn)備好另外三種庫(kù)備用。

 

 

圖3 gsnap的Makefile

解壓后得到的文件如圖4。(源碼包可從庫(kù)官網(wǎng)或論壇下載)

 

 

圖4 庫(kù)的源碼包解壓

3 . 交叉編譯

第一步,交叉編譯libjpeg。進(jìn)入到源碼目錄,執(zhí)行./configure --host=arm-linux --prefix=/home/vmuser/gsnap/jpeg_install/,然后執(zhí)行make、make install ,在安裝目錄/home/vmuser/gsnap/jpeg_install/得到交叉編譯過的庫(kù)。

 

 

圖5 交叉編譯libjpeg

第二步,交叉編譯zlib。由于zlib是libpng的依賴,因此必須首先編譯zlib。由于zlib中的configure并未提供--host參數(shù),因此需要為它手動(dòng)指明交叉編譯器:export CC=arm-fsl-linux-gnueabi-gcc,然后執(zhí)行./configure --prefix=/home/vmuser/gsnap/z_install/,make、make install 。得到的文件類同第一步,不再放圖。

第三步,交叉編譯libpng。與上述兩步驟又不同,libpng中提供有Linux平臺(tái)下的Makefile例程,我們可以直接拿來修改使用。進(jìn)入到libpng的源碼目錄,執(zhí)行拷貝cp scripts/makefile.linux Makefile,然后打開Makefile修改,如圖6。修改的內(nèi)容為交叉編譯器名稱和依賴的zlib的路徑。最后make、makeinstall得到頭文件可庫(kù)文件。

 

 

圖6 修改libpng的Makefile

第四步,交叉編譯gsnap。為方便起見,我們將上述得到的庫(kù)文件和頭文件分別集中拷貝到自行建立的lib和includes目錄下,并且修改gsnap的Makefile。執(zhí)行make后就能得到可執(zhí)行文件gsnap。

 

 

圖7 修改gsnap的Makefile

4 . 驗(yàn)證

將得到的gsnap可執(zhí)行文件拷貝到目標(biāo)板的/opt目錄下,執(zhí)行截屏命令:./gsnapfb.jpg /dev/fb0,將得到的截屏fb.jpg拷貝到ubuntu中可得圖8。

 

 

圖8 截屏得到的圖片

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀

全球嵌入式技術(shù)領(lǐng)域的年度盛會(huì)2026嵌入式世界展(Embedded World 2026,簡(jiǎn)稱EW26)于3月10日至12日在德國(guó)紐倫堡成功舉辦。作為物聯(lián)網(wǎng)和邊緣AI領(lǐng)域的領(lǐng)先企業(yè),Silicon Labs(亦稱“芯科科...

關(guān)鍵字: 物聯(lián)網(wǎng) 邊緣AI 嵌入式

3月10日至12日,2026年嵌入式世界展(Embedded World 2026,簡(jiǎn)稱EW26)在德國(guó)紐倫堡展覽中心成功舉辦。作為領(lǐng)先的邊緣AI與智能音頻等媒體處理技術(shù)和芯片解決方案提供商,XMOS以沉浸式演示與技術(shù)交...

關(guān)鍵字: 邊緣AI 智能音頻 嵌入式

在嵌入式系統(tǒng)開發(fā)中,SoC(System on Chip)的多樣性始終是橫亙?cè)陂_發(fā)者面前的難題。以某工業(yè)物聯(lián)網(wǎng)網(wǎng)關(guān)項(xiàng)目為例,其需同時(shí)支持NXP i.MX8M、Rockchip RK3566和Allwinner H616三...

關(guān)鍵字: Platform Driver模型 嵌入式

在Zynq MPSoC開發(fā)中,實(shí)現(xiàn)PS端Linux與PL端自定義IP核的AXI互聯(lián)是構(gòu)建高性能異構(gòu)系統(tǒng)的關(guān)鍵環(huán)節(jié)。這種互聯(lián)方式充分發(fā)揮了ARM處理器的軟件優(yōu)勢(shì)與FPGA的硬件加速能力,為復(fù)雜應(yīng)用提供了強(qiáng)大的計(jì)算平臺(tái)。

關(guān)鍵字: Zynq MPSoC Linux

在物聯(lián)網(wǎng)與智能設(shè)備飛速普及的當(dāng)下,嵌入式系統(tǒng)的安全性與穩(wěn)定性愈發(fā)關(guān)鍵。實(shí)時(shí)操作系統(tǒng)(RTOS)憑借其高確定性、低延遲的特性,成為工業(yè)控制、醫(yī)療設(shè)備、航空電子等安全敏感領(lǐng)域的核心支撐。而內(nèi)存保護(hù)單元(MPU)作為硬件級(jí)安全...

關(guān)鍵字: Linux Windows

在非易失性存儲(chǔ)器領(lǐng)域,EEPROM(電可擦除可編程只讀存儲(chǔ)器)曾長(zhǎng)期占據(jù)主流地位,廣泛應(yīng)用于各類電子設(shè)備的參數(shù)存儲(chǔ)、日志記錄等場(chǎng)景。但隨著工業(yè)控制、汽車電子、醫(yī)療設(shè)備等領(lǐng)域?qū)Υ鎯?chǔ)性能提出更高要求,F(xiàn)RAM(鐵電隨機(jī)存取存...

關(guān)鍵字: 存儲(chǔ)器 可編程 嵌入式

康佳特將aReady.COM擴(kuò)展至Arm架構(gòu)模塊,基于恩智浦i.MX 95處理器打造應(yīng)用就緒的軟硬件構(gòu)建模塊,集成操作系統(tǒng)、系統(tǒng)整合與IoT連接能力,賦能高價(jià)值應(yīng)用快速落地

關(guān)鍵字: 處理器 IoT 嵌入式

3月12日,2026年中國(guó)家電及消費(fèi)電子博覽會(huì)(以下簡(jiǎn)稱:AWE 2026)在上海盛大開幕。展會(huì)現(xiàn)場(chǎng),場(chǎng)景化、系統(tǒng)化、一體化的家電解決方案成為行業(yè)焦點(diǎn),消費(fèi)者對(duì)家電的關(guān)注也已從基礎(chǔ)的尺寸匹配,延伸至對(duì)“空間秩序感”和“視...

關(guān)鍵字: 消費(fèi)電子 蒸烤箱 嵌入式

超高效NPU IP在資源受限設(shè)備中推進(jìn)邊緣AI,因而獲得認(rèn)可

關(guān)鍵字: 人工智能 嵌入式 NPU
關(guān)閉