DIY编程器网

标题: 用PIC16C54单片机控制的电话扩音器 [打印本页]

作者: liyf    时间: 2012-1-27 19:44
标题: 用PIC16C54单片机控制的电话扩音器
  
         
    本控制器以PIC16C54单片机作控制器,使用非常简便:只需将一条电话线经该控制器与扩音器相连,便可在任何一部电话机上遥控扩音器的开闭,进行喊话及宣传,适宜广大农村基层、安装地点相对固定的广播喇叭使用。
    电路见附图。L1、L2接电话线。使用时在任何一部双音频电话机上拨打该线路号码,电话拨通后振铃信号经C1、R2、B2及R4触发VT1,再由R7、C12滤波后送到IC3的RB7,IC3计数到连续七次振铃后,RB6端输出高电平,触点JK1吸合,同时,RB3端发出一串“嘀——嘀”回馈信号经B1送回线路提示使用者,完成摘机。
    听到摘机提示音后1分钟内,顺序拨完5180(意为:我要发令)四个开机代码,经B1耦合由C8、R8、R9传至IC2进行双音频译码。译码输出的二进制信号送至IC3的RA3~RA0,经IC3识别有效后,RB5端输出高电平,驱动JK2吸合,接通扩音器电源。注意,编程时设定可以在电路摘机后的1分钟内任意拨号。只要在1分钟内收到一个5180的号码序列,单片机就发出接通扩音器电源的信号,如果1分钟内未收到有效的开机代码,IC3将复位RB6端的高电平,强行挂机,完成一次接收过程。
    接通扩音器电源后,整机进入正常工作状态,可以由电话机进行喊话,喊话信号经B1隔离后由Vol端送到扩音器推动广播喇叭发出音响。
    喊话毕,再拨入关扩音器的代码750(弃吾令),经IC2译码,IC3鉴别有效后,RB5端复位,JK2释放,切断扩音器电源。此时如挂机,线路450Hz忙音信号由C5送至IC1检测,IC1的⑧脚电平随忙音信号变化,IC3的RB4端检测到五个连续的忙音脉冲后,RB6端复位,J1断电,触点JK1断开,完成线路挂机。
    需要打开扩音器转播广播信号而不喊话时,只要通过电话线打开扩音器,然后挂机即可。IC3在挂机后,保持RB5端的高电平,同时每隔20秒由RB3端向扩音器发送一个提示音,提示使用者广播完后及时发送关机指令。
    若遇到刚收到控制器摘机信号,却因线路等原因而发生掉线时,IC3是这样处理的:RB6端发出摘机命令后,只要RB4端收到一组有效的忙音脉冲,RB6端立刻复位,释放触点JK1,为重新接收指令作好准备。
    该控制器源程序比较简短。只有200多行。笔者在编程前对PIC16C54单片机与PIC16F84单片机的结构进行了比较,对源程序作了适当处理,使得该控制器的源程序既可在PIC16C54单片机指令集下汇编,也可用PIC16F84单片机指令集汇编,实现了程序对两种芯片的兼容。PIC16F84的功能较多,若使用该芯片,还可适当加入一些辅助功能,如用片上的E2PROM储存开关扩音器的代码,并可用电话机实时在线改动等等,有兴趣者不妨一试。
    实际组装时,图中的B1、B2可用普通晶体管收音机中常用的输出变压器代用,起与外线隔离的作用,对参数无特殊要求。有条件的话,也可用线性光耦等隔离外线。本机唯一需调整的是IC1的解码频点。因程控交换机中送出的忙音与拨号音的信号频率相同,可设法把话路中的拨号音经B1送入整机,然后微调R3,使IC1的⑧脚变为低电平即可。为了使继电器可靠吸合、电路稳定工作,要求5V电源电流要有200mA以上的驱动能力。

                                                                       山东  侯振勇  




作者: ufihl    时间: 2012-12-24 13:32
难得好贴,赞一个,继续努力啊




欢迎光临 DIY编程器网 (http://diybcq.com/) Powered by Discuz! X3.2