关键词 多CPU系统 单片机 可编程器件 串行EEPROM
1 引言
随着微电子技术的飞速发展,单片机的价格已变得十分低廉,特别是ATMEL公司的89系列单片机,内置闪速(Flash)存储器,具有51系列单片机的内核,尤其是89C2051只有20个引脚,2K Flash程序存储器,本身已是一个完整的微处理机系统,具有很高的性能价格比。此类CPU可以作为可编程器件用于构成一个比较复杂的应用系统,此方法比使用PAL、GAL等产品的性能价格比更高。现今软件工程中比较流行的方法是面向对象的模块化设计,其思想是将复杂的系统划分成任务单一的模块,有利于多人共同开发大规模软件。工控机也大多采用模块化设计,根据工控具体情况可方便地组成应用系统。同样一个小的应用系统也可用单片机作为可编程器件模块来构成。即将系统划分成任务单一的模块,每个器件模块编程简单,性能可靠,抗干扰性能强,从而大大节省设计和编程时间。但同时也出现了一个怎样实现各器件模块间交换信息的问题,对于速度要求比较高时,可采用并行通信或并行RAM共享方案;而对速度要求比较低时,可采用串行通信方法,但此方案要占用CPU的串行口的资源,且多点对多点的通信编程也比较困难。而共享串行EEPROM的方案能够解决这一矛盾,下面以智能热量仪为例介绍此方案。
2 系统的模块化设计
根据具体情况将系统划分成若干功能单一的模块。划分的原则是:实时性强的任务由一独立器件模块来完成,信息在器件模块之间的交换要少,且时间性要求要低。
根据智能热量仪要求将其划分成三个器件模块,功能框图如图1所示。CPU1完成智能热量仪物理量的采集,即温差、压力、流量、压差或频率的采集,并能输出控制信号,包括电流和开关量输出;CPU2实现人机对话功能:显示各物理量(温度、压力、压差、频率、瞬时流量或累积热量),接收仪表参数的输入等;CPU3完成与上位机间的通信和打印功能。EEPROM 93LC66连接这三个器件模块。为了编程方便,三个CPU的P1.0~P1.3都依次连接EEPROM的CS、CLK、DI、DO;而三个CPU的P1.4、P1.5则连在一起,作为EEPROM状态的标志,用来协调三个CPU的工作。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)