| 将基于AT89C2051的解码器应用于安防系统 |
| 类别:单片机/DSP |
|                        作者:宋军罡 吴惠云          1 引 言          目前,我国应用极广的编解码器是Princeton公司生产的具有531441(312)种状态的PT2262编码芯片和与之配套的PT2272解码芯片。但一片PT2272只能对一种地址的PT2262的15种状态进行解码,对于较大的编解码保安防盗控制系统,常使用多片PT2272组合解码,但仍远远满足不了大中型安防系统的设计要求。因此,采用AT89C2051单片机,实现了 PT2262的大容量解码功能。          2 PT2262的编码原理          PT2262(可参阅http://www.princeton.com.tw)的工作原理如图1所示,图中K0~K7为地址端,应该预置其状态; K8~K11为数据端,按下按钮开关K8~K11后,PT2262就在第17脚输出一串行编码脉冲。开关K0~K11为12个位码开关,其0或1的状态值组合出不同的编码结果,每传送一组编码都自动连发四次字码。4M7电阻为PT2262的外接振荡电阻。MPSH10为315MHz的高频振荡三极管。图 2~图5表示了PT2262的编码原理。图2是PT2262的字码结构,图3是PT2262的位码信号,图4是PT2262的同步位信号,图5是 PT2262的帧码结构。                                                            3 解码的实现          3.1 位编码信号的检测方法          根据PT2262的编码原理,其输出的每个0位或1位编码信号由二组脉冲组成,因此可以使用单片机进行解码。本设计使用了ATMEL半导体公司生产的 AT89C51单片机,利用“定时/计数器0”进行脉宽的计时,并判断该脉宽的高字节是否相同,相同则为PT2262的0或1位(本设计只考虑了“0”和 “1”状态,其每个位的二组脉冲是相同的)。AT89C51对0或1位编码信号必须进行12次判断,如果全部正确,则该PT2262编码器就是本系统的信号之一。          3.2 SYNC同步信号的检测方法          PT2262的SYNC同步编码信号如图4所示。该位脉冲的低电平长达124个机器周期,因此只需判断其脉宽时间是否大于8倍的“0”位或“1”位的脉宽。          3.3 解码信号的处理          将12位解码数据(可参阅htpp://www.princeton.com.tw)中的高8位与E2PROM中地址码表的地址数据进行比较,如果相同,则将E2PROM中对应的房间号、单元号、楼栋号等数据,通过P0、P1、P2口输出到16位7段显示屏。          4 硬件电路          本设计的解码、安防接警中心电路原理图如图6所示,将经高频接收模块变频处理的数字脉冲信号送入AT89C2051(可参阅http://www.atmel.com)的P3.4 I/O口进行解码,再将满足E2PROM中地址码条件的数据通过RS232接口输出到计算机。图中省略了数字键盘和报警喇叭驱动电路部分。                    5 软件设计          软件流程图如图7所示。          5.1 初始化          将AT89C2051〔1〕的16位定时/计数器0设置为内部计数器方式。          5.2 编码信号的采集          当输入信号为“1”时,定时/计数器0开始计数,并将定时/计数器0的高八位存入内存缓冲区中。当输入信号为“0”时,定时/计数器0也进行计数,同时判断是否有大于8倍的内存缓冲区中的值。如不满足条件,则继续采集脉冲信号,否则对24个内存缓冲区中的数据进行处理。                    5.3 解码信号的处理          对24个内存缓冲区中的数据两两进行比较,如果不相等,则编码信号不是本系统中的信号。如果相等,则将其值设为“0”或“1”。如果12组数据都相等,则得到8个“0”或“1”的地址位和4个“0”或“1”的数据位。          将高8位的地址位与E2PROM中地址码表中的数据进行比较,如果不相等,则该编码信号不是本系统中发射器的控制信号。如果相等,则将E2PROM中对应的房间号、单元号、楼栋号等数据,通过段控制P0口和位控制P1、P2口输出到16位7段显示屏,同时鸣响报警喇叭。数字键盘用于向E2PROM中键入编码地址、房间号、单元号、楼栋号等数据。          假设某保安防盗系统中有32种地址的PT2262发射器,其地址为45H~64H,在AT89C2051的软件中设定其地址码表的值为45H、46H、 47H、……、64H。如果当地址为50H的发射器按下了K10开关,则解码系统所接收的高8位地址的值与软件中地址表中50H的值相同,则输出对应的4 位A、B、C、D的值0010B;如果当地址为63H的发射器按下了K8开关,则解码系统所接收的高8位地址的值与软件中地址表中63H的值相同,则输出对应的A、B、C、D的值1000B;……。该设计使用一片AT89C2051单片机,替代了32片PT2272解码芯片。          故此,在实际应用中,PT2262的地址值可选00H~FFH共256个中的任意组合,从而实现了256个PT2262,至少256×4=1024个状态的大容量的解码功能。如果将PT2262的K8、K9、K10、K11任意组合,则可以有256×15=3840种状态。          6 计算机的数据处理〔2〕          Delphi是Borland公司推出的可视化开发工具,它提供了大量的组件,用户可以轻松地开发出功能强大的应用程序,而且通过它编译出来的可执行文件的工作效率相当高。          建立一个用户数据库,包含有用户的防盗主机的编号、姓名、详细住址、电话、手机、传呼等信息。          利用SPCOMM串口控件,接收AT89C2051发送的串口数据——防盗主机的编号,将该数据与数据库中的所有防盗主机编号一一对比,再将数据相同的用户记录显示在屏幕上,同时调用一个声音播放控件,报警提示。          7 结束语          本设计方案已应用于保安防盗系统的接警中心,运行状态良好。也适用于其它编码系统,如华智-茂矽公司的VD5026和HOLTEK公司的HT12A/12E、HT6012/6014/6016等编码芯片。          参考文献          1 张毅刚,等著.MCS-51单片机应用设计.哈尔滨:哈尔滨工业大学出版社,1990     2 吴旭东,等著.Delphi3.0/4.0多媒体和数据库编程.北京:清华大学出版社,2001     3 王 辉,等译.Delphi从入门到精通.北京:电子工业出版社,2000           |
- pic16单片机应..
- 2008-1-9
- 基于单片机的某车型..
- 2008-1-7
- 基于ARM的FPG..
- 2008-1-7
- 基于单片机的电热水..
- 2007-11-15
- 一种基于单片机的汽..
- 2007-11-15
- 基于单片机的电子导..
- 2007-11-8
- 51单片机边沿触发..
- 2007-11-8
- 如何选择细纱机主电..
- 2007-11-5
- 单片机编程技巧
- 2007-9-14
- 空压机变频改造技术..
- 2007-9-3
- 运用定点DSP实现..
- 2007-8-7
- 基于TMS320C..
- 2007-8-9
- 一种用于图像认证的..
- 2007-7-29
- TMS320F20..
- 2007-8-9
- 多DSP系统互连方..
- 2007-8-9
- C5402 DSP..
- 2007-8-9
- 具有高可靠性的高速..
- 2007-8-9
- 基于DSP的实时M..
- 2007-8-7
- 带ARM核的双CP..
- 2007-8-9
- 基于TMS320V..
- 2007-8-9










