基于AT89S51单片机的监控与管理系统的设计
摘要:在宿舍或商场的出入口中采用监视和管理系统可以进行防盗和信息提示使用。基于AT89S51单片机的控制系统包括四部分:数据采集、控制系统、时钟电路、语音录音电路和报音提示信息电路。该系统采用单片机进行控制,结构简单,还可进行多种功能的扩展,如实现多机通讯,对更大的场合进行监控与管理等。
关键词:单片机,监控与管理,硬件,程序
1 引言
在学校宿舍、课室、图书馆、商场等场所的出入口,如果采用监控与管理系统,就可以对进出的人数进行统计,可以利用录音设备或显示设备进行温馨提示的管理工作,也可以在非进入时间进行监控报警等处理。基于AT89S51单片机的监控与管理系统由于采用了单片机进行控制,大大简化了外围硬件电路的设计,系统结构简单。同时,该系统可以进行很多的扩展,如实现多机通讯,对更大的场合进行监控与管理等。
2 系统硬件结构
2.1结构框图
图1所示是基于AT89S51单片机的监控与管理系统的结构框图。该系统采用了AT89S51单片机系统来控制系统的工作,采用语音专用录音芯片,同时也加上时钟芯片,这样就可以根据自己和场合的需要进行不同的录音,发出适合的报音信号,而且也可以实时显示时钟、日历等,如果选用液晶显示电路,还可以进行文字显示,用于温馨提示,消息或新闻的发布等。本处只介绍利用语音IC实现报音的提示功能。
该系统由于采用了单片机的软件编程实现控制各模块电路的工作,并且可以通过键盘进行参数的设置,实现了自动控制,使得该系统变得更加完整,功能更多,同时可以进行扩展。
2.2 工作原理
1、 硬件组成
图2 各模块单元电路
该系统由AT89S51单片机最小系统电路为主要结构,利用其I/O口进行数据的采集和控制。图2是各单元电路。
该电路的工作原理是:首先由无线热释电人体红外探头根据人体恒温(37℃)发出特定波长(10uM)的红外线,通过菲泥尔滤光片增强后聚集到红外感应源上,再经热释电元件产生一定的电荷信号并送往单片机,此时单片机马上读取当前时间,并与之前单片机设定的时间段进行比较,如果发现当前时间落在所设时间段范围内,则向录音电路芯片发出控制信号,把相应时间段的录音内容送到报音电路,然后由报音电路通过放大电路放大后驱动扬声器,发出相应的声音;若发现当前时间没有落在所设时间段范围内,则不响应该次无线热释电人体红外探头送进来的中断信号,即后面的全部工作将不再进行下去,而是等待下一个中断信号的过来。
各芯片与单片机的连接如下:
①语音录音芯片占单片机P0的8个I/O口及P2.0~P2.5共6个I/O口;其中单片机的P0口、P2.0和 P2.1分别与ISD2560的地址线相连,用以设置语音段的起始地址。P2.2~P2.5用以控制录放音状态。P1.7用于录音键控制。
②时钟芯片占用单片机P1.0~P1.2共3个I/O口;
③键盘显示电路占用单片机P1.3~P1.6共4个I/O口。
④存储器E2PROM占用P2.6和P2.7共2个I/O口
⑤数据采集结果为外中断输入请求信号。
2.3 单元电路设计
1、单片机最小系统
该部分包括两部分:单片机最小系统及串行E2PROM。单片机最小系统主要以AT89S51为核心,外加上电复位电路及时钟电路组成;接入串行E2PROM主要是为了通过该E2PROM断电后继续保存系统所设定的相关参数。该电路使用的串行E2PROM是采用I2C总线接口的AT24C01,采用软件模拟的方法实现I2C总线数据的传送。
2、数据采集部分
为实现对人体数据的采集,该电路根据人体恒温发出特定波长的红外线信号,采用无线或有线的热释电人体红外探头,通过该探头可以将所采集回来的数据转换成一个电平信号去触发单片机,从而送出中断请求信号。由于该部分电路在本系统中只充当一个中断源使用,且不是该系统的核心电路部分,可采用一个成品的单元模块进行代替。
同时,由此可知,该控制系统也可以设置采集其他类型的数据作为中断源,方便地修改为其他服务的控制。
3、时钟芯片电路
为了实现实时时钟功能,该电路采用了美国DALLAS公司生产的高性能、低功耗的时钟芯片DS1302以及一些外围元件组成[1],该芯片具有时钟/日历功能,电路中配备了两粒纽扣式后备电池,以保证DS1302在外电源中断后正常计时,在单片机开机后,可以通过键盘校准DS1302的时间、日历。
4、语音录音芯片电路
为了实现根据不同的使用场合,发出不同的报音内容,该电路采用了语音专用录音ISD2560[2],它具有抗断电、音质好,使用方便,无须专用的开发系统等优点。录音时间为60 s,能重复录放达10万次。只要通过麦克风便可向录音芯片录入你想录入的内容。
5、键盘、数码管显示电路
电路的键盘控制和显示电路采用zlg7289A芯片构成数码管显示电路作为显示[3]。该芯片具有SPI串行接口功能,无需外围元件可直接驱动LED,可同时驱动8位共阴式数码管(或64只独立LED)的智能显示驱动芯片,使用非常方便。zlg7289A 内部含有译码器可直接接受BCD码或16 进制码并同时具有2 种译码方式此外还具有多种控制指令如消隐﹑闪烁﹑左移﹑右移﹑段寻址等,使用非常方便。只使用单片机的4个端口。
6、报音电路
采用芯片ISD2560输出已经具有一定的功率,能正常驱动小的扬声器,但是为了能让报出的报音信号能更宏亮,更让人察觉,在输出已有一定的功率的情况下再加两级放大电路对输出信号进行继续放大,以驱动更大功率的扬声器,发出更加响亮的声音。
3.软件设计
图3 主程序流程
图4时钟芯片的流程
图5 中断程序流程
主程序主要是用于系统开始或复位的初始化及调用各个子程序来完成对整个系统的控制,在初始化模块中除了一般的堆栈指针设置及对各个所要用到的寄存器进行赋值,还要对键盘显示控制芯片ZLG7289的复位初始化。主程序流程图见图3。
图4是时钟芯片DS1302程序流程,检测工作时间是否正确,如用户有修改,则采用用户修改结果。图5是其中断服务程序流程。其主要过程是开机进行初始化后,检测热释电元件是否产生一定的电信号,然后把现在的时间和E2PROM所存储时间相比较,判断是否需要播放某一段录音的时间,如果是,则播放相应的语言,然后返回。E2PROM所存储时间,用户可以键盘进行输入设置。同时,在编程时,可以设置设计算中断的次数,从而计算进出的人数。在非开放时间,如检测到人体信号,则可以输出报警信号。
4.结语
本系统以AT89S51单片机为核心,以无线热释电人体红外探头信号为中断请求信号,以当前时间为标准,通过软件编程实现控制报音的目的。本系统的创新之处是系统硬件电路上比较简单,使用元件少,电路更具有可用性,性价比高,可方便安装于各种需监测和管理场所。该系统非常方便扩展,如培养摄像头启动控制等,如果要实现更大范围的检测和监控,还非常方便改装成为主—从机的多机通信形式。
参考文献:
[1]于复生,宋现春等,时钟芯片DS1302及其在数据记录中的应用 电子技术应用 2000年3月
[2]肖海荣,王凤瑛等,基于AT89C2051和ISD2560的录放音系统设计 微计算机信息 2004年第1期
[3] 广州周立功单片机发展有限公司 zlg7289A 8 位LED 及8 8 键盘控制芯片选型指南/upload/eWebUpload/200703/20070312110856345.pdf
评论