基于CPLD的智能撥號(hào)報(bào)警系統(tǒng)設(shè)計(jì)
3 CPLD的系統(tǒng)設(shè)計(jì)和邏輯仿真
系統(tǒng)控制核心CPLD的三個(gè)控制模塊都是采用VHDL語言編程來實(shí)現(xiàn)的[4-5],其中電話信號(hào)音檢測(cè)模塊DJF1用來檢測(cè)公用電話網(wǎng)絡(luò)傳遞的語音信號(hào),摘機(jī)/掛機(jī)控制模塊DJF2用來控制摘機(jī)/掛機(jī)電路,實(shí)現(xiàn)電話的接通和關(guān)斷,DTMF收發(fā)時(shí)序模塊DJF3控制DTMF撥號(hào)電路自動(dòng)撥打預(yù)先設(shè)定好的電話號(hào)碼。系統(tǒng)的主程序流程圖如圖7所示。
系統(tǒng)的工作過程:當(dāng)紅外傳感器檢測(cè)到人體入侵信號(hào)EN后,摘機(jī)/掛機(jī)控制模塊啟動(dòng)并產(chǎn)生摘機(jī)信號(hào)PICK,使摘機(jī)/掛機(jī)電路進(jìn)行摘機(jī)。摘機(jī)后,DTMF收發(fā)時(shí)序模塊將MT8880設(shè)置為呼叫處理模式。然后電話信號(hào)音檢測(cè)模塊通過對(duì)IRQ的計(jì)數(shù)判別電話音是否為撥號(hào)音。如果不是撥號(hào)音,則電話掛機(jī),然后再摘機(jī)重?fù)?。如果是撥?hào)音,則MT8880設(shè)置為DTMF發(fā)送模式,同時(shí)MT8880撥打預(yù)置電話和發(fā)送語音報(bào)警信號(hào)。發(fā)出報(bào)警信息后延時(shí),電話信號(hào)音檢測(cè)模塊檢測(cè)電話音是否為回鈴音。如果是,則延時(shí)掛機(jī);如果不是,則掛機(jī)重?fù)堋?p>CPLD芯片采用的是Altera公司的EPM240芯片,該芯片具有片內(nèi)存儲(chǔ)器,系統(tǒng)掉電和復(fù)位后不用重新向芯片下載程序就能正常工作。系統(tǒng)設(shè)計(jì)完成后,對(duì)三個(gè)功能模塊進(jìn)行邏輯編譯、邏輯綜合及優(yōu)化、邏輯布局布線、邏輯仿真,然后將生成的配置文件下載到CPLD芯片。將功能模塊進(jìn)行時(shí)序仿真驗(yàn)證,仿真波形如圖8所示,可以看到功能模塊達(dá)到所期望的邏輯功能。
本文采用CPLD控制核心實(shí)現(xiàn)了智能報(bào)警系統(tǒng)。由于利用EDA技術(shù)進(jìn)行系統(tǒng)設(shè)計(jì),外圍器件少、體積小、功耗低、可靠性高。通過修改VHDL源程序就可以增加一些新的功能,提高了設(shè)計(jì)的靈活性,具有較好的應(yīng)用前景。
評(píng)論