基于MSP430单片机的倒车雷达设计

发布者:tnzph488最新更新时间:2021-05-07 来源: eefocus关键字:MSP430  单片机  倒车雷达 手机看文章 扫描二维码
随时随地手机看文章

超声波雷达又称泊车辅助系统,是一种利用超声波原理,由装载于车尾保险杠上的探头发送超生波撞击障碍物后, 反射此声波探头,从而计算出车体与障碍物之间的距离。倒车雷达主要由三部分组成:


感应器(探头),主机,显示设备。感应器发出和接收超声波信号,然后将得到的信号传输到主机里面的电脑进行分析,再通过显示设备显示出来。随着人们对汽车驾驶辅助系统易用性要求的提高,以及单片机价格不断下降和汽车电子系统网络化发展的要求,新型的倒车雷达都是以单片机为核心的智能测距传感系统。本文介绍了一种基于MSP430 单片机的超声波倒车雷达监测报警系统


1 系统的硬件设计


本倒车雷达主要用来显示汽车后面的情景,测量和障碍物之间的距离。整个设计主要由MSP430 单片机、超声波发生模块、超声波接受模块、视频采集模块、LCD 显示模块以及语音报警模块组成。单片机外围扩展一系列功能模块如LCD、USB 接口等,USB 主机接口连接摄像头模块采集视频图像信息系统,结合ARM 处理器实现视频/图像的采集、压缩,并将采集后的数据发送到接收端,并通过LCD 显示出来。


1.1 倒车雷达总体结构


倒车雷达的设计由五部分组成:超声波发生模块、超声波接受模块、摄像头视频采集系统、LCD 显示模块、语音报警系统,其总体体系结构见图1.1.


图1.1 系统的总体设计


图1.1 系统的总体设计


各模块完成的具体任务如下:


1.1.1 测距系统:由超声波发生模块、超声波接受模块、单片机控制系统组成,用来测量汽车与障碍物之间的距离。


1.1.2 显示报警系统:主要由USB 摄像头、控制系统、显示模块和语音报警组成, 用来显示车后和车侧面的详细情景并通过彩色液晶显示,同时通过语音提示报警。


1.1.3 控制系统:是本系统的核心,采用MSP430 单片机,控制整个系统的运行,对各种接口电路进行控制。


1.2 超声波发射与接收


单稳触发器接收来自S430F1101 的P1.3 端口输出的40ms 脉冲波,经过触发器的电压提升和脉宽控制输出频率不变、高电平宽度为160us 的方波,方波周期为40ms.此脉冲信号作为555 振荡器的置位脉冲。在置位期问,555 定时产生40kHz 的振荡信号,由超声波发射头T40K 将电信号转化成超声波发射出去。超声发射器便发射出脉冲数为7 个的脉冲串(1 / 40kHz=O.25ms),超声波发射器的声波传播到反射物,再由反射物反射到接收器。


超声波接收UCM-R40 接收到的回波信号转换成电压信号,经过两级放大及电压整形电路,整形后的直流电压并不平滑,需加一个电容C5 滤波,滤波后的电压范围基本稳定,用这个电压驱动光电耦合器件SFH65A-1 的发光二极管,这时光敏三极管导通,经过一个反相器输出电平信号,再经过一个反相器使电平信号基本稳定。电平信号直接输入单片机的外部中断入口,该高电平作为MSP430 的外部中断的中断信号使单片机产生中断, 在中断服务程序中停止计数器的计时,并计算出有关数据。


1.3 显示电路设计


采用实时图像视频具有直观生动、快速便捷、内容丰富的特点,便于司机及时详尽掌握周围的环境,做出准确的判断。使用USB 摄像头作为本系统的图像采集器件。选择主控芯片型号为中芯微公司的ZC301 摄像头通过USB 接口与AT91RM9200 通信,ARM 经过相应的数据处理,通过液晶屏实时显示。


2 系统的软件设计


2.1 总体思路


软件设计采用模块化设计, 包括主程序设计、T1 中断服务子程序、INT0 外部中断服务子程序、距离计算子程序、显示子程序、延时子程序和报警子程序设计等。


系统初始化后就启动定时器T1 从0 开始计数, 此时主程序进入等待,当到达65 ms 时T1 溢出进入T1 中断服务子程序;在T1 中断服务子程序中将启动一次新的超声波发射, 此时将在P1.0 引脚上开始产生40 kHz 的方波,同时开启定时器T0 计时,为了避免直射波的绕射, 需要延迟1 ms 后再开INT0 中断允许;INT0 中断允许打开后,若此时P3.2(INT0)引脚出现低电平则代表收到回波信号,将提出中断请求进入INT0 中断服务子程序,在INT0 中断服务子程序中将停止定时器T0 计时,读取定时器T0 时间值到相应的存储区,同时设置接收成功标志;主程序一旦检测到接收成功标志,将调用测温子程序,采集超声波测距时的环境温度,并换算出准确的声速,存储到RAM 存储单元中;单片机再调用距离计算子程序进行计算,计算出传感器到目标物体之间的距离;此后主程序调用显示子程序进行显示;若超过设定的最小报警距离还将启动扬声器报警;当一次发射、接收、显示的过程完成后,系统将延迟100 ms 重新让T1 置初值,再次启动T1 以溢出,进入下一次测距。如果由于障碍物过远,超出量程,以致在T0 溢出时尚未接收到回波,则显示"ERROR"重新回到主流程进入新一轮测试。


2.2 超声波发射和接收部分软件


超声波的接收及障碍物和汽车之间的距离判断方法,并根据判断出的距离触发报警器工作,其工作原理的流程图如图2.1 所示。


图2.1 超声波测距流程图


图2.1 超声波测距流程图


超声波发射子程序的任务: 控制时基电路输出若干个超声波,并同时启动T0 开始计时。在此过程中,要计时采用屏蔽中断,开中断等操作,避免外中断影响该子程序的有效执行。


本系统使用一个中断,即外部中断INTO 是超声波有效回送的指示信号,当中断触发时,可以根据时间差计算出超声波的传输距离。内部定时器TO 用来计时,在发射子程序开始时,启动T0 开始工作,而在INTO 中断服务程序时, 停止T0 计时, 并读取计时值用以计算距离。


距离子程序是根据MSP430 芯片计数器所提供的传输时间进行计算,并根据计算得出超声波的传输距离。根据主程序的需要,将相关数据存入相关单元,以供主程序进行下一步处理。INTO 中断服务程序将定时器中的值存入R1、R0 两个寄存器中, 根据模值减去处置所得到的数值得出时间差。传输距离根据公式S=V*T 进行计算。目标物的距离值,也按公式计算,其中T 为测出的额计数器的计时差值,单位为us.使用该公式即可计算出目标物与汽车的距离。


3 总结


系统利用超声波在空气中的可传播性,实时测得超声波在空气中的传播时间和传播速度,在将时间和速度相乘即得距离的原理,设计了一个基于MSP430 的超声波倒车雷达监测报警系统,用于实时测得汽车尾部与障碍物的距离,通过LCD 显示距离值,将距离值提供给司机,该系统具有成本低、非接触、速度快、可靠性强、适应性好、操作方便,有着广泛的应用前景。


实践应用表明,该设计在生产应用和科学研究方面均具有一定的价值。一方面产品设计的人机界面更为人性化,司机可直接通过LCD显示屏观察车后的详细状况,不需要回头就可以倒车,大大减少了汽车司机的工作量,避免了引导车不慎造成交通事故;另一方面系统不断采集汽车与障碍物之间的距离, 并通过语音报警系统实时提醒司机,为我们的倒车提供了更为安全的保障,从而使我们在倒车的时候更方便快捷,同时也更为安全可靠。


关键字:MSP430  单片机  倒车雷达 引用地址:基于MSP430单片机的倒车雷达设计

上一篇:让低功耗 MSP430 的功耗更低 — 第 2 部分
下一篇:MSP430多处理器之间的通信方式及协议

推荐阅读最新更新时间:2024-11-06 22:24

单片机控制无刷电机初步调试成果和学习经历
调了一天多的无刷电机,用的无刷电调,其实本来应该是用32做的,但是不知道原理, 于是用了比较熟悉的51单片剂一下来进行调试 一下,查询的资料,还是蛮简单的,但是实际操作并没有那么容易, 在网上查也没有能用的程序,尤其是51,因为基本用无刷的都是无人机 四六轴。所以今天贴上我的程序,分享给大家,希望能对各位减少时间学习,快速上手,本程序实现的功能是在第一次给无刷电机上电后,首先拉高油门,然后降低油门,最后满开油门,注意,,,,注意,,,,注意,一定不要用带螺旋桨的无刷电机来实验,危险,开机后会全速运行,我开全速是为了用涵道,所以全速,, 废话不多说,贴程序 51单片机源程序如下: /**********************
[单片机]
<font color='red'>单片机</font>控制无刷电机初步调试成果和学习经历
7课:单片机的特殊功能寄存器
通过前面的学习,我们已知单片机的内部有ROM、有RAM、有并行I/O口,那么,除了这些东西之外,单片机内部究竟还有些什么,这些个零碎的东西怎么连在一起的,让我们来对单片机内部的寄存器作一个完整的功能分析吧! 下图中我们能看出,在51单片机内部有一个CPU用来运算、控制,有四个并行I/O口,分别是P0、P1、P2、P3,有ROM,用来存放程序,有RAM,用来存放中间结果,此外还有定时/计数器,串行I/O口,中断系统,以及一个内部的时钟电路。在一个51单片机的内部包含了这么多的东西。 对上面的图进行进一步的分析,我们已知,对并行I/O口的读写只要将数据送入到对应I/O口的锁存器就能了,那么对于定时/计数器,串行I/O口等怎么用
[单片机]
7课:<font color='red'>单片机</font>的特殊功能寄存器
MSP430F149实现车体调平装置
  在军用方面,自动调平控制系统广泛应用于机动发射装置、导弹车、坦克火控调试台等装备。以火箭炮为例,火箭炮被大量使用在高科技战争中,为了提高其生存能力,对其机动性能也提出了更高的要求。制约火箭炮机动性的主要因素是火箭炮进入阵地后,进行架设并调整到水平状态的时间。自动调平装置是消除这一制约因素的关键设备。随着电子元器件和自动控制技术的发展,自动调平装置采用了许多新器件、新方法,使得调平时间和调平精度严格符合战场要求。   设计火箭炮车体调平装置的目的是使火箭炮在停车工作时其载车能够迅速架设,实现武器系统平台倾斜度的快速测量、计算和无线数传,使其快速精确地达到水平,即在保证火箭炮工作性能的条件下最大程度的提高系统的机动性。  
[单片机]
<font color='red'>MSP430</font>F149实现车体调平装置
基于51单片机的LCD液晶屏
#include reg52.h sbit lcden=P1^0; sbit lcdrs=P1^1; sbit lcdrw=P1^2; void delay_ms(unsigned int t); void lcd_write_com(unsigned char com); void lcd_write_dat(unsigned char dat); void init_1602lcd(void); unsigned char code lcd1 = I LOVE SHUANG ZU ; unsigned char code lcd2 = TEL:17337112944 QQ:810965811 ; /******
[单片机]
用PIC16F877A单片机驱动按键控制8个数码管的显示的C程序
经典按键控制数码管C程序 #include htc.h #define HC595_SER RB7 #define HC595_SCK RB6 #define HC595_RCK RB5 #define key_164_data RB3 #define key_164_clk RB2 #define key_com1 RB1 #define key_com0 RB0 #define TURE 1 bit key_finish; //定义的位变量,这是PICmate仿真软件
[单片机]
地址锁存器74ls373和273的区别以及和c51单片机
74LS273 是带公共时钟复位八D触发器 74LS373 是三态同相八D锁存器 273与373的引脚排列是相同的,唯一的差别是两者1、11脚的功能不同. 对273 (1).1脚是复位CLR,低电平有效,当1脚是低电平时,输出脚2(Q0)、5(Q1)、6(Q2)、9(Q3)、12(Q4)、15(Q5)、16(Q6)、19(Q7)全部输出0,即全部复位; (2).当1脚为高电平时,11(CLK)脚是锁存控制端,并且是上升沿触发锁存,当11脚有一个上升沿,立即锁存输入脚3、4、7、8、13、14、17、18的电平状态,并且立即呈现在在输出脚2(Q0)、5(Q1)、6(Q2)、9(Q3)、12(Q4)、15(Q5)、16(Q
[单片机]
基于PIC24F16KA102单片机的16位MCU开发
本文介绍了PIC24F16KA102主要特性,方框图以及 XLP 16位MCU开发套件主要特性和XLP 16位开发板详细电路图。 Microchip 公司的PIC24F16KA102是极低16位MCU,采用改进型哈佛架构,32MHz时高达16MIPS,带4x PLL选择和多个除法选择的8MHz振荡器,17位x17位单周期硬件乘法器,32位x16位硬件除法器,16位x16位工作寄存器阵列,C编译器,运行模式的功耗低到8uA,深度睡眠模式的功耗为20nA,工作电压1.8V到 3.6V,住要用途包括RF传感器,数据采集器,温度传感器,电子门锁,测量传感器,遥控,安全传感器,智能卡和能量收获等。 PIC24F16KA102主要特性: P
[单片机]
基于PIC24F16KA102<font color='red'>单片机</font>的16位<font color='red'>MCU</font>开发
【GD32 MCU 入门教程】GD32 MCU 常见外设介绍(9)FWDG 模块介绍
9.1.FWDG 简介 本章我们主要分析独立看门狗(FWDG)的功能框图和它的应用。独立看门狗用通俗一点的话来解释就是一个12位的递减计数器,当计数器的值从某个值一直减到0的时候,系统就会产生一个复位信号,即FWDGTRSTF。如果在计数没减到0之前,刷新了计数器的值的话,那么就不会产生复位信号,这个动作就是我们经常说的喂狗。看门狗功能由 VDD 电压域供电,在停止模式和待机模式下仍能工作。独立看门狗定时器有独立的时钟源(IRC40K) 。 即使主时钟失效, FWDGT依然 能保持正常工作状态, 适用于需要独立环境且对计时精度要求不高的场合。 9.2.GD32 FWDG 外设原理简介 因篇幅有限,本文无法详细介绍GD32所有系列F
[单片机]
【GD32 <font color='red'>MCU</font> 入门教程】GD32 <font color='red'>MCU</font> 常见外设介绍(9)FWDG 模块介绍
热门资源推荐
热门放大器推荐
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
  • 学习ARM开发(16)
    ARM有很多东西要学习,那么中断,就肯定是需要学习的东西。自从CPU引入中断以来,才真正地进入多任务系统工作,并且大大提高了工作效率。采 ...
  • 学习ARM开发(17)
    因为嵌入式系统里全部要使用中断的,那么我的S3C44B0怎么样中断流程呢?那我就需要了解整个流程了。要深入了解,最好的方法,就是去写程序 ...
  • 学习ARM开发(18)
    上一次已经了解ARM的中断处理过程,并且可以设置中断函数,那么它这样就可以工作了吗?答案是否定的。因为S3C44B0还有好几个寄存器是控制中 ...
  • 嵌入式系统调试仿真工具
    嵌入式硬件系统设计出来后就要进行调试,不管是硬件调试还是软件调试或者程序固化,都需要用到调试仿真工具。 随着处理器新品种、新 ...
  • 最近困扰在心中的一个小疑问终于解惑了~~
    最近在驱动方面一直在概念上不能很好的理解 有时候结合别人写的一点usb的例子能有点感觉,但是因为arm体系里面没有像单片机那样直接讲解引脚 ...
  • 学习ARM开发(1)
  • 学习ARM开发(2)
  • 学习ARM开发(4)
  • 学习ARM开发(6)
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved