基于STC89C52RC单片机的超声波测距程序设计

发布者:upsilon30最新更新时间:2023-10-04 来源: elecfans关键字:STC89C52RC  单片机  超声波测距 手机看文章 扫描二维码
随时随地手机看文章

网络上集的STC89C52RC单片机超声波测距程序及电子制作实物,使用单片机最小系统进行试验,超声波部分使用HC-SR04模块,测量范围:4-300cm,实际测量上最长可达到5.70m。下面是实物图,文章后面附源程序。


4-300cn,实际测量上最长可达到5.7m

#include ‘AT89X51.H’ //头文件

unsigned char code fseg[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};

unsigned char code segbit[]={0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x01};

unsigned char disbuf[8]={0,0,0,0,0,0,0,0};

//-----------------------------------------------------------------------------

// 函数原形定义

#define uchar unsigned char

#define uint unsigned int

void main (void); // 主函数

void LED4_Display (void); // LED显示

void LED_OUT(uchar X); // LED单字节串行移位函数

void delayms(uint); //延时子函数 ms

void jisuan(void);

unsigned char code LED_0F[]; // LED字模表

sbit DIO=P1^0; //串行数据输入

sbit RCLK=P1^1; //时钟脉冲信号——上升沿有效

sbit SCLK=P1^2; //打入信号————上升沿有效

sbit echo=P3^2; //echo

sbit trig=P3^3; //trig

//-----------------------------------------------------------------------------

// 全局变量

uchar LED[8]; //用于LED的8位显示缓存

uint temp;

uint temp1;

uint a,b; //定义一个变量a,b 后者用于判断是否收到信号

//

// 主程序

//

void main(void) //主函数开始

{

uint f;

echo=0; //先拉低echo,trig引脚

trig=0;

f=500;

while(f》0); //启动延时 消除第一次上电产生的波动

{

LED[3]=16;

LED[2]=15;

LED[1]=15;

LED[0]=16;

f--;

}

EA=1; //开总中断

TMOD=0x11; //设置定时器为方式1

ET0=1; //允许定时器中断 这里主要是防止超声波模块未发送信号

ET1=1;

while(1)

{

echo=0;//a赋值

a=0;

b=1;

TH0=0; //定时器装初值

TL0=0;

TH1=(65536-25000)/256; //定时器装初值

TL1=(65536-25000)%6;

trig=1; //trig送高

LED4_Display (); // 延时3ms

LED4_Display ();

LED4_Display ();

LED4_Display ();

LED4_Display ();

LED4_Display ();

LED4_Display ();

trig=0; //trig送低

TR1=1;

while(echo==0); //等待echo变为高电平

if(b==1) 判断是否收到信号

{


关键字:STC89C52RC  单片机  超声波测距 引用地址:基于STC89C52RC单片机的超声波测距程序设计

上一篇:89C2051单片机无线遥控电铃的工作原理
下一篇:AT89C51单片机与74LS164动态显示接口

推荐阅读最新更新时间:2024-11-11 12:27

基于TC35T调制解调器和P87LPC767单片机实现短消息监控系统的设计
1 引言 近年来,随着移动通信事业的迅速发展,作为移动网的延伸和完善设备--直放站得到了迅速应用,直放站的位置常常处于偏僻的农村和山区,因此,维护很不方便,为了及时了解直放站的工作状态,开发了直放站监控系统。该系统的主要功能包括对直放站供电电源及射频输出功率等进行无线监控,以实现直放站系统无人值守时的故障告警以及控制等功能。直放站监控系统的基本原理是利用GSM无线蜂窝网络的广阔覆盖范围,借助于GSM网络的SMS(短消息)服务功能,将直放站工作状态及有关信息以SMS的形式通过GSM网络传送到指定的监控中心或维护人的手机上,从而使系统故障得到及时处理;平时也可以通过监控中心或手机查询指定地点直放站的工作状态,以保证通信网络的正常运行。
[单片机]
基于TC35T调制解调器和P87LPC767<font color='red'>单片机</font>实现短消息监控系统的设计
51系列单片机的一种万年历优化算法源程序
适用于51系列单片机的一种万年历优化算法源程序 一、 阳历算法 具体算法见函数Void get_solar_day_date(void),这样阳历日历的星期排法就确定了。 表1: 月份 1 2 3 4 5 6 7 8 9 10 11 12 闰年 31 29 31 30
[单片机]
STC单片机的种类与区别介绍
最近有太多的人不明白 单片机系列 的问题了。也就是说,很多人都在问STC12C2052和STC12C4052两个型号有什么区别。在任何一款STC单片机的数据手册里都有对型号的分析介绍,可是现代社会,人们都很急躁,哪有时间仔细看数据手册呀。于是我就接到了这些不难解释的问题了。现在我在此做一个介绍文章,以后再有问到此问题的,我就直接让他来看文章。 我们来分析一下STC单片机的型号的意义吧。 如 STC,12,C,20,52,AD STC:出品的公司名 12:产品大系列,STC单片机有89、90、10、11、12、15这几个大系列,每个系列都有自己的特点。89系列是老旧而传统的单片机,可以和AT89系列完全兼容,是12T单片机。90
[单片机]
基于51单片机之74HC165实验例程
************************** Copyright(C)CaKe ***************************************** ================================================== ==============**文件名 : main.c ============== ==============**作者 : CaKen ============== ==============**版本号 : V1.0 ============== ==============**时间 : 2014.
[单片机]
手把手教你学51单片机:C语言基础以及流水灯的实现
一、进制 二进制:0和1 前缀0b 十六进制:四个二进制为一位,0~9加上A~F(或a~f) 前缀0x 二、C语言变量类型和范围 字符型、整型、长整型、浮点型。每一种又分为有符号/无符号。 前三种除了长度不一样外,都只能表达整数,无符号只能表示正整数。 表示小数必须用浮点型。 三、C语言基本运算符 + - * / % ++ -- == != …… 区分:++a(先加后执行),a++(先执行后加) eg: b=a++;a=1、b=0; b=++a;a=1、b=1; 四、for循环语句 for(;判断语句;) for(;;); 死循环 五、while语句 while(表达式),若表
[单片机]
解决单片机EMC问题的八个方法
本文中所提到的对电磁干扰的设计我们主要从硬件和软件方面进行设计处理,下面就是从单片机的PCB设计到软件处理方面来介绍对电磁兼容性的处理。 一、影响EMC的因数 1、电压:电源电压越高,意味着电压振幅越大,发射就更多,而低电源电压影响敏感度。 2、频率:高频产生更多的发射,周期性信号产生更多的发射。在高频单片机系统中,当器件开关时产生电流尖峰信号;在模拟系统中,当负载电流变化时产生电流尖峰信号。 3、接地:在所有EMC题目中,主要题目是不适当的接地引起的。有三种信号接地方法:单点、多点和混合。在频率低于1MHz时,可采用单点接地方法,但不适宜高频;在高频应用中,最好采用多点接地。混合接地是低频用单点接地,而高频用多点接地的方法
[单片机]
PIC单片机选用存储体0或1的方法
PIC单片机中级产品PIC16C6X的数据存储器通常分为两个存储体,即存储体0(Bank0)和存储体1(Bank1)。每个存储体都是由专用寄存器和通用寄存器两部分组成的。两个存储体中的一些寄存器单元实际上是同一个寄存器单元,却又具备有不同的地址。例如本版介绍的PIC16F84的状态寄存器STATUS-Reg的两个地址是03H和83H。又如通用寄存器也是如此。 不同型号的PIC单片机,其数据存储器的组成(即功能)是不完全相同的,所以设计人员一旦选用了某个PIC单片机的型号后,常要查找该单片机的数据存储器资料,以便编程用。 以PIC16F84在MPLAB集成开发软件的环境下编写的源程序中,有关RB口(RB7、RB6…RB0)初
[单片机]
PIC<font color='red'>单片机</font>选用存储体0或1的方法
【GD32 MCU 入门教程】GD32 MCU 常见外设介绍 (6) ADC 模块介绍
6.1.ADC 基础知识 12 位逐次逼近式模数转换器模块(ADC),可以采样来自于外部输入通道、内部输入通道的模拟信号,采样转换后,转换结果可以按照最低有效位对齐或最高有效位对齐的方式保存在相应的数据寄存器中。 6.2.GD32 ADC 外设原理 GD32 ADC 主要特性 ◼ 高性能: – ADC采样分辨率: 12位、 10位、 8位、或者6位分辨率; – 前置校准功能; – 可编程采样时间; – 数据存储模式:最高有效位对齐和最低有效位对齐; – 支持规则数据转换的DMA请求。 ◼ 模拟输入通道: – 16个外部模拟输入通道; – 1个内部温度传感器输入通道(VSENSE); – 1个内部参考电压输入通道(VREFINT
[单片机]
【GD32 <font color='red'>MCU</font> 入门教程】GD32 <font color='red'>MCU</font> 常见外设介绍 (6) ADC 模块介绍

推荐帖子

CCS3.3 中文学习手册
上传了两个CCS3.3的中文学习手册,希望对大家有帮助!CCS3.3中文学习手册东西收下了,感谢楼主谢谢楼主。好东西呀学习下载中谢谢楼主1好东西,谢谢楼主资料不错,最近在看谢谢啊。好东西啊,新手学习中,感谢楼主分享楼主好人哪很给力的资源!!谢谢啦。呵呵呵谢谢楼主新手学习中,感谢楼主分享好东西收藏了!!真的很感激你的无私奉献谢谢楼主!好棒谢谢啊谢谢楼主,学习中谢谢了!楼主东西收下了,感谢楼主辛苦楼主了呵呵呵谢谢楼主谢谢呀。。
kooking DSP 与 ARM 处理器
***uC/OS-II中实现多个生产者和多个消费者问题****
利用uC/OS-II内核中的信号量操作,生产者和消费者的数目都是3,缓冲区的大小10。如何利用uC/OS-II中的信号量来实现呢?想了很久不知道怎么实现任务间的同步和互斥,望大虾指教,给个伪代码看看也好。***uC/OS-II中实现多个生产者和多个消费者问题****
忧乐游子 嵌入式系统
全套中文FPGA入门及提高教程
全套中文FPGA入门及提高教程
至芯科技FPGA大牛 FPGA/CPLD
【国产FPGA安路 高集成低功耗SF1系列FPSoC新品】RISC-V硬核使用OLED(有避坑提示)
前言板载了OLED屏,我们现在使用RISC-V硬核来操作OLED,后面进行一些GUI的开发。引脚时序约束不添加时序约束可能JTAG无法连接。双击如下图片添加时序约束文件内容为class=pstyle=create_clock-nameI_clk_25m-period40-waveform{020}下载bit文件打开TN810_SF102\src\oled_screen_d
qinyunti 国产芯片交流
无线学习狂欢季,躁起来!秒入心仪TI无线开发板,晒单专用帖!
学无线很贵?无线开发板太多,太难选?一个人学无线太孤单?从今天起,这都不是事儿!TI无线学习狂欢季盛大开启,一个专门为无线爱好者准备的无线盛宴!即日起——8月16日1、登陆活动页面,收藏TI版块,抢“无线加油大礼包”,仅有300份,先到先得!2、抢得无线加油包的朋友:1)活动期间,在TIestore购买以下开发板(CC3200LaunchPad或SimpleLinkSensorTagCC2650STK),2)在本帖跟帖晒
EEWORLD社区 无线连接
TI 电源培训系列电子书---开关电源基础知识
TI电源培训系列电子书---开关电源基础知识有心人整理成册,感觉挺好,我们不妨拿来,阅读学习。先把前言,目录给大家贴一下,希望大家喜欢,需要的拿走,不需要还是那样,,飘过,,,,,Timson,如果您要查看本帖隐藏内容请回复TI电源培训系列电子书---开关电源基础知识还真需要啊!还真需要啊!好东西~顶一个:carnation:好东西坚决拿下好东东,收下了Thanks!谢谢分享!THANKYOU回复楼主qwqwqw2088的帖子谢谢分享!
qwqwqw2088 模拟与混合信号
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved