国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【基于IMX6ULL開發(fā)板開機(jī)攝像頭的自啟動(dòng)】

這篇具有很好參考價(jià)值的文章主要介紹了【基于IMX6ULL開發(fā)板開機(jī)攝像頭的自啟動(dòng)】。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

項(xiàng)目場(chǎng)景:

這里簡(jiǎn)述項(xiàng)目相關(guān)背景:

最近在準(zhǔn)備暑期實(shí)習(xí)和秋招,準(zhǔn)備一個(gè)Camera項(xiàng)目,涉及調(diào)試內(nèi)核、優(yōu)化開機(jī)——從啟動(dòng)到獲取第一幀圖像的時(shí)間,硬件平臺(tái)為正點(diǎn)原子IMX6ULL開發(fā)板,攝像頭為OV5640,內(nèi)核基于正點(diǎn)原子出廠linux源碼,根文件系統(tǒng)暫時(shí)選擇正點(diǎn)原子出廠文件系統(tǒng)


項(xiàng)目小目標(biāo)

首先實(shí)現(xiàn)開發(fā)板開機(jī)攝像頭的自啟動(dòng),后續(xù)再進(jìn)行內(nèi)核調(diào)試,優(yōu)化開機(jī)

實(shí)現(xiàn)步驟如下:

一、驅(qū)動(dòng)模塊
1、準(zhǔn)備工具
2、設(shè)備樹配置
3、源碼拷貝
4、配置文件
5、編譯生成驅(qū)動(dòng)模塊
二、板子應(yīng)用程序
三、上機(jī)實(shí)驗(yàn)

以上具體移植模塊步驟參考大佬博客:LittleBear-原子源碼驅(qū)動(dòng)ov5640


項(xiàng)目Bug

起初根據(jù)博客指引移植OV5640模塊,在開發(fā)板上加載模塊成功,但是使用正點(diǎn)原子攝像頭應(yīng)用編程項(xiàng)目代碼生成的v4l2_camera可執(zhí)行文件,執(zhí)行./v4l2_camera /dev/video1后,程序異常返回:

ioctl error:  VIDIOV_S_FMT: invalid argument

原因分析

查資料后得知這個(gè)問(wèn)題很多人遇到過(guò),原因是采取的編碼與設(shè)備的支持的編碼不兼容,又從正點(diǎn)原子的用戶快速體驗(yàn)文檔中得知:在正點(diǎn)原子出廠內(nèi)核 v1.6 版本之前(請(qǐng)?jiān)?1.2.2 小節(jié)查看出廠內(nèi)核歷
史版本,檢查用戶所處的固件版本)是不支持 RGB565 和 JPEG 采集的
,可在開發(fā)板文件系統(tǒng)中執(zhí)行如下命令查看攝像頭支持格式、分辨率及幀率

v4l2-ctl --device=/dev/video1 --list-formats-ext

筆者使用的是正點(diǎn)原子驅(qū)動(dòng)教程使用的Linux源碼,有沒有可能這份內(nèi)核并不支持RGB565格式呢,試試就逝世:果不其然,筆者敲下這行命令后,顯示僅支持YUYV格式,而LCD顯示好像是需要RGB格式的數(shù)據(jù),這就涉及到Y(jié)UYV格式和RGB格式的轉(zhuǎn)換,在博客上找到了相關(guān)代碼,對(duì)攝像頭應(yīng)用編程代碼進(jìn)行修改,但遺憾未成功,畢竟攝像頭V4L2編程這塊的知識(shí)還沒去系統(tǒng)學(xué)習(xí)過(guò),這個(gè)轉(zhuǎn)換暫時(shí)擱置,后面再來(lái)解決,害

解決方案:

此路不通,換條路唄

換用正點(diǎn)原子資料包中的出廠源碼,經(jīng)查是V1.6版本之后的

重復(fù)上述移植模塊步驟,編譯出mx6s_capture和ov5640_camera兩個(gè)驅(qū)動(dòng)模塊,并將出廠源碼編譯后的鏡像和設(shè)備樹通過(guò)tftp掛載,經(jīng)測(cè)試成功顯示出攝像頭畫面!

開機(jī)自動(dòng)加載模塊

攝像頭驅(qū)動(dòng)需要的兩個(gè)模塊mx6s_capture和ov5640_camera是以模塊的形式存在,我們還需要配置啟動(dòng)文件來(lái)加載內(nèi)核模塊:?jiǎn)?dòng)文件一般位于/etc目錄下,我的文件系統(tǒng)中內(nèi)核模塊配置文件存放在/etc/modprobe.d/中,進(jìn)入文件夾,vi打開文件,添加mx6s_capture和ov5640_camera,保存退出即可,重啟系統(tǒng)執(zhí)行l(wèi)smod發(fā)現(xiàn),攝像頭模塊已加載

開機(jī)啟動(dòng)攝像頭畫面獲取

成功加載攝像頭模塊后還需要執(zhí)行攝像頭應(yīng)用軟件來(lái)調(diào)用攝像頭提供的設(shè)備文件/dev/video1:同樣是在/etc目錄下,在/etc/rc.local文件中,添加可執(zhí)行文件調(diào)用命令:添加后保存退出

cd xxx(攝像頭程序所在目錄)
./v4l2_camera /dev/video1

配置文件修改完后,執(zhí)reboot命令重啟系統(tǒng),攝像頭開機(jī)自啟動(dòng)成功!文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-719800.html


到了這里,關(guān)于【基于IMX6ULL開發(fā)板開機(jī)攝像頭的自啟動(dòng)】的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 嵌入式Linux實(shí)戰(zhàn)開發(fā)之項(xiàng)目總體概述(基于IMX6ULL)

    嵌入式Linux實(shí)戰(zhàn)開發(fā)之項(xiàng)目總體概述(基于IMX6ULL)

    現(xiàn)在越來(lái)越多的智能設(shè)備融入到我們的生活,然而,豐富的設(shè)備之下也是有一套基本的運(yùn)行框架,只是根據(jù)不同的需求增減相應(yīng)的功能從而滿足自身的需要。而電子產(chǎn)品量產(chǎn)工具項(xiàng)目,就是實(shí)現(xiàn)基礎(chǔ)的功能,可以作為一個(gè)基礎(chǔ)的模版,學(xué)成之后便可進(jìn)行擴(kuò)展,根據(jù)自身需求,

    2024年02月13日
    瀏覽(84)
  • 【IMX6ULL驅(qū)動(dòng)開發(fā)學(xué)習(xí)】05.IMX6ULL驅(qū)動(dòng)開發(fā)_編寫第一個(gè)hello驅(qū)動(dòng)【熬夜肝】

    【IMX6ULL驅(qū)動(dòng)開發(fā)學(xué)習(xí)】05.IMX6ULL驅(qū)動(dòng)開發(fā)_編寫第一個(gè)hello驅(qū)動(dòng)【熬夜肝】

    經(jīng)過(guò)以下四個(gè)步驟,終于可以開始驅(qū)動(dòng)開發(fā)了 01.安裝交叉編譯環(huán)境【附下載地址】 02.IMX6ULL燒寫Linux系統(tǒng) 03.設(shè)置IMX6ULL開發(fā)板與虛擬機(jī)在同一網(wǎng)段 04.IMX6ULL開發(fā)板與虛擬機(jī)互傳文件 一、獲取內(nèi)核、編譯內(nèi)核 二、創(chuàng)建vscode工作區(qū),添加內(nèi)核目錄和個(gè)人目錄 三、了解驅(qū)動(dòng)程序編寫

    2024年02月06日
    瀏覽(18)
  • 【IMX6ULL驅(qū)動(dòng)開發(fā)學(xué)習(xí)】08.IMX6ULL通過(guò)GPIO子系統(tǒng)函數(shù)點(diǎn)亮LED

    【IMX6ULL驅(qū)動(dòng)開發(fā)學(xué)習(xí)】08.IMX6ULL通過(guò)GPIO子系統(tǒng)函數(shù)點(diǎn)亮LED

    通過(guò)GPIO子系統(tǒng)函數(shù)點(diǎn)亮LED 1、GPIO子系統(tǒng)函數(shù) 1.1 確定 led 的GPIO標(biāo)號(hào),查看內(nèi)核中的gpiochip 查看 gpiochip ,以正點(diǎn)原子的IMX6ULL阿爾法開發(fā)板為例 查看原理圖,發(fā)現(xiàn)led接的引腳是 GPIO1_IO3,對(duì)應(yīng) /sys/kernel/debug/gpio 中的 gpiochip0 組,gpiochip0 組從0開始算起, 所以 GPIO1_IO3 對(duì)應(yīng)的標(biāo)號(hào)就

    2024年02月10日
    瀏覽(25)
  • 【IMX6ULL驅(qū)動(dòng)開發(fā)學(xué)習(xí)】15.IMX6ULL驅(qū)動(dòng)開發(fā)問(wèn)題記錄(sleep被kill_fasync打斷)

    【IMX6ULL驅(qū)動(dòng)開發(fā)學(xué)習(xí)】15.IMX6ULL驅(qū)動(dòng)開發(fā)問(wèn)題記錄(sleep被kill_fasync打斷)

    發(fā)現(xiàn)問(wèn)題的契機(jī): 學(xué)習(xí)異步通知的時(shí)候,自己實(shí)現(xiàn)一個(gè)功能:按鍵控制蜂鳴器,同時(shí)LED燈在閃爍 結(jié)果:LED好像也同時(shí)被按鍵控制了 最后調(diào)試結(jié)果發(fā)現(xiàn): 應(yīng)用層的 sleep 被驅(qū)動(dòng)層的 kill_fasync 打斷,所以sleep沒有執(zhí)行完就重新進(jìn)入下一次循環(huán)了 修改代碼后解決該問(wèn)題 解決邏輯就

    2024年02月13日
    瀏覽(18)
  • 嵌入式linux項(xiàng)目之智能倉(cāng)儲(chǔ)(基于正點(diǎn)原子IMX6ULL開發(fā)板)

    嵌入式linux項(xiàng)目之智能倉(cāng)儲(chǔ)(基于正點(diǎn)原子IMX6ULL開發(fā)板)

    提示:該項(xiàng)目根據(jù)華清遠(yuǎn)見智能倉(cāng)儲(chǔ)項(xiàng)目改版,將他的A9開發(fā)板換成了自己的IMX6ULL開發(fā)板。同時(shí)等我將該項(xiàng)目整個(gè)流程完成之后,會(huì)為大家附上適配正點(diǎn)原子linux開發(fā)板的全部代碼 (代碼資料和視頻教程私聊) 視頻教程 相應(yīng)課程配套源碼 本人其他項(xiàng)目鏈接基于linux的智能倉(cāng)儲(chǔ)項(xiàng)

    2024年01月16日
    瀏覽(137)
  • 【IMX6ULL驅(qū)動(dòng)開發(fā)學(xué)習(xí)】03.設(shè)置IMX6ULL開發(fā)板與虛擬機(jī)在同一網(wǎng)段(設(shè)置開發(fā)板靜態(tài)IP)

    【IMX6ULL驅(qū)動(dòng)開發(fā)學(xué)習(xí)】03.設(shè)置IMX6ULL開發(fā)板與虛擬機(jī)在同一網(wǎng)段(設(shè)置開發(fā)板靜態(tài)IP)

    為什么要設(shè)置IMX6ULL與虛擬機(jī)通信? 因?yàn)橐言谔摂M機(jī)下編譯的文件傳到IMX6ULL開發(fā)板上運(yùn)行 設(shè)置好同一網(wǎng)段,可以互ping后,可以參考這篇博客,實(shí)現(xiàn)開發(fā)板與虛擬機(jī)的文件互傳 IMX6ULL開發(fā)板與虛擬機(jī)互傳文件 一、設(shè)置windows有線網(wǎng)卡 二、配置虛擬機(jī)雙網(wǎng)卡(原本有一個(gè)NAT網(wǎng)卡

    2024年02月07日
    瀏覽(50)
  • 正點(diǎn)原子imx6ull: QT視頻監(jiān)控項(xiàng)目使用yuyv格式的usb攝像頭

    正點(diǎn)原子imx6ull: QT視頻監(jiān)控項(xiàng)目使用yuyv格式的usb攝像頭

    前言 二、修改qt例程 1、添加yuyv轉(zhuǎn)rgb的函數(shù)到capture_thread.cpp 2、聲明屏幕緩沖變量 3、yuyv轉(zhuǎn)rgb的實(shí)際處理 ?三、測(cè)試 ? ? 1、開發(fā)板獲取攝像頭數(shù)據(jù)測(cè)試 ? ? 2、客戶端與服務(wù)器通信測(cè)試 四、修改后的正點(diǎn)原子video_server項(xiàng)目代碼 正點(diǎn)原子《I.MX6U 嵌入式 Qt 開發(fā)指南》教程使用的

    2023年04月21日
    瀏覽(23)
  • 基于IMX6ULL的智能車載終端項(xiàng)目(代碼開源)_imx6ull 開源 linux 項(xiàng)目 車載終端

    基于IMX6ULL的智能車載終端項(xiàng)目(代碼開源)_imx6ull 開源 linux 項(xiàng)目 車載終端

    1.4 車載終端:雜項(xiàng)功能 車載終端是一個(gè)非常復(fù)雜且常用的裝置,隨著電車與自動(dòng)駕駛技術(shù)的不斷升級(jí)迭代,需求也與日俱增!我們往往需要在終端上附加許許多多其他的功能,比如:智能家居聯(lián)動(dòng)、車內(nèi)環(huán)境監(jiān)測(cè)、天氣預(yù)報(bào)與網(wǎng)上瀏覽等! 作者強(qiáng)調(diào):考慮到篇幅有限,作者

    2024年04月08日
    瀏覽(35)
  • [imx6ull]開發(fā)板多種連網(wǎng)方式精講

    [imx6ull]開發(fā)板多種連網(wǎng)方式精講

    在使用IGKBoard開發(fā)板時(shí),因?yàn)闆]有網(wǎng)絡(luò),所以交叉編譯遇到了困難,于是我研究了兩種IGKBoard的連網(wǎng)方式,因?yàn)槲覀兊腎GKBoard有兩個(gè)以太網(wǎng)接口,并且有一個(gè)板載RealTek WiFi模塊,分別可以通過(guò)網(wǎng)線讓IGKBoard開發(fā)板連上網(wǎng),也可以通過(guò)WiFi讓開發(fā)板連接上網(wǎng),下面就讓我來(lái)對(duì)這兩種

    2024年02月16日
    瀏覽(24)
  • 【IMX6ULL驅(qū)動(dòng)開發(fā)學(xué)習(xí)】19.mmap內(nèi)存映射

    【IMX6ULL驅(qū)動(dòng)開發(fā)學(xué)習(xí)】19.mmap內(nèi)存映射

    mmap將一個(gè)文件或者其它對(duì)象映射進(jìn)內(nèi)存 ,使得應(yīng)用層可以直接讀取到驅(qū)動(dòng)層的數(shù)據(jù),無(wú)需通過(guò)copy_to_user函數(shù) 可以用于像LCD這樣的外設(shè), 需要讀寫大量數(shù)據(jù)的 一、應(yīng)用層 mmap用法: 用open系統(tǒng)調(diào)用打開文件, 并返回描述符fd. 用mmap建立內(nèi)存映射, 并返回映射首地址指針start. 對(duì)映

    2024年02月16日
    瀏覽(21)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包