时将变成平均值检波瞬态响应灵敏度会变低C2较小时虽然仍为峰值检波且瞬态响应灵敏度很高但检波输出脉冲宽度会发生较大变动容易造成解调出错而产生误操作。R2
f为带通滤波器中心频率f0得外部电阻改变R2阻值可改变载波信号得接受频率当f0偏离载波频率时放大增益会显著下降C3为积分电容一般取330pf取值过大虽然可使抗干扰能力增强但也会使输出编码脉冲得低电平持续时间增长造成遥控距离变短。⑦脚为输出端CX20106处理后得脉冲信号由⑦脚输出给单片机处理从而获得显示输出。
图4CX20106内部结构框图
本系统中应用得接收电路见图5当89C51得P1、7为高电平时三级管V1导通5V电源通过继电器线圈与V1得发射结到地使继电器K1接通R2与R3并联组成5Ω电阻通过C1组成RC电路控制红外接收专用集成电路CX20106得增益使其7脚输出一定幅度得电压信号到89C51得P0、2口以触发中断。另外该芯片价格在三到五元非常节省系统成本。
图5超声波接收电路3、距离显示电路
图6显示电路
f超声波显示电路如图6所示。就是利用单片机得串行输出。只用单片机得TXDRXD端即可显示数字。
三、软件程序设计
本系统采用模块化设计由主程序、发射子程序、接收子程序、定时子程序、显示子程序等模块组成图8为程序流程图。该系统得主程序处于键控循环工作方式当按下测量键时主程序开始调用发射子程序、查询接收子程序、定时子程序并把测量结果用显示子程序在数码显示器上显示出来。
图8软件程序框图
定时器中断子程序
外部中断服务子程序
四、具体程序
i
cludereg51、hi
cludemath、h定义数据类型
defi
eui
tu
sig
edi
t
defi
eucharu
sig
edchar
定义系统常数
lo
gi
ttime
时间
bitCLflag测量标志
charcshu
串数
defi
eT12us25612定时器设初值T256T12us1212MHZ
定义功能位串口用于显示
sbitVOLCKP1、0发射
sbitMINGP3、2外部中断0检测接收信号
charidatadisp9
显示数据
charidata
umber9
显示数据
charcodetable0x030x9f0x250x0d0x990x490x410x1f0x010x09码表0123456789
voiddispfb显示5位数据
chari
fori0i5i
dispitable
umberidisp3disp31置小数点
fori0i6i
SBUFdispi
whileTI0
TI0
通用延时子程序
fvoiddelayi
tj
i
tifori0iji
初始化定时器CTC0、CTC1用于定时
voidi
it_CTCvoid
TMOD0x21
设CTC1工作于模式2
ET00
不允许CTC0中断
voidi
it_INT外部中断初始化为高优先级并开中断
IP0x01置外部中断r