版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、综合实训报告 20 20 学年第 学期实训名称: 单片机倒车测距仪 指导教师: 李春梅 学 院: 自动化与电气工程学院 班 级: 电传1111班 姓 名: 111111 学 号: 111111111111 2012 年 10 月 日格式要求:正文小四宋体,段落间距18磅。段落标题四号宋体加粗。题目三号黑体。字数要求:1500字-3000字结构:题目一 综合实训的主要内容二 硬件方案设计元器件选择,功能、原理说明,三 软件编程程序流程图等,主要功能的程序实现四 总结五 附(硬件电路图,实物图,实验结果等)单片机倒车测距仪一 综合实训的主要内容随着我国科学技术的发展,汽车的数量也逐步增加,由此产生
2、的交通问 题也来越受到人们的关注,单片机倒车测距仪的出现,使人们的安全有了更大的保障。单片机倒车测距仪能够检测车后障碍物离车辆的距离,并且能够显示距离,且可根据不同的距离发出不同的声音,以提醒驾车员。本次设计分为三个部分:测距模块,显示模块,蜂鸣器发声模块。二 硬件方案设计我们选用STC89C52单片机,HC-SR04,1602液晶,蜂鸣器 STC89C52单片机作为它的中心控制模块,HC-SR04作为超声波检测模块,1602作为测得结果的显示模块,蜂鸣器是用来发出不同声音的2.1 单片机的定义 单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储
3、器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。2.2 stc89C52单片机的介绍2.2.1 系统概述STC89C52是STC公司生产的一种低功耗、高性能CMOS8位微控制器,具有 8K 在系统可编程Flash存储器。STC89C52使用经典的MCS-51内核,但做了很多的改进使得芯片具有传统51单片机不具备的功能。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方
4、案。 具有以下标准功能: 8k字节Flash,512字节RAM, 32 位I/O 口线,看门狗定时器,内置4KB EEPROM,MAX810复位电路,3个16 位定时器/计数器,4个外部中断,一个7向量4级中断结构(兼容传统51的5向量2级中断结构),全双工串行口。另外 STC89C52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。最高运作频率35MHz,6T/12T可选。12.2.2 stc89C52的功能
5、及特点8K字节程序 存储空间; 512字节数据存储空间; 内带4K字节EEPROM存储空间; 可直接使用串口下载;2.2.3stc89C52单片机的最小系统引脚图2.3超声波测距模块2.3.1超声波模块HC-SR04的功能HC-SR04超声波测距模块可提供2cm-400cm的非接触式距离感测功能,测距精度可达高到3mm;模块包括超声波发射器、接收器与控制电路 2.3.2 主要技术参数:1:使用电压:DC-5V 2:静态电流:小于2mA 3:电平输出:高5V 4:电平输出:底0V 5:感应角度:不大于15度 6:探测距离:2cm-450cm 7:高精度 可达0.2cm 接线方式:VCC、trig
6、(控制端)P24、 echo(接收端)P25、 GND 原理图 2.3.3工作原理(1)采用IO口TRIG触发测距,给至少10us的高电平信号; (2)模块自动发送8个40khz的方波,自动检测是否有信号返回; (3)有信号返回,通过IO口ECHO输出一个高电平,高电平持续的时间就是超声波从发射到返回的时间。测试距离=(高电平时间*声速(340M/S)/2; 本模块使用方法简单,一个控制口发一个10US以上的高电平,就可以在接收口等待高电平输出.一有输出就可以开定时器计时,当此口变为低电平时就可以读定时器的值,此时就为此次测距的时间,方可算出距离.如此不断的周期测,即可以达到你移动测量的值2.
7、3.4超声波时序图2.3.5 操作过程初始化时将trig和echo端口都置低,首先向给 trig 发送至少10 us的高电平脉冲(模块自动向外发送8个40K的方波),然后等待,捕捉 echo 端输出上升沿,捕捉到上升沿的同时,打开定时器开始计时,再次等待捕捉echo的下降沿,当捕捉到下降沿,读出计时器的时间,这就是超声波在空气中运行的时间,按照 测试距离=(高电平时间*声速(340M/S)/2 就可以算出超声波到障碍物的距离。2.4 1602液晶显示模块 2.4.1 1602功能简介 1602液晶是一种字符型的液晶,它可以显示16*2的32个字符,即16列2行液晶显示的原理是利用液晶的物理特性
8、,通过电压对其显示区域进行控制,有电就有显示,这样即可以显示出图形。液晶显示器具有厚度薄、适用于大规模集成电路直接驱动、易于实现全彩色显示的特点,目前已经被广泛应用在便携式电脑、数字摄像机、移动信工具等众多领域。 实物图 原理图2.4.2 1602的管脚1602采用标准的16脚接口,其中: 第1脚:VSS为电源地 第2脚:VDD接5V电源正极 第3脚:V0为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高(对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度)。 第4脚:RS为寄存器选择,高电平1时选择数据寄存器、低电平0时选择指令寄存器。 第5脚:RW为读
9、写信号线,高电平(1)时进行读操作,低电平(0)时进行写操作。 第6脚:E(或EN)端为使能(enable)端。 第714脚:D0D7为8位双向数据端。 第1516脚:空脚或背灯电源。15脚背光正极,16脚背光负极。2.4.31602液晶的工作原理1602液晶模块内部的字符发生存储器(CGROM)已经存储了160个不同的点阵字符图形,这些字符有:阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码,比如大写的英文字母“A”的代码是01000001B(41H),显示时模块把地址41H中的点阵字符图形显示出来,我们就能看到字母“A”。 因为1602识别的是ASCII
10、码,试验可以用ASCII码直接赋值,在单片机编程中还可以用字符型常量或变量赋值,如'A。通过查找1602的16进制ASCII码地址表,并把地址传送给1602,当然在传送之前需要对1602进行初始化2.4.41602液晶的操作控制 读状态 输入RS=0,RW=1,E=1 写指令 输入 RS=0,RW=0,D07=指令码,E=H脉冲 读数据 输入 RS=1,RW=1,E=1 写数据 输入 RS=1,RW=0,D07=数据,E=H脉冲1602液晶的初始化写指令38H : 显示模式的设置写指令08H : 显示关闭写指令01H : 显示清屏写指令06H : 显示光标移动设置写指令0cH: 显示开
11、及光标设置每次读写前,需要进行忙检测再把需要显示的字符的地址输入此设计是测试距离,在初始化后,把“distance”给1602液晶,当测距模块测得距离后,经单片机处理后把数值给1602液晶2.5蜂鸣器模块 原理图2. 5.1蜂鸣器模块的功能蜂鸣器作为一个发声模块,只有两个引脚,单片机时不能直接驱动蜂鸣器的,所以需要一个驱动电路来使得蜂鸣器工作,此电路是利用PNP三极管来驱动蜂鸣器。此时单片机通过某一引脚产生不同频率的方波来驱动蜂鸣器发出不同的声音2.5.2蜂鸣器工作原理按上图所示,当P23为高电平时,三极管截止,此时蜂鸣器是不响的,但是当这个引脚为低电平时,三极管导通,蜂鸣器发出响声。这样,通
12、过改变蜂鸣器高低电平的时间,从而发出不同频率的声音。测距模块把测得的距离给单片机,单片机处理后,单品机给蜂鸣器不同频率的方波,发出不同频率的声音。此设计分成三段,距离<5厘米,距离>5厘米且距离<10厘米和距离>10厘米三段,不同的段发出不同的声音。三 软件编程3.1 程序流程图3.2 c语言程序#include<reg52.h>sbit RS=P20;/当RS=0时,读出的状态或写入的是指令,RS=1时表示写入或独读出的是数据sbit RW=P21;/读写转换sbit EG=P22; /始能端控制sbit feng=P23;sbit trig=P25;sb
13、it test=P24;unsigned int distance;unsigned int m;unsigned char count;void write_com(unsigned char n);void delay(unsigned int t);void write_data(unsigned char k);unsigned char check_busy();void LCD_Write_String(unsigned char x,unsigned char y,unsigned char *s); void LCD_Clear(); void display(unsigned
14、 int number);unsigned int check_distance(); void display(unsigned int c);void compara(unsigned int a);void intial() TMOD = 0x01; /定时器1初始化,设置为16位自动重装模式 TL0 = 0x66;TH0 = 0xfc; /1ms ET0 = 1; /开定时器2EA = 1; /总中断使能write_com(0x38); /设置显示模式,2*16,5*7D的点阵,8位数据口delay(5); write_com(0x38); write_com(0x08); /关闭显示
15、和光标 write_com(0x06); /当写一个字符时整屏不移动,只有光标移动 write_com(0x01); /表示清屏delay(5); write_com(0x0c);/显示开关及光标设置 void LCD_Clear(void) write_com(0x01); delay(5); void write_com(unsigned char n)/写入指令 while(check_busy()=0x80); /检测液晶是否处在忙的状态,只有在不忙时,才进行下一步 RS=0; RW=0; P0=n; EG=1; delay(5); EG=0;unsigned char check_b
16、usy() P0=0xFF;/检测最高位,如果是1,说明是在忙的状态 RS=0; RW=1; EG=0; delay(10); EG=1; return (P0&0x80); void write_data(unsigned char k)/表示写入数据 while(check_busy()=0x80); /检测液晶是否处在忙的状态,只有在不忙时,才进行下一步 RS=1; RW=0; P0=k; delay(5); EG=1; delay(5); EG=0; void LCD_Write_String(unsigned char x,unsigned char y,unsigned c
17、har *s) if (y = 0) write_com(0x80 + x); /表示第一行 else write_com(0xC0 + x); /表示第二行 while (*s) write_data( *s); s +; void delay(unsigned int t) while(t-);void main() intial(); LCD_Clear();/清屏 LCD_Write_String(2,0,"distance "); while(1) m=check_distance(); /检测距离 compara(m); display(m); delay(10
18、00); void display(unsigned int number) unsigned int ge,shi,bai,qian; qian= (number / 1000);bai= (number / 100) % 10;shi= (number / 10) % 10; ge = number % 10;write_com(0xc0 + 0x08); write_data(qian + 48);write_data(bai + 48);write_data(shi+ 48);write_data(ge+ 48); /小数点的ASCIIwrite_data(46); write_dat
19、a(99); /"c"的ASCII write_data(109); /"m"的ASCIIunsigned int check_distance() unsigned char l;unsigned int h,y; trig=0;test=0; trig=1;delay(20);trig=0;while(test=0); /超声波回波检测TR0=1;while(test=1);TR0=0; l = TL0;/这里读取它的小数点后的数据h = TH0;y = (h << 8) + l;y = y - 0xfc66; /us部分 distance =
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年大学分子生物学(基因表达调控)试题及答案
- 2025年大学本科(工商管理)企业管理案例分析阶段测试题及答案
- 2025年高职城市轨道交通通信信号技术(城市轨道交通信号系统)试题及答案
- 2025年高职化工仪表技术(化工仪表校准)试题及答案
- 2025年中职人工智能技术应用(AI技术基础原理)试题及答案
- 2025年大学大四(林产化工)林产精细化学品工艺学阶段测试试题及答案
- 2025年高职(工商企业管理)企业管理试题及答案
- 2025年大学舞蹈学(舞蹈教育心理学)试题及答案
- 2025年高职(助产)妇科护理综合测试题及答案
- 2025年高职(建设工程监理)建设工程合同管理试题及答案
- 2026年消防设施操作员之消防设备基础知识考试题库500道及完整答案(各地真题)
- 2026年电信运营商物资管理岗位面试题
- 2025年高职会计(成本核算)试题及答案
- 虫鼠害培训课件
- 2025学年上海市七年级语文上册作文题目汇编及解析
- 2026年河南经贸职业学院单招职业技能测试题库及参考答案详解
- 栏杆安装施工方案示例
- JJF 2333-2025 恒温金属浴校准规范
- 2025年水工金属结构行业分析报告及未来发展趋势预测
- 软件产品项目管理方案
- 2024年勤学之星个人事迹材料简介
评论
0/150
提交评论