教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 文库大全 > 专业资料 >

ARM 基于嵌入式系统 倒车雷达的设计(4)

来源:网络收集 时间:2026-09-06
导读: V4L定义程序见附件。有了 V4L数据结构定义,我们就可以调用V4L库文件,实现对摄像头的初始化、打开摄像头、采集图像和关闭摄像头的操作。采集程序中定义了如下的函数,以实现前面讲到的功能。 Intinit_videoin(stru

V4L定义程序见附件。有了 V4L数据结构定义,我们就可以调用V4L库文件,实现对摄像头的初始化、打开摄像头、采集图像和关闭摄像头的操作。采集程序中定义了如下的函数,以实现前面讲到的功能。

Intinit_videoin(struetvdin*vd,ehar*deviee, intwidth,int

height, intgrabmethod);初始化摄像头设备。*vd包含了之前定义的数据结构 中的基本信息。另外还要对摄像头采集图像的大小、采集模式等参数进行赋值。 Int v41Grab(struct vdin *vd,char*filename):采集图像主程序。

*filename为图像的文件名,我们可以通过对文件名的设置来确定图像保存的位

In close_v41(struct vdin*vd);关闭摄像头

Int get_jpegsize(unsigned char*buf,int insize);采集图像的大小。 Void exit_fata(ehar*message);错误信息。

Int v41Grab(struct vdin*vd,Char*filename)是用来实现图像的采集和保存的,具体见附件。

首先,我们需要定义几个参数,如下:

FILE*fp:定义一个文件类型指针,指向我们采集到的图像文件

Int len:定义一个整型变量,记录从内存中读取的数据量

Int size:定义一个整型变量,指明一帧图像的数据量

Int erreur=O:定义一个整型变量,指明运行时的错误返回值

Int jpegsize:定义一个整型变量,指明我们需要的图像大小。

接着我们调用read(vd一)fd,vd一)pframebuffer,Size)函数,把存放于图像缓冲区的数据读入到指定的临时文件中,之后根据我们对图像的大小、亮度、 对比度等要求转化之前采集到的图像数据,最后我们打开一个文件,把图像数 据写入到该文件中并保存。

3.2.6 LCD显示的程序设计

LCD显示器由控制器和256色的彩色显示器组成。通过直接操作显示缓冲区的内容。LCD控制器用于传输显示数据并产生控制信号,如VFRAME、VL工NE、VCLK和VM。除了控制信号,还有显示数据的数据端口VD〔7:川。LCD控制器包含REGBANK、LCDCDMA、VIDPRCS和TIMEGEN四部分。REGBANK具有18个可编程寄存器,用于配置LCD控制器。LCDCDMA为专用DMA,它可自动地将显示数据从帧的内存中传到LCD驱动器。通过专用DMA,可在不需要CPU介入的情况下显示数据。本系统采用的LCD分辨率为320*240,工作在256色的彩色显示模式。在该模式,显示缓冲区中的一个字节数可代表LCD上一个点的颜色信息,其所需要

ARM 基于嵌入式系统 倒车雷达的设计 论文

的显示缓冲区大小为320*240*l个字节。

依照液晶屏时序设置linuX系统相关驱动文见,其参数如下:

(1)添加头文件

#inelude<asm/areh/fb.h)

(2)添加初始化s3c24lo的LCD控制器时所需的参数(修改文件:

1inux/drivers/video/s3e24lofb.e)

1、LCD设备驱动的具体结构及函数的编写

具体要编写相关平台的驱动文件为:s3c2410fb.h和s3c241Ofb一

(1)S3c2410fb.h:主要为声明结构体和宏定义,主要声明下面的三个结构体:

struetPxafb_led_reg

struetPxafb_info

struetPxafb_maeh_info

(2)S3c2410fb.c:针对帧缓冲设备驱动程序的5个1二作部分进行结构体声明及

函数定义,两结构体及主要函数如下:

Staticstruetfb_opspxafb_ops{}

主要函数 :staticintpxafb_setColreg//设置颜色表函数

StatiCintpxafb_eheek_var//检查可变参数

staticintPxafb_set夕ar刀设置可变参数

statiCintpxafb_blank//空白显示设定

5tatiestruetdeviee_driverpxafb_driver{}

主要函数 :int_initPxafb_probe为LCD设备探测函数,此函数调用

前面所定义的函数,完成对LCD硬件的初始化,对fb_info参数的填充、申请缓

冲区并注册到缓冲设备。

除以上结构体及其成员函数还有如下主要函数:

Int dev init53e2410fbinit//设备驱动注册

Static int pxafb_freq_transition//LeD时钟参数修改函数

Static inline unsignedintget夕ed//取得像素时钟

Static inline void_pxafb_baeklight_power//设定LCD背光电源

Static inline void_pxafb_led_power//设定LCD电源

Static void pxafb_setup_gpio//挂起10端口

Static void pxafb_enable_eontroller//使能LCD控制器

Static void pxafo_disable--eontroller//使停LCD控制器

2、语音录放部分软件

ISD256O虽然提供有地址输入线,但它的内部信息段的地址一般无法读出。

…… 此处隐藏:512字,全部文档内容请下载后查看。喜欢就下载吧 ……
ARM 基于嵌入式系统 倒车雷达的设计(4).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wenku/53195.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)