搜索
您的当前位置:首页正文

倒车雷达嵌入式系统设计毕业论文

来源:爱go旅游网
. .. .

倒车雷达嵌入式系统设计毕业论文

目录

1、 绪论 .................................................................... 0 1.1 概述 .................................................................. 0 1.2 倒车显示雷达的发展状况................................................. 1

1.2.1倒车雷达的发展状况 .............................................. 1 1.2.2汽车电器网络化发展 .............................................. 3 1.2.3倒车雷达存在的问题 .............................................. 5

1.3 设计的容和目的 ........................................................ 5 2、 倒车雷达显示系统需求分析 ................................................. 6 2.1 倒车雷达显示系统分析 .................................................. 6

2.1.1超声波测距的基本原理 ............................................ 6 2.1.2系统总线的选取 .................................................. 8

2.2 C-MBUS简介 ........................................................... 11

2.2.1概述 ........................................................... 11 2.2.2总线的特点 ..................................................... 12

3、 系统设计与硬件电路的实现 ................................................ 12 3.1 系统总体方案设计 ..................................................... 13

3.1.1系统方案的选择 ................................................. 13 3.1.2系统方案总述 ................................................... 13

3.2 基于GM3101倒车雷达模块 ............................................... 14

3.2.1 GM3101芯片概述 ................................................ 14 3.2.2 GM3101工作特征及封装 .......................................... 15 3.2.3 GM3101芯片功能及应用 .......................................... 18 3.2.4 GM3101主要外围电路 ............................................ 22

3.3 C-MBUS专用通信芯片 ................................................... 25

3.3.1 CMT001总线从机芯片 ............................................ 25 3.3.2 CMT100总线主机芯片 ............................................ 27

3.4 ISD4004-8M语音录放电路 ............................................... 28

3.4.1 ISD4004-8M芯片概述 ............................................ 28

.参考资料.

. .. .

3.4.2 语音报警电路 .................................................. 28

3.5 系统电路解析及工作原理................................................ 29

3.5.1上位机电路解析 ................................................. 29 3.5.2下位机电路解析 ................................................. 35 3.5.3工作原理 ....................................................... 39

3.6 实验安装及调试 ....................................................... 39

3.6.1 PCB图 ......................................................... 40 3.6.2 焊接 .......................................................... 42 3.6.3 调试过程及方法 ................................................ 43

4、 软件设计及调试.......................................................... 44 4.1 系统软件设计整体介绍 ................................................. 44 4.2 上位机软件设计 ....................................................... 46

4.2.1 上位机程序主流程图 ............................................ 46 4.2.2 雷达模块程序设计 .............................................. 47 4.2.3 上位机接收数据程序设计 ........................................ 48 4.2.4 上位机发送数据程序设计 ........................................ 50

4.3 下位机软件设计 ....................................................... 51

4.3.1 下位机程序主流程图 ............................................ 51 4.3.2 下位机接收数据程序设计 ........................................ 52 4.3.3 LCD液晶显示程序设计 ........................................... 53 4.3.4 语音报警程序设计 .............................................. 54

4.4 软件调试简介 ......................................................... 56 5、 系统方案的扩展.......................................................... 56 6、 总结 ................................................................... 57 参考文献 ................................................................... 58 谢辞 ....................................................................... 59 附录一 ..................................................................... 60 附录二 ..................................................................... 68 附录三 ..................................................................... 69 附录四 ..................................................................... 70

.参考资料.

. .. .

1、 绪论

1.1 概述

在现代化社会了,汽车是不可或缺的交通运输工具。随着世界经济的发展,汽车工业化的出现,汽车的社会拥有量有着显著的变化。它给我们的生活带来了极大的方便。同时汽车在城市的拥有量达到一个空前的高度。

随着近些年来我国国民经济的快速发展,中国人民大学国际学院副院长甬军

判断,预计我国2009年城市化率能达到47%,2010年将达到50%。根据专家预测,到本世纪的中叶,我国的城市化率将提高到75%左右。这就意味着伴随着这一进程,大都市圈、群、带等城市化形式将相继出现,城市人口会不断地膨胀扩大,加之大城市私家车饱有量的不断提高,这给汽车安全带来了严重的问题。

图1.1 2001—2009年中国汽车销量及增长率图

我国开始进入私家车时代。加之我国城市化率的不断提高,城市人口的不断增长,我国的汽车数量正逐年增加,图1.1显示我国汽车的数量增加情况。同时汽车驾驶人员中非职业汽车驾驶人员的比例也逐年增加。在公路、街道、停车场、

.参考资料.

. .. .

车库等拥挤、狭窄的地方倒车时,驾驶员既要前瞻,又要后顾,稍微不小心就会发生追尾事故。原来不是问题的倒车也逐渐变成了问题。据相关调查统计,15%的汽车碰撞事故是因倒车时汽车的后视能力不良造成的。因此,增加汽车的后视能力,研制汽车后部探测障碍物的倒车雷达便成为近些年来的研究热点。安全避免障碍物的前提是快速、准确地测量障碍物与汽车之间的距离。目前用于辅助司机倒车的装置主要有:语音告警装置、后视系统以及倒车雷达等。语音告警装置用于播放提示语(“倒车请注意!”),以提醒车后的行人注意避让正在倒车的汽车。这种装置价格便宜,使用方便,其缺点是只能对车后的行人起告警作用,对于其他障碍物则不起作用,所以其应用围有限。后视系统是由视频捕捉装置和视频播放装置组成,通过后视系统司机可以直观地看到车后的障碍物,消除视觉盲区。由于这类装置的价位较高,目前还没有普遍推广使用。本文设计分析的基于新型总线和IC的汽车倒车雷达系统即是根据这一实际情况而应运而生的,具有非常高的性价比。系统运用微计算机技术与超声波的测距技术、传感器技术等的交叉融合,进行优化设计,通过液晶显示障碍物与汽车的距离,并根据其距离远近实时发出报警等级。但其主流产品仅仅是独立的控制单元, 无法与汽车数字化信息平台接轨。围绕汽车电器网络化实现倒车雷达数据总线传递信息共享,具有良好的发展前景。本文应用的新型总线结构C-MBUS总线即能很好完成网络化的重要任务。

1.2 倒车显示雷达的发展状况

1.2.1倒车雷达的发展状况

倒车雷达是汽车泊车或者倒车时的安全辅助装置,能以声音或者更为直观的视频显示告知驾驶员周围障碍物的情况,解除了驾驶员泊车、倒车和起动车辆时前、后、左、右探视所引起的困扰,并帮助驾驶员扫除了视野死角和视线模糊的缺陷,提高驾驶的安全性,如图1.2所示。

.参考资料.

. .. .

图1.2 汽车防撞报警器

通常,倒车雷达由超声波传感器(俗称探头)、控制器、和显示器(或蜂鸣器)等部分构成。倒车雷达一般采用超声波测距原理,在控制器的控制下,由传感器发射超声波信号,当遇到障碍物时,产生回波信号,传感器接收到回波信号后经控制器进行数据处理 判断出障碍物的位置,由显示器显示距离并发出其他警示信号,及时示警。从而使驾驶者倒车时做到心中有数,使倒车变得轻松。

经过多年的发展,不论从结构外观上,还是从性能价格上,倒车雷达系统都进行了的技术改良,可以说这六代产品都各有特点。现在,车辆上使用较多的是数码显示、荧屏显示和魔幻镜倒车雷达这三种。

第一代:倒车喇叭提醒。“倒车请注意!”想必不少人还记得这种声音,这就是倒车雷达的第一代产品 ,现在只有很小一部分商用车还在使用。只要司机挂上倒档,它就会响起,提醒周围的人注意,从某种意义上说,它对司机并没有提供直接的帮助,不是真正的倒车雷达。

第二代:轰鸣器提示。这是倒车雷达系统的真正开始。倒车时,如果车后1.8~ 1.5 m 处有障碍物,轰鸣器就会开始工作。轰鸣声越急,表示车辆离障碍物越近。但它没有语音提示,也没有距离显示,虽然司机知道有障碍物,但不能确定障碍物离车有多远,对驾驶员的帮助有限。

第三代:数码波段显示。相比第二代、第三代倒车雷达进步了很多,可以显示车后障碍物车体的距离。如果是物体,在1.8 m开始显示;如果是人,在0.9m左右的距离开始显示。

这一代产品有两种显示方式,数码显示产品显示距离数字,而波段显示产品

.参考资料.

. .. .

由三种颜色来区别:绿色代表安全距离,表示障碍物离车体距离有0.8 m以上;黄色代表警告距离,表示离障碍物的距离只有0.6 ~0.8 m;红色代表危险距离,表示离障碍物只有不到 0.6 m的距离,你必须停止倒车。它把数码和波段组合在一起比较实用,但安装在车不太美观。

第四代:液晶荧屏显示。这一代产品有一个质的飞跃,特别是荧屏显示开始出现动态显示系统。不用挂倒档,只要发动汽车,显示器上就会出现汽车图案以及车辆周围障碍物的距离。动态显示,色彩清晰漂亮,外表美观。可以直接粘贴在仪表盘上,安装很方便 不过液晶显示器外观虽精巧,但由于灵敏度较高,抗干扰能力不强,所以发生误报的情况也较多。

第五代:魔幻镜倒车雷达。第五代倒车雷达结合了前几代产品的优点,采用了最新仿生超声雷达技术,配以高速电脑控制,可全天候准确地测知 2 m以的障碍物,并以不同等级的声音提示和直观的显示提醒驾驶员。魔幻镜倒车雷达把后视镜、倒车雷达、免提、温度显示和车空气污染显示等多项功能整合在一起,并设计了语音功能,是目前市面上比较先进的倒车雷达系统。因为其外形就是一块倒车镜,所以可以不占用车空间,直接安装在车倒视镜的位置而且颜色款式多样,可以按照个人需求和车装饰选配。

第六代:整合影音系统。第六代倒车雷达在第五代的基础上新增了许多功能,产品功能更加强大,是专门为高档轿车生产的,从外观上来看,这套系统比第五代产品更为精致典雅;从功能上来看,它除了具备第五代产品的所有功能之外,还整合了高档轿车具备的影音系统,可以在显示器上观看DVD,影像等。

1.2.2汽车电器网络化发展

当今对汽车安全、环保、节能、舒适等方面性能的高要求,使得汽车电子技术得到了飞速的发展,已经从单个部件电子化发展到总成电子化、模块化。车用电控系统的增加,不仅使连接线路迅速膨胀,线束越来越复杂,布线越来越困难,增加了汽车设计、装配、维护的负担,而且线路以及接头的增加也引起了安全问题的巨大隐患。因此,在电子装置不断增加的情况下,减少线束成为一个必须要解决的问题,基于串行信息传输的网络技术成为一种必然的选择。整车模块综合化形成的控制器网络系统的出现使汽车电控技术的发展进入到一个全新的阶段。

.参考资料.

. .. .

网络总线技术对汽车电控系统的益处有很多:可以使汽车电子系统具有智能可扩充性;实现汽车电器点对点信息传递方式向数据传递方式的转变;有效实现汽车电器件的故障自我诊断和纠错功能;有效实现汽车电器及电控单元的数据共享;网络节点及功能软件的可扩容性,方便汽车功能提升和改进;实现汽车操纵及传动的电器化控制和传递。网络总线技术的使用还可大大提高汽车电器控制的安全性、可靠性,降低汽车电子电控系统的维护保养成本和故障率。

网络总线起源于上世纪80年代,在近20多年的时间里出现了许多种类的网络总线,但经过时间的选择种类数量已经大量减少,现在剩下几种主流的网络总线,包括LIN、CAN、MOST、FlexRay等。按照性能由低到高,目前车用总线网络划分为三级,即A、B和C三级。A级网络主要用于传输速率、实时性、可靠性要求较低,一般通讯速率在1kbps~10kbps,代表的有LIN总线网络。B级网络用于对数据传输速度要求较高的系统,代表的有CAN、J1850,通讯速率一般在10kbps~250kbps之间,属于中速总线。C级网络用于高速、实时性、可靠性要求较高的系统,代表的有CAN、FlexRay、MOST、IBD-1394,通讯速率一般在500kbps以上,属于高速总线。

CAN(Controller Area Network)总线是德国博世公司为解决现代汽车众多的控制与测试仪器之间的数据交换而开发的一种串行数据通信协议。它可采用双绞线、同轴电缆或光纤作为通信介质,通信速率可达1Mbit/s,通信距离可达10km,通信节点数可达110个,具有很高的可靠性,在汽车测控领域得到了广泛应用。它将汽车上各种信号的接线只用2 根简洁的电缆线取代,汽车上的各种电子装置通过CAN 控制器挂到这2 根电缆上,设备之间利用电缆进行数据通讯和数据共享,从而大大减少了汽车上的线束。而本文引用到的C-MBUS是一种低成本的、一点对多点的总线通讯系统,具有通讯设备容量大(硬件400点)、通讯速率高(9600bps)、成本低、设计简单、布线简便(无极性可任意分支,普通双绞线)、抗干扰能力强、通过总线可提供高达800mA电源的特点。系统具有自动登录功能,此功能可完成设备的自动登录、结点中断报警等双向可中断的先进的通讯功能。总线隔离设备具有总线故障隔离性能,保证部分总线发生故障时,其它部分仍然正常通讯。以该芯片为核心构成的总线通讯系统可广泛应用于智能家庭控制网络、工业现场控制、消防报警及联动网络、小区智能化控制网络、三

.参考资料.

. .. .

表集抄、中央空调控制系统等。

1.2.3倒车雷达存在的问题

超声波倒车雷达运用超声波测距原理结合单片机或IC的智能技术作为一种汽车倒车安全辅助装置具有结构简单、智能判断不受可见光限制等特点应用到了轿车当中,但现有的倒车雷达还仍然存在如下一些问题。

(1)最大有效探测距离的问题偏小,等到报警后再减速就很紧,感到预警时间不充足;

(2)多数成品倒车雷达的显示速度因为考虑到抗干扰等因素,显示更新的速度约0.2-0 4 s,算上从倒车雷达发现目标到发出警报将需要1-2s,这时车已经行使了一段距离,这显然存在反应迟钝;

(3)多数倒车雷达的超声波传感器2-3个,单个传感器的水平探测角度约60-70度,这样势必造成2-3个盲区,而增加传感器的个数不但增加成本,而且提高故障率;

(4)以往关于倒车雷达的研究都采用的是部容易购买到的专用元件作为附加电路,使其难以推广;

(5)主流产品仅仅是独立的控制单元, 无法与汽车数字化信息平台接轨,同时由于客观条件的限制,目前我国的整车制造厂和汽车电子电器厂几乎没有涉及到汽车电器网络化设计的领域,选择一个合理的总线实现汽车电器的网络化非常必要。

1.3 设计的容和目的

设计的主要研究容就是根据雷达测距的原理,选择一块集成度高的IC来完成超声波脉冲测距的倒车雷达。使它能够在汽车以较低的速度进行倒车的过程中,识别出车后部的障碍物,测量车与障碍物之间的距离并显示出来,在发生碰撞前,对驾驶员发出报警。同时引入一种新型总线C-MBUS来实现雷达的网络通信。

.参考资料.

. .. .

本设计可望成为驾驶员特别是货车以及公共汽车驾驶员的好帮手,可有效的减少和避免那些视野不良的大型汽车(如冷藏车、集装箱车、垃圾车、食品车、载货车、公共汽车等)的倒车交通事故,另外还特别适用于夜间辅助倒车、倒车入库以及进入停车场停车到位,本设计性能优良,对提高我国汽车工业实际水平,具有较大的意义。

2、 倒车雷达显示系统需求分析

2.1 倒车雷达显示系统分析

2.1.1超声波测距的基本原理

超声波一般指频率在20KHz以上的机械波,具有穿透性强,衰减小,反射能力强等特点。工作时,超声波发射器不断发射出一系列连续脉冲,给测量逻辑电路提供一个短脉冲。最后由信号处理装置对接收的信号依据时间差进行处理,自动计算出车与障碍物之间的距离。超声波测距原理简单,成本低,制作方便,但其传输速度受天气影响较大,不能精确测距;另外,超声波能量与距离的平方成正比衰减,因此,距离越远,灵敏度越低,从而使超声波测距方式只适用于较短距离。

一般超声波发生器部结构有两个压电晶片和一个共振板。当它的两级外加脉冲信号,其频率等于压电晶片的固有振荡频率时,压电晶片将会发生共振,并带动共振板振动,便产生超声波。超声波测距的基本原理其实很简单,同声纳回声定位法的原理是基本相同的,说得高级一些就是多普勒效应,说得简单就是回声效应。超声波测距也时基于这种回音效应,发生器不断发射出40KHz超声波,其总宽度为发射超声波与接收超声波的时间间隔,被测物距越远,脉冲宽度越大,输出脉冲个数与被测距离成正比。超声波测距的方法有多种,有相位检测法、声波幅值检测法、渡越时间检测法三种。相位检测的精度高,但检测围有限;声波幅值检测易受反射波的影响;渡越时间检测工作方式简单、直观,在硬件控制和软件设计容易实现。本文选择的国腾微电子公司生产的GM3101倒车雷达专用控制芯片,它的设计采用的是超声波往返时间检测法,其测量原理图如图2.1所示。

.参考资料.

. .. .

图2.1 超声波测量原理图

每个超声波传感器收发一体,在发射时刻,在超声波发射器端输入40KHZ脉冲串,同时开始计时,脉冲信号经过超声波部的振子,振荡产生机械波,并通过空气介质传播到被测面,超声波在介质中传播,途中碰到障碍物后反射回来,超声波接收器收到反射波就立即停止计时。超声波经气体介质的传播到返回到传感器的时间,即为往返时间。往返时间与气体介质中的声速相乘,就是声波传输的距离。而所测距离为声波传输距离的一半,其关系式可由公式(2-1)表示:

S=1/2×(c×t) (2-1)

(2-1)式中,S为待测距离,c为超波的声速,t为往返时间。采用微处理器脉冲计数的方法,可以精确地测出t的值。假设微处理器的周期为T,则t=N×T,则探测距离可由公式(2-2)表示:

S=1/2×(c×t)=1/2×(c×NT) (2-2)

由于超声波也是一种声波,其声速v与温度T有关。表2.1列出了几种不同温度下的声速。使用时,若温度变化不大,则可视声速基本不变;若测距精度要求很高,则应通过温度补偿法予以校正。

表2.1 声速与温度的关系

.参考资料.

. .. .

温度/℃ 声速/m/s -30 313 -20 319 -10 325 0 331 10 338 20 344 30 349 100 386 一般情况下,利用v=331+0.60T进行温度补偿,以适应不同温度下的工作要求。表2.2给出补偿后声速与温度的关系。可以看出,0℃以下时声速值完全吻合;0℃以上最大误差不超过5%。

表2.2 补偿后声速与温度的关系

温度/℃ 331+0.60T -30 313 -20 319 -10 325 0 331 10 338 20 344 30 349 100 386 由上述分析可知,温度测量的精度不仅直接影响了速度的测量精度,而且也间接影响距离的测量精度,所以温度的测量很关键。

综上所述,超声波测距的公式可用(2-3)表示:

S=1/2×[(331+0.60T)×t]=1/2×((331+0.60T)×NT) (2-3)

2.1.2系统总线的选取

网络总线起源于上世纪80年代,目前主流的网络总线包括LIN、CAN、MOST、FlexRay等。LIN和CAN已经开始进入实际应用,多出现在中低端车型,而MOST和FlexRay主要应用于中高端车型。专家预测,未来5年CAN总线技术的发展最为稳定,整体发展趋势是向高速率发展。在国外,目前汽车网络总线技术已经成为乘用车和商用车的标准配置。其中CAN网络技术应用相当普及,特别是在欧洲。近几年我国网络总线的研发应用能力迅速提高,但关键总线技术仍依赖国外供应商。

在近几年电子领域的不断发展,有出现了较多的串行通信总线,比较常见的有RS485、M-BUS、C-MBUS三种。这三种串行通信总线的性能比较如表2.3。

表2.3 RS485、M-BUS、C-MBUS的性能比较 比较项目 RS485 (75LBC184) 1200 M-BUS(TI721) 1000 C-MBUS(CMT001) 不小于2000 优势比较 部优化的输出控制能力,使芯片具有更远的通讯距离 通讯距离(m) .参考资料.

. .. .

通讯电平 总线最高电压 长距通讯速率 接线方法 差分电压 下行12V电压上行电流环 24V 4800 二线 下行24V电压上行电流环 35V 4800 提高下行电压有利于改善信号特性,提高负载驱动能力。 允许接入更高的线路电压有利于更长线路的传输 实际上C-MBUS也可提供9600的通讯速度。 与M-BUS一样具备无极性二线通讯功能 与M-BUS一样具备无极性供电讯功能 与M-BUS一样具备任意分支功能,非常有利于现场的施工布线,优势非常明显。 与M-BUS一样具备无极性双绞线布线,与485相比节约大量的线材费用,同样在布线中接线方便,无错接可能。 5V 1200 四线(含电源) (可电) 二线(可电) 是否有性 极性 无极性 无极性 布线方式 串连 任意分支 任意分支 线缆要求 屏蔽双绞线 普通RV1.5双绞线 普通RV1.5双绞线 结点供电能力 否 能,但功率小<0.65mA MBUS与C-MBUS同样具备结点供电能力,但C-BUS可以提供更大的驱动能力,这对能,功率大 终端设备的设计提供的更广单个<4mA 泛的选择空间,较大的供电能力可为系统提供更多功能。 芯片静态电流损耗 2.4mA 0.8 mA 0.15 mA 这是一项非常重要的指标,在总线大量挂接终端器时,芯片静态电流越低就可在总线上挂接更多的终端设备,并可保证总线末端压降更小。 负载能力 <128 <256 <400 C-MBUS具备可驱动更多结点的能力。 在大量终端结点的应用中,隔离装置的应用对系统的稳定运行及可维护性非常重要。 总线隔离装置 无 有,复杂 有,简单 .参考资料.

. .. .

主站集中控制器 简单 复杂 由于C-MBUS设计了专用的采用专用的主站控制芯片,使原本需要CMT100芯片,大量模数电路搭建的主站电结构极其简路设计显得非常简单,并一单 致性好。 C-MBUS在设计中充分考虑了芯片的EMI、EMC指标,对下接的CPU等电路有较好的电磁保护作用。 电磁兼性 差 好 好 结点中断上传功能 无 有

过去多年来,RS485技术仍然主导着这一技术领域,但其显然已经不能满足

目前的低功耗、高可靠、非规则布线、大容量等网络要求。通过上表可以看出,RS485在应用过程中存在以下问题。

➢ RS485的通讯设备容量少,理论上最多容许接入量不超过128个设备,

这显然不适用以楼宇等为结点的多用户容量要求。

➢ RS485的通讯速率低,并且其速率与通讯距离有直接关系,当达到数百

米以上通讯距离时,其可靠通讯速率<1200bps,这使得大量结点的通讯速度非常低。

➢ RS485只能提供非隔离的通讯方式,而该方式不能应用与长距离户外通

讯,如设计为隔离方式则需要隔离电源,这使得系统成本较高。 ➢ RS485方式不能给下接的设备供电,设备需要单独解决供电问题。 ➢ RS485芯片功耗较大,静态功耗达到2-3mA(最先进的芯片),工作电流

(发送)达到20mA,这增加了线路电压降,不利于备电系统的使用及远程布线。

➢ 长距离通讯时RS485芯片容易损坏。

➢ 以RS485构成的网络只能以串行布线,不能构成星形等任意分支,而串

行布线对于实际布线设计及施工造成很大难度,不遵循串行布线规则又将大大降低通讯的稳定性。

➢ 由于RS485自身的电性能决定了其在实际工程应用中稳定性较差,并且

多节点、长距离的调试需要对线路进行阻抗匹配等调试工作,大量安装时调试工作复杂。

.参考资料.

. .. .

美国TI公司的MBUS和优倍电气C-MBUS总线通讯方式解决了以上所有缺点,同时具有的总线供电模式,其中断报警并自动上传的功能又很适用于实时性要求高的应用,如家庭智能化控制、消防报警系统总线等,而C-MBUS总线又比M-BUS具有更高的结点容量,更远的通讯距离,更低的功耗,同时C-MBUS具有通过总线可为节点设备提供更大的可变供电电流的明显技术优势。

目前优倍电气已经将该系统应用与智能家居的系统控制,为发展自己的家庭智能化控制系统,推出C-MBUS总线通讯系统及其专用芯片CMT001、CMT100,该芯片经多年的应用实践证明,其成本低、稳定性好、应用技术层面低,它不仅具备了RS485及MBUS总线所有的优点,又有其独特性能,十分适于在实时总线控制系统以及需要二线制、总线供电的通讯系统中应用推广。应用该公司的《C-MBUS总线规约》该系统在256个节点的通讯系统上,任意节点上报事件时间小于100ms。国诸多大型水、电、气、热表以及楼宇自动化等企业已采用或拟采用C-MBUS总线通讯技术。因此本设计采用较为先进实用的C-MBUS总线。

2.2 C-MBUS简介

C-MBUS是一种低成本的、一点对多点的总线通讯系统,具有通讯设备容量大,通讯速率高,成本低,设计简单,布线简便(无极性可任意分支,普通双绞线),抗干扰能力强,并总线可提供高达500mA电源的特点。系统具有自动登录功能,此功能可完成设备的自动登录、结点中断报警等双向可中断的先进的通讯功能。总线隔离设备具有总线故障隔离性能,保证部分总线故障时其它部分正常通讯。以该芯片为核心构成的总线通讯系统可广泛应用于三表集抄、智能家庭控制网络、消防报警及联动网络、小区智能化控制网络、中央空调控制系统等。

2.2.1概述

C-MBUS是一种带供电功能的设备端串行双总线通信系统。通讯设备最多可负载400个节点。通讯速率最高可达9600 bps。传输距离可达2.4km。布线简单,可用普通的双绞线。通过光耦隔离使得其具有很好的抗干扰能力。并且可以通过总线可提供电源。

.参考资料.

. .. .

CMT001是 C-MBUS总线设备端通讯专用集成电路,完成数字通讯的调制解调、总线极性识别、低功耗线性稳压功能。总线信号通过整流桥直接输入芯片,芯片RXD、TXD信号可直接输入单片机或通过光耦与单片机连接。

CMT100是C-MBUS总线控制端通讯专用集成电路,完成数字通讯的调制解调、总线控制、总线电源供给、总线故障检测功能。考虑到主机电路复杂,为增加主机抗干扰能力,控制器应将总线驱动与单片机系统隔离,TXD、RXD、收发控制经光耦直接输入芯片,系统使用15V~30V电源(根据通讯距离,设备用电状况决定)。

2.2.2总线的特点

➢ 高速稳定的通讯速率,在4.8kb/s 的通讯速率时可达到2.4Km的可靠通

讯距离;

➢ 在4.8kb/s、2.4Km的可靠通讯距离时,可有多达400个接点的容量; ➢ 通过C-MBUS总线可向末端设备提供4mA工作电流; ➢ 允许串型、星型、交叉等任意接线分支的布线方式; ➢ 极低的静态功耗,低于180uA,典型值为150uA; ➢ 使用普通双绞线,无极性二线制安装接线; ➢ 通过隔离设备可保证在遭雷击时可靠工作; ➢ 恒流的电流环通讯方式,抗干扰性强;

➢ 具有设备自动登录等功能,可容纳多种设备,预留多种通讯协议,扩展

方便;

➢ 通过总线可向从设备提供500mA电流;

➢ 同时提供配套的主站专用集中控制芯片CMT100,可与计算机232、485

等接口连接,系统兼容性及扩展性好; ➢ 芯片成本低。

3、 系统设计与硬件电路的实现

.参考资料.

. .. .

3.1 系统总体方案设计

3.1.1系统方案的选择

倒车雷达系统在这几年有很大的发展,其测距方式主要有激光、超声波、红外、毫米波等一些测量方法。其主控芯片主要有单片机。现在主流方案有以下几种:

方案一利用单片机作为主控CPU来产生驱动超声波传感器发射的控制信号、检测回波信号、测量超声波往返时间、计算汽车与障碍物之间的距离、显示测量距离以及产生语音报警信号。但这种方案对于大型车辆不利于信号的传输,而且驱动能力有限。所以在一些小型低价汽车比较常见。

方案二是在方案一的基础上进化而来的,其原理同方案一一样。其优点就是对汽车资源进行了整合。将测量数据的显示同汽车本身自带的DVD/GPS LCD显示屏相结合并增加了语音提示。使得更利于驾驶员更容易对车后情况的掌握。但同样存在方案一的不足之处。

方案三是利用总线系统。在完成倒车雷达的所有功能的条件下对汽车电气化网络提供了雏形。这一方案很好的将汽车各资源进行了系统化。并对汽车的后期拓展提供了条件。很好的解决了信号传输的问题。

而本设计采用的方案是对以上方案的择优整合。本系统采用最新的倒车雷达专用芯片,大大的提高了倒车雷达测距的精确度。同时采用当前用于总线通信的新型总线系统C-MBUS总线。此总线采用光耦隔离有效的减少了系统误差。同时此总线的有效传输距离可达2.4km,可负载400个电子设备节点。并可以对设备进行供电。同时加了语音提示和报警。

3.1.2系统方案总述

本系统基于超声波反射原理利用国腾微电子公司生产的GM3101倒车雷达专用控制芯片控制超声波传感器进行超声波发射接收实现障碍物探测。传感器布置为车后四个或多个传感器方式,尾部的传感器探测倒车时汽车后方障碍物,通过总线形成网络进行信息通信,再由主控制器适时显示障

.参考资料.

. .. .

碍物距离、位置并进行声音报警。司机根据这些重要提示可大大减小汽车碰撞的可能。系统总体架构框图如图3.1所示:

其它电子设备1 雷达模块 串口扩展 通信接口 CPU-1 雷达模块 上位机 C-MBUS蜂鸣器 语音模块 LCD模块 CPU-2 下位机 通信接口 其它电子设备2 总线 图3.1系统总体架构框图

其中,雷达模块指的是图3.1中所示的以GM3101芯片为核心的组合电路,可根据实际情况决定是否采用两个或多个雷达模块,在本次设计中用到了两个雷达模块。总线上所连的其它汽车电子设备是总线设备扩展,本设计中实际没有扩展连接其它汽车电子设备,该总线有可接多达400个设备节点的容量,通信速率也非常高。下位机中CPU所连接的模块,也是根据实际情况,可以有所增减。

3.2 基于GM3101倒车雷达模块

3.2.1 GM3101芯片概述

GM3101 是专用于倒车雷达的超声波测距芯片,用纯硬件ASIC方式实现倒车雷达主机功能,将倒车雷达需要的主要元件(控制器、运放电路、滤波电路等)都集成在了单一芯片中,外围只需接上超声波传感器和功率器件就可以实现整个系统功能,提高了系统集成度,也不需要软件编程,是目前最简单的一种倒车雷达实现方案。该芯片提供4 路超声波探头的驱动,并根据超声波特性和倒车雷达的使用环境进行了一系列智能化处理, 在保证超声波测距精确性的基础上, 更加强了报警功能的准确性和实用性。 测试结果编码

.参考资料.

. .. .

后采用双线差分方式输出,提高了信号传输的抗干扰性。

GM3101 可为倒车雷达系统提供最简单的单芯片控制方案,替代现有的单片机控制方案。该芯片的优势在于尽可能地为倒车雷达系统提高集成度,减少外围元件。同时该芯片的功能满足高端和通用性的要求,用户利用该组芯片既可以生产高性能的整机产品,还可以灵活设置其产品的报警方式。全硬件方式实现系统功能,既降低了用户的开发难度,更对系统性能有了显著的提高。

3.2.2 GM3101工作特征及封装

(1) 工作特征

➢ 电源电压:5V;

➢ 四路超声波探头接口,探头发送驱动信号 5V/2mA;

➢ 报警信号编码输出,报警信号包括:各探头检测到的障碍物距离危险等

级信号、最近障碍物方位信号、最近障碍物距离信号及附加消息; ➢ 信号电平 5V;

➢ 检测结果输出周期 80ms;

➢ 具备自动增益控制,实现分级放大;

➢ 具有防声波衍射误报处理,提高报警信号的准确性; ➢ 具有环境适应功能,提高报警功能的实用性; ➢ 具有智能识别功能,可以忽略小物体,防止误报警; ➢ 报警信号输出采用双线差分方式,提高抗干扰性; ➢ 带防扒车报警功能;

➢ 工作环境温度:-40℃~+85℃。

(2) 引脚功能及封装

① 引脚功能

该芯片的各引脚功能描述见表3.1:

表3.1 芯片引脚功能说明

引脚号 引脚名 方向 说明 .参考资料.

. .. .

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 F5 F4 F3 COM2 AVCC F9COM COM3 F2 COM1 AGND F1 IN4 IN3 IN2 IN1 OUT4 OUT3 OUT2 OUT1 CONTROL_SEL1 CONTROL_SEL0 DM DOUT+ DOUT- Out In Out In In Out Out In In In Out In In In In Out Out Out Out In In In Out Out 滤波器的输出; 滤波器的输入; 第一级放大电路输出; 第二级放大电路的共模信号; 模拟电源; F9端的共模输入; 余振信号释放端口; 第一级放大电路输入; 第一级放大电路的共模信号; 模拟地; 四选一开关输出; 探头4信号输入引脚; 探头3信号输入引脚; 探头2信号输入引脚; 探头1信号输入引脚; 探头4驱动信号输出引脚; 探头3驱动信号输出引脚; 探头2驱动信号输出引脚; 探头1驱动信号输出引脚; 余振屏蔽控制信号高位;部自带下拉电阻; 余振屏蔽控制信号低位;部自带下拉电阻; 调节信号包络的屏蔽时间;部自带上拉电阻; 检测信号输出正端; 检测信号输出负端; 倒车雷达功能和防扒车功能选择端;当此引脚接电25 MODE In 源时,芯片处于防扒车功能状态;当此引脚悬空或接地时,芯片处于倒车雷达功能状态;部自带下拉电阻; 26 27 .参考资料.

DVDD TM1 In In 数字电源; 小信号忽略控制高位;部自带下拉电阻; . .. .

28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 TM0 RESETN CLK OSCO OSCI DGND NC COUT F9 F8 VAR4 VAR3 VAR2 VAR1 VARIN F7 F6 In In Out Out In In Out In In Out Out Out Out In Out In 小信号忽略控制低位;部自带下拉电阻; 复位引脚,低电平复位;部自带上拉电阻; 时钟输出1MHz;测试用; 振荡器输出;产生8MHz系统时钟; 振荡器输入; 数字地; 悬空; 比较器的输出;部自带上拉电阻;测试用; 比较器正端输入; 比较器负端输入; 增益控制选择器4通道; 增益控制选择器3通道; 增益控制选择器2通道; 增益控制选择器1通道; 增益控制选择器输入; 第二级放大电路输出; 第二级放大电路输入; ② 封装

GM3101 提供QFP44 的封装形式,引脚排布见图3.2所示:

图3.2 GM3101的实物和引脚分布图

.参考资料.

. .. .

3.2.3 GM3101芯片功能及应用

GM3101 提供4 路超声波探头接口,芯片通过探头发送和接收超声波信号,根据发送和接收的时间差计算障碍物的距离,输出相应报警信号。报警信号编码后采用双线差分方式输出,输出信号的容包括:各探头检测到的障碍物距离的危险等级、最近障碍物的方位、最近障碍物的距离值和附加消息。最大输出距离为3.15 米,输出精度为0.05 米。 (1) 信号发送和接收

芯片接通电源后,探头驱动引脚向超声波探头发送驱动信号,驱动超声波探头发送超声波信号,驱动信号发送完毕后芯片等待信号返回;探头接收到超声波信号后,将信号送入芯片,进行信号放大处理,记录信号发送和接收的时间差,根据此时间差计算障碍物距离,控制报警信号输出。超声波探头驱动采用分时顺序的驱动方式,即依次对4 个探头轮流进行驱动,一个探头的工作周期要包括发送和接收两种操作。4 个探头检测完成构成一个检测周期。若前一探头在本工作周期没有接收到返回的超声波信号,则芯片也转入控制下一个探头的工作。发送与接收的时序图如图3.3所示:

图3.3 发送与接收的时序图

.参考资料.

. .. .

(2) 探头余振处理

因为考虑到使用的探头型号多样,余振时间也会有差别,设置了两个端口控制信号(CONTROL_SEL1,CONTROL_SEL0)来选择消除余振的时间。表3.2 端口控制信号与消除余振处理时间的关系:

表3.2 端口控制信号与消除余振处理时间的关系表

控制信号 余振屏蔽时间T(ms) CONTROL_SEL1 0 0 1 1 CONTROL_SEL0 0 1 0 1 1.7 1.8 1.9 2.0

图3.4 发送信号与余振屏蔽时间关系

表3.3 端口控制信号(DM)与停车标志信号所对应的障碍物位置关系 控制信号(DM) 0 1 位置(m) 0.30 0.32 根据表3.3 可知,当DM 为低电平时,障碍物位置小于0.30m 时表示停车,当DM 为高电平时,障碍物位置小于0.32m 时表示停车。 (3) 多种智能处理

① 防声波衍射处理

.参考资料.

. .. .

由于声波传输的特性,声波会出现未经实际物体反射就直接回到探头并被检测到的情况,使处理器误认为是实际反射接收到的信号,导致误报。根据声波衍射的特性,GM3101 可以对衍射声波进行识别,消除了声波衍射误报警情况。芯片一旦判定收到的超声波信号是声波衍射返回的信号,则自动忽略该结果, 芯片继续等待在该探头工作周期是否有有效反射波,有则进行处理,没有则转入下一探头的驱动。

② 智能识别处理

地面上的小物体,比如小砖块,小石块,小水果,都会造成超声波的反射,并让探头检测到,而这些物体并不影响车辆的倒车操作。GM3101 针对这种情况进行了处理,提高报警的准确性。与防声波衍射处理一样,芯片忽略掉无效反射波后会继续等待在本工作周期是否有有效反射波,有则进行处理,没有则转入下一探头的驱动。

表3.4 控制信号(TM1,TM0)与小信号忽略门限及灵敏度关系 TM1 0 0 1 1 TM0 0 1 0 1 小信号忽略门限 低 中 高 最高 灵敏度 最高 高 中 低

小信号的忽略门限是通过检测小物体反射回来的超声波信号强度来判断。 也可以称之为灵敏度分析,灵敏度与小信号忽略门限成反比,小信号的忽略门限低,说明所忽略的小物体反射回来的信号强度很弱,对于较大的物体则不忽略。这样灵敏度就高。反之,当忽略门限达到最高时,对于一些较大的物体也会忽略,灵敏度也变得最低。用户可根据实际需要及超声波探头的灵敏度来调节这两个信号。

③ 环境适应处理

车辆在倒车进入一个巷道或两边已经停靠了其它车辆的停车车位时都会存在环境影响造成的误报警。因为在这种情况下,绝大部分倒车的过程中,检测到的最近的距离和方位都是车身的两边(墙面或两边车辆),但驾驶员可以通过两

.参考资料.

. .. .

边的反光镜掌握两边的车距,驾驶员关心的是车身后面的障碍物距离。GM3101能够针对这种情况进行识别和处理。

GM3101 当发现探头一和探头四任何一个探头在2560ms 检测到的距离都比较恒定,或变化围很小( 小于±20cm),则认为处于上述环境中。于是,处理器在送出相应的消息后就不再输出该探头的探测信息,只对其他探头的检测信息做出响应。但是如果探头一和探头四的检测距离变化超过芯片设定的允许围,则马上回到正常检测的状态机模式,待两侧或某一边的距离再次恒定后又转到环境适应模式下。

环境适应模式也有一个极限值0.5 米,即恒定距离小于0.5 米时,处理器还是回到正常检测模式,对该探头的检测信息输出报警信息。 (4) 报警信号输出

GM3101 接收到有效反射信号后,进行计算并输出相应的报警信号。报警信号的输出周期为80ms。如果整个检测周期都没有检测到物体,则不输出任何报警信号。报警信号包含的容有:各探头检测到的障碍物危险等级、最近障碍物的方位、最近障碍物的距离值及附加消息,其中附加消息是专门用于输出环境适应处理的结果。障碍物危险级别和障碍物距离的对应关系如表3.5 所示:

表3.5 障碍物危险级别和障碍物距离的对应关系

分段 1 2 3 4 障碍物距离(米) 1.2~3.15 0.6~1.2 0.3~0.6 <0.3 障碍物危险级别 安全 警示 危险 停车 报警信号采用双线差分串行输出的方式, 目的是提高传输信号在长距离和强干扰环境下的传输正确性。双线差分传输具体格式是:DOUT+输出实际需要的信号,DOUT- 则输出与DOUT+相反的电平信号,例如DOUT+输出“1”,则DOUT-则输出“0”,DOUT+输出“0”,DOUT-则输出“1”,显示部分可以通过判断DOUT+和DOUT-信号幅度的差值来恢复出实际的DOUT+信号的值,用户也可以根据其具体的应用环境只使用DOUT+信号。报警输出信号采用标准异步传输格式,数据传输的波特率为4800bps。

.参考资料.

. .. .

3.2.4 GM3101主要外围电路

(1) 电源电路

倒车雷达系统电源部分包括12VDC和5VDC两种电源。 ① 12VDC电源

12VDC电源由汽车上的电源提供,它给中周提供电源。中周电源围为(8~15V), 如果中周的电源过低,探头的灵敏度会下降。探测到障碍物的距离减小。考虑到汽车上电磁 干扰很强,需要对电源部分做特殊的处理。在电源的输入端加上扼流圈(电感量为2mH~20mH)以防止汽车电源交流突变带来的干扰。12VDC 电源输入电路如图3.5 所示。

图3.5 12VDC 电源输入电路

图3.5中,X1接的是汽车上的电源,C32为滤波电容,L2为10mH的扼流圈,它们的作用都是为了抑制交流杂波进入12V电源,保证12V电源的纯净。当中周工作时,会对12V的电源产生干扰,从而影响到芯片的正常工作,为了避免这种干扰,如图3.6所示在每个中周的电源输入端加一个大电容(C9)将交流毛刺滤掉。

图3.6 通道4中周和探头的电气连接图

.参考资料.

. .. .

② 5VDC 电源

5VDC为GM3101的工作电压(GM3101可以正常工作在+4.5V ~+5.5V)。5V 电源由12V 电源经过RC 滤波和一个线性稳压器(如7805 或LM1117)变换产生。GM3101要求5V的模拟电源纹波小于100mV,所以要求在电源部分做适当的处理。可以采用LC -π型滤波电路,如图3.7所示

图3.7 5VDC电源输入电路

图3.7中5V电源包括模拟电源(AVCC)和数字电源(DVDD),此电源供芯片工作,所以要求电源的交流纹波小。芯片部电源分模拟电源(第5脚AVCC)和数字电源(第26脚DVDD),为了避免数字电源对模拟电源造成干扰,PCB 设计过程中,模拟电源最好远离数字电源。如图3.8所示。

图3.8 5VDC电气走线示意图

图3.8所示,12V 电源经过LM1117转换成5V电源后进行LC-π型滤波,芯片的5脚为模拟电源输入端(AVCC),C3,C4电容尽量靠近5脚端口C3,C4 一个采用大电(10uF),滤低频交流,一个采用小电容(0.1uF),滤高频交流。同理,芯片的26脚为数字电源输入端(DVDD),C5、C6电容尽量靠近26脚端口。

.参考资料.

. .. .

(2) 探头和中周

探头和中周构成一个LC振荡电路,探头的主要参数为:谐振频率40±1kHz,工作电压为110V~150V,静电容为2000±10%PF。中周的主要参数为:匝数比n1:n2 =1:12电感量为7.8±0.2mH。电气连接图参见图3.6中周和探头的连接图。

在调试过程中如果在F3 端口发现信号通道噪声满摆,可能是探头和中周不匹配,通过调节中周的电感量可以实现匹配,中周的电感量典型值为7.8mH。中周的电感量和探头的静电容满足公式(3-1):

错误!未找到引用源。(其中f=40kHz) (3-1)

(3) 比较器

在比较器电路的前面有一个峰值检测电路,这部分电路主要由外围元器件完成。峰值检测电路是对信号的峰值进行检测,将检测出来的峰值信号送到比较器电路里与基准电压进行比较。峰值检测电路原理图如图3.9所示。

图3.9 峰值检测电路图

除了余振屏蔽电路为芯片部电路,其他所有的元器件全部外接。R2和R15提供一个直流偏置电压A1,电压值为:5×R15/(R2+R15)=1.6V。C23 为滤波电容,电容C19为隔直电容,R13 给A2提供一个直流工作电平,F5上的信号通过二极管VD2对电容C21充电,当信号高于电容上的电压时,给电容充电。同时,R14电阻再缓慢释放C21上的电荷。通过对电容C21的充放电,完成信号的峰值

.参考资料.

. .. .

检测,在F8 端输出。

比较器的目的是完成模数转换过程,将模拟信号转换成数字信号,送到测距运算器里进行计算。

3.3 C-MBUS专用通信芯片

3.3.1 CMT001总线从机芯片

(1) CMT001功能特征

CMT001是 C-MBUS总线设备端通讯专用集成电路,完成数字通讯的调制解调、 总线极性识别、 低功耗线性稳压功能。 总线信号通过整流桥直接输入芯片。芯片 RXD、TXD信号可直接输入单片机或通过光耦与单片机连接。输出12~35V、100mA电源及5V±5%、10mA电源。CMT001是一种带供电功能的低成本仪表总线从机芯片,芯片特征如下所示:

➢ 自身功耗低,最大功耗<200uA,总线电压<30V; ➢ 无极性接线方式,抗干扰能力强;

➢ 使用普通RV1.5双绞线,应用简单,布线方便; ➢ 通讯速率高达4800bps的半双工通讯; ➢ 同时挂接256个设备,通讯距离可达2000m;

➢ 小体积SO-8封装; CMT001引脚封装 ➢ 可隔离设计也可非隔离设计,保证电磁兼容特性; ➢ 可以远程提供5V/20mA,10-20V/100mA稳压电源;

从机电源供给方式: 通过+5V从C-MBUS供电;

通过+5V从C-MBUS或后备电池双供电(部二极管隔离); 通过电池供电,C-MBUS仅在通讯时工作;

➢ 工作温度:-40 ~ +85℃。

.参考资料.

. .. .

(2) CMT001典型应用电路(供电1mA)

图3.10 CMT001典型应用电路(供电1mA)

无极性双向电路由四个二极管实现,入口5Ω电阻用于电路防护。电源由2

脚至8脚隔离二极管获得,串连电阻阻值及滤波电容值与电路用电电流有关。

为增加主机抗干扰能力,控制器应将总线驱动与单片机系统隔离,TXD、RXD经光耦隔离后再输出到单片机,具体电图如图3.11所示。

图3.11 隔离通讯接口

.参考资料.

.参考资料.

(1) CMT100功能特征

➢ 总线故障信号输出;

➢ 小体积SO-14封装;

(2) CMT100典型应用电路

➢ 应用简单,布线方便;

3.3.2 CMT100总线主机芯片

况决定) 。芯片特征如下所示:

. .. .

➢ 无极性接线方式,抗干扰能力强;

总线故障输入,具体电路如图3.12所示。

➢ 通讯速率高达4800bps的半双工通讯;

➢ 功率器件外置,芯片不易损坏,便于更换。

➢ 同时挂接256个设备,通讯距离可达2000m;

图3.12 CMT100典型应用电路

➢ 可以远程提供电源,最大电流达500mA; CMT100引脚封装

由于总线与外部设备直接连接,CMT100芯片需要与MCU隔离。 TXD接

MCU异步通讯发送口,RXD接MCU异步通讯接收口,T/R为收发控制,F0为

调、总线控制、总线电源供给、总线故障检测功能。考虑到主机电路复杂,为增

加主机抗干扰能力,控制器应将总线驱动与单片机系统隔离,TXD、RXD、收发控

制经光耦直接输入芯片,系统使用15V~30V电源(根据通讯距离,设备用电状

CMT100是 C-MBUS总线控制端通讯专用集成电路, 完成数字通讯的调制解

. .. .

3.4 ISD4004-8M语音录放电路

3.4.1 ISD4004-8M芯片概述

ISD4004系列工作电压3V,单片录放时间8至16分钟,音质好,适用于移动及其他便携式电子产品中。芯片采用 CMOS技术,含振荡器、防混淆滤波器、平滑滤波器、音频放大器、自动静噪及高密度多电平闪烁存贮列。芯片设计是基于所有操作必须由微控制器控制,操作命令可通过串行通信接口(SPI或 Microwire )送入。芯片采用多电平直接模拟量存储技术,每个采样值直接存贮在片闪烁存贮器中,因此能够非常真实、自然地再现语音、音乐、音调和效果声,避免了一般固体录音电路因量化和压缩造成的量化噪声和“金属声”。采样频率可为 4.0、5.3、6.4、8.0kHz,频率越低,录放时间越长,而音质则有所下降,片信息存于闪烁存贮器中,可在断电情况下保存 100 年(典型值),反复录音 10 万次。

3.4.2 语音报警电路

本系统的语音报警电路采用ISD4004语音芯片。ISD4004与单片机接口电路如图3.13所示。从图中可以看出,ISD4004和单片机AT89S51之间的连接较少。单片机的 P0.0 接ISD4004的片选引脚SS,控制ISD4004是否选通;P0.1接 ISD4004的串行输入引脚MOSI,从该引脚读入放音的地址; P0.2接ISD4004的串行输出引脚 MISO;P0.3接ISD4004的串行时钟引脚SLCK;P0.4接拨动开关,用于选择录音或者放音;P0.5接STOP按钮,用来对ISD4004进行复位;P0.6 接AN按钮,按下时ISD4004开始工作;P3.3 (INT1) 接ISD4004的中断引脚INT。ISD4004芯片所需要的连接还有音频信号输出引脚AUD_OUT,该引脚通过一个滤波电容,经功率放大电路LM386后与扬声器连接;MIC接入ISD4004 的录音信号输入端(ANAIN - 、ANA IN + );AMCAP为自动静音端,使用时通过一电容接地。此外,由于ISD4004的工作电压为3 V,而单片机所需供电电压为5 V,因此需要采用LM317变压电路得到3 V电压供ISD4004使用。当倒车距离大于3m时,语音提示为“倒车安全”;当倒车距离在2~3 m之间时,语音提示为“倒车”;

.参考资料.

. .. .

当倒车距离在1~2 m之间时,语音提示为“倒车小心”;当倒车距离在0.15~1 m之间时,语音提示为“倒车危险”;当倒车距离小于0.15 m 时,语音提示为“非常危险,紧急停车”。

图3.13 语音报警电路

3.5 系统电路解析及工作原理

如图3.1系统总体架构框图所示,在本次设计研究中的倒车雷达系统主要由上位机和下位机两部分组成,通过总线完成上位机与下位机的通信,在总线上没有扩展到其它汽车电子设备,下面就分别针对上、下位机的电路框图做具体分析。

3.5.1上位机电路解析

雷达模块 雷达模块 GM8123串口扩展电路 C-MBUS CMT100 CPU-1 图3.14 上位机电路框图

.参考资料.

.参考资料.

四章中介绍。

(1) 雷达模块

(2) 串口扩展电路

图3.15 GM3101雷达模块电路图

. .. .

3个标准串口,并能通过外部引脚控制串口扩展模式:单通道工作模式和

串口扩展电路是以GM8123芯片为核心的电路,GM8123芯片也是国腾微

发送给主机,同时返回子串口地址。该模式使每个从机的发送要求都能被

雷达模块是以国腾微电子公司生产的GM3101倒车雷达专用控制芯片为核心

工作在多通道模式下时,子串口能主动响应从机发送的数据,并由母串口

工作,也可以让所有子串口在母串口波特率基础上分频同时工作。该芯片

及时地响应,即使所有从机同时有发送要求,数据也不会丢失,基本实现

多通道工作模式,即可以指定1个子串口 和母串口以相同的波特率单一的

电子公司具有自主知识产权的产品,可以将一个全双工的标准串口扩展成

的超声波测距组合电路,其包括四个超声波探头,具体电路图如图3.15所示。

该模块以80ms为周期不断输出三字节的报警信号,具体的报警信号格式将在第

. .. .

了主控单元和外设通讯的实时性。该芯片母串口和子串口的工作波特率可由软件调节,而不需要修改外部电路和晶振频率。在本系统中的应用电路如图3.16所示。

图3.16串口扩展电路图

(3) 上位机控制电路

① STC12C5A60S2单片机简介

STC12C5A60S2系列单片机是宏晶科技生产的单时钟/机器周期的单片机,是高速、低功耗和超强抗干扰的新一代80C51系列单片机,指令代码完全兼容传统80C51单片机,但速度快8~12倍。部集成MAX810专用复位电路。

② 主要特征

➢ 工作频率围:0~35MHz,相当于普通8051的0~420MHz; ➢ 片上集成1280字节RAM;

➢ ISP(在系统可编程)/IAP(在应用可编程),无需专用编程器,无需专

用仿真器;可通过串口(P3.0/P3.1)直接下载用户程序,数秒即可完成一片; ➢ 集成看门狗;

➢ 部集成MAX810专用复位电路(外部晶体在12M以下时,复位脚可直接

1K电阻到地); ➢ 共4个16位定时器;

两个与传统8051兼容的定时器/计数器,16位定时器T0和T1,没有定

.参考资料.

. .. .

时器2,但有独立波特率发生器做串行通讯的波特率发生器; 再加上2路PCA模块可实现2个16位定时器;

➢ 2个时钟输出口,可由T0的溢出在P3.4/T0输出时钟,可由T1的溢出

在P3.5/T1输出时钟;

➢ 通用全双工异步串行口(UART),由于STC12系列是高速的8051,可再

用定时器实现多串口; ➢ 工作温度围:-40~+85℃。 ③ 封装

封装有PDIP-40,LQFP-44,LQFP-48 (本设计使用PDIP40)如图3.17所示:

图3.17 PDIP-40封装

上位机控制中心是以宏晶STC公司的STC12C5A60S2单片机为核心的数据处理中心,选择STC12C5A60S2主要是因为它有两个UART口,这样一个串口负责接收雷达模块传送过来的数据并与GM8123通信,另一个则把数据帧通过通信接口向下位机发送,数据帧共七字节,除了雷达模块发送过来的三字节,还包括帧校验等部分,具体介绍见后面软件设计部分说明。这部分电路图如图3.18所示。

.参考资料.

电路。

.参考资料.

(4) 通信接口电路

图3.18上位机控制电路

. .. .

上位机程序下载电路采用ISP串口下载,图3.19单片机程序ISP串口下载

图3.19单片机程序ISP串口下载电路

.参考资料.

③ 故障检测

② 接收数据

① 发送数据

讯时应处于发送状态。

接收转换时杂波信号的干扰。

. .. .

RC2 接1000P电容于接收信号解调振荡。

图3.20通信接口电路

当总线发生短路时,电压信号由REVINI 输入,故障信号由BAD管脚输

接收信号由 REVIN 输入,经过接收调制解调器将信号解调,结果由接收缓

1000P/25V电容,用于调制解调器将信号解调波形调理。发送转接收时,要求保

出TTL电平直接驱动光耦,该脚可驱动电流为2mA。接口电路如图3.20所示:

驱动输出驱动电路,同时关闭接收调制解调器。如节点需要使用总线电源,不通

接收程序在完成发送后12bit时间清理接收缓存后等待接收。这样才能避免发送

当RT/CON高电平时,芯片处于接收状态,收发控制电路打开接收调制解调

持发送低电平状态200uS,节点设备要求在接收完成后15bit时间进行应答,主

存输出,输出TTL电平直接驱动光耦,该脚可驱动电流为2mA。RC1、RC2接

器, 同时关闭发送调制解调器及输出驱动电路。 接收信号由REVINI输入,RC1、

当RT/CON低电平时,芯片处于发送状态,收发控制电路打开输出调制电路、

. .. .

3.5.2下位机电路解析

语音报警 C-MBUS CMT001 蜂鸣器 LCD显CPU-2

图3.21下位机电路框图

(1) 语音报警

语音报警电路通选用ISD4004- 08芯片来实现, 然而,ISD4004- 08的所有操作都必须由微控制器控制,其操作命令可通过串行通信SPI接口送入。该芯片采用多电平直接模拟量存储技术,每个采样值可直接存贮在片闪烁存贮器中。这种突破性的E2PROM存储方法可以将模拟数据直接写入单个存储单元,而不需要A/D或D/A转换。为了实现语音报数,将语音录 入ISD4004 - 08语音芯片中。ISD4004-08的地址分辨率为0.2秒,利用地址分辨率可分配各个语音段的首地址。本系统将语音分成10段录入ISD4004- 08语音芯片中, 各段具体的首地址如表3.6所列。

表3.6各语音的首地址

段 号 语 音 首地址 段 号 语 音 首地址 0 左侧 0020H 5 倒车小心 00C0H 1 右侧 0040H 6 倒车危险 00E0H 2 左后 0060H 7 紧急制动 0100H 3 右后 0080H 8 安全 0120H 4 倒车安全 00A0H 9 非常危险,有人扒车 0140H

编程时,可将每一段语音的首地址集合起来,编成地址表存放到AT89S51中。当系统探测出与障碍物的距离相同时,即可通过软件查表的方式查出与探测值相对应的语音首地址,然后送入ISD4004- 08的SPI接口驱动ISD4004-08进行语

.参考资料.

100C16100uFRST12151619Q3Q4Q5Q6Q7D3D4D5D6D713141718100PIN16. .. . 74LS373音提示。语音报警电路如图3.22所示。 RXDTXDU3LM3172R1410KR162KC10+5V104104C8+1.0uFIC21234567891011121314SSSCLKMOSIVCCDMISOXCLKVSSDINTNCRACNCVSSANCNCNCNCNCNCNCNCVSSAVCCAVSSAANA IN+AUD OUTANA IN-AM CAPNCISD4004+C41uFC3+4.7uFR2+5V1KR11234IC3GAINGAIN-INPUTSYPASS+INPUTVsGNDVoutLM3868765C110uF++5VVINADJ3C9R7C7+VOUT27022uFR6470S3SW-SPDTJP1123SWITCHS1S2SW-PBSW-PB2827262524232221201918171615R410KR310KC50.1uFC60.1uFR510K1MICMK1C2+LS12147K220uFSPEAKER 图3.22 语音报警电路 Title(2) 蜂鸣器 系统中用蜂鸣器作报警器,利用蜂鸣器的“嘀”声的不同频率来提示车尾与BDate:2-Jun-2010 障碍物远近的危险程度。当障碍物距离汽车尾部2.5m时,开始有报警信号,但信File:45号间隔时间长,“嘀”的声音舒缓,随着距离的缩短,信号间隔的时间也缩短,Sheet of Drawn By:6SizeNumberRe在0.6~1.2m处,“嘀”的声音由舒缓逐渐为急促;在0.3~0.6m处,“嘀”的声音变得短而急促,指示灯亮红灯;当液晶屏上显示小于0.3m时,屏幕上的数据不再变化,“嘀”的声音变成长鸣,再次警告驾驶者避免距离过小而来不及采取措施。

F:\\软件备份\\毕业设计相关电路\\毕业设计相关电路.DB.参考资料.

本设计选用了捷胜吉电子科技公司的图形点阵液晶显示模块TG12864E,它主要

八字节的数据帧,然后对该数据帧进行帧校验,正确则对它进行数据处理,把相

程序下载。下位机接收来自CMT001通信模块的数据,根据拟定的通信协议接收

AT89S51为MCS-51系列单片机,与该公司的前以版本芯片的区别是它能进行ISP

由行驱动器/列驱动器及128×64 全点阵液晶显示器组成。可完成图形显示,也

下位机控制中心是以ATMEL公司的AT89S51单片机为核心的数据处理中心,

LCD模块负责显示最近障碍物距离,并动态显示一辆小车和超声波模拟波形。

关数据输出显示,根据警报级别让蜂鸣器发出警报。下位机电路如图3.23所示。

.参考资料.

(3) LCD显示

(4) 下位机电路

. .. .

可以显示8×4个(16×16 点阵)汉字。

图3.23 下位机电路图

. .. .

ATMEL公司的AT89S51芯片采用的是ISP并口下载。AT89S51单片机下载电路如图3.24所示。

图3.24 单片机ISP下载电路

(5) 通信接口

CMT001通信接口芯片的信息在前面已有介绍,CMT001通信接口电路图如图

3.25所示。

图3.25下位机通信接口电路图

.参考资料.

. .. .

3.5.3工作原理

接通电源,以GM3101为核心的雷达模块向四个超声波传感器发送40KHz的脉冲串,同时开始计时,脉冲信号经过超声波部的振子,振荡产生超声波,超声波经气体介质的传播到返回传感器的时间,即为往返时间。雷达模块对四个超声波传感器所检测到的距离进行比较,最后模块输出数据最小的距离,输出的数据格式在第四章中有详细分析。

两个雷达模块输出的数据通过以GM8123为核心的串口扩展电路分别传送到上位机,上位机对这两组数据再次进行比较,决定传输含有最小距离的那组数据,在发送之前上位机要根据通信协议对数据进行数据帧包装,制定的通信协议见第四章所示。包装后的数据帧通过C-MBUS总线传送到达下位机,下位机检查帧头正确,开始接收数据,判断地址是否与自己吻合,不一致则放弃接收,继续等待下一次数据到来。每接收完八个字节长度的数据帧,还要对数据帧进行CRC校验,不正确则放弃该次数据,正确则对数据帧进行处理,提取出三字节的报警信号,根据信号的危险级别让蜂鸣器进行不同频率的工作、真人语音提示,并送距离值到液晶显示器上显示,同时显示危险级别,在液晶显示器上还同时显示一辆动态的小车和障碍物标记。

至此,本设计的各功能均是为驾驶员了解车后情况设置的,同时引用的新型总线等是为以后对实现汽车电器网络化提供了条件。

3.6 实验安装及调试

由于电路复杂,为调试方便,把上位机和两个总线通信接口电路制作成电路版,采用腐蚀制作电路版,其余电路采用万用板进行制作,印制电路板的制作主要采用的是腐蚀法,即把耐腐蚀的透明胶布粘在已经画好电路的铜箔板上,注意不能有气泡出现,然后浸泡在腐蚀液中,将无用的铜箔面腐蚀掉,最后进行孔加工,制作步骤如下:选板,描绘电路,贴膜,腐蚀(三氯化铁35%,水65%);清洗,休整,钻孔。

.参考资料.

. .. .

3.6.1 PCB图

(1) 雷达模块PCB图

图3.26雷达模块PCB图

图3.27雷达模块3D图

.参考资料.

. .. .

(2) 上位机PCB图

图3.28上位机PCB图

图3.29上位机3D图

.参考资料.

. .. .

(3) 下位机PCB图

图3.30下位机PCB图

图3.31下位机3D图

3.6.2 焊接

焊接就是利用电烙铁等工具在预先制作好的印制电路板或万用板上,将电路原器件连接在一起的过程。为了提高效率,对大规模的电子产品的生产过程中,

.参考资料.

. .. .

一般采用自动化流水线波峰焊接技术;而对于小规模的小型电子电路或产品的生产,则多数采用手工焊接。我们实验进行的就是手工焊接,其质量的好坏取决于四个方面的条件:焊接工具,焊料,焊剂和焊接技术。

良好的焊接应具备以下特点:可靠的电气连接;足够的机械强度;光洁整齐的外观,即金属表面焊锡适量,外表具有金属光泽,没有拉尖、裂纹现象,表面平滑有半弓下凹。

焊接步骤:把焊接烙铁推向引脚;将少量的焊锡放在烙铁尖上,可以使热度从烙铁传到金属铂上,焊锡从电烙铁对面送到焊件上,在另一面焊锡,元件和烙铁的热度就可以熔化焊锡;焊完后切断多余的引脚。

焊接中CMT100和CMT001是贴片芯片,对焊接技术有较高要求。

3.6.3 调试过程及方法

实验焊接完毕后根据设计线路图进行调试,以便检测其实际的性能。调试过程经过以下三个过程:

不通电检查电路安装:认真检查接线是否正确,如多线,少线或错线,尤其是电源线不能接错或接反。使用外用表,按照设计电路接线图检查安装电路,在安装好的电路中按电路图一一对照检查连线,并在检查中要对已经检查过的连线做标记。

直观检查电源:地线,信号线,元器件接线端之间有无短路,联线处有无接触不良,有极性元器件引线短有无接错,反接等,集成块是否插对。

通电观察:把经过准确测量的电源电压加入电路,但暂不接入信号源信号。电源接通后,首先观察有无异常现象,包括有无冒烟,异常气味。触摸元件是否发烫,电源是否短路等。

硬件电路的电气特性检查无误后,可利用仿真器进行仿真,仿真通过则可由编程器向单片机烧录程序,检查运行情况。但由于仿真器和编程器价格昂贵,在本系统调试过程中我采用了在线编程ISP下载程序进行调试。

ISP-In System Programming,在线系统编程,通过单片机的专用串行编程接口或并口对单片机部的FLASH存储器进行编程,ISP的实现一般需要很少的外部电路辅助实现。ISP为单片机的实验和开发带来了很大的方便和灵活性。

.参考资料.

. .. .

4、 软件设计及调试

4.1 系统软件设计整体介绍

由系统电路框图知,系统主要由上位机和下位机两部分组成。系统上电后,上位机中雷达模块检测距离并对数据进行比较,最后模块输出最小距离。系统采用了两个雷达模块,两个模块输出的数据通过串口扩展电路分别传送到上位机控制中心,控制中心对接收到的数据再次进行比较,决定传输两个距离中最小的那组数据,并对要发送到下位机的数据先根据通信协议进行数据帧包装,然后通过C-MBUS总线传送到下位机;下位机根据通信协议接收信息,对信息进行检查与校验后,根据数据级别让蜂鸣器进行不同频率的工作,并送距离值到液晶显示器上显示。通过对系统电路框图的分析知,系统软件设计可分为上位机和下位机两部分软件设计,下面分别就这两部分的软件设计进行分析,在介绍之前先对上、下位机之间的通信协议进行介绍。

如上所述,上位机的两个雷达模块输出的数据通过串口扩展电路传送到上位机控制中心,控制中心对这两组数据再次进行比较,决定传输距离最小的那组数据,在发送之前要根据通信协议对数据进行数据帧包装,数据帧长度为八字节,制定的通信协议规定数据格式如下。

每字节含8位二进制码,传输时加上一个起始位“0”和一个停止位“1”共10位。其传输序列如图4.1所示。D0是字节的最低有效位,D7是字节的最高有效位。先传低位,后传高位。

0 传输方向 起始位 8位数据位 停止位 D0 D1 D2 D3 D4 D5 D6 D7 1 图 4.1 字节传输序列

第一字节:帧头 10101010;

第二字节:地址 为下位机拟定的地址,为以后实现汽车电器网络化而预留

.参考资料.

. .. .

的,长度可扩展为多个字节;

第三字节:帧长度 指的是雷达模块发送过来的数据长度,该系统中为三字节;

第四至六字节:报警信号数据 这三个字节的数据是由雷达模块发送出来; 第七至八字节:帧校验码 通信的目的是要把信息及时可靠地传送给对方,因此要求一个通信系统传输消息必须可靠与快速,在数字通信系统中可靠与快速往往是一对矛盾。为了解决可靠性,通信系统都采用了差错控制。本系统设计中就采用了循环冗余校验CRC(Cyclic Redundancy Check),选用的是CCITT-16循环冗余校验码。循环冗余校验码的生成采用查表法生成,其程序流程图如图4.2所示。

Reg清0 数据后添加16位0生成校验数据 Reg左移四位,校验数据左移四位到Reg低四位 Reg= Reg XOR 生成参数表【Reg移出值】 NO 数据处理完毕? YES CRC校验码 = Reg

图4.2生成校验码子程序流程图

其中流程图中Reg指代一个16位的寄存器,生成参数表是查表生成法中所要依据的参数表,参数表中的每个参数为16位的数据,参数表的生成方法是用0到16的二进制数分别与CCITT-16循环冗余校验码相异或而得,具体原理请查阅参考文献。

.参考资料.

. .. .

4.2 上位机软件设计

4.2.1 上位机程序主流程图

上位机主要完成的任务是:利用雷达模块测距,控制中心(单片机)接收雷达模块发送出来的数据并对数据进行比较后根据通信协议通过总线发送到下位机。软件设计主要包括雷达模块程序设计,上位机接收数据程序设计和发送数据程序设计三大部分。上位机模块初始化后,接收数据子程序利用STC12C5A60S2单片机串口0中断负责接收雷达模块传送过来的数据,并处理数据,判断数据是否满足发送条件,满足则置发送就绪标志位。发送数据子程序发现发送就绪标志位置位,则根据通信协议把数据包装成数据包,然后通过STC12C5A60S2单片机串口1发送到下位机。上位机程序的主流程图如图4.3所示。

开始 初始化GM8123 初始化STC12C5A60S2 雷达模块有数据输出? NO YES 调用接收数据子程序 NO 满足发送条件? YES 调用发送数据子程序 图4.3 上位机程序主流程图

.参考资料.

. .. .

4.2.2 雷达模块程序设计

雷达模块是以国腾微电子公司生产的GM3101倒车雷达专用控制芯片为核心的电路,GM3101芯片是用纯硬件方式实现倒车雷达主机功能,将倒车雷达需要的主要元件都集成在了单一芯片中,提高了集成度,并且不需要软件编程,从而降低了设计难度。在实际应用中可把该模块设置为受汽车倒车挡控制上电,使得系统更具自动化。当汽车置于倒车挡时,倒车雷达发射超声波进行测距;置于其它挡,倒车雷达不工作。该模块以80ms为周期检测车后障碍物到汽车的最小距离并输出报警信号,报警信号以数据包格式输出,每个数据包包括3个字节,格式和容如下所述。

第一个字节:第一字节高四位为起始标志,用于说明此报警数据是倒车模式下的数据还是扒车模式下的数据,倒车模式是“0101”,扒车模式是“1010”。第一字节的低两位用于输出附加消息,输出数据指示1或4探头是否进入环境适应模式,S1 表示探头1 是否进入环境适应模式,“1” 表示进入环境适应模式,“0” 表示正常倒车模式;S4 表示探头4 是否进入环境适应模式,“1”表示进入环境适应模式,“0”表示正常倒车模式。第四位SX1 和第三位SX0 表示最近障碍物的方位,00表示是探头1 方向,01表示是探头2方向,10表示是探头3方向,11表示是探头4方向。如表4.1所示。

表4.1第一字节数据格式

0 1 0 1 SX1 SX0 S1 S4

第二个字节:见表4.2,SXA 和SXB 表示X 号探头检测到的障碍物的危险等级,危险等级分为安全、警告、危险、停车4级,分别用00、01、10、11表示。例如第二字节数据为“10010000”,表示第一个探头检测到危险状态,第二个探头检测到警告状态,第三和第四个探头为安全状态。

表4.2第二字节数据格式

S1A S1B S2A S2B S3A S3B S4A S4B

.参考资料.

. .. .

第三个字节:输出最近障碍物的距离值,数据格式如表4.3所示,DA1和DA0表示最近障碍物距离的第一位数据,按BCD 编码,最大值为3;DB0~DB3 表示最近障碍物距离的第二位数据,按BCD编码,最大值为9;DC0表示第三位数据,0表示0,1表示5。其中最高位默认为1。

表4.3 第三字节数据格式

* DA1 DA0 DB3 DB2 DB1 DB0 DC0

4.2.3 上位机接收数据程序设计

上位机接收数据子程序利用STC12C5A60S2单片机串口0中断接收雷达模块传送过来的数据,并把数据与上一次发送的数据进行比较,如果数据中的距离值小于上一次或两个数据都来自同一个雷达模块,就判断此次数

据满足发送条件,置发送就绪标志位,通知发送数据子程序可以发送数据。其中利用定时\\计数器T0的中断来计算串口0的接收超时,因为雷达模块发送数据的周期为80ms,发送数据大小为三个字节,波特率为4800bps,三个字节是连续发送,计算下来相邻字节之间接收相差20ms,可判定没有接收完整三字节数据,定义为超时,清空接收数据缓冲区,等待接收下一次数据。定时\\计数器T0的接收超时中断相对比较简单,这里不作介绍。接收数据子程序流程图如图4.4所示。

.参考资料.

. .. .

开始 NO 有接收中断? YES 清接收缓冲区 NO 帧头正确? 开始接收数据 YES NO 地址正确? YES NO 接收数据完整? YES 小于前一次发送数据? NO NO YES 接收地址与前一次发送地址相同? YES 置发送就绪标志 返回 图4.4 上位机接收数据子程序流程图

.参考资料.

. .. .

4.2.4 上位机发送数据程序设计

发送数据子程序利用STC12C5A60S2单片机的串口1向下位机发送数据,采用查询中断发送。由于系统采用两个雷达模块,对应每个模块会用一个发送就绪标志位,轮流查询。下面的子程序流程图没有分别针对两个发送就绪标志位而作图,作了一个通用的流程图。上位机发送数据子程序流程图如图4.5所示。

开始 NO 上一次发送结束? YES NO 发送就绪标志位 置位? YES 根据通信协议包装数据 发送数据包 NO 全部数据发送完? YES 清发送就绪标志位 返回 图4.5 上位机发送数据子程序流程图

.参考资料.

. .. .

4.3 下位机软件设计

4.3.1 下位机程序主流程图

下位机负责接收上位机传送过来的数据,进行校验处理后,用液晶显示器显示距离,蜂鸣器发出警报,扬声器发出语音提示。下位机主程序流程图如图4.6所示。

.参考资料.

开始 初始化单片机 初始化液晶模块 上位机有数据发 NO 送进来? YES 调用下位机接收数据程序 NO 数据正确? YES 报警 调用语音提示程序 调用液晶显示程序 返回 图4.6 下位机程序主流程图

. .. .

4.3.2 下位机接收数据程序设计

下位机接收数据子程序利用控制中心单片机AT89S51的串口接收中断接收上位机发送过来的数据,校验数据正确就置数据READY标志位,通知液晶显示子程序显示。串口接收中断的程序流程图介绍如图4.7 所示。

开始 NO 中断标志RI=1? YES YES 接收计数标志CNT=0? 帧头正确? YES NO 存储数据,CNT++ YES CNT=1? 地址正确? NO YES CNT=7? CRC正确? NO YES 数据READY=1 NO NO NO 存储数据,CNT++ CNT=0 RI=0 返回 图4.7 AT89S51串口接收数据程序流程图

.参考资料.

. .. .

4.3.3 LCD液晶显示程序设计

LCD模块负责显示最近障碍物距离,并动态显示一辆小汽车与超声波发射波形,既形象又直观。程序设计中需要提前利用位图转换成数据工具获得小汽车与超声波波形的静态位图数据,设计中利用清华蓬远的液晶字模图形模提取工具提取得汽车与波形的图形模,然后在显示中再调用图形模来显示,其程序流程图如图4.8 所示。

开始 NO 数据READY=1? YES 初始化显示文本 显示最小距离 计算显示汽车与波形的位置 显示汽车 显示波形 返回 图4.8 液晶显示程序流程图

LCD显示模块采用Proteus软件进行仿真,这样可以直观的看到设计目标的

显示功能。通过动态显示可以很好的帮助驾驶员了解汽车后面的情况。但在开始使用时,驾驶员应下车观察实际情况与测量情况有无太大偏差。这样才能在以后的使用中更好的把握显示的测量情况。LCD显示模块仿真图如图4.9和图4.10

.参考资料.

. .. .

所示。

图4.9 LCD显示模块仿真电路图

图4.10 LCD显示信息

4.3.4 语音报警程序设计

当倒车距离大于3 m时语音提示为“倒车安全”;当倒车距离在2~3 m之间

.参考资料.

. .. .

时,语音提示为“倒车”;当倒车距离在1~2 m之间时,语音提示为“倒车小心”;当倒车距离在015~1m之间时,语音提示为“倒车危险”;当倒车距离小于0.15 m时,语音提示为“非常危险,紧急停车”。报警子程序流程图如图4.11。

发POWERUP命令 延时25ms 发POWERUP命令 YES 放音指令? NO NO 录音指令? YES 延时50ms 发SETPLAY命令+地址 延时25ms 发SETREC命令+地址 发PLAY命令 发REC命令 NO 放/录音完否? YES 返回 图4.11语音报警程序流程图

.参考资料.

. .. .

4.4 软件调试简介

在单片机软件设计调试中一般会用到编程器和仿真器,前者用于烧录程序,后者用于仿真程序,但两者价格都在几百元以上,比较昂贵。根据实际情况在系统软件调试中采用了ISP下载程序调试(具体ISP下载见第三章所述),改正程序后直接烧录进单片机看运行结果,不正确继续修改再烧录程序。这种调试方法虽然比较麻烦,对单片机影响也比较打大,但对于学生来说是个实惠又科学的方法了。

5、 系统方案的扩展

本设计不是成本最低,性价比最好的倒车雷达系统方案,例如所引用的新型总线是为了更多汽车设备的扩展而引入的,本系统还可进行很多扩展,现列举部分如下:

➢ 可将报警器加以改进发展,可通过加入语音芯片,向司机发出人声警告

危险级别,并报告距离,同时可以在倒车时能重复发出“倒车,请注意”的语言警告声提醒行人注意。

➢ 在本系统中所用的C-MBUS 最突出特点之一就是能连接多达400个从路

节点,并能够给从机通信接口提供电压,并可输出+5V、+20V和+4.4V的电源电压供给从机设备使用,可节省为从机单独提供电源的麻烦,经济又方便。使用该总线可为以后实现汽车电器网络化做好准备。 ➢ 本系统使用的是总线传输,但只是用在倒车雷达测距报警系统中,为了

节省成本,也可考虑上位机与下位机采用无线通信,安装在车尾的上位机接收到数据,然后通过无线发送模块发送数据,安装在驾驶室的下位机通过无线接收模块接收到数据并显示出来。

.参考资料.

. .. .

6、 总结

课题主要完成对基于超声波测距的倒车雷达系统的硬件电路设计、软件设计和系统调试。本系统利用超声波测距的原理检测系统与障碍物之间的距离,并通过蜂鸣器报警和数码管显示距离信息。该超声波倒车雷达系统在自成系统的基础上具备总线接口可实现整车数据共享,顺应了汽车电器发展趋势,是倒车雷达设计的新概念。

本课题概括地说,完成以下几项工作:

➢ 了解超声波的概念、性质和超声波传感器的工作原理,研究了超声波测

距的基本原理;

➢ 理解基于GM3101芯片的超声波测距倒车雷达模块的工作原理; ➢ 选用宏晶科技公司生产STC12C5A60S2单片机作为雷达倒车系统通信的

主控芯片,并能为以后的汽车电子设备扩充而使用。选用Atmel公司的AT89S51单片机为从机的控制芯片,进行接收、报警和显示控制。学习、研究了芯片各模块的功能及使用;

➢ 引进了新型总线C-MBUS,通过硬件搭建和软件调试,学习到了该总线的

新型功能,它市场前景广阔;

➢ 绘制系统的上位机、中心通讯接口、设备端通讯接口、下位机、下载单

元的电路原理图,并制作PCB电路;

➢ 编写各模块子程序,并用KeilC51软件和Proteus软件进行软件调试和

仿真;

➢ 将各子程序综合,完成系统的主程序流程设计,并调试成功; ➢ 利用系统进行实验,得出进一步改善系统功能的想法。

.参考资料.

. .. .

参考文献

[1] 南建辉,熊鸣,王军茹.MCS-51单片机原理及应用实例[M].清华大学,2004.3 [2] 朝青,艳玲,怡麟,等.单片机与PC机网络通信技术[M].北京航空航天大学,2007.2 [3] 洪润,马平安,亚凡.单片机原理及应用[M].科学,2002.8

[4] 广弟,朱月秀,冷祖祁.单片机基础[M]. 北京航空航天大学,2007.6 [5] 王欢. 基于CAN总线的倒车雷达研究[M]. 工业大学,2005.6

[6] Billur Barshan. Fast Processing Techniques For Accurate Ultrasonic Range

Measurements [J]. Meas.Sci.Technol,2000. 11:45–50

[7] 明发. 高性价比倒车雷达的研究[J].《机电技术》季刊,省机械科学研究院,2004年01

期:30-31

[8] R. Queirós,R.C. Martins. A New Method For High Resolution Ultrasonic Ranging

In Air. XVIII IMEKO WORLD CONGRESS,2006 [9] 何希才. 集成电路及其应用实例[M]. 科学,1998.2 [10] [11] [12] [13] [14] [15] [16]

丁镇生. 传感器及遥测技术[M]. 电子工业, 1998.5 GM3101数据手册. 国腾微电子,2006.4

优倍电气CMT001数据手册. 曦阳家居智能化科技发展,2006.12 优倍电气CMT100数据手册. 曦阳家居智能化科技发展,2006.12 图像点阵液晶显示模块使用手册. 捷胜吉电子科技,2004.5

肖炎根.基于超声波的倒车雷达系统设计[J].电子元器件应用,2008.7:59-62 吴琼,封维忠,马文杰.汽车倒车雷达系统的设计与实现[J]. 现代电子技术,

2009.9 :191-194 [17]

B. Barshan. Fast Processing Techniques for Accurate Ultrasonic Range

Measurements. Measurement Science Technology Vol. 11. 2000:45-50 [18]

黄斌,贺继林,等.基于CAN总线的高性能倒车雷达设计[J].工业控制计算

机,2007.5:74-75 [19] [20]

Description of the M-BUS Protocol. AQUAMETRO AG.Vol. 01 E M-Bus 东. 循环冗余校验 CRC 的算法分析和程序实现. 西南交通大学计算机与通信工程

学院,2001

[21] 衡. 实用现代汽车电器[J]. 电子工业,1999.9

.参考资料.

. .. .

谢辞

首先,我要向我的指导老师宁志刚老师表示最真挚的感谢!半年来,从选题到方案的确定,再到设计工作的开展以及论文的撰写,都得到了他耐心的指导和帮助。

在我毕业论文即将定稿时,宁老师对于我的论文进行了细心的审核,哪怕是论文中的字体和标注都细心的给我纠正,宁老师这种对待科学的严谨态度深深的感染了我,这将会让我终身受益。

在我即将毕业时,回首大学四年的学习生活,我觉得这四年里我不仅仅学到了我的专业知识,更重要的是我学会了怎么和人相处、怎么和人合作。在这里我要感谢所有教过我的老师,是你们的言传身教使得我更一步的走向成熟,使得我更有勇气,更有信心步入社会,去成就我的未来。

在这里我要感谢我的班级同学和朋友,在我们相处的四年里,我们一起学习,一起成长。在这一过程里,大家互相帮助,互相鼓励。使我们在一个良好的学习氛围中度过。这也将是我深刻的记忆。同时要感谢南华大学对我们的培养。大力的提高办学条件,使我们的专业水平得到了更大的提高。

最后感谢我的父母,20多年他们默默的支持着我,他们为了我失去了太多太多。尤其在这大学四年里,他们为了我在这里无忧无虑的读书,极力的满足我物质需要。看着父母一天天的变老。我期盼着我能早早毕业,去回报我父母。我们的父母该歇歇了。在这里我想说,爸,妈——谢谢你们!老师——谢谢你们!

.参考资料.

. .. .

附录一

 LCD显示子程序

#include \"reg51.h\"/*51单片机头文件*/

#include \"intrins.h\"/*使用其中定义的宏来访问绝对地址,

包括: CBYTE、XBYTE、PWORD、DBYTE、CWORD、XWORD、PBYTE、DWORD*/ #include\"lcd12864.h\"/*调用lcd12864驱动*/ const unsigned char code Buffer[]= {/*-- 汽车的结构框架图 --*/ /*-- 宽度x高度=128x64 --*/

0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00

,

0x00,0x00,0x70,0x90,0x70,0xF0,0x50,0x50,0xD0,0x00,0x00,0x60,0xA0,0xE0,0xD0,0xE0

,

0xE0,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00

,

0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00

,

0x00,0x00,0x00,0x00,0x00,0x00,0x40,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00

,

0x60,0xA0,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00

,

0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60

,

0x80,0xF0,0x40,0xA0,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00

,

0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00

,

0x00,0x07,0x09,0x07,0x85,0x87,0x8A,0x8A,0x89,0xC0,0xC0,0xCF,0xC5,0xC3,0xC5,0xC7

,

0xC9,0xCF,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC5,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0

,

0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0x80

,

0x80,0x80,0x80,0x80,0x80,0x80,0x84,0x87,0x84,0x80,0x80,0x84,0x00,0x00,0x00,0x00

,

0x06,0x04,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00

,

0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x04,0x02

,

0x01,0x0F,0x01,0x02,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00

,

0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80

.参考资料.

. .. .

,

0xE0,0xF8,0x7C,0x1E,0x07,0x01,0x01,0x01,0x01,0x01,0x01,0x00,0x00,0x00,0x00,0x00

,

0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00

,

0x00,0x00,0x00,0x00,0x0F,0xFF,0xFF,0xF3,0x7F,0xFB,0x83,0x03,0x03,0x03,0x03,0x03

,

0x03,0x03,0x03,0x07,0x07,0x1F,0xFF,0xFF,0xFF,0xFF,0x07,0x07,0x07,0x0F,0x0F,0x0F

,

0x0F,0x7F,0xFF,0xFF,0xFF,0xEE,0x0E,0x0E,0x1E,0x1C,0x38,0x78,0xF0,0xE0,0x80,0x00

,

0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00

,

0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00

,

0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xF0,0xFE,0xFF

,

0x6F,0x61,0x60,0x60,0x60,0x60,0x60,0x60,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0

,

0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0x60,0x60,0x60,0x60,0x60,0x60

,

0x60,0x60,0x60,0x60,0xE0,0xF3,0x3F,0xFF,0xF8,0x1F,0x3F,0x30,0x30,0x30,0x30,0x30

,

0x30,0x30,0x30,0x30,0x30,0x30,0x37,0x3F,0xFF,0xFF,0xBC,0xB0,0xB0,0xB0,0x30,0x30

,

0x30,0x30,0x73,0x7F,0x3F,0xFF,0xFF,0x78,0xE0,0x60,0x60,0x60,0x60,0x61,0x63,0x67

,

0x6E,0xFC,0xFC,0xCC,0xCC,0xFC,0x78,0x60,0x60,0xC0,0xC0,0xC0,0xC0,0x80,0x80,0x80

,

0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00

,

0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,0xFF,0xFF

,

0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0xFF,0xDF,0xFF,0xF3,0xF3,0xF3,0xF3,0xF3

,

0xF3,0xF3,0xF3,0xF3,0xF3,0xF3,0xFF,0xDF,0xE3,0xFF,0x1C,0x00,0x00,0x00,0x00,0x00

,

0x00,0x00,0x00,0x00,0xFF,0xFF,0x00,0xFF,0xFF,0x86,0xC6,0xC6,0xC6,0xC6,0xC6,0x46

,

0x66,0xE6,0xE6,0x66,0xE6,0xB6,0xF6,0xF6,0xF6,0xFF,0xFF,0xF7,0xF7,0xB7,0x36,0x36

,

0x36,0x36,0x36,0x16,0x1E,0x1E,0x1F,0xFF,0xFF,0x1F,0x1F,0x1E,0x1E,0x1E,0x1E,0x1E

,

0x1E,0x0E,0x0E,0x0E,0x0E,0x8F,0xFE,0xEE,0x0E,0x0E,0x0E,0xCE,0xCE,0xE7,0xE7,0x67

.参考资料.

. .. .

,

0xE7,0xC7,0x06,0x7E,0xFC,0xF8,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00

,

0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3E,0x76,0x77,0xF7,0xB6,0xB7

,

0x36,0x36,0xD6,0xD6,0xD6,0x36,0x36,0x36,0x36,0x36,0x36,0x36,0xD6,0xD6,0xD6,0x36

,

0x36,0x36,0x36,0x36,0x36,0x36,0x36,0x3E,0xDE,0xDF,0xDF,0x3B,0x3B,0x3B,0x3B,0x3B

,

0x3B,0x3B,0x3B,0x3B,0xDB,0x5B,0xDB,0x3B,0x3B,0x3B,0x1B,0x1B,0x1B,0x1B,0xDB,0xFF

,

0x3F,0xE3,0xFC,0xFF,0xFB,0xDD,0xEC,0x6C,0xFD,0xFB,0xEF,0xFF,0xFF,0x1F,0x1C,0x1C

,

0x1C,0x1C,0x1C,0x0C,0x0C,0x0C,0x8C,0xFF,0x7F,0x0C,0x0C,0x0C,0x0C,0x8C,0x8C,0x8C

,

0x8C,0x8C,0x8E,0x8E,0xCE,0xFF,0xBF,0xCE,0xFE,0xFE,0xFF,0xFF,0xFD,0x7D,0xFD,0xFF

,

0xFE,0xFF,0x1F,0x9F,0xDF,0xFF,0x3F,0x0F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00

,

0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x03

,

0x06,0x04,0x0D,0x0D,0x0D,0x0C,0x0C,0x0C,0x3C,0x7C,0xCC,0x8C,0x8D,0x8D,0x0D,0x0C

,

0x0C,0x8C,0x8C,0x8C,0xCC,0xEC,0x7C,0x3C,0x1D,0x1D,0x1D,0x1C,0x1C,0x1C,0x1C,0x1C

,

0x1C,0x1C,0x3C,0xBC,0x1D,0x1D,0x9D,0x3C,0x3C,0x3C,0x3C,0x3C,0x7C,0xFF,0x87,0x00

,

0x00,0x1F,0xFF,0xFF,0x7F,0xEF,0xDF,0xD8,0xFF,0x7F,0xDF,0xFF,0x7F,0x1B,0x1B,0x1B

,

0x1B,0x1B,0x1B,0x1B,0x1B,0x1B,0x1B,0x0F,0x0F,0x0F,0x0F,0x0F,0x0D,0x0D,0x0D,0x0D

,

0x0D,0x0D,0x0D,0x0D,0x0D,0x1F,0x3F,0x67,0xC3,0xDF,0xFF,0xFF,0xDF,0xDF,0xDF,0xFF

,

0xBF,0x07,0x03,0x01,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00

,

0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00

,

0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x03,0x03

,

0x03,0x01,0x01,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00

,

0x00,0x08,0x12,0x24,0x25,0x25,0x24,0x12,0x08,0x00,0x00,0x00,0x00,0x01,0x03,0x06

,

0x06,0x04,0x04,0x03,0x07,0x06,0x04,0x04,0x04,0x06,0x03,0x01,0x00,0x00,0x00,0x00

.参考资料.

. .. .

,

0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00

,

0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x01,0x01,0x01,0x00,0x01

,

0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00

,

};

const unsigned char code number []={

0x00,0x07,0x08,0x10,0x10,0x08,0x07,0x00,0x00,0xF0,0x08,0x04,0x04,0x08,0xF0,0x00,//0 0x00,0x08,0x08,0x1F,0x00,0x00,0x00,0x00,0x00,0x04,0x04,0xFC,0x04,0x04,0x00,0x00,//1 0x00,0x0E,0x10,0x10,0x10,0x11,0x0E,0x00,0x00,0x0C,0x14,0x24,0x44,0x84,0x0C,0x00,//2 0x00,0x0C,0x10,0x11,0x11,0x12,0x0C,0x00,0x00,0x18,0x04,0x04,0x04,0x88,0x70,0x00,//3 0x00,0x00,0x03,0x04,0x08,0x1F,0x00,0x00,0x00,0xE0,0x20,0x24,0x24,0xFC,0x24,0x00,//4 0x00,0x1F,0x10,0x11,0x11,0x10,0x10,0x00,0x00,0x98,0x84,0x04,0x04,0x88,0x70,0x00,//5 0x00,0x07,0x08,0x11,0x11,0x18,0x00,0x00,0x00,0xF0,0x88,0x04,0x04,0x88,0x70,0x00,//6 0x00,0x1C,0x10,0x10,0x13,0x1C,0x10,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,//7 0x00,0x0E,0x11,0x10,0x10,0x11,0x0E,0x00,0x00,0x38,0x44,0x84,0x84,0x44,0x38,0x00,//8 0x00,0x07,0x08,0x10,0x10,0x08,0x07,0x00,0x00,0x00,0x8C,0x44,0x44,0x88,0xF0,0x00,//9 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0C,0x0C,0x00,0x00,0x00,0x00,0x00,//. };

void main() {

INT8U *buf=Buffer; //INT8U=unsigned char无符号数据类型 INT8U i,j; // i=0x00; // j=0x00; LCD12864_Init(); CleanAll(); while(1) {

LCD12864_CSA = 0; LCD12864_CSB = 0;

.参考资料.

. .. .

for(i=0;i<8;i++) {

// WriteCmd(SET_PAGE+i); //页 // WriteCmd(SET_COL); //列 for(j=0;j<128;j++) { //WriteData(*buf);

DisplayByte(i,j,*buf); buf++;

}

}

Delay(100000);

//ReadByte(0,0,buf); //DisplayByte(2,0,*buf);

} }

void Delay(INT16U count) {

INT8U i;

while(--count != 0)

for(i = 0; i < 125; i++); }

void LCD12864_Init(void) //主屏模块初始化 {

LCD12864_EN = 0; //LCD12864始能位清0 WriteCmd(SET_ON); //将LCD12864设置为ON WriteCmd(SET_COL); //设置开始的列 WriteCmd(SET_PAGE); //设置开始的行 WriteCmd(0xC0); }

void CleanAll(void) // 清屏 {

INT8U ucPage,ucCol;

LCD12864_CSA = 0; //左右两屏都选中 LCD12864_CSB = 0;

for(ucPage=0;ucPage<8;ucPage++) {

WriteCmd(SET_PAGE+ucPage); //页 WriteCmd(SET_COL); //列 for(ucCol=0;ucCol<64;ucCol++) WriteData(0x00); } }

void DisplayByte(INT8U ucPage,INT8U ucCol,INT8U ucData)

.参考资料.

. .. .

{

if(ucCol/SINGLE_SCREEN_COL==0) {

LCD12864_CSA=0; //选择A屏 LCD12864_CSB=1; } else {

LCD12864_CSB=0; //选择B屏 LCD12864_CSA=1; }

WriteCmd(SET_COL); //设置开始的列 WriteCmd(SET_PAGE); //设置开始的行 WriteCmd(SET_PAGE+ucPage);

WriteCmd(SET_COL+ucCol%SINGLE_SCREEN_COL); WriteData(ucData); }

void WriteCmd(INT8U ucCmd) // ucCmd要写的命令 {

LCD12864_RS = 0; LCD12864_RW = 0;

LCD12864_DATA = ucCmd; LCD12864_EN = 1; LCD12864_EN = 0; }

void WriteData(INT8U ucData) // ucData 要写的数据 {

LCD12864_RS = 1; LCD12864_RW = 0;

LCD12864_DATA = ucData; LCD12864_EN = 1; LCD12864_EN = 0; }

void ReadByte(INT8U ucPage,INT8U ucCol,INT8U *ucData) // ucPage要读的页数

//ucCol要读的列数

// ucData将读的容存放在某个变量中

{

INT8U data ucTemp;

if(ucCol/SINGLE_SCREEN_COL==0) {

LCD12864_CSA=0; //选择A屏 LCD12864_CSB=1;

.参考资料.

. .. .

} else{

LCD12864_CSB=0; //选择B屏 LCD12864_CSA=1; }

WriteCmd(SET_COL); //设置开始的列

WriteCmd(SET_PAGE); //设置开始的行//空读 WriteCmd(SET_PAGE+ucPage);

WriteCmd(SET_COL+ucCol%SINGLE_SCREEN_COL); LCD12864_DATA=0xFF; LCD12864_RS = 1; LCD12864_RW = 1; LCD12864_EN = 1;

ucTemp = P0; //LCD12864_DATA LCD12864_EN = 0; //读到ucTemp中 WriteCmd(SET_PAGE+ucPage);

WriteCmd(SET_COL+ucCol%SINGLE_SCREEN_COL); LCD12864_DATA=0xFF; LCD12864_RS = 1; LCD12864_RW = 1; LCD12864_EN = 1; ucTemp = P2; LCD12864_EN = 0; *ucData=ucTemp; }

调用LCD12864.H函数: #ifndef _MAINLCD_H_ #define _MAINLCD_H_

typedef unsigned char INT8U; typedef unsigned int INT16U; /* 宏 */

//硬件对应的管脚

sbit LCD12864_RS = P1^0; sbit LCD12864_RW = P1^1; sbit LCD12864_EN = P1^2; sbit LCD12864_CSA = P3^4; sbit LCD12864_CSB = P3^5; #define LCD12864_DATA P2 //LCD12864的命令

#define SET_ON 0x3F #define SET_OFF 0x3E #define SET_PAGE 0xb8

.参考资料.

. .. .

#define SET_COL 0x40 #define SINGLE_SCREEN_COL 64 #define MAX_Y 128 #define MAX_X 64 /*函数声明*/

void WriteCmd(INT8U ucCmd); void WriteData(INT8U ucData);

void ReadByte(INT8U ucPage,INT8U ucCol,INT8U * ucData); void LCD12864_Init(void); void Delay(INT16U count);

void DisplayByte(INT8U ucPage,INT8U ucCol,INT8U ucData); void CleanAll(void); #endif

.参考资料.

.参考资料.

. .. .

附录二

附图1 雷达模块电路图

.参考资料.

. .. .

附录三

附图2 上位机电路图

. .. .

123附录四 456+5VVCCR52.2KCMBUS11CMBUS215IN4148R12D348IN41+5IN41482153IC4INNC+5VGNDCMT001U1C14IN4148104D1IN414810uFC15C16100uFU2SCK/P1.7100RST300VCCRXDTXD4.4V8746MOSI/P1.5100R4D4D6R10R11100KR152KR1310KMISO/P1.6U2R3OELED0D1D2D3D4D5D6D7111347813141718R1100100PIN16R2PIN5PIN15PIN1PIN17PIN2R62.2KD2256912151619Q0Q1Q2Q3Q4Q5Q6Q774LS373RXDTXD+5VQ1R1410KR162KC10+5V104NPNBELL+5VMOSI/P1.5MISO/P1.6SCK/P1.7RXDTXDR81KLCD_RSLCD_RWLCD_ELCD_RST1234567891011121314151617181920IC1P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7RSTP3.0/RXDP3.1/TXDP3.2/INT0P3.3/INT1P3.4/T0P3.5/T1P3.6/WRP3.7/RDXTAL2XTAL1GNDAT89S51VCCP0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7EA/VPPALE/PROGPESN2.7/A152.6/A142.5/A132.4/A122.3/A112.2/A102.1/A92.0/A84039383736353433323130292827262524232221IC21234567891011121314SSSCLKMOSIVCCDMISOXCLKVSSDINTNCRACNCVSSANCNCNCNCNCNCNCNCVSSAVCCAVSSAANA IN+AUD OUTANA IN-AM CAPNCISD4004C3+C41uF+4.7uFR2C110uFIC3GAINGAIN-INPUTSYPASS+INPUTVsGNDVoutLM386LCD20PIN87652827262524232221201918171615104C8+R7C7C92U3LM317VOUTADJVIN3+5V1.0uF+27022uFR6470R410KC13S3SW-SPDT+5VJP1123SWITCHS1S2SW-PBSW-PBR310K10uFRSTR94.7KXTAL1LCD_DB7LCD_DB6LCD_DB5LCD_DB4LCD_DB3LCD_DB2LCD_DB1LCD_DB0C50.1uFC60.1uFR510K1MICMK1LS1SPEAKER11.0592MHz+5VC1130pFC1230pF9LCD_E8LCD_RW7LCD_RS6LLCCDD__VV0DD5LCD_VSS4321+5V+LCD_ALCD_KLCD_RST2019LCD_PSB18LCD_DB717LCD_DB616LCD_DB515LCD_DB414LCD_DB313LCD_DB212LCD_DB111LCD_DB0101KR11234C247K220uF+ 附图3下位机电路图 TitleSizeBNumberRevision.参考资料. 12345Date:File:2-Jun-2010 Sheet of Drawn By:6F:\\软件备份\\毕业设计相

因篇幅问题不能全部显示,请点此查看更多更全内容

Top