

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 畢 業(yè) 設(shè) 計(jì)</b></p><p> 專 業(yè):應(yīng)用電子技術(shù)教育</p><p> 班級學(xué)號: </p><p> 學(xué)生姓名: </p><p> 指導(dǎo)教師: xx 副教授 </p><p>
2、 二0一二 年 六 月</p><p><b> 摘 要</b></p><p> 本文針對現(xiàn)代智能家居的實(shí)際需求,設(shè)計(jì)了一種基于現(xiàn)場可編程門陣列(FPGA)的豆?jié){機(jī)控制系統(tǒng)。采用FPGA設(shè)計(jì),設(shè)計(jì)者只需用HDL語言完成系統(tǒng)功能的描述,借助EDA工具就可得到設(shè)計(jì)結(jié)果,將編譯后的代碼下載到目標(biāo)芯片就可在硬件上實(shí)現(xiàn)。該系統(tǒng)能實(shí)現(xiàn)豆?jié){制作功能,果汁制作功能和自動清洗功
3、能。</p><p> 系統(tǒng)由上位機(jī)和下位機(jī)兩部分組成。上位機(jī)采用VB程序設(shè)計(jì)操作界面。下位機(jī)采用QuartusⅡ軟件設(shè)計(jì),使用硬件描述語言編程,由EP1C3144C8N芯片執(zhí)行豆?jié){機(jī)相關(guān)操作。兩者之間的通信采用異步通信方式。 </p><p> 文章詳細(xì)介紹了RS-232的三線制通信原理,VB中MSComm控件的使用,上位機(jī)操作界面,下位機(jī)原理及使用和液晶模塊的原理及使用。設(shè)計(jì)
4、的系統(tǒng)運(yùn)行穩(wěn)定,性能優(yōu)良,在現(xiàn)代智能家居中,具有很好的應(yīng)用前景。</p><p> 關(guān)鍵詞:MSComm控件;豆?jié){機(jī);硬件描述語言;液晶顯示器1602</p><p><b> ABSTRACT</b></p><p> In this paper, to meet the actual needs of the modern smart
5、 home, a field programmable gate array (FPGA) based soymilk control system is designed. The system can achieve the function of soybean milk production, juice production function and automatic cleaning function.</p>
6、<p> The system consists of two parts of the upper and lower machine. The upper part uses VB programming user interface, the lower part uses the Quartus II software design, a hardware description language program
7、ming, and execution Soymilk EP1C3144C8N chip operation. The asynchronous communication mode is adopted between the upper and lower machine.</p><p> The article gives detail RS-232 three-wire communication t
8、heory and VB MSComm, the user interface of host computer, the introduction about machine principle and the use of LCD modules. The system is running stable, excellent performance, with good prospect of application in the
9、 modern intellectual home.</p><p> Key Words:MSComm; Soy-bean Milk Machine; VHDL; LCD1602</p><p><b> 目 錄</b></p><p><b> 1 引言1</b></p><p>
10、; 1.1 研究背景1</p><p> 1.2 市場現(xiàn)狀1</p><p> 1.3 發(fā)展前景2</p><p> 2 豆?jié){機(jī)控制電路選擇3</p><p> 2.1豆?jié){機(jī)的基本結(jié)構(gòu)3</p><p> 2.1.1豆?jié){機(jī)結(jié)構(gòu)3</p><p> 2.1.2豆?jié){機(jī)結(jié)構(gòu)
11、3</p><p> 2.2 豆?jié){機(jī)控制電路的論證4</p><p> 2.2.1方案一:基于單片機(jī)的豆?jié){機(jī)控制電路設(shè)計(jì)4</p><p> 2.2.2 方案二:基于FPGA的豆?jié){機(jī)控制電路設(shè)計(jì)5</p><p> 2.2.3 方案比較與選擇6</p><p> 3 豆?jié){機(jī)性能指標(biāo)7</p&g
12、t;<p> 3.1 豆?jié){機(jī)工作原理7</p><p> 3.2 設(shè)計(jì)要求7</p><p> 3.3 實(shí)現(xiàn)方案7</p><p> 4 豆?jié){機(jī)控制電路硬件設(shè)計(jì)8</p><p> 4.1 硬件總體方案設(shè)計(jì)8</p><p> 4.2 FPGA核心模塊8</p>&l
13、t;p> 4.2.1 FPGA芯片8</p><p> 4.2.2 電源8</p><p> 4.2.3 時(shí)鐘源10</p><p> 4.2.4 復(fù)位電路10</p><p> 4.2.5 配置電路10</p><p> 4.2.6 下載接口電路11</p><p&g
14、t; 4.3 撥碼開關(guān)模塊12</p><p> 4.4 電機(jī)模塊電路12</p><p> 4.5 RS232串行接口電路13</p><p> 4.6 液晶1602顯示電路14</p><p> 5 豆?jié){機(jī)控制電路軟件設(shè)計(jì)15</p><p> 5.1 VHDL語言概述15</p>
15、;<p> 5.2 下位機(jī)頂層原理圖16</p><p> 5.3 系統(tǒng)各功能模塊的實(shí)現(xiàn)18</p><p> 5.3.1 發(fā)送模塊的實(shí)現(xiàn)18</p><p> 5.3.2 接收模塊的實(shí)現(xiàn)18</p><p> 5.3.3 電機(jī)控制模塊的實(shí)現(xiàn)19</p><p> 5.3.4 控制模
16、塊的實(shí)現(xiàn)19</p><p> 5.3.5 液晶顯示模塊的實(shí)現(xiàn)20</p><p> 5.4 上位機(jī)軟件的實(shí)現(xiàn)20</p><p> 5.4.1 PC與FPGA串行通信編程語言的選擇21</p><p> 5.4.2 MSComm控件介紹21</p><p> 5.4.3串口編程的實(shí)現(xiàn)24<
17、/p><p><b> 6 聯(lián)機(jī)調(diào)試27</b></p><p> 6.1 調(diào)試數(shù)據(jù)27</p><p> 6.2 數(shù)據(jù)總結(jié)32</p><p> 6.3 下一步工作32</p><p><b> 結(jié) 論33</b></p><p&g
18、t;<b> 參考文獻(xiàn)34</b></p><p><b> 致 謝35</b></p><p> 附錄1:整體電路圖36</p><p> 附錄2:源程序38</p><p><b> 1 引言</b></p><p><
19、b> 1.1 研究背景</b></p><p> 豆?jié){具有極高的營養(yǎng)價(jià)值,是一種非常理想的健康食品。據(jù)專家介紹,在豆?jié){里含有多種優(yōu)質(zhì)蛋白、多種維生素、多種人體必須的氨基酸和多種微量元素等。無論成年人、老年人和兒童,只要堅(jiān)持飲用,對于提高體質(zhì)、預(yù)防和治療病癥,都大有益處。春秋飲豆?jié){,滋陰潤燥,調(diào)和陰陽;夏飲豆?jié){,消熱防暑,生津解渴;冬飲豆?jié){,祛寒暖胃,滋養(yǎng)進(jìn)補(bǔ)。豆?jié){是一種老幼皆宜、價(jià)廉質(zhì)優(yōu)的液
20、態(tài)營養(yǎng)品,它所含的鐵元素是牛奶的6倍,所含的蛋白質(zhì)雖不如牛奶高,但在人體內(nèi)的吸收率可達(dá)到85%,因此有人稱豆?jié){為“植物牛奶”。 豆?jié){被譽(yù)為女人最完美的食物,是因?yàn)槎節(jié){中含有豐富的營養(yǎng)成分,其中異黃酮可以調(diào)節(jié)女性內(nèi)分泌系統(tǒng)的平衡,保持女性肌膚美白,異黃酮還可發(fā)揮與雌激素相同的保健作用,如緩解更年期綜合癥、提高骨密度、預(yù)防骨質(zhì)疏松等,而且它還能避免雌激素帶來的副作用,如乳腺癌、子宮癌等。豆?jié){中富含人體所需優(yōu)質(zhì)植物蛋白,八種必需的氨基酸,多種
21、維生素及鈣、鐵、磷、鋅、硒等微量元素,不含膽固醇,并且含有大豆皂甙等至少五六種可有效降低人體膽固醇的物質(zhì),鮮豆?jié){的大豆?fàn)I養(yǎng)易于消化吸收,經(jīng)常飲用,對高血壓、冠心病,糖尿病、骨質(zhì)疏松等大有益處,還具有平補(bǔ)肝腎、防老抗癌</p><p><b> 1.2 市場現(xiàn)狀</b></p><p> 近年來,家用豆?jié){機(jī)市場需求已經(jīng)呈現(xiàn)加速增長的勢頭。國內(nèi)豆?jié){機(jī)市場2005年至2
22、007年的銷售量分別為250萬臺、300萬臺、500萬臺,今年的銷量則有望猛增到1000萬臺。專家預(yù)計(jì),未來幾年豆?jié){機(jī)市場將非常樂觀。中國電子商會副秘書長陸刃波對記者表示,相比其他產(chǎn)品,小家電的利潤算高的,超過了30%,所以現(xiàn)在許多企業(yè)都加大了對小家電的投入,如飛利浦、TCL、美的等。此外,這個(gè)市場的發(fā)展速度也非??欤ǘ?jié){機(jī)在內(nèi)的整個(gè)小家電市場在未來幾年將迎來巨大的發(fā)展空間。 </p><p> 豆?jié){機(jī)廣闊
23、的前景自然也引來了眾多家電企業(yè)的覬覦,市場上豆?jié){機(jī)品牌不勝枚舉,但是長期以來都是一家獨(dú)大的局面,九陽憑借先行者的優(yōu)勢和雄厚的實(shí)力占據(jù)著九成左右的市場,具有絕對壟斷地位。直到最近,情況才似乎有所改觀,美的宣布將強(qiáng)勢進(jìn)入豆?jié){機(jī)市場。</p><p> 美的表示,美的斥資3億元在廣東順德建設(shè)的料理電器工業(yè)園即將正式啟用,工業(yè)園共有豆?jié){機(jī)生產(chǎn)線4條,年產(chǎn)能達(dá)到3000萬臺。甄少強(qiáng)表示:“豆?jié){機(jī)行業(yè)近兩年呈現(xiàn)高速發(fā)展態(tài)勢
24、,市場前景十分廣闊,目前行業(yè)高度壟斷的格局也亟待打破,這就是我們大舉進(jìn)入豆?jié){機(jī)行業(yè)的主要原因?!睋?jù)悉,美的在豆?jié){機(jī)行業(yè)的目標(biāo)是今年占有10%的市場份額;2010年銷售額突破20億元,市場份額達(dá)到35%。</p><p> 格蘭仕也表示,小家電將成為格蘭仕繼微波爐、空調(diào)之后的第三大支柱產(chǎn)業(yè),今年的銷售目標(biāo)是40億元,占整個(gè)格蘭仕集團(tuán)400億元銷售目標(biāo)的10%。 </p><p> 美的大
25、舉進(jìn)入豆?jié){機(jī)行業(yè),將對目前占有 市場份額的九陽形成較大壓力。但是業(yè)內(nèi)專家也指出,作為新進(jìn)入者,美的短時(shí)間內(nèi)還無法對九陽構(gòu)成實(shí)質(zhì)性挑戰(zhàn),但是依托生產(chǎn)優(yōu)勢以及品牌、渠道方面的實(shí)力,兩三年后,二者的競爭可能會見分曉。目前,九陽在豆?jié){機(jī)行業(yè)的地位似乎還無法撼動,因?yàn)榫抨柺菄鴥?nèi)豆?jié){機(jī)消費(fèi)的締造者,在豆?jié){機(jī)行業(yè)有著強(qiáng)大的品牌號召力,專業(yè)化和技術(shù)優(yōu)勢也有助于其保持豆?jié){機(jī)市場的龍頭地位。</p><p><b> 1
26、.3 發(fā)展前景</b></p><p> 豆?jié){是一種老幼皆宜、價(jià)廉質(zhì)優(yōu)的營養(yǎng)品,我國醫(yī)學(xué)旱就肯定了豆?jié){的保健作用。傳統(tǒng)的豆?jié){制作方法,要先磨漿,然后再過濾豆渣,豆?jié){熬煮也要自己動手,還要特別注意豆?jié){溢鍋的問題,程序繁瑣麻煩。并且,隨著人們對健康認(rèn)識的增強(qiáng),越來越多的人對豆?jié){的衛(wèi)生狀況比較關(guān)注,人們開始青睞小型家用豆?jié){機(jī),豆?jié){的制作過程在沒有人操作的情況下自動完成。</p><p&
27、gt; 市場上的豆?jié){機(jī)的控制電路大部分是由單片機(jī)來控制完成的,然后單片機(jī)外圍電路較多而時(shí)序?qū)崿F(xiàn)能力較弱,調(diào)試復(fù)雜,抗干擾能力差,特別對這種豆?jié){機(jī)需要長時(shí)間不間斷運(yùn)作的系統(tǒng),由于主要是軟件運(yùn)作,容易出錯(cuò),造成系統(tǒng)不穩(wěn)定。</p><p> 采用FPGA設(shè)計(jì),設(shè)計(jì)者只需用HDL語言完成系統(tǒng)功能的描述,借助EDA工具就可得到設(shè)計(jì)結(jié)果,將編譯后的代碼下載到目標(biāo)芯片就可在硬件上實(shí)現(xiàn)。EDA技術(shù)作為一種現(xiàn)代電子系統(tǒng)開發(fā)方
28、式,具有修改軟件程序即可改變硬件和速度快,可靠性高的特點(diǎn),而且成本低、功能強(qiáng)的特點(diǎn)。故本設(shè)計(jì)采用FPGA來完成豆?jié){機(jī)工作控制,使用液晶顯示,由電腦遠(yuǎn)距離操作,完成檢測水位、加熱、碎豆實(shí)現(xiàn)了做豆?jié){的功能。它的強(qiáng)大功能,必定在未來的豆?jié){機(jī)市場中占取相當(dāng)大的份額。</p><p> 2 豆?jié){機(jī)控制電路選擇</p><p> 2.1豆?jié){機(jī)的基本結(jié)構(gòu)</p><p>
29、2.1.1豆?jié){機(jī)結(jié)構(gòu)</p><p><b> 如圖2-1所示。</b></p><p> 圖2-1 智能豆?jié){機(jī)的結(jié)構(gòu)圖</p><p> 2.1.2豆?jié){機(jī)結(jié)構(gòu)</p><p> 豆?jié){機(jī),采用微電腦控制,實(shí)現(xiàn)預(yù)熱、打漿、煮漿和延時(shí)熬煮過程全自動化,特別是由于增設(shè)了“文火熬煮”處理程序,使豆?jié){營養(yǎng)更加豐富,口感更加
30、香澤。 (1) 杯體:杯體像一個(gè)碩大的茶杯,有把手和流口,主要用于盛水或豆?jié){。杯體有的用塑料制作,有的用不銹鋼制作,但都是符合食品衛(wèi)生標(biāo)準(zhǔn)的不銹鋼或聚碳酸脂材質(zhì)。購機(jī)時(shí)以選擇不銹鋼杯體為宜,主要是便于清潔。在杯體上標(biāo)有“上水位”線和“下水位”線,以此規(guī)范對杯體的加水量。杯體的上口沿恰好套住機(jī)頭下蓋,對機(jī)頭起固定和支撐作用。 (2) 機(jī)頭:機(jī)頭是豆?jié){機(jī)的總成,除杯體外,其余各部件都固定在機(jī)頭上。機(jī)頭外殼分上蓋和下蓋。上蓋有
31、提手、工作指示燈和電源插座。下蓋用于安裝各主要部件,在下蓋上部(也即機(jī)頭內(nèi)部)安裝有電腦板、變壓器和打漿電機(jī)。伸出下蓋的下部有電熱器、刀片、網(wǎng)罩、防溢電極、溫度傳感器以及防干燒電極。需要說明,下蓋的材質(zhì)同樣需要符合食品衛(wèi)生標(biāo)準(zhǔn)。 (3) 電熱器:加熱功率800W,不銹鋼材質(zhì),用于加熱豆?jié){。加熱管下半部應(yīng)設(shè)計(jì)為小半圓形,易于洗刷和裝卸網(wǎng)罩。 (4) 防溢電極:用于檢測豆?jié){沸騰,防止豆?jié){益出。它的外徑5mm,有</p&
32、gt;<p> 2.2 豆?jié){機(jī)控制電路的論證</p><p> 2.2.1方案一:基于單片機(jī)的豆?jié){機(jī)控制電路設(shè)計(jì)</p><p> 采用單片機(jī)作為主控芯片,通過單片機(jī)的某些引腳連接外部電路。通過 MCU有關(guān)腳控制,相應(yīng)三極管驅(qū)動,再由多個(gè)繼電器組成的繼電器組實(shí)施電路轉(zhuǎn)換來完成。單片機(jī)控制系統(tǒng)框圖如圖2-2所示。</p><p> 圖2-2單片機(jī)
33、系統(tǒng)控制框圖</p><p> 2.2.2 方案二:基于FPGA的豆?jié){機(jī)控制電路設(shè)計(jì)</p><p> 采用FPGA作為主控芯片,通過FPGA的某些引腳連接外部電路。通過FPGA有關(guān)腳控制,相應(yīng)三極管驅(qū)動,再由多個(gè)繼電器組成的繼電器組實(shí)施電路轉(zhuǎn)換來完成。FPGA控制系統(tǒng)框圖如圖2-3所示。</p><p> 圖2-3 FPGA控制系統(tǒng)框圖</p>
34、<p> 本設(shè)計(jì)將通過上位機(jī)控制來執(zhí)行按鍵操作,為了系統(tǒng)簡化溫度傳感器用加熱時(shí)間來代替,防干燒傳感器和防溢出傳感器采用撥碼開關(guān)替代。相關(guān)操作通過上位機(jī)指示燈和下位機(jī)液晶1602來顯示。</p><p> 2.2.3 方案比較與選擇</p><p> 采用單片機(jī)設(shè)計(jì)具有成本低、易于控制的優(yōu)點(diǎn)。設(shè)計(jì)是:通過軟件編程,仿真,調(diào)試,符合要求后將程序用編程器寫入到單片機(jī)芯片上。利用
35、單片機(jī)的中斷響應(yīng)等待的請求,進(jìn)行相應(yīng)的處理。利用單片機(jī)采集來的數(shù)據(jù),來控制豆?jié){機(jī)的工作狀態(tài)。但這種設(shè)計(jì)外圍電路較多而時(shí)序?qū)崿F(xiàn)能力較弱,調(diào)試復(fù)雜,抗干擾能力差,特別對這種豆?jié){機(jī)的強(qiáng)電控制,由于主要是軟件運(yùn)作,容易出錯(cuò),造成系統(tǒng)不穩(wěn)定。</p><p> 采用FPGA設(shè)計(jì),設(shè)計(jì)者只需用HDL語言完成系統(tǒng)功能的描述,借助EDA工具就可得到設(shè)計(jì)結(jié)果,將編譯后的代碼下載到目標(biāo)芯片就可在硬件上實(shí)現(xiàn)。</p>
36、<p> 采用PLD設(shè)計(jì),將所有器件集成在一塊芯片上,體積大大減小的同時(shí)還提高了穩(wěn)定性,并且可應(yīng)用EDA軟件仿真,調(diào)試,易于進(jìn)行功能擴(kuò)展,外圍電路較少,采用硬件邏輯電路實(shí)現(xiàn),其最大的優(yōu)點(diǎn)是穩(wěn)定性好,抗干擾能力強(qiáng),非常適合作為豆?jié){機(jī)的系統(tǒng)的控制核心?;趯σ陨细鱾€(gè)因素的考慮,決定采用以FPGA為核心,用 VHDL編程來實(shí)現(xiàn)豆?jié){機(jī)的設(shè)計(jì)方法,實(shí)現(xiàn)豆?jié){機(jī)控制電路的設(shè)計(jì),提升設(shè)計(jì)的可行性。</p><p>
37、 綜上所述,本設(shè)計(jì)是基于FPGA的豆?jié){機(jī)控制電路的設(shè)計(jì)。</p><p><b> 3 豆?jié){機(jī)性能指標(biāo)</b></p><p> 3.1 豆?jié){機(jī)工作原理</p><p> 豆?jié){機(jī)由上位機(jī)控制下位操作,由下位執(zhí)行上位機(jī)控制信號。上位機(jī)給下位機(jī)控制數(shù)據(jù);下位機(jī)給上位機(jī)傳送水位高、水位低、添加水、添加豆子、添加水果信號,上位機(jī)不同的操作在下位執(zhí)
38、行時(shí),電機(jī)驅(qū)動能力也不同,液晶顯示內(nèi)容也不同。系統(tǒng)執(zhí)行過程是不具有可逆性的。</p><p><b> 3.2 設(shè)計(jì)要求</b></p><p><b> 實(shí)時(shí)顯示時(shí)間。</b></p><p> 誤操作實(shí)時(shí)報(bào)警提示。</p><p> 液晶顯示豆?jié){機(jī)狀態(tài)。</p><p
39、> 具有磨豆?jié){,榨取果汁及清洗功能。</p><p> 具有加熱和研磨操作。</p><p> 具有遠(yuǎn)距離操作功能。</p><p><b> 3.3 實(shí)現(xiàn)方案</b></p><p> (1) 實(shí)時(shí)顯示:利用上位機(jī)軟件顯示當(dāng)前時(shí)間及操作剩余時(shí)間。</p><p> (2) 誤操
40、作實(shí)時(shí)報(bào)警提示:利用上位機(jī)提示高水位,低水位及其它誤操作報(bào)警提示,當(dāng)操作改正時(shí),報(bào)警消失。</p><p> (3) 液晶顯示豆?jié){機(jī)狀態(tài):通過下位機(jī)控制液晶實(shí)時(shí)顯示系統(tǒng)當(dāng)前操作。</p><p> (4) 具有磨豆?jié){,榨取果汁及清洗功能:通過上位機(jī)控制,由下位機(jī)執(zhí)行控制電機(jī)操作,不同的選擇使得電機(jī)速度也不同。</p><p> (5) 具有加熱和研磨操作:由上
41、位機(jī)控制,在上位機(jī)和下位機(jī)同時(shí)顯示。</p><p> (6) 具有遠(yuǎn)距離操作功能:上位機(jī)和下位機(jī)通過異步通信方式傳輸數(shù)據(jù),采用RS-232三線通信原理進(jìn)行通信,端口號設(shè)為串口4,波特率為4800bps,10位數(shù)據(jù)幀傳輸。</p><p> 4 豆?jié){機(jī)控制電路硬件設(shè)計(jì)</p><p> 4.1 硬件總體方案設(shè)計(jì)</p><p> 本系
42、統(tǒng)采用FPGA EP1C3T144C8N 核心板作為中央處理器,采用I/O口控制LCD1602顯示,實(shí)現(xiàn)豆?jié){機(jī)研磨功能,果汁操作功能。本系統(tǒng)主要由FPGA核心模塊、按鍵模塊、液晶顯示模塊、傳感器模塊以及電機(jī)驅(qū)動模塊五部分組成,具體系統(tǒng)框圖如圖4-1所示。</p><p> 圖4-1電路系統(tǒng)框圖</p><p> 4.2 FPGA核心模塊</p><p> FP
43、GA核心模塊是整個(gè)系統(tǒng)的核心,它擔(dān)負(fù)著整個(gè)系統(tǒng)的時(shí)序控制、數(shù)據(jù)采集和處理的任務(wù)。本系統(tǒng)的FPGA核心模塊主要由FPGA芯片、電源、時(shí)鐘源、FPGA配置電路、下載接口電路組成。</p><p> 4.2.1 FPGA芯片</p><p> FPGA芯片采用Altera公司的Cyclone系列的EP1C3T144C8N,其I/O電壓為3.3V,內(nèi)核電壓為1.5V,一個(gè)鎖相環(huán),約3萬門、6萬
44、RAM bit,144個(gè)引腳。FPGA的I/O引腳按其功能可以分為四部分,且每個(gè)BANK的I/O引腳供電是獨(dú)立的,BANK1~BANK4引腳圖如圖4-2所示。</p><p><b> 4.2.2 電源</b></p><p> 如圖4-3所示,本核心板的所有I/O腳都采用3.3V電壓標(biāo)準(zhǔn),因此所有的VCCIO都連接 3.3V,VCCINT為FPGA內(nèi)核工作電壓輸
45、入,Cyclone 系列的FPGA均采用 1.5V的內(nèi)核電壓,所以這里連接1.5V。</p><p><b> . </b></p><p><b> b)</b></p><p> c) d)</p><p> 圖4-2 EP1C3T144 B
46、ANK1~BANK4引腳</p><p> 圖4-3 I/O電壓、內(nèi)核電壓連接圖</p><p><b> 4.2.3 時(shí)鐘源</b></p><p> 無論是用離散邏輯、可編程邏輯,還是基于其他類型器件的任何數(shù)字設(shè)計(jì),系統(tǒng)的成功運(yùn)行都要依靠可靠的時(shí)鐘。一些對實(shí)時(shí)性和同步性要求較高的系統(tǒng),如數(shù)據(jù)采集系統(tǒng),甚至不能使用任何可能含有毛刺的輸
47、出作為時(shí)鐘信號。</p><p> 在CPLD/FPGA設(shè)計(jì)中最好的時(shí)鐘方案是:由專用的全局時(shí)鐘輸入引腳驅(qū)動的單個(gè)主時(shí)鐘去鐘控設(shè)計(jì)項(xiàng)目中的每一個(gè)觸發(fā)器。CPLD/FPGA都具有專門的全局時(shí)鐘引腳,它直接連到器件中的每一個(gè)寄存器。這種全局時(shí)鐘提供器件中最短的時(shí)鐘到輸出的延時(shí)。</p><p> 在本系統(tǒng)中FPGA EP1C3T144C8N 提供4路時(shí)鐘供用戶使用,板載50M有源晶振,可以
48、根據(jù)需要進(jìn)行PLL 定制,或者直接分頻處理。本系統(tǒng)時(shí)鐘接線如圖4-4所示。</p><p> 圖4-4 系統(tǒng)時(shí)鐘接線圖</p><p> 4.2.4 復(fù)位電路</p><p> 復(fù)位按鍵,可以從新配置FPGA,按下之后,從配置芯片中讀取程序;成功讀取之后,程序開始正常運(yùn)行。系統(tǒng)復(fù)位電路的原理圖如圖4-5所示。</p><p> 4.
49、2.5 配置電路</p><p> 由于FPGA芯片一般都是基于SRAM工藝的,不具備非易失特性,因此每次斷電后都會丟失內(nèi)部的邏輯配置,所以系統(tǒng)在每次上電后都必須從外部非易失性存儲器中加載既定的配置信息。</p><p> 本系統(tǒng)采用EPCS1作為FPGA的配置芯片,用于儲存系統(tǒng)的內(nèi)部邏輯配置。EPCS1是屬于Altera的串行配置器件系列的芯片,是可編程邏輯工業(yè)領(lǐng)域中最低成本的配置器
50、件。EPCS1擁有包括在系統(tǒng)可編程(ISP)、flash存儲器訪問接口、節(jié)省單板空間的小外形集成電路(SOIC)封裝等高級特征,成為Cyclone FPGA系列產(chǎn)品在大容量及價(jià)格敏感的應(yīng)用環(huán)境下的完美補(bǔ)充。。系統(tǒng)FPGA配置電路的原理圖如4-6所示。</p><p> 圖4-5 系統(tǒng)復(fù)位電路圖</p><p> 圖4-6 系統(tǒng)FPGA配置電路圖</p><p>
51、; 4.2.6 下載接口電路</p><p> 這是一種主串模式下FPGA的配置電路,通過AS接口來完成EPCS 芯片的編程下載,使用的下載電纜是ByteBlasterII。</p><p> AS接口主要是用來編程EPCS1芯片,同時(shí)也可以用來調(diào)試系統(tǒng)。具體過程是首先編程EPCS1,然后通過EPCS1 配置FPGA,運(yùn)行程序。需要考慮的是EPCS1的編程次數(shù)是有限制的,雖然比EPC
52、 系列芯片的要多,但是太頻繁的擦除和寫入對芯片還是有一定影響的。最好是在調(diào)試結(jié)束后,才使用AS接口將邏輯配置下載到EPCS1中,完成程序的固化。AS 接口電路原理圖如4-7所示。</p><p> 圖4-7 下載接口電路</p><p> 4.3 撥碼開關(guān)模塊</p><p> 根據(jù)設(shè)計(jì)要求,按鍵功能分別為豆子(SW01),水果(SW02),水(SW03),低
53、水位(SW04),高水位(SW05),預(yù)留(SW06~SW08)。如圖4-8所示</p><p> 圖4-8 撥碼開關(guān)電路</p><p> 4.4 電機(jī)模塊電路</p><p> 電機(jī)模塊電路如圖4-9所示。本電路中的電機(jī)可以采用直流電機(jī)和步進(jìn)電機(jī),在綜合考慮了工作情境,系統(tǒng)精度和價(jià)格等因素,本設(shè)計(jì)所采用額定電壓5V,額定功率為8W的單向直流電機(jī)。電機(jī)的工
54、作狀按以下幾種情形來分析。</p><p> 情形一:當(dāng)MOTO_A=1,MOTO_B=0時(shí),Q1導(dǎo)通,導(dǎo)致Q2導(dǎo)通,Q6導(dǎo)通后電流形成回路,同時(shí)Q5截止,Q3截止,Q4截止,而電流從A流向B,電機(jī)正轉(zhuǎn)。</p><p> 情形二:當(dāng)MOTO_A=0,MOTO_B=1時(shí),Q4導(dǎo)通,導(dǎo)致Q3導(dǎo)通,Q5導(dǎo)通后電流形成回路,同時(shí)Q2截止,Q1截止,Q6截止,而電流從B流向A,電機(jī)反轉(zhuǎn),因?yàn)楸?/p>
55、電路電機(jī)為單向,故效果為不動。</p><p> 情形三:當(dāng)MOTO_A=1,MOTO_B=1時(shí),由于對稱的三極管型號相同,參數(shù)相同,導(dǎo)致A、B兩點(diǎn)電位相同,電機(jī)不動。</p><p> 通過以上分析可知,通過調(diào)節(jié)脈沖占空比可以調(diào)節(jié)電機(jī)的轉(zhuǎn)動速度。電機(jī)模塊的作用是模擬出租車的運(yùn)行狀況,包括加速,開啟和停止功能。</p><p> 圖4-9 電機(jī)模塊電路<
56、/p><p> 4.5 RS232串行接口電路</p><p> 串行通信功能是目前下位機(jī)應(yīng)用中經(jīng)常要用到的功能,包括RS232串口和RS485串口。本設(shè)計(jì)采用RS232作為上位機(jī)和下位機(jī)通信端口。</p><p> 電路中,MAX232的12腳(RXD_232)、11腳(TXD_232)和FPGA的PIN_53和PIN_56 相連。RS232串行接口電路圖如圖4
57、-10所示。</p><p> 圖4-10 RS232串行接口電路</p><p> 4.6 液晶1602顯示電路</p><p> 液晶顯示器由于體積小、質(zhì)量輕、功耗低等優(yōu)點(diǎn),日漸成為各種便攜電子產(chǎn)品的理想顯示器。本系統(tǒng)采用1602字符型液晶顯示。液晶接口電路由電源5V提供。電路如圖4-11所示。</p><p> 圖4-11
58、液晶1602顯示電路</p><p> 5 豆?jié){機(jī)控制電路軟件設(shè)計(jì)</p><p> 豆?jié){機(jī)控制電路的軟件部分由下位機(jī)FPGA的VHDL程序設(shè)計(jì)和上位機(jī)的VB程序設(shè)計(jì)組成。上位機(jī)和下位機(jī)的通信方式采用異步通信方式,波特率為4800bps,10位幀格式傳輸。其中下位機(jī)模塊包括發(fā)送模塊,接收模塊,控制模塊,電機(jī)控制模塊和液晶模塊組成。</p><p> 5.1 V
59、HDL語言概述</p><p> VHDL是由美國國防部為描述電子電路所開發(fā)的一種語言,其全稱為(Very High Speed Integrated Circuit) Hardware Description Language。與另外一門硬件描述語言Verilog HDL相比,VHDL更善于描述高層的一些設(shè)計(jì),包括系統(tǒng)級(算法、數(shù)據(jù)通路、控制)和行為級(寄存器傳輸級)。</p><p>
60、; 1、VHDL語言的優(yōu)點(diǎn)</p><p> VHDL是一種用形式化方法來描述數(shù)字電路和設(shè)計(jì)數(shù)字邏輯系統(tǒng)的語言,綜合起來講,VHDL語言具有如下優(yōu)點(diǎn)。</p><p> ?。?)覆蓋面廣,描述能力強(qiáng),是一個(gè)多層次的描述語言。在VHDL語言中,設(shè)計(jì)的原始描述可以非常簡練,經(jīng)過層層加強(qiáng)后,最終可成為直接付諸生產(chǎn)的電路或版圖參數(shù)描述。</p><p> ?。?)具有良
61、好的可讀性,即容易被計(jì)算機(jī)接受,也容易被讀者理解。</p><p> ?。?)使用期長,不會因工藝變化而使描述過時(shí)。</p><p> ?。?)支持大規(guī)模設(shè)計(jì)的分解和已有設(shè)計(jì)的再利用。</p><p> 一個(gè)大規(guī)模的設(shè)計(jì)不可能由一個(gè)人獨(dú)立完成,必須由多人共同承擔(dān),VHDL為設(shè)計(jì)的分解和設(shè)計(jì)的再利用提供了有力的支持。</p><p> 2、
62、VHDL程序的基本結(jié)構(gòu)</p><p> 一個(gè)完整的VHDL語言程序包括庫的調(diào)用、程序包的調(diào)用、實(shí)體說明、結(jié)構(gòu)體描述和配置4部分。</p><p> (1)庫和庫中程序包的調(diào)用類似于高級程序語言的文件頭,程序中的函數(shù)及一些數(shù)據(jù)類型如std_logic等都在庫中的程序包中有定義,因此程序要用到這些函數(shù)及數(shù)據(jù)類型則必須調(diào)用庫和庫的程序包。</p><p> (2)
63、實(shí)體(Entity)是VHDL程序的基本單元,用于說明設(shè)計(jì)系統(tǒng)的外部接口信息,相當(dāng)于提供一個(gè)設(shè)計(jì)單元的公共信息。對于一個(gè)已經(jīng)確定的系統(tǒng),實(shí)體的描述是唯一的。</p><p> ?。?)結(jié)構(gòu)體(Architecture)用于描述相應(yīng)實(shí)體的行為、功能或電路結(jié)構(gòu),特別要注意的是結(jié)構(gòu)體與實(shí)體不是一一對應(yīng)的的,一個(gè)實(shí)體可以對應(yīng)多個(gè)結(jié)構(gòu)體,但一個(gè)結(jié)構(gòu)體只能對應(yīng)一個(gè)實(shí)體。</p><p> ?。?)配置
64、語句一般用來描述層與層之間的連接關(guān)系以及實(shí)體與結(jié)構(gòu)之間的連接關(guān)系。在分層次的設(shè)計(jì)中,配置可以用來把特定的設(shè)計(jì)實(shí)體關(guān)聯(lián)到元件實(shí)例(Component),或把特定的結(jié)構(gòu)關(guān)聯(lián)到一個(gè)實(shí)體。當(dāng)一個(gè)實(shí)體存在多個(gè)結(jié)構(gòu)時(shí),可以通過配置語句為其指定一個(gè)結(jié)構(gòu),若省略配置語句,則VHDL編譯器將自動為實(shí)體選一個(gè)最新編譯的結(jié)構(gòu)。</p><p> 5.2 下位機(jī)頂層原理圖</p><p> 系統(tǒng)頂層原理圖如圖
65、5-1所示。</p><p> 發(fā)送模塊1秒鐘向PC機(jī)發(fā)送500次10位數(shù)據(jù)幀,該脈沖由液晶顯示模塊clk_500與控制發(fā)送模塊中的key([2])連。采用的波特率為4800bps,與上位機(jī)調(diào)試時(shí),采用串口4,若連接的不是該串口,則設(shè)置該端口為串口4即可,同時(shí)選擇波特率為4800通訊模式。</p><p> 接收端模塊接收PC機(jī)發(fā)來的10位串行數(shù)據(jù),將之有效8位數(shù)據(jù)送至液晶顯示端,完成
66、數(shù)據(jù)的接收過程。該模塊是采用4800bps*16波特率進(jìn)行采樣,使每次采集的數(shù)據(jù)均在信號脈沖中間,連續(xù)采得3次相異或即可得知PC機(jī)給下位機(jī)發(fā)送數(shù)據(jù),從而能順利完成數(shù)據(jù)的接收任務(wù)。</p><p> 控制模塊將撥碼開關(guān)的值輸送給發(fā)送端,以便于發(fā)送給PC端。其中發(fā)送頻率為500hz,它的來源自顯示模塊輸出信號端clk_500。</p><p> 液晶顯示是將接收模塊收到的8位有效數(shù)據(jù)顯示出
67、來,以便反應(yīng)豆?jié){機(jī)的工作狀態(tài)。</p><p> 電機(jī)模塊是將接收模塊收到的8位數(shù)據(jù)進(jìn)行選擇,以控制直流電機(jī)的工作狀態(tài)。用來模擬豆?jié){機(jī)的研磨過程。</p><p> 該原理圖中輸入部分分別是系統(tǒng)時(shí)鐘信號clock_50M,撥碼開關(guān)數(shù)key_data[7..0],按鍵開關(guān)key[1..0](用于測試),復(fù)位信號reset。</p><p> 輸出部分是由液晶讀寫
68、信號lcd_wr,液晶串行信號:lcd_rs,液晶使能信號:lcd_en,液晶數(shù)據(jù)信號data[7..0],直流電機(jī)控制端:motoa,motob,RS232發(fā)送端TXD,TI(用于測試),發(fā)送的波特率TxdClkOut(用于測試)等組成。</p><p> 5.3 系統(tǒng)各功能模塊的實(shí)現(xiàn)</p><p> 5.3.1 發(fā)送模塊的實(shí)現(xiàn)</p><p> send
69、 模塊輸入時(shí)鐘端clock_50M,待發(fā)送的數(shù)據(jù)端(8位)Datain[7..0],發(fā)送使能端WR,輸出端為波特率輸出clkout,串行輸出端TXD端,發(fā)送狀態(tài)標(biāo)志位TI端。其內(nèi)部波特率為4800bps,8位數(shù)據(jù)被打包成10位數(shù)據(jù)用于異步傳輸。發(fā)送模塊圖如圖5-2所示。</p><p> 圖5-2 發(fā)送模塊圖</p><p> 5.3.2 接收模塊的實(shí)現(xiàn)</p><
70、p> rec_1 模塊如圖5-3所示。輸入信號為系統(tǒng)時(shí)鐘信號clk_50M,數(shù)據(jù)接收端rx,由PC機(jī)發(fā)送給接收模塊的10位數(shù)據(jù)串行輸入端。輸出信號為接收狀態(tài)標(biāo)志位sig1,以供查詢。接收數(shù)據(jù)輸出端Q[7..0]。其內(nèi)部工作的波特率4800bps,10位數(shù)據(jù)幀接收模式。在接收時(shí),采用4800bps*16的標(biāo)準(zhǔn),對接收到的數(shù)據(jù)進(jìn)行采樣,以保證數(shù)據(jù)的正確性。</p><p> 5.3.3 電機(jī)控制模塊的實(shí)現(xiàn)&
71、lt;/p><p> key_set 模塊如圖5-4所示。輸入系統(tǒng)時(shí)鐘clock_50M,數(shù)據(jù)端data[7..0],直流電機(jī)控制端motoa,motob。通過不同數(shù)據(jù),選擇直流電機(jī)的工作狀態(tài)。當(dāng)數(shù)據(jù)data[7..0]值為fr_value時(shí),電機(jī)轉(zhuǎn)速為速度1,當(dāng)數(shù)據(jù)data[7..0]值為do_value時(shí),電機(jī)轉(zhuǎn)速為速度2,當(dāng)數(shù)據(jù)data[7..0]值為cl_value,電機(jī)轉(zhuǎn)速為速度3,當(dāng)數(shù)據(jù)值為其他值是,電
72、機(jī)不動。</p><p> 圖5-4 電機(jī)控制模塊圖</p><p> 5.3.4 控制模塊的實(shí)現(xiàn)</p><p> uart_test 模塊如圖5-5所示。輸入系統(tǒng)時(shí)鐘信號為 CLK_500HZ, 按鍵控制信號key[2..0],其中只有key[2]在此設(shè)計(jì)中有作用,用于發(fā)送使能信號,sdata[7..0]為待發(fā)送的數(shù)據(jù)端,wen為發(fā)送狀態(tài)標(biāo)志位。</
73、p><p> 圖5-5 控制模塊圖</p><p> 5.3.5 液晶顯示模塊的實(shí)現(xiàn)</p><p> ram_1602 模塊如圖5-6所示。從上位機(jī)接的的八位數(shù)據(jù)rdata[7..0],系統(tǒng)時(shí)鐘輸入信號為clk_50M,液晶顯示復(fù)位信號reset,輸出液晶控制信號lcd_e,lcd_rs,lcd_rw及液晶顯示數(shù)據(jù)端data[7..0]。另外還有500hz脈沖信
74、號clk_500,用于發(fā)送端key[2]相連,使得每1秒鐘向PC機(jī)發(fā)送500次10位數(shù)據(jù)幀。</p><p> 圖5-6 液晶顯示模塊圖</p><p> 5.4 上位機(jī)軟件的實(shí)現(xiàn)</p><p> PC功能強(qiáng)大,人機(jī)界面友好,是FPGA所不能及的;由PC和FPGA構(gòu)成的可以實(shí)現(xiàn)更加復(fù)雜的控制。這樣,就會遇到了PC與FPGA串行通信的問題。在硬件上,PC和FP
75、GA都有串口。因此,可以使用RS232或RS485標(biāo)準(zhǔn)接口進(jìn)行通信;在軟件上,需要分別為PC和FPGA編寫相應(yīng)的程序。PC端的程序采用Visual Basic 6.0(簡稱VB 6.0)、Visual C++ 6.0(簡稱VC++6.0)、Dephi等軟件進(jìn)行開發(fā)。其中,VB易學(xué)易用,使用廣泛。</p><p> 串口數(shù)據(jù)通信協(xié)議是:數(shù)據(jù)傳輸速率為4800bps,1位開始位,8位數(shù)據(jù)位,1位停止位,無奇偶校驗(yàn)位
76、。下位機(jī)向上位機(jī)每秒發(fā)送500幀數(shù)據(jù),每幀數(shù)據(jù)由1個(gè)字節(jié)組成。</p><p> 5.4.1 PC與FPGA串行通信編程語言的選擇</p><p> Visual Basic,簡稱VB,是Microsoft公司推出的一種Windows應(yīng)用程序開發(fā)工具。是當(dāng)今使用最廣泛的編程語言之一,它也被公認(rèn)為是編程效率最高的一種編程方法。無論是開發(fā)功能強(qiáng)大、性能可靠的商務(wù)軟件,還是編寫能處理實(shí)際問題
77、的實(shí)用小程序,VB都是最快速、最簡便的方法。</p><p> 目前,VB編程已經(jīng)成為Windows系統(tǒng)開發(fā)的主要語言之一,以其高效、簡單易學(xué)及功能強(qiáng)大的特點(diǎn)越來越為廣大程序設(shè)計(jì)人員及用戶的喜愛。VB支持面對象的程序設(shè)計(jì),具有結(jié)構(gòu)化的事件驅(qū)動編程模式可以使用,而且可以十分簡便地做出良好的人機(jī)界面。在標(biāo)準(zhǔn)串中通信方面,VB提供了串行通信控件MSComm,為編寫PC串口通信軟件提供了極大的方便。</p>
78、<p> 5.4.2 MSComm控件介紹</p><p> 1、MSComm控件的通信方法</p><p> MSComm是Microsoft公司提供的Windows下串行通信編程Active X控件,它為應(yīng)用程序提供了通過串口收發(fā)數(shù)據(jù)的簡便方法。使用MSComm控件非常方便,僅需要通過簡單的修改控件的屬性和使用控件的通信方法,就可以實(shí)現(xiàn)對串口的配置,完成串口接收和發(fā)
79、送數(shù)據(jù)等任務(wù)。</p><p> MSComm控件提供兩種處理通信問題的方法:事件驅(qū)動法和查詢法。</p><p><b> 查詢法</b></p><p> 這種方法是在每個(gè)重要的程序之后,查詢MSComm控件的某些屬性值(如CommEvent 屬性和InBufferCount屬性),來檢測事件和通信狀態(tài)。如果應(yīng)用程序較小,并且是自保持
80、的,這種方法可能是更可取的。例如,如果寫一個(gè)簡單的電話撥號程序,則沒有必要對每接收一個(gè)字符都產(chǎn)生事件,因?yàn)槲ㄒ坏却邮盏淖址钦{(diào)制解調(diào)器的“確定”響應(yīng)。</p><p><b> 事件驅(qū)動法</b></p><p> 這是處理串口通信的一種有效方法。當(dāng)串口接收或發(fā)送指定數(shù)量的數(shù)據(jù),或當(dāng)串口通信狀態(tài)發(fā)生改變時(shí),MSComm控件觸發(fā)OnComm事件。在OnComm事件
81、中,可通過檢測CommEvent屬性值獲知串口的各種狀態(tài),從而進(jìn)行相應(yīng)的處理。這種方法程序響應(yīng)及時(shí),可靠性高。</p><p> MSComm控件的引用</p><p> MSComm控件沒有出現(xiàn)在VB的工具箱里面,所以在使用MSComm控件時(shí),需要將其添加到工具箱中,步驟如下。</p><p> 依次選擇VB菜單的"工程"/"部
82、件"選項(xiàng),如圖5-7所示。</p><p> ?。?)選擇"部件"后,彈出部件對話框,勾選"Microsoft Comm Control 6.0"控件,如圖5-8 所示。</p><p> (3)單擊“應(yīng)用”或“確定”按鈕后,在工具箱中可看到MSComm控件,雙擊該圖標(biāo),即可將MSComm控件添加到窗口中,如圖5-9 所示。</p&
83、gt;<p> ?。?)單擊窗口中的MSComm控件,在VB界面的右側(cè)會顯示出MSComm控件的屬性窗口,如圖5-10 所示,在屬性窗口中,可以以MSComm控件的屬性進(jìn)行設(shè)置。</p><p> 圖5-7 VB添加控件</p><p> 圖5-8 VB添加控件</p><p> MSComm控件的屬性</p><p>
84、; MScomm控件的屬性較多,下面僅介紹一些常用的屬性:</p><p> Commport:設(shè)置通訊所占用的串口號。如設(shè)成1(默認(rèn)值),表示對Com1進(jìn)行操作。注意:本設(shè)計(jì)采用串口4。 </p><p> Setting:對串口通訊的相關(guān)參數(shù)。包括串口通訊的比特率,奇偶校驗(yàn),數(shù)據(jù)位長度、停止位等。其默認(rèn)值 是“9600,N,8,1”,表示串口比特率是9600bit/s,不作奇偶校
85、驗(yàn),8位數(shù)據(jù)位,1個(gè)停止位。注意:本設(shè)計(jì)采用“4800,N,8,1,”。 </p><p> Portopen:設(shè)置串口狀態(tài),值為True時(shí)打開串口,值為False時(shí)關(guān)閉串口。 </p><p> Input:從輸入寄存器讀取數(shù)據(jù),返回值為從串口讀取的數(shù)據(jù)內(nèi)容,同時(shí)輸入寄存器將被清空。 </p><p> Ouput:發(fā)送數(shù)據(jù)到輸出寄存器。 </p>
86、;<p> InBufferCount:設(shè)置輸入寄存器所存儲的字符數(shù),當(dāng)將其值設(shè)為0時(shí),則輸入寄存器將被清空。 </p><p> InputMode:設(shè)置從輸入寄存器中讀取數(shù)據(jù)的形式。若值為0,則表示以文本形式讀?。恢禐?,則表示以二進(jìn)制形式讀取。 </p><p> OutBufferCount:設(shè)置輸出寄存器所存儲的字符數(shù),當(dāng)將其值設(shè)為0時(shí),則輸出寄存器將被清空。
87、 </p><p> RThreshold:設(shè)置在MSComm控件設(shè)置CommEvent屬性為comEvReceive并產(chǎn)生OnComm事件之前要接受的字符數(shù)。 </p><p> CommEvent屬性:返回最近的通訊事件或錯(cuò)誤。通過對它具體屬性值的查詢,我們就可以獲得通訊事件和通訊錯(cuò)誤的完整信息。當(dāng)其值是comEvReceive時(shí)表示接收到數(shù)據(jù)。</p><p&
88、gt; 5.4.3串口編程的實(shí)現(xiàn)</p><p> 通信協(xié)議為:波特率選為4800bps,無奇偶校驗(yàn)位,8位數(shù)據(jù)位,1位停止位。</p><p> 下面給出其實(shí)現(xiàn)方法與控制流程圖。</p><p><b> 1.實(shí)現(xiàn)方法</b></p><p> 新建一個(gè)窗體,在上面放四個(gè)Text控件、兩個(gè)CommandBut
89、ton控件、兩個(gè)Frame控件、兩個(gè)Timer控件、十一個(gè)Shape控件、十五個(gè)Label控件、三個(gè)Option控件和一個(gè)MSComml控件。上位機(jī)控件分布效果圖見圖5-11,具體控件詳細(xì)見表5-1。</p><p> 圖5-11 上位機(jī)控件分布效果圖</p><p> 2.基于FPGA的豆?jié){機(jī)控制電路上位機(jī)流程圖如圖5-12所示。</p><p> 圖5-
90、 12 基于FPGA的豆?jié){機(jī)控制電路上位機(jī)流程圖</p><p><b> 6 聯(lián)機(jī)調(diào)試</b></p><p><b> 6.1 調(diào)試數(shù)據(jù)</b></p><p> 上位機(jī)和下位調(diào)試過程如表6-1所示,其中如無特殊說明,默認(rèn)操作表示已激活開始事件。</p><p> 表6-1 基于FPGA
91、的豆?jié){機(jī)控制電路設(shè)計(jì)整機(jī)調(diào)試數(shù)據(jù)</p><p><b> 說明:</b></p><p> 以下符號表示相應(yīng)指示燈亮。1表示“完成”,2表示“進(jìn)行中”,3表示“電機(jī)轉(zhuǎn)”,4表示“加熱”,5表示“水位高”,6表示“水位低”,7表示“誤操作”,8表示“通電中”,9表示“添加豆子”,A表示“添加水果”,B表示“添加水”。</p><p> &
92、quot;N | Y | N" 表示當(dāng)加熱時(shí)間未到時(shí),電機(jī)不動,當(dāng)電機(jī)研磨時(shí)間未完成時(shí),電機(jī)動,當(dāng)完成時(shí),電機(jī)不動。</p><p> “下→上”和“上←下”表示下位機(jī)給上位機(jī)傳送的代碼和下位機(jī)給上位機(jī)傳送的代碼。</p><p> “燈指示情況(理論值)”表示理論上會顯示燈亮序號。</p><p> 2A即”0010 1010”表示豆?jié){處于運(yùn)行加熱
93、狀態(tài)。22即”0010 0010”表示豆?jié){處于運(yùn)行電機(jī)運(yùn)轉(zhuǎn)情況。12即”0001 0010”表示豆?jié){處于完成狀態(tài)。2C即”0010 1100”表示運(yùn)行果汁加熱狀態(tài)。24即”0010 0100”表示運(yùn)行果汁電機(jī)運(yùn)轉(zhuǎn)情況。14即”0001 0100”表示果汁完成狀態(tài)。29即”0010 1001”表示運(yùn)行清洗加熱狀態(tài)。21即”0010 0001”表示清洗電機(jī)運(yùn)轉(zhuǎn)情況。11即”0001 0001”表示清洗完畢狀態(tài)。</p><
94、;p><b> (a)</b></p><p><b> (b)</b></p><p><b> (c)</b></p><p><b> (a)</b></p><p><b> (b)</b></p>
95、<p><b> (c)</b></p><p><b> (a)</b></p><p><b> (b)</b></p><p><b> (c)</b></p><p><b> (a)</b></
96、p><p><b> (b)</b></p><p><b> (c)</b></p><p><b> 6.2 數(shù)據(jù)總結(jié)</b></p><p> 實(shí)驗(yàn)顯示,理論數(shù)據(jù)與實(shí)際數(shù)據(jù)相匹配。結(jié)論:本階段設(shè)計(jì)無誤,達(dá)到規(guī)定指標(biāo)。</p><p><b
97、> 6.3 下一步工作</b></p><p> 豆?jié){機(jī)應(yīng)該添加溫度傳感器,防干燒電極。</p><p> 豆?jié){機(jī)在工作過程時(shí)間應(yīng)根據(jù)溫度傳感器來確定加熱時(shí)間。</p><p> 豆?jié){機(jī)經(jīng)過加熱和研磨過程后,還應(yīng)該增加煮熟的過程。</p><p> 當(dāng)選擇果汁時(shí),則默認(rèn)不需要加熱過程,如有需要才執(zhí)行加熱過程。<
98、;/p><p> 提示操作改成語音提示。</p><p><b> 結(jié) 論</b></p><p> 本系統(tǒng)設(shè)計(jì)緊跟時(shí)代步伐,定位于現(xiàn)代智能家居,給出了豆?jié){機(jī)的遠(yuǎn)程操作控制新理念。</p><p> 系統(tǒng)采用上位機(jī)和下位機(jī)控制。不論是FPGA程序設(shè)計(jì)還是VB程序設(shè)計(jì)均是通過深入自學(xué),反復(fù)論證。下位機(jī)采用FPGA
99、設(shè)計(jì),借助EDA工具,運(yùn)用VHDL語言編程,將編譯后的代碼下載到目標(biāo)芯片就可在硬件上實(shí)現(xiàn)。上位機(jī)借助VB6.0程序設(shè)計(jì)軟件,運(yùn)用MSComm控件,合理布局,使得在功能滿足要求為,還滿足操作方便的特點(diǎn)。</p><p> 本設(shè)計(jì)采用FPGA來完成豆?jié){機(jī)工作控制,使用液晶顯示,由電腦遠(yuǎn)距離操作,完成檢測水位、加熱、碎豆實(shí)現(xiàn)了做豆?jié){的過程。本設(shè)計(jì)還具有果汁及自清洗功能,使之跟適合人們對現(xiàn)代家庭豆?jié){機(jī)和工業(yè)豆?jié){機(jī)的要求
100、。它的強(qiáng)大功能,必定在未來的豆?jié){機(jī)市場中占取相當(dāng)大的份額。</p><p> 系統(tǒng)的各個(gè)模塊均進(jìn)行仿真和調(diào)試,并給出了各模塊的仿真圖和系統(tǒng)原理圖。通過整機(jī)聯(lián)調(diào),達(dá)到預(yù)期效果。</p><p> 本設(shè)計(jì)尚存在有一些缺陷之處,如下位機(jī)在上位機(jī)中斷聯(lián)系時(shí),下位機(jī)仍繼續(xù)當(dāng)前操作。這些缺陷均已在論文中詳細(xì)討論,并在下一步工作中進(jìn)行改進(jìn)。</p><p><b>
101、 參考文獻(xiàn)</b></p><p> [1]周興華.手把手教你學(xué)CPLD/FPGA與單片機(jī)聯(lián)合設(shè)計(jì)[M].北京航空航天大學(xué)出版社,2007.</p><p> [2]劉建清.輕松玩轉(zhuǎn)51單片機(jī)[M].北京:北京航空航天大學(xué)出版社,2011.</p><p> [3]任靈平,楊玲.VB程序設(shè)計(jì)實(shí)驗(yàn)教程[M].天津:南開大學(xué)出版社,2008. <
102、;/p><p> [4]李廣弟,朱月秀等.單片機(jī)基礎(chǔ)(第3版)[M].北京:北京航空航天大學(xué)出版社,2007.</p><p> [5]李江全,湯智輝,朱東芹等.Visual Basic數(shù)據(jù)采集與串口通信測控應(yīng)用實(shí)戰(zhàn)[M].北京:人民郵電出版社,2007.</p><p> [6]胡漢才.單片機(jī)原理及其接口技術(shù)(第3版)[M].北京:清華大學(xué)出版社,2011.&l
103、t;/p><p> [7]張英梅,席亮亮.基于FPGA的多種分頻設(shè)計(jì)與實(shí)現(xiàn)[J].電子元器件應(yīng)用,2007,9(6): 47-52.</p><p> [8]劉福奇.基于VHDL的FPGA和Nios II實(shí)例精煉[M].北京:北京航空航天大學(xué)出版社,2011.</p><p> [9]徐向民.數(shù)字系統(tǒng)設(shè)計(jì)及VHDL實(shí)踐[M].北京:機(jī)械工業(yè)出版社,2007.<
104、;/p><p> [10]楊旭,劉盾等.EDA技術(shù)基礎(chǔ)與實(shí)驗(yàn)教程[M].北京:清華大學(xué)出版社,2010.</p><p> [11]楊則,龍海燕等.VHDL與數(shù)字系統(tǒng)設(shè)計(jì)[M].北京:電子工業(yè)出版社,2004.</p><p> [12]潭會生,張昌凡等.EDA技術(shù)與應(yīng)用[M].西安:電子科技大學(xué)出版社,2001.</p><p> [1
105、3]盧毅.VHDL與數(shù)字電路設(shè)計(jì)[M].北京:科學(xué)出版社,2003.</p><p> [14]王誠,吳繼華.Altera FPGA/CPLD設(shè)計(jì)(高級版)[M].北京:人民郵電出版社.2005</p><p> [15]高曙光.可編程邏輯器件[M].西安:西安電子科技大學(xué)出版社,2002.</p><p> [16]徐志軍,徐光輝.CPLD/FPGA的開發(fā)和
106、應(yīng)用[M].北京:電子工業(yè)出版社,2002.</p><p> [17]曾繁秦.EDA工程的理論與實(shí)踐[M].北京:電子工業(yè)出版社,2004.</p><p> [18]劉寶琴.Altera可編程邏輯器件及其應(yīng)用[M].北京:清華大學(xué)出版社,1995.</p><p> [19]Alter Corporation. Alter Digital Library[
107、M]. Alter,2002.</p><p> [20] Pong P. Chu. FPGA Prototyping by VHDL Examples[M]. Xilinx Spartan-3 Version, wiley-Interscience,2008.2.</p><p> [21]Mark Zwolinski. Digital Systerm Design with VHD
108、L[M]. Beijing:Electronic industry Press,2002.</p><p><b> 致 謝</b></p><p> “師父領(lǐng)進(jìn)門,成就在個(gè)人”,這句諺語在經(jīng)過了幾個(gè)月的忙碌和學(xué)習(xí),我是深刻體會到了。至此,畢業(yè)設(shè)計(jì)圓滿結(jié)束了,這是對我大學(xué)期間所學(xué)知識和方法的一個(gè)全面的總結(jié)。而我能夠順利完成畢業(yè)設(shè)計(jì),僅僅依靠個(gè)人的努力是遠(yuǎn)遠(yuǎn)不
109、夠的。</p><p> 首先,對我的指導(dǎo)老師xx老師表示崇高的敬意和衷心的感謝。同時(shí)我也要感謝我的楊旭老師。因?yàn)橛兴麄兊囊?,我才順利完成畢業(yè)設(shè)計(jì)。期間xx老師對我的畢業(yè)設(shè)計(jì)提出了很多指導(dǎo)意見,對我的論文嚴(yán)格把關(guān),從xx老師的身上我也學(xué)習(xí)到許多東西,一絲不茍、細(xì)心鉆研的精神尤其令我印象深刻,這對于我來說是一筆不小的財(cái)富。</p><p> 其次,我要感謝我的同學(xué)們:xx等,感謝你們這
110、大學(xué)五年里對我生活上、學(xué)習(xí)上的幫助。五年了,仿佛就在昨天。五年里,我們共同成長,共同進(jìn)步。在這里,我祝愿我的同學(xué)們在以后的人生道路上都能夠平安、幸福!</p><p> 最后,我要感謝參考文獻(xiàn)中所提到的作者,因?yàn)橛辛怂麄兊暮媒滩?,我才能真正掌握本領(lǐng)。還要感謝xx的網(wǎng)友。</p><p><b> 附錄1:整體電路圖</b></p><p>
111、<b> 附錄2:源程序</b></p><p><b> 1、接收模塊源程序</b></p><p> LIBRARY IEEE; </p><p> USE IEEE.STD_LOGIC_1164.ALL; </p><p> USE IEEE.STD_LOGIC_Arith.ALL;
112、</p><p> USE IEEE.STD_LOGIC_Unsigned.ALL;</p><p> ENTITY rec_1 IS</p><p> GENERIC(cout:Integer:=325);--用于分頻產(chǎn)生9600Hz</p><p><b> PORT(</b></p><
113、p> clk_50M,rx:IN STD_LOGIC;</p><p> sig1:BUFFER STD_LOGIC;</p><p> Q:OUT STD_LOGIC_VECTOR(7 DOWNTO 0)</p><p><b> );</b></p><p> END rec_1;</p>
114、<p> ARCHITECTURE one OF rec_1 IS</p><p> SIGNAL tmpreg8:STD_LOGIC_VECTOR(8 DOWNTO 0);</p><p> SIGNAL sig2:INTEGER RANGE 0 TO 16;</p><p> SIGNAL sig3:INTEGER RANGE 0 TO 9
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 畢業(yè)設(shè)計(jì)---基于fpga的豆?jié){機(jī)控制電路的設(shè)計(jì)
- 基于單片機(jī)的自動豆?jié){機(jī)控制電路設(shè)計(jì)畢業(yè)設(shè)計(jì)
- 基于單片機(jī)的自動豆?jié){機(jī)控制電路設(shè)計(jì)畢業(yè)設(shè)計(jì)論文
- 基于單片機(jī)的自動豆?jié){機(jī)控制電路設(shè)計(jì)設(shè)計(jì)
- 基于-單片機(jī)的自動豆?jié){機(jī)控制電路設(shè)計(jì)
- 基于單片機(jī)的自動豆?jié){機(jī)控制電路設(shè)計(jì)畢業(yè)設(shè)計(jì)論文123(2)
- 豆?jié){機(jī)結(jié)構(gòu)設(shè)計(jì)畢業(yè)設(shè)計(jì)
- 家用豆?jié){機(jī)全自動控制裝置-畢業(yè)設(shè)計(jì)
- 基于proe的豆?jié){機(jī)的設(shè)計(jì)畢業(yè)論文
- 畢業(yè)設(shè)計(jì)--基于單片機(jī)控制的時(shí)鐘控制電路
- 基于單片機(jī)的豆?jié){機(jī)控制系統(tǒng)設(shè)計(jì)
- 智能定時(shí)遙控多功能豆?jié){機(jī)的系統(tǒng)設(shè)計(jì)-畢業(yè)設(shè)計(jì)
- 基于單片機(jī)的洗衣機(jī)控制電路設(shè)計(jì)畢業(yè)設(shè)計(jì)論文
- 豆?jié){機(jī)課程設(shè)計(jì)設(shè)計(jì)
- 豆?jié){機(jī)課程設(shè)計(jì)
- 基于fpga的音樂播放控制電路設(shè)計(jì)
- 基于proe的豆?jié){機(jī)三維設(shè)計(jì)畢業(yè)論文
- 畢業(yè)設(shè)計(jì)--基于單片機(jī)的音量控制電路設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)---基于at89c2051的洗衣機(jī)控制電路的設(shè)計(jì)
- 豆?jié){機(jī)程序及仿真設(shè)計(jì)
評論
0/150
提交評論