超声波测距电路原理和制作

[10-10 20:38:44]   来源:http://www.88dzw.com  电子制作   阅读:8482

文章摘要:前方测距电路的输出端接单片机INT0端口,中断优先级最高,左、右测距电路的输出通过与门IC3A的输出接单片机INT1端口,同时单片机P1.3和P1.4接到IC3A的输入端,中断源的识别由程序查询来处理,中断优先级为先右后左。部分源程序如下:receive1:push pswpush aCC clr ex1 ;关外部中断1jnb p1.1, right ;P1.1引脚为0,转至右测距电路中断服务程序jnb p1.2, left ;P1.2引脚为0,转至左测距电路中断服务程序return:SETB EX1;开外部中断1pop? acc pop? psw reti right: ...? ;右测距电

超声波测距电路原理和制作,标签:电子小制作,http://www.88dzw.com

前方测距电路的输出端接单片机INT0端口,中断优先级最高,左、右测距电路的输出通过与门IC3A的输出接单片机INT1端口,同时单片机P1.3和P1.4接到IC3A的输入端,中断源的识别由程序查询来处理,中断优先级为先右后左。部分源程序如下:

receive1:push psw

push aCC

clr ex1 ;关外部中断1

jnb p1.1, right ;P1.1引脚为0,转至右测距电路中断服务程序

jnb p1.2, left ;P1.2引脚为0,转至左测距电路中断服务程序

return:SETB EX1;开外部中断1

pop? acc

pop? psw

reti

right: ...? ;右测距电路中断服务程序入口

? ajmp? return

left:... ;左测距电路中断服务程序入口

? ajmp? return

3、计算超声波传播时间

在启动发射电路的同时启动单片机内部的定时器T0,利用定时器的计数功能记录超声波发射的时间和收到反射波的时间。当收到超声波反射波时,接收电路输出端产生一个负跳变,在INT0或INT1端产生一个中断请求信号,单片机响应外部中断请求,执行外部中断服务子程序,读取时间差,计算距离。其部分源程序如下:

RECEIVE0:PUSH PSW

PUSH ACC

CLR EX0 ;关外部中断0

? MOV R7, TH0 ;读取时间值

MOV R6, TL0?

CLR C

MOV A, R6

SUBB A, #0BBH;计算时间差

MOV 31H, A ;存储结果

MOV A, R7

SUBB A, #3CH

MOV 30H, A?

SETB EX0 ;开外部中断0

POP ACC?

POP PSW

RETI

四、超声波测距系统的软件设计

    软件分为两部分,主程序和中断服务程序,如图3(a)(b)(c) 所示。主程序完成初始化工作、各路超声波发射和接收顺序的控制。

    定时中断服务子程序完成三方向超声波的轮流发射,外部中断服务子程序主要完成时间值的读取、距离计算、结果的输出等工作。

五、结论

    对所要求测量范围30cm~200cm内的平面物体做了多次测量发现,其最大误差为0.5cm,且重复性好。可见基于单片机设计的超声波测距系统具有硬件结构简单、工作可靠、测量误差小等特点。因此,它不仅可用于移动机器人,还可用在其它检测系统中。

上一页  [1] [2] 


Tag:电子制作电子小制作维修教程知识 - 电子制作