CN106851077A - 基于H3在Linux下驱动OV5640摄像头的方法 - Google Patents

基于H3在Linux下驱动OV5640摄像头的方法 Download PDF

Info

Publication number
CN106851077A
CN106851077A CN201710217055.1A CN201710217055A CN106851077A CN 106851077 A CN106851077 A CN 106851077A CN 201710217055 A CN201710217055 A CN 201710217055A CN 106851077 A CN106851077 A CN 106851077A
Authority
CN
China
Prior art keywords
cameras
vfe
fmt
mbus
video
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201710217055.1A
Other languages
English (en)
Inventor
杨斌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou Fun Mdt Infotech Ltd
Original Assignee
Guangzhou Fun Mdt Infotech Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guangzhou Fun Mdt Infotech Ltd filed Critical Guangzhou Fun Mdt Infotech Ltd
Priority to CN201710217055.1A priority Critical patent/CN106851077A/zh
Publication of CN106851077A publication Critical patent/CN106851077A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/50Constructional details
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/66Remote control of cameras or camera parts, e.g. by remote control devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Studio Devices (AREA)

Abstract

本发明公开了一种基于H3在Linux下驱动OV5640摄像头的方法,包括如下步骤:打开OV5640摄像头所对应的设备文件/dev/videoX;为OV5640摄像头驱动添加读写寄存器sys文件系统接口;初始化OV5640摄像头,添加自动对焦功能;读取OV5640摄像头的能力值;设置视频输入源:设置VFE驱动默认输入源的初始值为0;设置数据流类型和格式:设置VFE支持的视频格式为OV5640摄像头的格式;初始化内存映射分配缓冲区;查询缓冲区大小;映射设备缓冲区到应用空间mmap;添加缓冲区到输入队列;启动视频流,开始采集数据,直至采集数据停止,停止视频流,停止采集数据;释放内存映射;关闭设备文件/dev/videoX。本发明填补了H3芯片所运行的Linux操作系统中在支持OV5640这种摄像头的软件驱动模块方面的空白。

Description

基于H3在Linux下驱动OV5640摄像头的方法
技术领域
本发明涉及一种摄像头驱动方法,具体涉及一种基于全志H3 ARM处理器在Linux操作系统下驱动OV5640摄像头的方法。
背景技术
全志H3ARM芯片是一种被广泛应用于各种嵌入式平台(比如车载电子设备,现场监控设备,自动贩卖机,广告机,人机交互系统等等)的核心部件。这些平台要正常工作时必须运行操作系统(比如Linux,Android等)。操作系统就是H3芯片和系统各硬件设备(比如摄像头,显示器等)之间沟通的桥梁,而操作系统中起到沟通桥梁作用的就是硬件设备的软件驱动模块。没有合适硬件设备的软件驱动模块,硬件设备无法正常工作。目前H3芯片所运行的Linux操作系统中尚无支持OV5640这种摄像头的软件驱动模块。
发明内容
针对现有技术的不足,本发明旨在提供一种基于H3在Linux下驱动OV5640摄像头的方法,填补H3芯片所运行的Linux操作系统中在支持OV5640这种摄像头的软件驱动模块方面的空白。
为了实现上述目的,本发明采用如下技术方案:
基于H3在Linux下驱动OV5640摄像头的方法,包括如下步骤:
S1打开OV5640摄像头所对应的设备文件/dev/videoX;
S2为OV5640摄像头驱动添加读写寄存器sys文件系统接口;
S3初始化OV5640摄像头,添加自动对焦功能;
S4读取OV5640摄像头的能力值;
S5设置视频输入源:设置VFE驱动默认输入源的初始值为0;
S6设置数据流类型和格式:设置VFE支持的视频格式为OV5640摄像头的格式;
S7初始化内存映射分配缓冲区;
S8查询缓冲区大小;
S9映射设备缓冲区到应用空间mmap;
S10添加缓冲区到输入队列;
S11启动视频流,开始采集数据,直至采集数据停止,停止视频流,停止采集数据;
S12释放内存映射;
S13关闭设备文件/dev/videoX。
进一步地,步骤S6中,VFE支持的视频格式的视频格式包括:
V4L2_MBUS_FMT_YUYV8_2X8;
V4L2_MBUS_FMT_YVYU8_2X8;
V4L2_MBUS_FMT_UYVY8_2X8;
V4L2_MBUS_FMT_VYUY8_2X8。
本发明的有益效果在于:本发明填补了H3芯片所运行的Linux操作系统中在支持OV5640这种摄像头的软件驱动模块方面的空白。
附图说明
图1为本发明的实施流程图。
具体实施方式
以下将结合附图对本发明作进一步的描述,需要说明的是,本实施例以本技术方案为前提,给出了详细的实施方式和具体的操作过程,但本发明的保护范围并不限于本实施例。
如图1所示,基于H3在Linux下驱动OV5640摄像头的方法,包括如下步骤:
S1打开OV5640摄像头所对应的设备文件/dev/videoX。
S2为OV5640摄像头驱动添加读写寄存器sys文件系统接口。步骤S2的设置为调试本驱动模块提供了一个便捷的接口。
S3初始化OV5640摄像头,添加自动对焦功能。通过步骤S3的设置增加了操作系统能控制摄像头的功能。
S4读取OV5640摄像头的能力值VIDIOC_QUERYCAP。
S5执行设置视频输入源VIDIOC_S_INPUT,并设置VFE驱动默认输入源的初始值为0。通过本步骤,可以避免由于逻辑错误导致系统内核崩溃,进而影响整个平台的正常工作。
S6执行设置数据流类型和格式VIDIOC_S_FMT,并设置VFE支持的视频格式为OV5640摄像头的格式;
S7初始化内存映射分配缓冲区VIDIOC_REQBUFS;
S8查询缓冲区大小VIDIOC_QUERYBUF;
S9映射设备缓冲区到应用空间mmap;
S10添加缓冲区到输入队列VIDIOC_QBUF;
S11启动视频流,开始采集数据VIDIOC_STREAMON;持续采集数据直至采集数据停止,停止视频流,停止采集数据VIDIOC_STREAMOFF;
S12释放内存映射munmap;
S13关闭设备文件/dev/videoX。
进一步地,步骤S6中,VFE支持的视频格式的视频格式包括:
V4L2_MBUS_FMT_YUYV8_2X8;
V4L2_MBUS_FMT_YVYU8_2X8;
V4L2_MBUS_FMT_UYVY8_2X8;
V4L2_MBUS_FMT_VYUY8_2X8。
对于本领域的技术人员来说,可以根据以上的技术方案和构思,作出各种相应的改变和变形,而所有的这些改变和变形都应该包括在本发明权利要求的保护范围之内。

Claims (2)

1.基于H3在Linux下驱动OV5640摄像头的方法,其特征在于,包括如下步骤:
S1打开OV5640摄像头所对应的设备文件/dev/videoX;
S2为OV5640摄像头驱动添加读写寄存器sys文件系统接口;
S3初始化OV5640摄像头,添加自动对焦功能;
S4读取OV5640摄像头的能力值;
S5设置视频输入源:设置VFE驱动默认输入源的初始值为0;
S6设置数据流类型和格式:设置VFE支持的视频格式为OV5640摄像头的格式;
S7初始化内存映射分配缓冲区;
S8查询缓冲区大小;
S9映射设备缓冲区到应用空间mmap;
S10添加缓冲区到输入队列;
S11启动视频流,开始采集数据,直至采集数据停止,停止视频流,停止采集数据;
S12释放内存映射;
S13关闭设备文件/dev/videoX。
2.根据权利要求1所述的方法,其特征在于,步骤S6中,VFE支持的视频格式的视频格式包括:
V4L2_MBUS_FMT_YUYV8_2X8;
V4L2_MBUS_FMT_YVYU8_2X8;
V4L2_MBUS_FMT_UYVY8_2X8;
V4L2_MBUS_FMT_VYUY8_2X8。
CN201710217055.1A 2017-04-01 2017-04-01 基于H3在Linux下驱动OV5640摄像头的方法 Pending CN106851077A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710217055.1A CN106851077A (zh) 2017-04-01 2017-04-01 基于H3在Linux下驱动OV5640摄像头的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710217055.1A CN106851077A (zh) 2017-04-01 2017-04-01 基于H3在Linux下驱动OV5640摄像头的方法

Publications (1)

Publication Number Publication Date
CN106851077A true CN106851077A (zh) 2017-06-13

Family

ID=59142218

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710217055.1A Pending CN106851077A (zh) 2017-04-01 2017-04-01 基于H3在Linux下驱动OV5640摄像头的方法

Country Status (1)

Country Link
CN (1) CN106851077A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115185711A (zh) * 2022-09-06 2022-10-14 湖北芯擎科技有限公司 基于虚拟摄像头的数据交互方法、装置、电子设备及介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105391985A (zh) * 2015-12-07 2016-03-09 哈尔滨工业大学深圳研究生院 一种基于嵌入式Linux的视频监控系统与方法
CN106027884A (zh) * 2016-05-17 2016-10-12 福建星网锐捷通讯股份有限公司 一种android设备使用USB摄像头的方法及系统
CN106412517A (zh) * 2016-10-20 2017-02-15 浙江工业大学 一种远程高清视频监控及开锁系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105391985A (zh) * 2015-12-07 2016-03-09 哈尔滨工业大学深圳研究生院 一种基于嵌入式Linux的视频监控系统与方法
CN106027884A (zh) * 2016-05-17 2016-10-12 福建星网锐捷通讯股份有限公司 一种android设备使用USB摄像头的方法及系统
CN106412517A (zh) * 2016-10-20 2017-02-15 浙江工业大学 一种远程高清视频监控及开锁系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
匿名: "V4L2编程", 《HTTP://WWW.CNBLOGS.COM/CHERO/ARCHIVE/2012/12/05/2804148.HTML》 *
守候心田: "Camera driver&V4L2驱动架构介绍", 《HTTP://BLOG.CHINAUNIX.NET/UID-27411029-ID-3498738.HTML》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115185711A (zh) * 2022-09-06 2022-10-14 湖北芯擎科技有限公司 基于虚拟摄像头的数据交互方法、装置、电子设备及介质
CN115185711B (zh) * 2022-09-06 2023-10-10 湖北芯擎科技有限公司 基于虚拟摄像头的数据交互方法、装置、电子设备及介质

Similar Documents

Publication Publication Date Title
KR102219545B1 (ko) 소프트웨어 지원 콘텍스트 스위치를 갖는 미드-쓰레드 선점
US20120026342A1 (en) Electronic system communicating with image sensor
KR20080007166A (ko) 데이터 처리 장치
US9336563B2 (en) Buffer underrun handling
WO2011085029A1 (en) Parameter fifo
US20200084372A1 (en) Method, and apparatus for clock synchronization, device, storage medium and vehicle
TWI631531B (zh) 利用包括動態演示的頁面層的合併提供內容的系統及方法
AU2011203640B2 (en) User interface unit for fetching only active regions of a frame
CN108062234B (zh) 一种通过mailbox协议实现服务器主机访问BMC FLASH的系统及方法
WO2018103022A1 (zh) 帧缓存实现方法、装置、电子设备和计算机程序产品
CN106851077A (zh) 基于H3在Linux下驱动OV5640摄像头的方法
TWI594177B (zh) 利用自動生成空白提供內容的系統及方法
EP2709020A1 (en) System and method to arbitrate access to memory
CN102104508A (zh) 基于m模块的lxi设备中的m模块ll驱动层实现方法
CN113246858B (zh) 车辆行驶状态图像生成方法、设备和系统
CN107807840A (zh) 一种应用于虚拟机网络的设备直通方法以及装置
US8473968B2 (en) Driving method and application thereof
US20140146067A1 (en) Accessing Configuration and Status Registers for a Configuration Space
CN111930628B (zh) 一种安全级显示模块图形组态仿真系统及其仿真方法
WO2021124729A1 (ja) 表示制御システム、移動体、表示制御方法、表示装置、表示方法及びプログラム
CN109783407B (zh) 一种基于fpga实现pc与显卡桥接的装置及方法
Benke et al. Software solution stack for data transfer on a frame grabber platform
US11816777B2 (en) Data processing systems
EP2682870B1 (en) Data control system, data control method, and data control program
CN110515868A (zh) 显示图像的方法和装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20170613

RJ01 Rejection of invention patent application after publication