1 SPC3的基本特性
SPC3是SIEMENS公司开发的一种用于PROFIBUS-DP智能从站的专用芯片,集成了(RS-485)物理层、现场总线数据链路层、DP从站用户接口以及部分现场总线管理(FMA),与其相连的MCU或MPU只需少量的软件工作即可实现PROFIBUS-DP智能从站通信功能。
SPC3的内部结构如图1所示。
SPC3的控制核心是微序列器(MS,micmxequencer),它控制整个SPC3的工作过程。在芯片进入通信工作以前,需要外接CPU对参数寄存器、方式寄存器等进行必要的参数设置。SPC3还集成有双端口RAM,可以与外部直接交换数据。SPC3为外部访问提供了两种模式:地址数据总线复用模式和地址数据总线非复用模式。SPC3自动建立PROFIBUS-DP通信的服务存取点(SAP),不同报文数据对应不同的缓冲。DP输入数据、DP输出数据都具有三级缓冲,其中总有一级缓冲面向通信。诊断数据有二级缓冲,其中一级缓冲始终用于存放更新的诊断数据。
SPC3支持多个中断,具有中断屏蔽和中断指示功能,多个中断使用统一外部输出。SPC3具有内部集成的看门狗定时器,其操作于三种不同的状态:比特率搜寻、比特率控制和DP控制。SPC3的UART接口能够自动识别总线的比特率(9.6kb/s~12Mb/s)。在任意时刻都可以通过查看SPC3状态寄存器知道MAC状态。SPC3的空闲定时器直接控制总
线时间。
2 微处理器与SPC3之间的接口设计
2.1 硬件设计
CPU使用AT89S.52,它是采用先进的CMOS工艺制造的8位微控制器。它具有并行可编程功能的非易失性FLASH存储器,是80C51的派生器件。该控制器具有运算速度快、兼容MCS5l指令集的特点,可以闪速可编程、可擦除。它有三个16位定时/计数器。由于AT89C52内部集成有8kB的Flash,因此本设计不需另外扩展ROM即可进行内部加密。CPU与SPC3的接口电路如图2所示。对AT89S52而言,SPC3相当于它扩展的一个外部RAM。而且,SPC3有内部地址解码电路。所以,AB8~ABl0接地。此时D137一DB0是数据地址复用总线。可以产生低8位的数据和地址,高4位地址由AB0~AB3产生,AB4~AB7产生SPC3的片选信号。只有AB4~AB7同时为0时才选中SPC3。在图2中,SPC3的片选信号是1000H,SPC3的内部RAM位于1000H~15FFH单元。