3.4 交流电检测电路
本设计,采用DVDI—001电压/电流互感器对交流电的电压、电流进行采样,然后通过精密整流电路进行整流,采用RC滤波,最终变为O~5 V电压进入FPGA的A/D测量端。
(1)作为电压互感器使用
DVDI—001作电压互感器使用时是一种电流型电压互感器。电压采样电路如图5所示。根据电路的实际情况,将Rr的阻值选为5 kΩ,CO选为O.1μF。因为电流的感应是1:l,所以Rr选为5 kΩ;同时也要注意不要让负载超过互感器的范围。这样,就可以安全地得到所需要的幅值范围。
(2)作为电流互感器使用
DVDI—001作电流互感器应用时,用户只需在中心孔内穿1匝母线作为输入线圈。电流采样电路如图6所示。由于电流的感应比是3 000:1,所以电路中的负载是很小的,所以根据电路的实际情况将Rr的阻值选为5 kΩ,CO选为0.22μF。这样,就可以安全地得到所需要的幅值范围(0~5 V)。
3.5 温度检测
数字温度传感器DSl8B20具有与CPU接口方便、直接数字量输出等优点,可提供12位(二进制)温度读数指示器件的温度信息。经过单线接口送入DSl8820或从DSl8B20送出,因此从主机CPU到DSl8820仅需一条线。室内温度检测采用数字温度传感器,其电路如图7所示。
4 双核通信
系统采用主从式架构,主核发送命令,从核响应,共同完成对外围设备的控制和管理。其中,COREl作为主核,外扩了32 KB的SRAM,主要通过MiniISA总线与外界通信;CORE2作为从核,通过I/O与外部通信。COREl、CORE2在结构上是相对独立的,双核采用仿打印机协议进行通信,二者以I/O口相接(并行数据线8位,控制线2位)。双核通信接口如图8所示,接口引脚定义如表4所列。
系统在每一个核中,都开辟了一个16字节的缓存,用于存储接收到的数据。其发送格式为:
从设备地址如表5所列。
5 软件设计
5.1 系统主程序流程
系统内部具有双核,每个内核单独执行程序。主程序流程如图9所示。
5.2 双核通信流程
双核通信采用读忙线发送、中断接收的方式,增强了数据发送的可靠性,如图10所示。
结 语
本文利用Actel公司最新Fusion系列数模结合的FPGA实现了远程家电控制,保证了多CPU环境下通信的协调与稳定。本文创新点:采用数模结合的FPGA,内嵌2个8051 IP软核,主核通过扩展MiniISA总线实现数据处理和系统管理,从核直接用于参数的采集和控制,且参数采集所用的A/D转换器均为12位的片内A/D。