<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          關(guān) 閉

          新聞中心

          EEPW首頁 > 工控自動(dòng)化 > 設(shè)計(jì)應(yīng)用 > 可編程微波爐控制器的設(shè)計(jì)

          可編程微波爐控制器的設(shè)計(jì)

          作者: 時(shí)間:2011-10-07 來源:網(wǎng)絡(luò) 收藏

          隨著大規(guī)模集成電路技術(shù)和計(jì)算機(jī)技術(shù)的不斷發(fā)展,在涉及通信、國(guó)防、航天、醫(yī)學(xué)、工業(yè)自動(dòng)化、計(jì)算機(jī)應(yīng)用、儀器儀表等領(lǐng)域的電子系統(tǒng)工作中,EDA技術(shù)的含量正以驚人的速度上升;電子類的高新技術(shù)項(xiàng)目的開發(fā)也日益依賴于EDA技術(shù)的應(yīng)用。者的工作僅限于利用軟件的方式來完成對(duì)系統(tǒng)硬件功能的描述,在EDA工具的幫助下并應(yīng)用相應(yīng)的FPGA/CPLD器件,就可以得到最后的結(jié)果。盡管目標(biāo)系統(tǒng)是硬件,但整個(gè)設(shè)計(jì)和修改過程如同完成軟件設(shè)計(jì)一樣方便和高效,從而使產(chǎn)品的開發(fā)周期大為縮短、性能價(jià)格比大幅提高。不言而喻,EDA技術(shù)將迅速成為電子設(shè)計(jì)領(lǐng)域中的極其重要的組成部分。
          1 系統(tǒng)硬件設(shè)計(jì)框圖
          本系統(tǒng)設(shè)計(jì)采用Altera MAXⅡ系列性價(jià)比較高的EPM240T100C5邏輯器件作為信號(hào)處理及系統(tǒng)控制核心,完成包括分頻、計(jì)數(shù)、顯示等一系列工作,結(jié)合所需的外圍模塊,組成一個(gè)最小系統(tǒng),完成按鍵控制、LED顯示、音頻提示。總體設(shè)計(jì)如圖1所示。

          本文引用地址:http://www.ex-cimer.com/article/161451.htm

          利用CPLD/FPGA的特點(diǎn),使電路大為簡(jiǎn)化,利用軟件Quartus II和硬件描述語言VHDL對(duì)數(shù)字系統(tǒng)進(jìn)行編程、調(diào)試和仿真,使得設(shè)計(jì)、調(diào)試方便便捷,充分地發(fā)揮了CPLD/FPGA的優(yōu)勢(shì)及特點(diǎn)。
          2 的整體設(shè)計(jì)方案
           根據(jù)該的功能設(shè)計(jì)要求,軟件設(shè)計(jì)可由:分頻器、狀態(tài)、 數(shù)據(jù)裝載器大、計(jì)時(shí)器、顯示器、微波加熱信號(hào)鎖存器6個(gè)模塊組成。各模塊之間的關(guān)系如圖2所示。

          2.1 分頻器fredivn的設(shè)計(jì)
           在接口電路中,時(shí)鐘信號(hào)的作用至關(guān)重要,一般CPLD的外部時(shí)鐘信號(hào)可達(dá)到幾十MHz,但是由于一些接口電路的特性所致,這樣高頻率的時(shí)鐘不適合電路工作,所以應(yīng)該引入時(shí)鐘分頻電路產(chǎn)生適合接口的工作頻率。分頻模塊的設(shè)計(jì)用于產(chǎn)生合適的掃描時(shí)鐘、計(jì)數(shù)時(shí)鐘和閃爍時(shí)鐘,其外部接口如圖3所示。時(shí)鐘發(fā)生器的輸入是全局時(shí)鐘clk,是從50 MHz的石英晶振得到的信號(hào)。輸出信號(hào)是掃描時(shí)鐘clk 1 kHz、clk 5 Hz和clk 1 Hz。
          部分關(guān)鍵程序如下:
          ------1 kHz分頻---------------
          process(clk)
          variable count0:integer range 0 to 24999;
          begin
          if clk'event and clk='1' then
          if count0=24999 then
          clk0=not clk0;
          count0:=0;
          else count0:=count0+1;
          end if;
          end if;
          clk1kHz=clk0;
          end process;
          ------5 Hz分頻---------------
          process(clk0)
          variable count1:integer range 0 to 99;
          begin
          if clk0'event and clk0='1' then
          if count1=99 then clk1=not clk1;count1:=0;
          else count1:=count1+1;
          end if;
          end if;
          clk5 Hz=clk1;
          end process;
          -----1 Hz分頻-----------------
          process(clk0)
          variable count2:integer range 0 to 499;
          begin
          if clk0′event and clk0=′1′ then
          if count2=499 then clk2=not clk2;count2:=0;
          else count2:=count2+1;
          end if;
          end if;
          clk1Hz=clk2;
          end process;
          end;

          2.2 狀態(tài)state的設(shè)計(jì)
           通常狀態(tài)機(jī)是控制單元的主體,它接收外部信號(hào)及數(shù)據(jù)單元產(chǎn)生的狀態(tài)信息,產(chǎn)生控制信號(hào)。狀態(tài)控制器state的功能是控制微波爐工作過程中的狀態(tài)轉(zhuǎn)換,并發(fā)出有關(guān)控制信息,因此可用一個(gè)狀態(tài)機(jī)實(shí)現(xiàn)。通過對(duì)微波爐工作過程中的轉(zhuǎn)換條件及輸出信號(hào)進(jìn)行分析,可得到其狀態(tài)轉(zhuǎn)換圖如圖4所示。

          該狀態(tài)機(jī)有8個(gè)狀態(tài)。當(dāng)狀態(tài)機(jī)的reset信號(hào)為0時(shí),狀態(tài)機(jī)復(fù)位到idle狀態(tài),當(dāng)reset信號(hào)為1時(shí),狀態(tài)機(jī)處于工作狀態(tài)或待機(jī)狀態(tài)。狀態(tài)機(jī)的轉(zhuǎn)換關(guān)系是:當(dāng)前狀態(tài)是idle狀態(tài),在時(shí)鐘上升沿到來時(shí),如果輸入信號(hào)test=0或stall_1=0或stall_2=0或stall_3=0,則轉(zhuǎn)入下一狀態(tài)tap1或tap2或tap3或tap4, 否則仍停留在idle狀態(tài),實(shí)現(xiàn)了微波爐上電復(fù)位時(shí)處于待機(jī)狀態(tài)。當(dāng)test=0時(shí),狀態(tài)機(jī)轉(zhuǎn)入測(cè)試狀態(tài)tap1。當(dāng)stall_1=0或stall_2=0或stall_3=0時(shí),狀態(tài)機(jī)轉(zhuǎn)入檔位狀態(tài)tap2或tap3或tap4其中一個(gè)狀態(tài)后,而這三個(gè)狀態(tài)之間也可以相互轉(zhuǎn)換。在每一個(gè)檔位狀態(tài)內(nèi),同時(shí)也嵌入了計(jì)數(shù)狀態(tài)tap5,只要設(shè)置好輸入時(shí)間,如果start=0則可以進(jìn)入計(jì)時(shí)狀態(tài),否則仍停留在其中狀態(tài)之一內(nèi)。當(dāng)處于計(jì)時(shí)狀態(tài)時(shí),如果stop=0,則轉(zhuǎn)入停止?fàn)顟B(tài)tap6,使微波爐處于停止工作狀態(tài),而停止?fàn)顟B(tài)tap6與計(jì)時(shí)狀態(tài)tap5之間也是可以相互轉(zhuǎn)換的,當(dāng)start=0,則轉(zhuǎn)回計(jì)時(shí)工作狀態(tài),否則仍停留在停止?fàn)顟B(tài)tap6。當(dāng)計(jì)時(shí)完畢,則由計(jì)數(shù)器輸出done=1信號(hào),從計(jì)時(shí)工作狀態(tài)tap5轉(zhuǎn)換到結(jié)束狀態(tài)tap7。不管處于哪個(gè)狀態(tài),只要reset為0,則狀態(tài)機(jī)會(huì)立刻轉(zhuǎn)換為初始狀態(tài)idle。
           狀態(tài)機(jī)state的外部接口如圖5所示。

          2.3 數(shù)據(jù)裝載器data的設(shè)計(jì)
           數(shù)據(jù)裝載模塊的控制信號(hào)基本是從狀態(tài)機(jī)輸出的信號(hào)中得到的。其功能主要是實(shí)現(xiàn)時(shí)間數(shù)據(jù)的輸入、微波爐控制器當(dāng)前狀態(tài)數(shù)據(jù)的輸出。當(dāng)處于復(fù)位狀態(tài)時(shí)數(shù)據(jù)“0000 0”將會(huì)送到寄存器內(nèi),寄存器再把數(shù)據(jù)送到數(shù)據(jù)輸出端口;在測(cè)試狀態(tài)時(shí)數(shù)據(jù)“8888 8”會(huì)被送到寄存器內(nèi),寄存器再把數(shù)據(jù)送到數(shù)據(jù)輸出端口;在結(jié)束狀態(tài)時(shí)數(shù)據(jù)為“donE 0”會(huì)被送到寄存器內(nèi),寄存器再把數(shù)據(jù)送到數(shù)據(jù)輸出端口。在啟動(dòng)檔位時(shí),檔位數(shù)據(jù)也會(huì)被輸入到寄存器中,這時(shí)就可以輸入時(shí)間數(shù)據(jù),時(shí)間數(shù)據(jù)的輸入有4位——分高位min_h、分低位min_l、秒高位sec_h、秒低位sec_l,每一個(gè)時(shí)間數(shù)據(jù)的輸入也會(huì)送到寄存器內(nèi),再送到數(shù)據(jù)的輸出端口。其中bn和sn是閃爍使能信號(hào)的輸出。數(shù)據(jù)裝載器的輸入與輸出端口如圖6所示。

          西門子plc相關(guān)文章:西門子plc視頻教程


          分頻器相關(guān)文章:分頻器原理

          上一頁 1 2 下一頁

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();