铁电存储器在多CPU自动识别控制系统中的应用

发布者:caijt最新更新时间:2007-11-02 来源: 中国自控网关键字:定时  通道  输出  编程 手机看文章 扫描二维码
随时随地手机看文章

1、自动识别控制系统简介

自动识别技术是将数据自动识读、自动输入计算机的一种方法或手段。它是包括条码技术、磁条(卡)技术、光学字符识别、系统集成化、射频技术、声音识别及视觉识别等集计算机、光、机电、通信技术为一体的综合性高新科学技术。自动识别技术提供了快速、准确地进行数据采集输入的有效手段,解决了手工数据输入速度慢、错误率高等造成的“瓶颈”难题,因而自动识别技术作为一种革命性的高新技术,日益为人们所接受。

自动识别控制系统则是集微机自动识别技术和现代安全管理与控制措施为一体的系统,它涉及电子,机械,光学,计算机技术,通讯技术,生物技术等诸多新技术。是解决重要部门出入口实现安全防范管理的有效措施。包括出入口门禁安全管理系统、电梯控制系统、车辆进出控制系统、物业消防监控系统、保安巡检管理系统等,适用各种机要部门,如银行、宾馆、机房、军械库、机要室、办公间,智能化小区,工厂等。

自动识别控制系统在工作环境安全、人事考勤管理等行政管理工作中发挥着巨大的作用。因此设计一款性能价格比较高的产品将有着广泛的应用前景。

2、自动识别控制系统的功能组成

作为一种通用性强、功能齐全 的自动识别控制系统,应该具有众多组成要素。下面我们就以一个4门门禁控制器为例来说明,它的功能模块组成如下:

4路开门继电器控制电路+1路报警继电器控制电路
4路门位置信号侦测电路+4路开门按钮信号侦测电路+4路防破坏信号侦测电路
4路开关量输入电路+4路开关量输出电路
8路WIGEN信号译码电路(用于接8个WIGEN读卡器)
2路ABA信号译码电路与2路键盘仿真信号电路(用于接2个ABA读卡器或2个键盘仿真读卡器)
1路TTL232/RS232信号译码电路(用于接1个TTL232/RS232读卡器)
1路RS485信号控制电路(用于连接多达32个RS485方式的读卡器)
1路设备ID号设置拨断开关
时钟芯片控制电路
存储芯片控制电路(用于存储用户信息和事件信息)
系统监控电路
通讯电路(用于和上位机进行通讯)

3、几种主控设计方案的比较

随着电子技术的发展,各种CPU、存储芯片、系统扩展芯片、时钟芯片等层出不穷,在给设计人员有了更多选择的同时,也带来了另一个问题,就是该如何选择一种适合于自身的一种方案。这个方案不但要能实现系统需求的基本功能,还要在可靠性、开发难易程度、芯片供货情况以及价格等方面都要做到适宜。针对上面列出的4门控制器的功能特点,我们可做以下几个方案:

3.1.传统形式

这是一种为广大嵌入式系统设计人员熟知的形式,在很多教科书及应用系统中有着详细的介绍。

在主控方面,一般采用以应用最广的8051+EPROM程序存储器或带有大容量FLASH ROM 的CPU如SST89C58或P89C51RD2

在系统扩展方面,2片74HC138用于译码,1片74HC373用于地位地址锁存,1片74HC245用于总线驱动,3片74HC377用于信号输出,4片74HC244用于信号输入
存储方面,一片628128用于存储事件信息和外部变量,一片28SF040或39SF040用于存储各种有效卡片、非法卡片信息

时钟方面,采用一片串行方式的DS1302或并行数据方式的DS12C887

通讯方面,2片485芯片,一片用于和上位机通讯,一片用于和RS485读卡器通讯

这种方式具有芯片价格较便宜,供货渠道广泛,编程调试较容易等优点,但其体积庞大,芯片多,硬件故障点增多,而且由于任务众多,导致CPU工作繁忙,软件中的各种中断处理容易干扰,虽然现在已有基于8051的实时多任务操作系统可以解决此问题,但是这要求设计者一方面要选择价格相对高的CPU,另一方面也要学习消化RTX51,而将其正确的应用到系统中去需要更高的软件技巧和更多的调试时间。否则软件的可靠性无法保证。这对于产品的快速市场化是不利的。

3.2.ARM+CPLD

ARM芯片及CPLD芯片是最近几年流行起来的嵌入式系统的构成部件,他们将可能成为后PC时代嵌入式系统设计的首选。ARM是一款32位的精简指令集(RISC)处理器架构,以其高性能、低功耗、低成本占有市场。 以PHILIPS的LPC2104为例,它具有128K 片内Flash程序存储器、最多64K静态RAM、双UART、两个定时器、具有4路捕获/比较通道、多达6路输出的PWM单元、实时时钟、看门狗定时器、通用I/O口、CPU操作频率可达60MHz等特点。

CPLD是复杂可编程逻辑阵列的简称,它具有口线多、速度快、可编程、纯硬件电路等特点。

根据我们提出的4门控制器的功能,一片ARM及一片CPLD,加上少许外围电路,即可实现。这样不仅使系统板的体积大大减少,而且增加了可靠性,这是其他方式所不能比拟的。但是,由于ARM及CPLD均是新兴的技术,对于一些基于8051单片机经验丰富的设计者而言,却需要有一个不短的时间去学习消化实践,另外,有关ARM及CPLD的开发工具,如仿真器、集成开发环境IDE都在一个比较高的价位上,且学习及使用都比8051难多了。这不仅对产品的快速市场化不利,而且也不适合对某些场合灵活多变的设计。而且,目前这两种芯片的价格较8051组成的系统价格仍偏高,这也不太适合应用于本文提出的通用控制器。

3.3.多CPU系统

在经过对上述两种方案的比较后,是否还有其他某种使用芯片数量最少、价格最便宜、功能最齐全、设计灵活多变的方案呢?答案是肯定的。那就是采用多CPU系统。基于8051芯片如AT89x52的广泛使用,使单片机的价格大大下降。目前,89X52的市场零售价已经低于8255、8279、8253、8250等专用接口芯片中的任何一种;而89X52的功能实际上远远超过以上芯片。因此,如把89x52作为接口芯片使用,在经济上是合算的。这样就解决了系统扩展芯片众多的缺点。一片89x52有32个I/O口,均可做输入输出,且有3个定时器和2个外部中断,完全可以解决对ABA/WIGEN/232不同串行信号的处理。

正如软件可由实时多任务操作系统RTOS来实现一样,硬件一样可用多CPU组成的系统来实现。

这样,本文提出得4门控制器将由3片CPU共同组成,它具有以下特点 芯片数目少。除了存储芯片和时钟芯片,基本只剩下3块89S52 CPU用89S52价格低的特点,充当外设。使用灵活。可根据情况减少某个CPU或更改其程序完成不同的功能原来写在一个CPU中的程序分离,使每个芯片基本上在8K之内完成,也就是都可选择89S52,不用采用昂贵的大容量FLASH 8051内核的 CPU。加了看门狗的主CPU可以实时监控另外两个CPU的工作是否正常各CPU各司其职。提高了与上位机通讯的速度及准确性,提高了读写存储的速度以及访问FALSH的时间。由于将个任务分解,所以每个CPU所用的寄存器较少,均可以使用89S52自带的256字节RAM即可,不必使用XDATA访问RAM 中的CPU ,提高了各CPU执行的速度。

4、选择FM3808为多功能存储、时钟、系统监控芯片

4.1.传统方式的说明

在确立了主控方式之后,要选择存储、时钟及系统监控芯片,我们先来分析以往芯片的选择正如3.1种所描述的,除了选择具有512K BYTES的FLASH ROM 芯片作为卡号存储芯片外(因为无论有效无效卡号,其更改频率是不高的,采用此芯片不会影响芯片),作为常用的信息存储及外部寄存器芯片,一般采用SRAM如628128,虽然此芯片目前价格很便宜,但由于系统掉电后,其中的所有信息消失,所以必须加掉电保护电路和电池。而无论采用专用的掉电保护芯片和采用分立元件组成的对电路,都不能100%的保证数据部丢失,尤其是在电源不稳定和干扰严重的环境下。

时钟有众多选择,如DS1302及12887,但价格不低监控芯片也有很多种,如X25045,它集成了看门狗、电压监测、可靠复位及EEPROM等特点,但价格也不低。

4.2. FM3808的特点

为了使系统具有更高的可靠性以及小型化,我们将采用RAMTRON的新型多功能芯片:
 
FM3808,一种将掉电非遗失、实时时钟、系统监控于一体的高性能芯片。它具有以下特点:

32K*8 BIT 非易失RAM
高达100亿次的读写次数
写无延时
数据可保存10年
内置低电压保护
实时时钟
后备电源切换
可编程时钟日历报警
可编程看门狗定时器
电源监测
可编程中断输出
可编程CPU复位或中断
5V工作电压
后备电压可低至5V
动态电流25mA
时钟后备电流1uA

5、选择FM24C16作为多CPU通讯中枢

在确立以多CPU方式作为系统主控方案后,需要解决一个最关键的问题,那就是CPU之间的通讯。让我们先来比较一下几种数据交换的优缺点。

5.1.几种单片机之间的通信方式的可行性分析

采用硬件UART进行异步串行通信。这是一种占用口线少,有效、可靠的通信方式;但在本文提出的4门控制器方式中,一个CPU的UART要完成与上位机的通讯,一个CPU的UART负责与485读卡器或232读卡器之间的通讯,可见硬件资源是不够的。这种方法不适合本例。

采用片内SPI接口或2C总线模块串行通信形式。SPI/I2C接口具有硬件简单、软件编程容易等特点,但目前大多数单片机不具备硬件SPI/I2C模块。特别是我们采用的通用廉价的89X52系列单片机。这种方法也不可行。口对口并行通信,利用单片机的口线直接相连,加上1~2条握手信号线。这种方式的特点是通信速度快,1次可以传输4位或8位,甚至更多,但是并行RAM需要占用大量的口线(数据线+地址线+读写线+片选线+握手线),一般在16条以上。这是一个让人望而生畏的数字,而且会大大增加PCB面积并给布线带来一定的困难。这有悖于将CPU口线用于扩展口线的特点。使实际需要的口线不够用,因此也是不可行的。利用双口RAM作为缓冲器通信。这种方式的最大特点就是通信速度快,两边都可以直接用读写存储器的指令直接操作;但这种方式需要大量的口线,而且双口RAM的价格很高。同样不予考虑。利用自定串行通讯协议在CPU间进行通讯。这是在FM24C16未面世以来,最符合本文提出的4门控制器的一种方式,且已正常应用于实际系统当中。虽然可以满足本系统的需要,占用口线少,使用灵活,但调试相当繁琐,因为不但要正确解决好中断的请求问题,还要精心调试时序以及通讯协议,尤其是在3个CPU间的通讯当中,单片机要传递的每一位或每一个字节做出响应,通信数据量较大时会耗费大量的软件资源,这在一些实时性要求高的地方是不允许的。况且没个CPU都有各自的任务,如果将太多的软件资源用于数据交换,则失去了采用多CPU方案的意义。

5.2.FM24C16的特点

针对自定串行通讯协议存在的问题,我们设想若是在单片机之间增加1个数据缓冲器,大批数据先写入缓冲区,然后再让对方去取, 各个单片机对数据缓冲器都是主控模式,这样必然会大大提高通信效率。不选择EEPROM是因为其读写次数有限且速度慢,而串行数据缓冲的RAM不但难以买到而且价格很高。移位寄存器也可以做数据缓冲器,但目前容量最大的也只128位,因为是“先进先出”结构,所以不管传递数据多少,接收方必须移完整个寄存器,灵活性差而且大容量的移位寄存器也是少见难买的。

而随着美国Ramtran公司一种被称为“铁电存储器”( 简称FRAM)的新型非易失性存储器件的推出,给我们带来了解决方法。其中的FM24C16应用于本文的4门控制器就再合适不过了。

不需写入时间、读写次数无限没有分布结构可以连续写放的优点,具有RAM与EEPROM的双得特性
价格较低因此我们可以将3个CPU 与1片FRAM接成多主-从的I2C总线方式,加上几条握手线,软件方面解决好I2C多主-从的控制冲突与通信协议问题,即可实现简单、高效、可靠的通信。

6、各CPU功能规划

6.1.CPU1功能介绍

任务1:定时发送继电器控制信息 (24C16中的第1页01-08字节)
任务2:定时发送正常状态信息 (24C16中的第1页61字节)
任务3:根据条件实时发送设置信息24C16中的第4页01---字节)
任务4:定时查询CPU2的监测信息(24C16中的第2页01-15字节)
任务5:定时查询CPU3机器号信息 (24C16中的第3页01-05字节)
任务6:定时查询CPU3的卡片信息(24C16中的第3页11-25字节)
任务7:监控串行口由上位机发出的命令
任务8:处理卡号信息
任务9:定时查询FM3808的时钟信息

6.2.CPU2功能介绍

任务1:定时查询CPU1的控制信息(24C16中的第1页 01-08字节)
任务2:每隔 2S查询CPU1的状态信息(24C16中的第1页 61字节)
任务3:每隔 2S查询CPU3的状态信息(24C16中的第3页 31字节)
任务4:实时发送监测信息(24C16中的第2页01-15字节)
任务5:实时发送时钟信息(24C16中的第2页21-36字节)

6.3.CPU3功能介绍

任务1:定时发送发送机器号信息 (24C16中的第3页01-05字节)
任务2:根据变化实时发送卡片信息 (24C16中的第3页11-26字节)
任务3:定时发送发送正常状态信息(24C16中的第3页31字节)
任务4:监控485读卡器信息
任务5:监控wigen26读卡器信息
任务6:监控ABA/键盘仿真读卡器信息

7.系统功能框图

8.结束语

本文给出的基于多cpu方式的4门控制器,一方面充分利用铁电存储器FM3808非易失RAM及融合时钟、监控与一体的多功能特点,另一方面将FM24c16的读写速度快、读写次数巨大的特点完美的嵌入到3个cpu间的通讯当中,实现了多cpu系统使用灵活、编程方便、资源丰富的多快好省的优越性。

此控制器不仅可作为自动识别多门控制系统的主控器,而且在空调控制、工业控制等领域也进行了实践应用,并取得了良好的效果。

参考文献

(1)陈 冲,一种基于铁电存储器的双机串行通信技术,单片机及嵌入式系统应用,2002

关键字:定时  通道  输出  编程 引用地址:铁电存储器在多CPU自动识别控制系统中的应用

上一篇:由AT91 M55800A构成的简易数据采集方案
下一篇:基于CH365芯片的PCI总线接口卡的设计与实现

推荐阅读最新更新时间:2024-03-30 21:24

51单片机输出输入接口扩展程序设计
通信协议: 第1字节,MSB为1,为第1字节标志,第2字节,MSB为0,为非第一字节标志,其余类推……,最后一个字节为前几个字节后7位的异或校验和。 测试方法:可以将串口调试助手的发送框写上 95 10 20 25,并选上16进制发送,接收框选上16进制显示,如果每发送一次就接收到95 10 20 25,说明测试成功。 这是一个 单片机 C51串口接收(中断)和发送例程,可以用来测试51单片机的中断接收和查询发送,发送没有必要用中断,因为程序的开销是一样的 #include #include #define INBUF_LEN 4 //数据长度 unsigned char inbuf1 ; un
[单片机]
基于开关电容的模拟可编程设计实现
工作方式 James Clerk Maxwell最早于1873年介绍了用电容仿真电阻的技术,当时他将电流计与电池、安培计和电容串联,并定期逆变电容,从而检测出电流计的电阻。类似的方法也曾用于开关电容电路。通过MOS开关控制电荷流进出,开关电容电路可用电容仿真电阻。控制电荷流定义了电流,从而定义了电阻。以下电路显示了电荷通过电阻和开关电容的流动情况。 图1:电荷通过电阻和开关电容的流动情况。 如果我们计算图1(a)中通过电阻的电流,应采用以下方程式: i= V/R ------(1) 在图1(b)中,?1和?2是非重叠时钟。?1关闭时,?2打开,电容充电至电压V。存储在电容中的电荷可由以下方程式得出: q = CV-----(2
[模拟电子]
基于开关电容的模拟可<font color='red'>编程</font>设计实现
搞定电路设计之适于树莓派的±10V模拟输入和±15V模拟输出I/O模块
搞定电路设计之适于树莓派的±10V模拟输入和±15V模拟输出I/O模块 虽然世界继续更加数字化,计算能力和数字功能愈发关键,但测量环境和与实际器件交互的需求仍然是一种模拟功能。为了在数字和模拟域的边界运行,处理器必须包括混合信号输入/输出,并适应更多的软件可编程范围,从而支持许多工业、仪器仪表和自动化应用。 图1所示的电路是一个灵活的多通道混合信号模拟输入/输出(I/O)模块。16个单端模拟输出可通过软件配置,支持范围为0V至5V、±5V、0V至10V和±15V。8个全差分模拟输入通道的输入范围为0V至2.5V、±13.75V和0V至27.5V,可通过硬件进行选择。 图1.ADI CN0554简化功能框图 该电路
[模拟电子]
搞定电路设计之适于树莓派的±10V模拟输入和±15V模拟<font color='red'>输出</font>I/O模块
单片机定时器常见两大应用问题解析
在单片机的学习过程中,单片机定时器的合理设置和应用是非常关键的一步,也是刚开始接触单片机知识的新人工程师们比较容易出错误的一个环节之一。在今天的文章中,我们为大家总结了单片机定时器应用过程中的两大常见问题进行实时解析,希望能够对各位新人工程师的学习提供一定帮助。 问题一:51单片机的T0、T1定时器四种工作方式各有什么特点? 在单片机定时器的应用过程中,定时器在进行设置时会有四种不同的工作方式,合理选择相应的工作方式可以帮助工程师快速完成及时设置。下面我们就来逐一讲解一下这四种不同的计时方式。方式0是单片机计时器的第一种计时方式,这一方式13位计数模式。方式1则采用16位计数模式,方式2采用8位自动重装入计数模式,这两种技术模式也
[单片机]
单片机<font color='red'>定时</font>器常见两大应用问题解析
通道全景电路图
双通道全景电路图
[模拟电子]
双<font color='red'>通道</font>全景电路图
三菱PLC的编程元件
三菱FX2N系列plc的每种元器件都用特点的字母来表示,如X表示输入继电器,Y表示输出继电器,M表示辅助继电器,T表示定时器,C表示状态元件等,而且这些元器件都有规定的编号。     三菱FX2N系列PLC具有数十种编程元件(见表1)。FX2N系列plc编程元件的编号分为两部分:第一部分是代表功能的字母,如输入继电器用“X”表示,输出继电器用“Y”表示;第二部分为数字,为该类器件的序号,FX2N系列PLC中输入继电器及输出继电器的序号为八进制,其余部件的序号为十进制。     一、输入继电器(X)     三菱FX2N系列可编程控制器输入继电器用“X”表示,编号范围为X0~X177(最多128点,不同机型的点数可能不同,余同
[嵌入式]
手机设计中Pop噪声的处理方法
手机日益普及,已成为生活中不可缺少的通讯工具。而且手机的功能已不仅仅限于通话,手机早已成为时尚潮流的标志和音频视频娱乐的一个载体,MP3、FM收音机、手机电视、数码拍照等等都逐渐成为中高端手机必不可少的功能。尤其是音乐手机的推出对手机的音质提出了更高的要求。然而在手机音频的设计中,Pop噪声问题一直是困扰工程师的难题之一。本文将分别阐述针对手机的扬声器和立体声耳机Pop噪声的产生机理,并介绍意法半导体针对这些问题提出的解决方法。 Pop 噪声 手机用音频器件大部分都采用单电源供电,因为这样可以简化电源的设计和延长待机时间。而这时,音频放大器的输入信号和输出信号往往会叠加上0.5倍电源电压的直流电压偏置。所以,在音频输入端需要
[应用]
TYPE-C转DC转接头方案FS8024A支持9V、12V、15V、20V电压输出
如今随着这几年的USB-C PD适配器的普及,消费者手上的PD适配器越来越普遍,如何让以前的电源适配器也可以用上PD适配器呢?如此一来以前的电源适配器坏了,就不需要费心费力的寻找相同的适配器进行更换,甚至于只能将整个设备换掉。 不妨加入一颗受电端PD SINK取电芯片——FS8024A。小雅将为大家介绍FS8024A芯片TYPE-C转DC转接头的详细方案。 一.概述 FS8024A 是泛海微电子针对 USB PD 协议开发的一款兼容 USB PD 的通信芯片。输入端主要接 PD 的适配器,输出端配置输出固定的电压。FS8024A 从支持 USB PD 的适配器取电,然后供电给设备。比如可以配置适配器输出需要的电压,给无线充
[嵌入式]
TYPE-C转DC转接头方案FS8024A支持9V、12V、15V、20V电压<font color='red'>输出</font>
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
最新工业控制文章
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved