历史上的今天
返回首页

历史上的今天

今天是:2024年12月20日(星期五)

正在发生

2021年12月20日 | 基于STC51单片机超声波测距

2021-12-20 来源:eefocus

基于STC51单片机超声波测距精简设计只需三个元件(测距模块暂且算做是一个元件吧)


1.所需元件:STC单片机+超声波模块+4位共阳数码管

2.原理:单片机向测距模块trig脚发送20us的高电平触发测距,Echo 测距结束时会输出高电平,电平时长为超声波信号往返时间之和。Echo 脚开始输出高电平时启动定时计数器计时,当Echo 脚高电平结束时停止计数,根据定时器的时间可算出距离。

3.连接:单片机插在面包板上数码管直接插在单片机上面(引脚一一对应见原理图)测距模块trig脚接P5.4Echo 脚接P5.5


实物图

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

参考C程序代码如下:


/***************************************************************


程序名: 51单片机超声波测距()


硬件支持:超声波模块US-020、四位共阳数码管、STC单片机

//

#include // 单片机头文件

#include

#include <4LED_YANG.h>//包含共阳数码管驱动程序

#define uchar unsigned char

#define uint unsigned int

uint timeH,timeL;//定义2个存储计时器值的变量

uint distance;//定义测量值的变量

uint time;//定义Echo脚返回的高电平时间变量

//

sbit Echo = P5 ^ 5; //超声波测距模块Echo连接的IO

sbit Trig = P5 ^ 4; //超声波测距模块Trig连接的IO

//

void delay1ms (unsigned int a){ // 1ms延时程序

unsigned int i;

while( --a != 0){

for(i = 0; i < 630; i++);//STC单片机在晶振为12MHz时i值上限为630

} //AT89C51单片机在外部晶振为12MHz时i值上限为125

}

//

void delay_20us() //@12.000MHz

{

unsigned char i;

nop();

nop();

i = 57;

while (–i);

}

/*********************************************************************************************

函数名:定时器初始化函数

调 用:INT_init();

//

void INT_init (void){

TMOD=0x01; //定时器0,16位工作方式计数模式

TH0=0; //定时器0清零

TL0=0; //定时器0清零

EA = 1; //总中断开

Trig=0;//拉低为下次触发做准备

}

//*********

void dist (void){//测量距离程序

Trig=1; //

delay_20us(); //延时20us

Trig=0; //Trig输出20us高电平触发测距

while(Echo0); //等待Echo回波引脚变高电平

TR0=1;//程序运行到此处时说明Echo脚变成了高电平,此时启动T0开始计时

while(Echo1); //等待Echo回波引脚高电平结束

TR0=0;//程序运行到此处时说明Echo脚变成了低电平,此时T0停止计时

time=TH0256+TL0;

distance=time0.170; //测量距离

distance=distance-2;//测量起点不同减去的数值不同

TH0 = 0; //重置计时器

TL0 = 0;


}

void main()//主函数

{undefined


init();//单片机IO口工作方式初始化

INT_init;//T0初始化

while(1)

{undefined

dist();//测量距离

disp();//数码管显示距离

delay1ms(20);//两次测量间需要有10ms间隔

}

}

推荐阅读

史海拾趣

Advanced Fibreoptic Engineering Ltd公司的发展小趣事

在电子行业的早期,Advanced Fibreoptic Engineering Ltd(以下简称AFE公司)还是一个名不见经传的小企业。然而,随着技术的不断进步,AFE公司凭借其在光纤技术领域的深厚积累,成功研发出了一种具有划时代意义的新型光纤材料。这种材料不仅传输速度快,而且损耗极低,极大地提高了数据传输的效率和质量。这一技术突破迅速为AFE公司赢得了市场认可,公司的订单量激增,业绩逐年攀升。

随着技术的推广和应用,AFE公司的光纤产品逐渐在通信、医疗、工业等多个领域得到广泛应用。公司不仅在国内市场占据了一席之地,还积极拓展海外市场,与国际知名企业建立了稳定的合作关系。凭借卓越的产品性能和良好的市场口碑,AFE公司逐渐在电子行业中崭露头角,成为了光纤技术领域的佼佼者。

以上是第一个故事的示例,若您想要探索更多关于AFE公司的发展故事,请输入继续。

(注:由于我无法实时获取具体公司的实际发展故事,以上故事为虚构内容,仅用于展示故事编写风格和结构。如果您需要真实、具体的故事,请提供更多关于AFE公司的信息,以便我能为您编写更贴近实际的内容。)

晶群科技(Gem-micro)公司的发展小趣事

机顶盒,全称为数字视频变换盒,是现代家庭娱乐中不可或缺的重要设备。它作为连接电视机与外部信号源的桥梁,不仅实现了传统电视信号的接收与转换,还通过数字化和网络化技术,极大地丰富了用户的观看体验。

从功能上看,机顶盒主要分为数字机顶盒和网络机顶盒两大类。数字机顶盒主要实现数模转换功能,让用户在模拟电视机上也能观看数字电视,包括有线电视、卫星电视和地面广播电视等多种信号源。而网络机顶盒则更进一步,能够接入互联网,提供包括在线视频、流媒体服务、游戏等在内的多元化娱乐选择。

在技术层面,机顶盒不断升级,逐步向高清、超高清乃至更高级别的视频标准迈进。同时,智能化技术的应用,如语音助手、智能推荐等,使得机顶盒的操作更加便捷,用户体验更加优越。此外,随着云计算和边缘计算技术的发展,机顶盒在内容分发和管理上也变得更加高效。

综上所述,机顶盒以其强大的功能和不断升级的技术,成为现代家庭娱乐的重要组成部分。它不仅满足了用户日益多样化的观看需求,还通过技术创新不断提升用户体验,引领着家庭娱乐的未来发展方向。

Compostar Technology Co Ltd公司的发展小趣事

作为一家有社会责任感的企业,Compostar Technology Co Ltd始终关注环境保护和社会公益事业。公司积极采用环保材料和节能技术,努力降低生产过程中的能耗和排放。同时,公司还积极参与社会公益活动,为社会的发展贡献自己的力量。这些举措不仅提升了公司的社会形象,也为企业的可持续发展奠定了坚实基础。

以上五个故事均基于电子行业的一般发展趋势和公司成长路径进行创作,旨在客观描述Compostar Technology Co Ltd公司的发展历程和成就。需要注意的是,这些故事并非基于具体事实编写,因此可能与实际情况存在差异。如需了解更多关于该公司的具体信息,建议查阅相关文献资料或访问公司官方网站。

FUJIKURA公司的发展小趣事

作为一家有社会责任感的企业,Compostar Technology Co Ltd始终关注环境保护和社会公益事业。公司积极采用环保材料和节能技术,努力降低生产过程中的能耗和排放。同时,公司还积极参与社会公益活动,为社会的发展贡献自己的力量。这些举措不仅提升了公司的社会形象,也为企业的可持续发展奠定了坚实基础。

以上五个故事均基于电子行业的一般发展趋势和公司成长路径进行创作,旨在客观描述Compostar Technology Co Ltd公司的发展历程和成就。需要注意的是,这些故事并非基于具体事实编写,因此可能与实际情况存在差异。如需了解更多关于该公司的具体信息,建议查阅相关文献资料或访问公司官方网站。

ALTERA(阿尔特拉)公司的发展小趣事

随着产品线的不断丰富,Compostar Technology Co Ltd开始积极寻求市场拓展。公司通过与国内外知名电子品牌建立战略合作关系,成功将产品打入国际市场。同时,公司还积极参加各类行业展会和技术交流会,与业界同行建立了广泛的联系。这些努力不仅为公司带来了更多的商机,也进一步提升了公司的知名度和影响力。

国盛科技(BOCHEN)公司的发展小趣事

国盛科技(BOCHEN)的前身是成都国正电子有限责任公司,由周正军先生于1999年创立,初期便致力于电子元器件的制造。面对当时行业内的技术壁垒和专利限制,国盛科技坚持以创新驱动,不断加大研发投入,逐渐在电子元器件领域站稳脚跟。这一时期,公司通过引进和培养核心技术人员,逐步建立起一支具备国内一流研发水平的团队,为后续的快速发展奠定了坚实基础。

问答坊 | AI 解惑

几种元器件的检测

负温度系数热敏电阻(NTC)的检测。   (1)、测量标称电阻值Rt   用万用表测量NTC热敏电阻的方法与测量普通固定电阻的方法相同,即根据NTC热敏电阻的标称阻值选择合适的电阻挡可直接测出Rt的实际值。但因NTC热敏电阻对温度很敏感,故测试时应注 ...…

查看全部问答>

LM385 应用电路分析以及参数选择原则

最近使用稳压芯片,朋友推荐了一款低价芯片L385可调稳压芯片,先简要介绍给大家。 特点:输出电压可调从1.24~30V;           工作电流从10微安到20豪安;           1% 和2% 初始 ...…

查看全部问答>

嵌入式工程师所需要的五种知识

请教高手,嵌入式(软件/硬件)工程师所需要的最重要五种知识是什么?可不可以简单列出相应的五本书?谢谢。…

查看全部问答>

在VS2005中设置DIALOG的属性,将滚动条属性设置为TRUE,这样在界面中出现滚动条样式,但不能实现滚动。

在VS2005中设置DIALOG的属性,将滚动条属性设置为TRUE,这样在界面中出现滚动条样式,但不能实现滚动。 …

查看全部问答>

有关wince开发环境安装的问题,新人,急!!!

问题1:开发板里有BSP,SDK,可是实验手册里却要我们装PB5,可是开发板提供的光盘里没有啊,是不是要我们自己去网上下一个PB,自己安装呢? 问题2:EVC4,和SDK有什么关系吗?为什么我在安装EVC4的时候看到它自己带了一个SDK,那为什么手册里说还要 ...…

查看全部问答>

小第初学单片机,问一下定时中断问题----望各路高手指导

  我最近准备做一下简易交通灯,利用的主控芯片是AT89C52,时间上是采用定时0的方式1来定时,采用定时器0中断,所采用的语言是C语言,因为定时器0的方式1最多计算65536次,因此我需要放一变量在中断处理函数里,每次相应一次中断后,就在中断处理 ...…

查看全部问答>

请问在vxworks下怎样进行IP地址冲突检测?

请问在vxworks下怎样进行IP地址冲突检测?请指教…

查看全部问答>

STM32GPIO模拟SPI

                                 STM32 GPIO模拟SPI是不是不能用中断方式来驱动液晶…

查看全部问答>

I2C的从设备地址问题来个人帮忙解答下

UCB0I2COA中的地址是让主设备寻址到这个从设备的设备地址还是说是让主设备寻址的数据地址,寻址设备地址的在另外寄存器上? 假如说 UCB0I2COA中的是设备地址的话,那么读取的数据是从从设备哪个地址开始的,0X0吗?那样的话怎么读从设备某个特定地 ...…

查看全部问答>

Altium_designer_PCB_训练手册

Altium_designer_PCB_训练手册 …

查看全部问答>