基于PIC的汽车倒车雷达1.doc

  1. 1、本文档共17页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于PIC的汽车倒车雷达1

前言………………………………………………………………1 课程设计的目的和要求……………………………………1 总体设计…………………………………………………………1 硬件设计…………………………………………………………5 软件设计…………………………………………………………9 系统操作说明……………………………………………………16 结束语……………………………………………………………17 参考文献…………………………………………………………17 前言 倒车障碍检测系统所采用的超声波传感器技术可以探测到附近的障碍物,为驾驶员提供倒车警告和辅助泊车功能,其原理是利用超声波探测倒车路径上或附近存在的任何障碍物,并及时发出警告。所设计的检测系统可以同时提供声光并茂的听觉和视觉警告,其警告表示是探测到了在盲区内障碍物的距离和方向。这样,在狭窄的地方不管是泊车还是开车,借助倒车障碍报警检测系统,驾驶员心理压力就会减少,并可以游刃有余地采取必要的动作。 随着人们对汽车辅助驾驶系统智能化要求的提高和汽车电子系统的网络化发展,新型的倒车雷达应能够连续测距并显示障碍物距离,并具有通信功能,能够把数据发送到汽车总线上去。本文介绍基于PICF4520的倒车雷达。 课程设计的目的和要求 课程设计的目的 单片机原理与课程设计的目的是综合训练利用单片机原理、C语言及电工电子技术等课程知识进行单片机应用系统设计的能力。根据设计题目的要求完成设计任务需求分析、系统方案总体设计及原理图绘制、程序流程图和代码编写等任务,设计一个能完成汽车倒车雷达任务的单片机系统。 课程设计的基本要求 利用单片机的超声波传感器设计一个汽车倒车雷达,实时测量和显示汽车尾部与障碍物的距离,当距离值小于程序设定值时发出声光报警,距离值可以通过串口传送到汽车总线上。 总体设计 2.1、基本工作原理 系统采用超声波测距原理。工作时,超声波发射器发出超声波脉冲,超声波接收器接收遇到障碍物反射回来的反射波,准确测量超声波从发射到遇到障碍物反射返回的时间,根据超声波的传播速度,可以计算出障碍物距离。超声波测距具有在近距离范围内有不受光线和雨雪雾的影响、结构简单、制作方便和成本低等优点。高性能的单片机结合超声波测距,可以实现功能强大、使用方便的倒车雷达。 2.2、硬件总体设计 2.2.1、系统组成方案 图1 倒车雷达系统框图 2.2.2、扩展单元编址 2.2.3、显示功能的定义 使用一个I/O端口(Port A或B或C或D)驱动LED 2.3、软件总体设计 2.3.1、存储单元的分配、标志位的定义 PICF4520芯片:内部程序存储器32K,数据存储器(1536字节RAM,256字节EPROM),18个中断源,5个I/O端口(Port A、B、C、D、E), 4个定时器,2个CCP模块。 使用Timer 0定时器产生40KHz的脉冲波用于超声波发送模块,用Timer 1定时器对超声波的发送和接收时间间隔进行计时,用Timer 2定时器产生PWM脉冲波,使提示声音随着距离值的减小而频率增大;用Timer 3定时器进行计数,每100ms产生一次高优先级中断,发生中断后使Timer 0定时器产生40KHz的方波。 使用一个I/O端口(Port A或B或C或D)驱动LED 2.3.2、主程序框图及清单  程序清单: void main (void) { char selectpattern; char a; ADCON1=OX7F; TRISBbits.TRISB4=0; //program RB4 as output TRISBbits.TRISB0=1; //program RB0 as input TRISCbits.TRISC0=0; //program RC0 as output TRISCbits.TRISC1=0; //program RC1 as output TRISCbits.TRISC2=0; //program RC2 as output TRISCbits.TRISC6=0; //program RC6 as output TRISCbits.TRISC7=1; //program RC7 as input TRISD=0; //PortD as output TRISE=0; //General purpose I/O mode,RE0,RE1,RE2 as output T0CON=0x48; //select internal clock and a prescaler of divide by 1 RCONbits.IPEN=1; //IPEN=1 TMR1L=0; //Preload

文档评论(0)

2017meng + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档