摘要:PHILIPS公司的P80C592芯片是P8X592的无片内ROM版本,该芯片是现有P8XC522和Philips CAN控制器PCA82C200的功能相结合的产物。文中介绍了P80C592在开发基于CAN总线的显示通信模块中的应用方法。
关键词:CAN总线 显示通信模块 P80C592
1 P80C592芯片简介
P80C592是PHILIPS公司采用先进的COMS工艺制造的高性能8位单片机。该单片机的指令集与80C51 完全兼容,但在80C51标准特性的基础上又增加了一些对于应用具有重要作用的硬件功能。P80C592是P8XC592的无片内ROM版本,是现有P8XC522和Philips CAN控制器PCA82C200功能相结合的产物。该器件具有下列特性:
●带有80C51中央处理单元(CPU);
●带2×256 B的片内RAM,外部可扩展至64kB;
●具有两个标准的16位定时器/计数器;
●新增一个包括四个捕获和三个比较寄存器的16位定时器/计数器;
●具有8路模拟量输入的10位ADC变换器;
●带有两路分辨率为8位的脉冲宽度调制输出;
●具有两级优先权的15个中断源(可以有2~6个外部中断源);
●具有五组8位I/O端口和一组与ADC模拟量输入共用的8位输入口;
●带有与内部RAM进行DMA数据传送的CAN控制器;
●内含具有总线故障管理功能的1Mbps CAN控制器;
●VDD/2基准电压;
●具有与标准80C51兼容的全双工UART模式;
●带有在片监视跟踪定时器(WDT);
●时钟频率为1.2MHz~16MHz。
图2 显示通信模块的外部存储器扩展电路
2 显示通信模块的结构设计
基于CAN总线的显示通信模块的结构框图如图1所示,该模块采用以带有在片CAN的微处理器P80C592为核心设计的液晶接口电路,并采用大规模液晶显示屏DMF50081NB-FW作为显示设备,同时选用SED1330作液晶控制器,从而实现了友好的人机对话界面。
该显示通信模块包含1颗支持CAN总线的工业级CPU(P80C592),该CPU通过CAN总线接收各数据采集处理模块及其它功能模块的8路振动信号数据、快速傅立叶变换等处理结果,并通过LCD(DMF50081NB-FW)显示,同时可根据用户指令进行FLASH电子盘存取,并通过通信接口传送至上位机数据分析管理软件。此外,CPU还负责按键管理、人机交互、参数设置、系统组态、时钟设置、数据暂存、对外通信、环境温度监测等功能的控制。
该显示通信模块以DMF50081NB-FW作为显示设备,以SED1330作为液晶显示控制器,并且用外扩的32kB的数据存储器RAM(62256)作为外扩的字符发生器。另外,该模块还设计了一个键盘电路,用以实现用户对仪器的各项操作。模块所带的一块40Mbit的FLASH电子盘可用来实现小规模现场数据的存取以及软件的在线升级。由于系统要求进行时钟设置,因此在显示通信模块中还用DS1302时钟芯片设计了一个时钟电路。
3 外部存储器扩展电路
该显示通信模块以P80C592为主控制器,同时借助于单片机的P0、P2口和8位数据总线方式来扩展32kB程序存储器EPROM(AT29C256)、128kB数据存储器RAM(628128)以及4Mbit的FLASH电子盘(29F040)。其电路原理图如图2所示。由于外部存储器的总量超过了64kB,因此,选用GAL16V8译码器来实现P80C592对各个存储器的逻辑控制。
3.1 32kB程序存储器AT29C256
由于P80C592没有片内ROM,因此必须用外扩的程序存储器来存放系统的主程序,其存储器系统如图3所示。其中AT29C256读出时作为程序存储器,占用的是程序存储器0000H~7FFFH空间;写入时(升级程序时)作为数据存储器,占用的是数据存储器0000H~7FFFH空间。当A15(P2.7)为1时,该器件处于写保护状态,而在A15为0时,即可写入数据。主程序的大小在10kB左右,加上容错及冗余设计等因素,总的程序容量也在16kB以下。由于目前市场上32kB以下的EPROM已不易买到,且价格相差无几,再加上考虑到将来系统的在线升级,因此,系统采用了32kB的EPROM,因为大容量的EPROM有利于系统的升级和芯片的重复利用。
3.2 128kB数据存储器RAM(628128)
实际上628128数据存储器RAM与4Mbit FLASH电子盘(29F040)复用8000~FFFH地址空间。当GAL16V8的RAM(F5脚)为0时选择RAM有效。该器件在读出时,既可作为程序存储器(MOVC读),又可作为数据存储器(MOVX读);写入时则只能作为数据存储器(MOVX写)。此外,通过P80C92的EA15(P1.0)、EA16(P1.1)可将RAM分成32kB的4个区, 以便于数据的存取。当GAL16V8的RAM.RD(F7脚)为0时,即可读取RAM的数据;而当GAL16V8的RAM.RD(F7脚)为1时,则表示可以往RAM中写数据了。
3.3 4Mbit FLASH电子盘(29F040)
对于便携式振动分析系统来说,保存现场的数据对将来的分析是非常重要的。因此在通信显示模块外扩展了4Mbit的外设29F040。29F040是一块4Mbit(512k×8bit)、5.0V电压供电的FLASH存储器。它的访问时间为55ns~150ns,允许微处理器无等待处理。它具有独立的片选信号(CE)、写使能WE 和输出使能(OE)控制,同时具有可变块擦除结构,它内含8个64k字节的扇区(如图4所示),并具有单个扇区、多个扇区、整个FLAH擦除功能;另外,它还具有单个扇区、多个扇区保护功能。8个扇区由地址线A16~A18来区分(见表1),而这三个地址线则分别由P80C592的P2.1~P2.3来控制。片选信号CE可由A15(P2.7)来控制。读写由GAL16V8的FLAH.WR(F6脚)来完成。
表1 29F040的扇区地址区分
扇 区 A18 A17 A16 扇区0 0 0 0 扇区1 0 0 1 扇区2 0 1 0 扇区3 0 1 1 扇区4 1 0 0 扇区5 1 0 1 扇区6 1 1 0 扇区7 1 1 1
4 显示通信模块的软件设计
图5所示是显示通信模块系统软件设计的总体流程。它主要完成三个功能:初始化、与数据采集处理模块的CAN通信、字符、图形和汉字显示。初始化功能主要是对SED1330、80C592、DSP TMS320C25进行初始化。与采集处理模块的CAN通信是在显示通信模块和数据采集处理模块的两片80C592之间进行的,主要作用是通过CAN总线将初始化设置传送到数据采集处理单元,并接收各采集处理模块及其它功能模块的数据和处理结果,同时根据用户指令进行FLASH电子盘的存取等。字符、图形和汉字显示可为系统建立一个友好的用户界面,并将数据、波形及处理结果显示出来,以供现场人员参考和分析。这三个功能可以在各个相应的子程序中完成。
5 结束语
本文详细介绍了PHILIPS公司的P80C592芯片的主要功能特点,具体介绍了该芯片在显示通信模块当中的具体应用。本文所述的显示通信模块目前已经应用于便携式旋转机械振动分析系统,并且在多家电厂得到了成功的应用。实际应用表明,P80C592具有很好的推广价值。