《超声测距仪》课程设计.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《超声测距仪》课程设计

电子系统综合设计与实践报告 超声测距仪的制作 学生姓名: 学生学号: 学生班级: 指导老师: 实验日期: 一、方案论证选择 在很多特殊场合基于传统的方法测量距离存在不可克服的缺陷,超声波测距能很好的解决此类的问题 二、实验原理超声波是由机械振动产生的,可在不同介质中以不同的速度传播,具有定向性好、能量集中、传输过程中衰减较小、反射能力较强等优点。超声波传感器可广泛应用于非接触式检测方法,它不受光线、被测物颜色等影响,对恶劣的工作环境具有一定的适应能力,因此在水文液位测量、车辆自动导航、物体识别等领域有着广泛的应用。   超声波发射器向某一方向发射超声波,在发射时刻的同时开始计时,超声波在空气中传播,途中碰到障碍物就立即返回来,超声波接收器收到反射波就立即停止计时。超声波在空气中的传播速度为340m/s,根据计时器记录的时间t,就可以计算出发射点距障碍物的距离(s),即:s=340t/2 。这就是所谓的时间差测距法。   超声波测距的原理是利用超声波在空气中的传播速度为已知,测量声波在发射后遇到障碍物反射回来的时间,根据发射和接收的时间差计算出发射点到障碍物的实际距离。由此可见,超声波测距原理与雷达原理是一样的。   测距的公式表示为:L=C×T   式中L为测量的距离长度;C为超声波在空气中的传播速度;T为测量距离传播的时间差(T为发射到接收时间数值的一半)。   三超声波测距系统的电路设计 图表 1 三极管 图表 2 CONN 图表 3 LED驱动 图表 4 PCB板 图表 5 单片机 图表 6 电源部分 图表 7 接地 图表 8 接地部分 图表 9 接收发送2 图表 10 接收发送1 四、程序设计 #includeSTC12C5410AD.h #includeintrins.h #define uint unsigned int #define uchar unsigned char #define duan_ma P1 // sbit H1 = P3^3; sbit H2 = P3^4; sbit H3 = P3^5; sbit chaosb_t = P3^7; uchar map[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; //七段共阳LED显示数码转换为笔段码0--9。 uint juli=0; //juli用于存放距离值 uint t_no=0; //t_no用于存放发射到接受的T0的计数值 uchar pulse_t = 0; //pulse_t用于存放发射的脉冲个数 uchar pulse_r = 0; //pulse_r用于存放接收的脉冲个数 bit b=1; uint dd=0; //STC12C4052在11.0592MHz晶振下(1T时钟时)的1毫秒延时子程序 //---------------------延时------------------------ void delay1ms(uint time) //11.0592M晶振 1ms { uint i; uint j; k=time*3; //修正值 for (i=0;itime;i++) { j=690; //164 //j=680:1s==990ms;5s==4.940s;8s==7.910s j=690:100ms==101ms;500ms==501ms;1s==1.004s while(j--); } } void display(uint number) //数码管显示程序,可以显示的数值范围为十进制的0~999。 { uchar bai=0,shi=0,ge=0; bai= number%1000/100; shi= number%100/10; ge = number%10; duan_ma=map[bai]; H1=0; H2=1; H3=1; delay1ms(2); //保证每一位都显示一定的时间,否则数码管会点不亮并且闪烁。 H1=1;H2=1;H3=1; duan_ma=map[shi]; H2=0; H1=1; H3=1; delay1ms(2); // H1=1;H2=1;H3=1; duan_ma=map[ge]; H3=0; H1=1; H2=1; delay1ms(2); // H1=1;H2=1;H3=1; } void IOinit() //复位时

文档评论(0)

cgtk187 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档