超声波测距仪毕业论文Proteus仿真(1602显示超声波测距的C语言程序和Proteus仿真图)

1.1602显示超声波测距的C语言程序和Proteus仿真图

#include"reg52.h"#include"intrins.h"#define uchar unsigned char //无符号8位#define uint unsigned int //无符号16位#define ulong unsigned long //无符号32位 sbit K1=P1^0; //按下K1后,开始测距 sbit LEDRed=P1^1; //测距指示灯,亮表示正在测距,灭表示测距完成//sbit BEEP=P1^2; //报警测量超出范围 sbit Trig=P2^5; //HC-SR04触发信号输入 sbit Echo=P2^6; //HC-SR04回响信号输出 float xdata DistanceValue=0.0; //测量的距离值 float xdata SPEEDSOUND; //声速 float xdata XTALTIME; //单片机计数周期 uchar xdata stringBuf[6]; //数值转字符串缓冲//LCD1602提示信息 uchar code Prompts[][16]= { {"Measure Distance"}, //测量距离 {"- Out of Range -"}, //超出测量范围 {"MAX range 400cm "}, //测距最大值400cm {"MIN range 2cm "}, //测距最小值2cm {" "}, //清屏 {" Press K1 Start "} //按键开始测量 }; uchar xdata DistanceText[]="Range: "; //测量结果字符串 uchar xdata TemperatureText[]="Temperature: ";//测量温度值 extern void LCD_Initialize(); //LCD初始化 extern void LCD_Display_String(uchar *, uchar); //字符串显示 extern void (); //从DS18B20读取温度值 extern int xdata CurTempInteger;//毫秒延时函数 void DelayMS(uint ms);//20微秒延时函数 void Delay20us();//HCSR04初始化 void HCSR04_Initialize();//测量距离 float MeasuringDistance();//测距的数值排序求平均 float DistanceStatistics();//输出距离值到LCD1602上 void DisplayDistanceValue(float dat);//将无符号的整数转成字符串,返回字符串长度,不包括'\0'结束符 uchar UnsigedIntToString(uint value);//蜂鸣器//void Beep(uchar time);//显示温度值 void (); void main() { LCD_Initialize();//LCD1602初始化 LCD_Display_String(Prompts[0],0x00); LCD_Display_String(Prompts[5],0x40); (); //测温度 HCSR04_Initialize(); //HC-SR04初始化 while(1) { if(K1==0) { DelayMS(5); if(K1==0) { //Beep(1); while(K1==0); LEDRed=0; ();//测温度 (); if(CurTempInteger<14) CurTempInteger=14; else if(CurTempInteger>26) CurTempInteger=26; SPEEDSOUND=334.1+CurTempInteger*0.61;//计算声速 DistanceValue=DistanceStatistics(); //测距并返回距离值 DisplayDistanceValue(DistanceValue); //显示距离值 LEDRed=1; } } } }//测距的数值排序求平均 float DistanceStatistics() { uchar i,j; float disData[7],t;//连续测距 for(i=0;i<7;i++) { disData=MeasuringDistance(); DelayMS(80); }//排序 for(j=0;j<=6;j++) { for(i=0;i<7-j;i++) { if(disData>disData[i+1]) { t=disData; disData=disData[i+1]; disData[i+1]=t; } } } return (disData[2]+disData[3]+disData[4])/3; }//测量距离 float MeasuringDistance() {//最大定时时间约65ms TH0=0; TL0=0;//生成20us的脉冲宽度的触发信号 Trig=1; Delay20us(); Trig=0;//等待回响信号变高电平 while(!Echo); TR0=1; //启动定时器0//等待回响信号变低电平 while(Echo); TR0=0; //关闭定时器0//返回距离值(mm) return (SPEEDSOUND*XTALTIME*((float)TH0*256+(float)TL0))/2000; }//HCSR04初始化 void HCSR04_Initialize() {//计算单片机计数周期 晶振=11.953M 单位us XTALTIME=12/11.953;//温度25度时声速的值 SPEEDSOUND=334.1+25*0.61; Trig=0; Echo=0; TMOD=0x01; }//输出距离值到LCD1602上 void DisplayDistanceValue(float dat) { uchar i=0,j=0,len; uint value; value=(uint)dat;//范围检查大于4000mm和小于20mm都为超出测量范围 if(value>4000) { LCD_Display_String(Prompts[1],0x00); LCD_Display_String(Prompts[2],0x40); //Beep(2); } else if(value<20) { LCD_Display_String(Prompts[1],0x00); LCD_Display_String(Prompts[3],0x40); //Beep(2); } else { //将数值转换成字符串 len=UnsigedIntToString(value); //保留1位小数 while(stringBuf!='\0') { if(len-j==1) { DistanceText[6+j]='.'; j++; }else { DistanceText[6+j]=stringBuf; i++; j++; } } DistanceText[6+j]='c'; j++; DistanceText[6+j]='m'; i=7+j; //剩余位置补空格 while(i<16) { DistanceText=' '; i++; } //LCD_Display_String(Prompts[0],0x00); LCD_Display_String(DistanceText,0x40); } }//显示温度值 void () { TemperatureText[13]=CurTempInteger/10+'0'; TemperatureText[14]=CurTempInteger+'0'; TemperatureText[15]='C'; LCD_Display_String(TemperatureText,0x00); }//将无符号的整数转成字符串,返回字符串长度 uchar UnsigedIntToString(uint value) { uchar i=0,t,length;//从个位开始转换 do { stringBuf='0'+value; value=value/10; i++; }while(value!=0); length=i;//将字符串颠倒顺序 for(i=0;i<(length/2);i++) { t=stringBuf; stringBuf=stringBuf[length-i-1]; stringBuf[length-i-1]=t; } stringBuf[length]='\0'; return length; }//蜂鸣器//延时函数 毫秒 @12.000MHz void DelayMS(uint ms。

2.基于61单片机的超声波测距毕业论文

[自动化]基于SPCE061A超声波测距仪设计

【摘要】超声波测距技术在当今社会生活中已有很广泛的应用,本论文在了解超声波测距原理的基础上,完成了基于时差测距原理的一种超声波测距系统的软硬件设计,其中的控制芯片是采用凌阳公司开发的SPCE061A系列单片机。论文着重介绍了SPCE061A与超声波测距模块组成的超声波测距系统的组成原理以及应用,另外也介绍了LED显示等模组的应用。该系统可广泛应用于小距离测距、机器人检测、车辆倒车雷达以及家居安防系统等应用方案。最后实际使用表明能实现基本测量。

【关键词】SPCE061A 超声波 距离测量

目 录

一、引言 4

二、凌阳SPCE061A简介 5

2.1总述 5

2.2性能 5

2.3结构概览 6

2.4 61板卡说明 7

三、系统分析与设计 9

3.1超声波测距基本原理 9

3.2系统总体方案介绍 10

四、硬件电路设计 11

4.1 超声波发射模块 11

4.2 超声波接受模块 11

4.3键盘模块 12

4.4 LED显示模块 12

4.5 超声波测距系统工作过程 14

五、以SPCE061A为核心的软件设计 15

5.1 总体设计 15

5.2 测距算法 16

5.3系统调试 18

六、系统的测试与结果分析 21

6.1 系统误差分析 21

6.2 系统测试 21

七、结束语 22

八、参考文献 23

九、致谢 24

十、附录(源程序)25

超声波测距仪毕业论文Proteus仿真

转载请注明出处众文网 » 超声波测距仪毕业论文Proteus仿真(1602显示超声波测距的C语言程序和Proteus仿真图)

资讯

毕业论文英文文献用什么格式(英文文献格式)

阅读(78)

本文主要为您介绍毕业论文英文文献用什么格式,内容包括英文文献格式,英文论文的参考文献是怎样的格式,毕业论文英文文献格式。[24] Allen, Richard S, Charles S. White, Margaret B. Takeda, Rewards

资讯

历史学毕业论文研究可行性分析(毕业论文开题报告中)

阅读(81)

本文主要为您介绍历史学毕业论文研究可行性分析,内容包括论文的可行性分析怎么写,毕业论文开题报告中实现预期目标的可行性分析怎么写,论文的可行性分析怎么写。可行性分析是对技术的环境可行、经济可行、政策可行、技术可行进行分析,以此来

资讯

大学英语毕业论文格式模板(英文论文的详细格式)

阅读(79)

本文主要为您介绍大学英语毕业论文格式模板,内容包括英文论文的详细格式,英语专业毕业论文格式,英语毕业论文的范文和格式。英文论文的详细格式:标题 一篇较长的英语论文(如英语毕业论文)一般都需要标题页,其书写格式如下:第一行标题与打印纸顶

资讯

毕业论文理论基础写什么(毕业论文的理论基础怎么写)

阅读(96)

本文主要为您介绍毕业论文理论基础写什么,内容包括毕业论文的理论基础怎么写,研究生论文中的“理论基础”究竟要写什么,毕业论文研究基础写什么。就是说从理论上找到证据,在行动之前要从理论上去论证行动的合理性,必要性等等。基础理论指一门

资讯

孙宝云富勒烯毕业论文(富勒烯产品有什么好处)

阅读(90)

本文主要为您介绍孙宝云富勒烯毕业论文,内容包括富勒烯水在那些生物医学领域有应用,富勒烯水在生物医学领域应用,富勒烯水除了在医学领域之外,还在那些领域有应用。富勒烯有去皱补水保湿的作用,人体和皮肤的衰老有80%的原因是体内产生过剩zi

资讯

本科毕业论文查重维普靠谱(毕业论文用维普检测可靠吗)

阅读(97)

本文主要为您介绍本科毕业论文查重维普靠谱,内容包括毕业论文用维普检测可靠吗我的抄袭率是11.91%能不能通过各位,毕业论文用维普或者万方检测可靠吗,毕业论文用维普或者万方检测可靠吗。现在国内正规的论文检测系统有3家,分别是知网、万方

资讯

英专翻译方向毕业论文答辩ppt(英语专业毕业答辩ppt模板)

阅读(141)

本文主要为您介绍英专翻译方向毕业论文答辩ppt,内容包括英语专业论文答辩的ppt怎么写,英语专业毕业答辩ppt模板,英语专业论文答辩的ppt怎么写。就用ppt自带的模版 越素越好 推荐蓝底白字或白底黑字 字都加粗在ppt中不要出现句子 顶多是词组

资讯

毕业论文网站的摘要(网页设计论文摘要)

阅读(89)

本文主要为您介绍毕业论文网站的摘要,内容包括网页设计论文摘要,毕业论文的摘要写什么,毕业论文摘要怎么写。原发布者:pwstrick流式布局百分号计算目标元素宽度÷上下文元素宽度=百分比宽度二、em计算浏览器的默认字体大小是16px2、如果元

资讯

研究生毕业论文盲审申诉书范文(硕士生盲审格式)

阅读(146)

本文主要为您介绍研究生毕业论文盲审申诉书范文,内容包括硕士论文答辩未通过申诉书怎么写,硕士生盲审格式,硕士毕业论文盲审挂了,该不该申诉。研究生盲审通过几率和非盲审的差不多。盲审和非盲审的区别很小,只是去掉了学生和导师的信息,让专

资讯

国标舞毕业论文选题(体育舞蹈论文题目)

阅读(97)

本文主要为您介绍国标舞毕业论文选题,内容包括体育舞蹈论文题目,舞蹈专业的毕业论文题目,舞蹈论文题目哪个好写。舞蹈论文题目一:宋代乐器研究萨拉萨蒂创作演奏的风格特征及其文化分析《古希腊音乐文献》研究宋代宫廷燕乐盏制研究18世纪欧洲

资讯

毕业论文李京雄(毕业论文Abstract怎么写)

阅读(84)

本文主要为您介绍毕业论文李京雄,内容包括毕业论文Abstract怎么写,十天里写篇论文要一万五千字可能吗,毕业论文的谢辞怎么写。毕业论文Abstract怎么写?毕业论文的Abstract简单说就是毕业论文的英文摘要,先把中文摘要写好,然后翻译成英文就可以

资讯

毕业论文燃煤锅炉烟气脱硝技术(烟气脱硝的技术)

阅读(76)

本文主要为您介绍毕业论文燃煤锅炉烟气脱硝技术,内容包括烟气脱硝的技术,烟气脱硝烟气脱硝方法及技术谁能告诉我烟气如何脱硝,通常采用什,锅炉烟气的两种脱硝技术你知道多少。适用性及特点 优点与不足 脱硝率 投资 SCR 适合排气量大,连续排

资讯

ps毕业论文的大纲(PS论文提纲怎么写)

阅读(99)

本文主要为您介绍ps毕业论文的大纲,内容包括PS论文提纲怎么写,关于PS的毕业论文怎么写啊、、谢谢啊,Photoshop论文怎么写。毕业论文是教学科研过程的一个环节,也是学业成绩考核和评定的一种重要方式。毕业论文的目的在于总结学生在校期间的

资讯

毕业论文英文文献用什么格式(英文文献格式)

阅读(78)

本文主要为您介绍毕业论文英文文献用什么格式,内容包括英文文献格式,英文论文的参考文献是怎样的格式,毕业论文英文文献格式。[24] Allen, Richard S, Charles S. White, Margaret B. Takeda, Rewards

资讯

历史学毕业论文研究可行性分析(毕业论文开题报告中)

阅读(81)

本文主要为您介绍历史学毕业论文研究可行性分析,内容包括论文的可行性分析怎么写,毕业论文开题报告中实现预期目标的可行性分析怎么写,论文的可行性分析怎么写。可行性分析是对技术的环境可行、经济可行、政策可行、技术可行进行分析,以此来

资讯

大学英语毕业论文格式模板(英文论文的详细格式)

阅读(79)

本文主要为您介绍大学英语毕业论文格式模板,内容包括英文论文的详细格式,英语专业毕业论文格式,英语毕业论文的范文和格式。英文论文的详细格式:标题 一篇较长的英语论文(如英语毕业论文)一般都需要标题页,其书写格式如下:第一行标题与打印纸顶

资讯

毕业论文理论基础写什么(毕业论文的理论基础怎么写)

阅读(96)

本文主要为您介绍毕业论文理论基础写什么,内容包括毕业论文的理论基础怎么写,研究生论文中的“理论基础”究竟要写什么,毕业论文研究基础写什么。就是说从理论上找到证据,在行动之前要从理论上去论证行动的合理性,必要性等等。基础理论指一门

资讯

孙宝云富勒烯毕业论文(富勒烯产品有什么好处)

阅读(90)

本文主要为您介绍孙宝云富勒烯毕业论文,内容包括富勒烯水在那些生物医学领域有应用,富勒烯水在生物医学领域应用,富勒烯水除了在医学领域之外,还在那些领域有应用。富勒烯有去皱补水保湿的作用,人体和皮肤的衰老有80%的原因是体内产生过剩zi

资讯

本科毕业论文查重维普靠谱(毕业论文用维普检测可靠吗)

阅读(97)

本文主要为您介绍本科毕业论文查重维普靠谱,内容包括毕业论文用维普检测可靠吗我的抄袭率是11.91%能不能通过各位,毕业论文用维普或者万方检测可靠吗,毕业论文用维普或者万方检测可靠吗。现在国内正规的论文检测系统有3家,分别是知网、万方

资讯

工技大的毕业论文模板在哪里(毕业论文素材在哪里能找到)

阅读(95)

本文主要为您介绍工技大的毕业论文模板在哪里,内容包括毕业论文素材在哪里能找到,毕业论文范文一般去哪里找,英文论文的模板哪里可以找到明年毕业论文要用到急需帮助。很多同学在写毕业论文的时候,首先就是要搜集一些写作素材,当你在网页上搜