Actel數(shù)模結(jié)合FPGA的遠(yuǎn)程控制器設(shè)計(jì)
3.4 交流電檢測(cè)電路
本設(shè)計(jì),采用DVDI―001電壓/電流互感器對(duì)交流電的電壓、電流進(jìn)行采樣,然后通過(guò)精密整流電路進(jìn)行整流,采用RC濾波,最終變?yōu)镺~5 V電壓進(jìn)入FPGA的A/D測(cè)量端。
(1)作為電壓互感器使用
DVDI―001作電壓互感器使用時(shí)是一種電流型電壓互感器。電壓采樣電路如圖5所示。根據(jù)電路的實(shí)際情況,將Rr的阻值選為5 kΩ,CO選為O.1μF。因?yàn)殡娏鞯母袘?yīng)是1:l,所以Rr選為5 kΩ;同時(shí)也要注意不要讓負(fù)載超過(guò)互感器的范圍。這樣,就可以安全地得到所需要的幅值范圍。
(2)作為電流互感器使用
DVDI―001作電流互感器應(yīng)用時(shí),用戶(hù)只需在中心孔內(nèi)穿1匝母線(xiàn)作為輸入線(xiàn)圈。電流采樣電路如圖6所示。由于電流的感應(yīng)比是3 000:1,所以電路中的負(fù)載是很小的,所以根據(jù)電路的實(shí)際情況將Rr的阻值選為5 kΩ,CO選為0.22μF。這樣,就可以安全地得到所需要的幅值范圍(0~5 V)。
3.5 溫度檢測(cè)
數(shù)字溫度傳感器DSl8B20具有與CPU接口方便、直接數(shù)字量輸出等優(yōu)點(diǎn),可提供12位(二進(jìn)制)溫度讀數(shù)指示器件的溫度信息。經(jīng)過(guò)單線(xiàn)接口送入DSl8820或從DSl8B20送出,因此從主機(jī)CPU到DSl8820僅需一條線(xiàn)。室內(nèi)溫度檢測(cè)采用數(shù)字溫度傳感器,其電路如圖7所示。
4 雙核通信
系統(tǒng)采用主從式架構(gòu),主核發(fā)送命令,從核響應(yīng),共同完成對(duì)外圍設(shè)備的控制和管理。其中,COREl作為主核,外擴(kuò)了32 KB的SRAM,主要通過(guò)MiniISA總線(xiàn)與外界通信;CORE2作為從核,通過(guò)I/O與外部通信。COREl、CORE2在結(jié)構(gòu)上是相對(duì)獨(dú)立的,雙核采用仿打印機(jī)協(xié)議進(jìn)行通信,二者以I/O口相接(并行數(shù)據(jù)線(xiàn)8位,控制線(xiàn)2位)。雙核通信接口如圖8所示,接口引腳定義如表4所列。
系統(tǒng)在每一個(gè)核中,都開(kāi)辟了一個(gè)16字節(jié)的緩存,用于存儲(chǔ)接收到的數(shù)據(jù)。其發(fā)送格式為:
從設(shè)備地址如表5所列。
5 軟件設(shè)計(jì)
5.1 系統(tǒng)主程序流程
系統(tǒng)內(nèi)部具有雙核,每個(gè)內(nèi)核單獨(dú)執(zhí)行程序。主程序流程如圖9所示。
5.2 雙核通信流程
雙核通信采用讀忙線(xiàn)發(fā)送、中斷接收的方式,增強(qiáng)了數(shù)據(jù)發(fā)送的可靠性,如圖10所示。
結(jié) 語(yǔ)
本文利用Actel公司最新Fusion系列數(shù)模結(jié)合的FPGA實(shí)現(xiàn)了遠(yuǎn)程家電控制,保證了多CPU環(huán)境下通信的協(xié)調(diào)與穩(wěn)定。本文創(chuàng)新點(diǎn):采用數(shù)模結(jié)合的FPGA,內(nèi)嵌2個(gè)8051 IP軟核,主核通過(guò)擴(kuò)展MiniISA總線(xiàn)實(shí)現(xiàn)數(shù)據(jù)處理和系統(tǒng)管理,從核直接用于參數(shù)的采集和控制,且參數(shù)采集所用的A/D轉(zhuǎn)換器均為12位的片內(nèi)A/D。
評(píng)論