基于單片機(jī)及CPLD的多間隔脈沖產(chǎn)生電路
摘要:單片機(jī)具有邏輯控制功能靈活的特點(diǎn),復(fù)雜可編程邏輯器件(CPLD)具有集成度高、可靠性好及工作速度快的優(yōu)點(diǎn),基于二者各自的優(yōu)點(diǎn),設(shè)計(jì)了一種脈寬固定為1 μs,周期可調(diào)的單頭、雙頭、三頭三路脈沖產(chǎn)生電路,該脈沖發(fā)生器可實(shí)現(xiàn)在脈沖不間斷的情況下改變周期,其波形要求精度高、漂移小、抗干擾能力強(qiáng)。
關(guān)鍵詞:單片機(jī);復(fù)雜可編程邏輯器件;脈沖發(fā)生器;計(jì)數(shù)器
脈沖信號(hào)發(fā)生電路在電路實(shí)驗(yàn)和設(shè)備檢測(cè)等工程中具有十分廣泛的用途,例如某測(cè)試系統(tǒng),需要給被測(cè)產(chǎn)品加入可調(diào)的多間隔脈沖激勵(lì)信號(hào),以使被測(cè)產(chǎn)品能按照要求工作在不同的狀態(tài)。隨著各種數(shù)字設(shè)備和工業(yè)標(biāo)準(zhǔn)持續(xù)、快速的發(fā)展以及市場(chǎng)對(duì)縮短產(chǎn)品開發(fā)周期的客觀要求,脈沖信號(hào)發(fā)生電路已成為信號(hào)源市場(chǎng)的一大主流,其市場(chǎng)份額在迅速增長(zhǎng);同時(shí),目前國(guó)內(nèi)在測(cè)試中使用的脈沖發(fā)生電路幾乎全部依賴進(jìn)口。因此,研制出具有實(shí)用價(jià)值的脈沖發(fā)生電路,對(duì)滿足國(guó)內(nèi)、國(guó)際市場(chǎng)的需求具有重要意義。
1 系統(tǒng)總體結(jié)構(gòu)
1.1 系統(tǒng)設(shè)計(jì)思想
系統(tǒng)采用模塊化設(shè)計(jì),單片機(jī)AT89S52和CPLD是整個(gè)系統(tǒng)的CPU,控制系統(tǒng)的協(xié)調(diào)。首先通過(guò)4x4按鍵模塊設(shè)置系統(tǒng)脈沖信號(hào)的周期,選擇脈沖輸出方式,并給出狀態(tài)指示;CPLD接收輸入信號(hào)后與單片機(jī)進(jìn)行數(shù)據(jù)通信,并將脈沖信號(hào)周期通過(guò)LCD1602顯示,然后經(jīng)過(guò)單片機(jī)和CPLD的數(shù)據(jù)處理,產(chǎn)生所需的脈沖信號(hào),由CPLD輸出。其中狀態(tài)指示由3個(gè)不同顏色(紅、綠、黃)的發(fā)光二極管給出,其電平由CPLD的I/0口輸出;4x4按鍵模塊鍵盤的前10個(gè)鍵位為數(shù)字0~9、第11個(gè)為小數(shù)點(diǎn)、第12到第14個(gè)為脈沖選擇鍵A1,A2,A3用于選擇輸出方式(單頭、雙頭、三頭),另加一個(gè)確認(rèn)鍵。
1.2 AT89S52單片機(jī)簡(jiǎn)介
AT89S52是一種低功耗、高性能的8位微控制器,具有8 k字節(jié)在系統(tǒng)可編程Flash存儲(chǔ)器。AT89S52使用Atmel公司高密度非易失性存儲(chǔ)器技術(shù)制造,與工業(yè)80C51產(chǎn)品指令和引腳完全兼容。片上Flash允許程序存儲(chǔ)器在系統(tǒng)可編程,亦適于常規(guī)編程器。在單芯片上,AT89S52擁有靈巧的8位CPU和在系統(tǒng)可編程Flash,使得AT89S52為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、有效的解決方案。
AT89S52具有以下標(biāo)準(zhǔn)功能:8 k字節(jié)Flash,256字節(jié)RAM,32位I/O口線,看門狗定時(shí)器,2個(gè)數(shù)據(jù)指針,3個(gè)16位定時(shí)器/計(jì)數(shù)器,一個(gè)6向量2級(jí)中斷結(jié)構(gòu),全雙工串行口,片內(nèi)晶振及時(shí)鐘電路。另外,AT89S52可降至0 Hz靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式??臻e模式下,CPU停止工作,允許RAM、定時(shí)器/計(jì)數(shù)器、串口中斷繼續(xù)工作。掉電保護(hù)方式下,RAM內(nèi)容被保存,振蕩器被凍結(jié),單片機(jī)一切工作停止,直到下一個(gè)中斷或硬件復(fù)位為止。
1.3 EPM7128SLC84的特點(diǎn)
EPM7128SLC84是Altera公司開發(fā)的CPLD器件,屬于MAX 7000S系列。在高集成度PLD器件中,MAX7000S系列是速度最快的類型之一,它內(nèi)部為第二代MAX(MultipleArray Matrix)結(jié)構(gòu)。除了集成度高的優(yōu)點(diǎn)外,器件內(nèi)部單元(cell)之間的連接采用連續(xù)的金屬線,這種互連結(jié)構(gòu)為單元之間提供了固定的、短時(shí)延的信號(hào)通道,從而消除了內(nèi)部延時(shí)的難以預(yù)測(cè)性,并有效地提高了芯片資源的利用效率。
EPM7128SLC84是基于EEPROM的可編程CMOS器件,其主要性能指標(biāo)為:外部引腳數(shù)目為84,內(nèi)部等效門數(shù)為2 500左右;內(nèi)部有128個(gè)邏輯宏單元(Maerocell),每16個(gè)宏單元組成一個(gè)邏輯陣列塊(LAB),每個(gè)邏輯陣列塊對(duì)應(yīng)8個(gè)I/O引腳;除通用I/O引腳外,EPM7128SLC84有兩個(gè)全局時(shí)鐘、一個(gè)全局使能和一個(gè)全局清零輸入;器件最高計(jì)數(shù)頻率為151.5 MHz,內(nèi)部互連延時(shí)為1ns。
EPM7128SLC84的主要特點(diǎn)為:支持通過(guò)JTAG口進(jìn)行5 V電壓的在片編程;宏單元的工作速率和功耗可編程選擇,用戶可決定每一個(gè)宏單元的工作模式——選擇一般模式或是節(jié)能模式(功耗降低50%或更多,但延時(shí)加大);宏單元的觸發(fā)器有獨(dú)立的清零、預(yù)置、時(shí)鐘和時(shí)鐘使能控制,可通過(guò)編程進(jìn)行設(shè)置;器件的引腳輸出可設(shè)置,有以下3種選項(xiàng):1)多電平I/O接口,通過(guò)硬件設(shè)置可使引腳輸出支持5 V或3.3 V兩種電平;2)輸出回轉(zhuǎn)速率(Slew-Rate)控制,用戶可決定每一I/O引腳的輸出回轉(zhuǎn)速率,大回轉(zhuǎn)速率縮小了信號(hào)通道的延時(shí),但有可能加大瞬態(tài)躁聲;3)集電極開路選擇。具有一個(gè)完善、友好的軟件環(huán)境支持器件開發(fā),Ahera公司的EDA軟件MAX+PlusⅡ集成了設(shè)計(jì)文件編輯、編譯、仿真、時(shí)序分析和器件編程等各項(xiàng)功能,并能直接控制器件內(nèi)部宏單元或輸出引腳的設(shè)置;Altera的硬件描述語(yǔ)言AHDL與CPLD硬件結(jié)合緊密,并且提供優(yōu)化的Megafunetion函數(shù)庫(kù),支持靈活地描述各類常用復(fù)雜電路,如計(jì)數(shù)器、鎖相環(huán)等。
DIY機(jī)械鍵盤相關(guān)社區(qū):機(jī)械鍵盤DIY
評(píng)論