当前位置:文档之家› 基于ARM的一种智能倒车系统

基于ARM的一种智能倒车系统

基于ARM的一种智能倒车系统
摘要:本文介绍了以m0为核心的arm lpc11c14的主要功能特性,给出了用lpc11c14和tm8835组成的电路来设计智能倒车系统的具体办法。

本智能倒车系统应用在带有电子稳定功能的汽车上。

关键词:lpc11c14;tw8835;can总线;智能倒车系统
中图分类号:tp31 文献标识码:a 文章编号:1674-7712 (2013)02-0046-02
随着人们生活水平的提高,汽车的普及率越来越高,越来越多的人享受汽车带来的便利,但开车容易,倒车,停车难。

面对日益拥挤的停车位,如何能安全方便地把车停在规定的停车位,对有些车主来讲是一个难题。

智能倒车系统能有效地解决这个难题。

其工作原理是从原车obd-ii数据检测口通过can总线协议读取原车方向盘角度传感器的方向盘角度数据,雷达数据,根据车长车宽规划出倒车的运动轨迹线,并将此轨迹线和倒车摄像头的影像合成,输出在屏幕上显示,以此来辅助车主轻松泊车。

一、系统设计
本系统主要由两大模块组成,一个是系统控制模块,一个是图像处理模块。

系统控制模块由nxp公司生产的lpc11c14完成,图像处理模块由techwell公司生产的tw8835完成。

(一)芯片的选型
本系统是车载系统,所以在选择芯片时要考虑到功耗问题,集成度高,体积小的芯片是首选,同时图像的清晰度也是考虑的重点。

lpc11c14是nxp公司生产的运行速度高达50mhz,采用cortex-m0内核的32位微处理器,m0系列的arm是目前市面上最小巧,最低功耗及最有能效的arm。

它内含32kb片内flash程序存储器、8kb 片内sram、可通过片内引导装载程序软件来实现在系统编程(isp)和在应用编程(iap),方便了系统的调试;集成了pmu (电源管理单元),能最大降低系统的功耗;集成了1路can控制器,简化了传统单片机外接can控制器和can收发器的复杂外围电路内部,外部只需要接一个can收发器就可以完成对can数据的读取;rom集成供can和canopen标准使用的初始化和通信的api函数,用户可直接调用,兼容can2.0a/b,传输速率高达1mbit/s,能为can设备节点提供强大的信息和数据处理能力,使得can通讯模块的设计更加方便。

因此lpc11c14完全满足了智能车系统的需求。

[1]
tw8835是techwell公司生产的功能强大的模拟视频解码器,支持tft显示。

它集成了高品质的2d梳状ntsc / pal / secam视频解码器,三重高速rgb的adc,高品质,多功能osd的缩放,内置10kb可编程字体ram和512显示ram;其图像视频处理能力包括任意缩放,全景缩放,图像镜像,图像调整和加强,黑色和白色加长等,在输入端,它支持丰富的cvbs,s-视频,分量视频,模拟rgb 组合以及数位的ycbcr/rgb输入。

在输出端,能输出rgb888信号。

此外触摸屏控制器的集成,led驱动控制器,pwm控制器及内置微处理器,是很多便携设备的首选。

[2]
(二)系统框图
本智能倒车的系统组成框图如图1所示。

由图1中可以看到,lpc11c14通过can总线检测汽车倒挡信号,当发现处于倒档位时,启动tw8835和ch7026,显示摄像头采集的倒车图像,然后再通过can总线读取汽车方向盘传感器的角度数据,雷达数据传递给tw8835,tw8835通过预制的轨迹图片叠加到输入的视频中输出。

cvbs输入的是摄像头的图像。

ch7026是电视信号编码ic,在本系统中主要功能是把tw8835输出的rgb888信号转换为cvbs信号,在液晶屏上显示出来。

tja1041是nxp公司生产的最先进的独立高速can收发器,它是can控制器和物理总线之间的驱动器接口,它可以提供对总线的差动发送能力和对can控制器的差动接收能力,其位速度高达1mb/s,与iso11898标准兼容。

tja1041有四种工作模式,正常模式,只听模式,睡眠模式和待机模式。

在正常模式下,收发器通过总线canh和canl发送和接收数据,差动接收器将总线上的模拟数据转换成数字数据输出到rxd,然后发送给lpc11c14进行处理。

如果lpc11c14长时间检测不到can信号,整个系统进入待机模式,整机掉电。

在待机模式下,tja1041收发器停止工作,只通过低功耗差动接收器来监控总线。

整个系统的功耗达到最低。

当can总线上有唤醒事件时,tja1041的inth脚变高对整个系统重新上电,再重新进入正常收发数据模式。

[3][4]
外接flash是用于存储tw8835的程序。

因为整个程序要调用大量的图片,轨迹图片和osd的图片,图片占用很多空间,所以外接
flash来存储。

tw8835用dma的方式对flash进行读写,就是把flash 的内容读取到tw8835的显示缓冲区进行操作。

tw8835内置mcu是支持spi dma读写操作的。

二、软件设计
软件流程图如图2所示
图2 软件流程图
由图2可以看到,系统定时检测是否有倒车信号,如果有就读取方向盘数据,然后发送数据给8835进行图像处理,没有的话,系统就进入待机状态。

整个系统软件是一个很大的工程。

包含按键处理,菜单处理,osd 显示,倒车轨迹的显示,信号的检测等,下面给出本智能倒车系统的can数据处理的部分源程序:
void can_receprocess(void)
{int16u temp_m=0x00;
if(g_recemsg_timer==0x01)//长时间没有接收到can数据,进入待机
{
g_standby_request = 0x01;
g_recemsg_timer = 0x00;
}
else if(g_recemsg_timer>0x01)
{
g_standby_request = 0x00; //正常工作
}
if(rece_msg[recemsg_doneindex%c_max_recemsg].msgobj!=0xff)
{
rece_msg[recemsg_doneindex%c_max_recemsg].msgobj=0xff;g_recemsg_timer = c_max_recemsg_timer; //can总线在通讯switch
(rece_msg[recemsg_doneindex%c_max_recemsg].mode_id);{//根据接收的不同数据进行不同的处理
case 0x7ff:
break;
case 0x7fe:
break;

}
}
}
三、结束语
本智能倒车系统目前已经经过测试,各项性能指标在同类产品中比较突出。

但是本系统只能用于带有电子稳定系统的汽车上,这是本系统的一个局限。

因为只有带有电子稳定系统的汽车,才能通过
can总线检测到方向盘的数据。

如果克服了这个问题,这个系统的应用性会扩大很多。

这是本文后续关注的重点。

参考文献:
[1]lpc11cx2/cx4 32-bit arm cortex-m0 microcontroller;
16/32 kb flash,8 kb sram,c-can rev.3[2011-6-27].http:
//
[2]tw8835 premininary datasheet.http://.
[3]tja1041a high-speed can transceiver
rev.04[2008.7.29].http://
[4]ch7025/ch7026 datasheet rev.1.23 [2010-3-31]。

相关主题