當(dāng)前位置:首頁 > EDA > 電子設(shè)計(jì)自動(dòng)化
[導(dǎo)讀]0 引 言傳統(tǒng)的數(shù)字電壓表設(shè)汁通常以大規(guī)模ASIC(專用集成電路)為核心器件,并輔以少量中規(guī)模集成電路及顯示器件構(gòu)成。ASIC完成從模擬量的輸入到數(shù)字量的輸出,是數(shù)字電壓表的心臟。這種電壓表的設(shè)計(jì)簡(jiǎn)單、精確度高,但

0 引 言

傳統(tǒng)的數(shù)字電壓表設(shè)汁通常以大規(guī)模ASIC(專用集成電路)為核心器件,并輔以少量中規(guī)模集成電路及顯示器件構(gòu)成。ASIC完成從模擬量的輸入到數(shù)字量的輸出,是數(shù)字電壓表的心臟。這種電壓表的設(shè)計(jì)簡(jiǎn)單、精確度高,但是這種設(shè)計(jì)方法由于采用了ASIC器件使得它欠缺靈活性,其系統(tǒng)功能固定,難以更新擴(kuò)展。后來發(fā)展起來的用微處理器(單片機(jī))控制通用A/D轉(zhuǎn)換器件的數(shù)字電壓表的設(shè)計(jì)的靈活性明顯提高,系統(tǒng)功能的擴(kuò)展變得簡(jiǎn)單,但是由于微處理器的引腳數(shù)量有限,其控制轉(zhuǎn)換速度和靈活性還是不能滿足日益發(fā)展的電子工業(yè)的需求。而應(yīng)用EDA(電子設(shè)汁自動(dòng)化)技術(shù)及FPGA(現(xiàn)場(chǎng)可編程門陣列),其集成度高、速度快、性能十分可靠、用戶可自由編程且編程語言通俗易懂、系統(tǒng)功能擴(kuò)展非常方便[1]。采用FPGA芯片控制通用A/D轉(zhuǎn)換器可使速度、靈活性大大優(yōu)于由微處理器和通用A/D轉(zhuǎn)換器構(gòu)成的數(shù)字電壓表。

1 系統(tǒng)設(shè)計(jì)原理

本設(shè)計(jì)利用ADC0809作為電壓采樣端口,F(xiàn)PGA作為系統(tǒng)的核心器件,用LED(發(fā)光二極管)進(jìn)行數(shù)碼顯示。

采用Alterla公司FLEX10K系列EPF10K20TC144-4 芯片F(xiàn)PGA作為系統(tǒng)的核心器件,負(fù)責(zé)ADC0809的A/D轉(zhuǎn)換的啟動(dòng)、地址鎖存、輸入通道選擇、數(shù)據(jù)讀取。同時(shí),把讀取的8位二進(jìn)制數(shù)據(jù)轉(zhuǎn)換成便于輸出的3位十進(jìn)制BCD碼送給數(shù)碼管,以顯示當(dāng)前測(cè)量電壓值。這些工作由ADC0809轉(zhuǎn)換控制模塊、數(shù)據(jù)轉(zhuǎn)換模塊、譯碼模塊完成。

2 FPGA軟件設(shè)計(jì)及模塊仿真

2.1 A/D轉(zhuǎn)換控制模塊的軟件設(shè)計(jì)

本模塊完成ADC0809的初始化、A/D轉(zhuǎn)換的啟動(dòng)、地址鎖存、通道選擇、狀態(tài)讀取及數(shù)據(jù)讀取、數(shù)據(jù)鎖存等功能。此模塊的軟件設(shè)計(jì)主要采用VHDL的多進(jìn)程狀態(tài)機(jī)完成[4]。

工作時(shí)序如下:上電瞬問,F(xiàn)PGA初始化,ADD置成"01",狀態(tài)機(jī)處于第1個(gè)狀態(tài),此時(shí)ALE、START、OE、LOCK(數(shù)據(jù)鎖存信號(hào))均置0,初始化ADC0809。第1個(gè)上升沿到來時(shí),狀態(tài)機(jī)由狀態(tài)1轉(zhuǎn)換到狀態(tài)2,ALE、START置1,OE、LOCK為0,此時(shí)地址鎖存信號(hào)有效,由ALE將ADD的"01"狀態(tài)鎖存到地址鎖存器并譯碼,選擇IN1即通道1作為模擬信號(hào)輸入端,同時(shí)STRAT信號(hào)有效,啟動(dòng)采樣。第2個(gè)上升沿到來時(shí),狀態(tài)機(jī)由狀態(tài)2轉(zhuǎn)換到狀態(tài)3,ALE、START返回到低電平,OE、LOCK繼續(xù)為低電平,此時(shí)如果FPGA檢測(cè)到ADC0809的EOC引腳由低電平變成高電平(A/D轉(zhuǎn)換完成),則當(dāng)時(shí)鐘上升沿到來時(shí),轉(zhuǎn)換到狀態(tài)3,否則繼續(xù)保持在狀態(tài)2,直到轉(zhuǎn)換完成。由狀態(tài)2轉(zhuǎn)換到狀態(tài)3后,OE置高電平,允許轉(zhuǎn)換數(shù)據(jù)輸出,其余信號(hào)狀態(tài)保持不變。時(shí)鐘上升沿再次到來時(shí),狀態(tài)機(jī)由狀態(tài)3轉(zhuǎn)換到狀態(tài)4,LOCK置高電平,其余信號(hào)與狀態(tài)3一樣。當(dāng)LOCK由低電平轉(zhuǎn)換到高電平的瞬問,穩(wěn)定的數(shù)據(jù)鎖存到鎖存器。上升沿再次到來,則狀態(tài)機(jī)返回狀態(tài)0??刂破髟跁r(shí)鐘信號(hào)控制下完成狀態(tài)轉(zhuǎn)換,實(shí)現(xiàn)對(duì)ADC0809的控制[3]。

2.2 數(shù)據(jù)轉(zhuǎn)換模塊的軟件設(shè)計(jì)

本設(shè)計(jì)采用5 V參考電壓,測(cè)量范圍為0~5 V,由于轉(zhuǎn)換器件為8位,則電壓的最小分辨率為0.02V,因此待轉(zhuǎn)換數(shù)據(jù)。

編一個(gè)查表程序,對(duì)上述電壓進(jìn)行BCD碼編碼,然后根據(jù)對(duì)應(yīng)的4位BCD碼相加的結(jié)果決定是否進(jìn)位,從而得到待處理數(shù)據(jù)的BCD碼[5]。例如:從AD0809上取得的數(shù)據(jù)為"11011110",1101對(duì)應(yīng)的電壓值為4.16 V,其對(duì)應(yīng)的BCD編碼為"010000010110",1110對(duì)應(yīng)的電壓值為0.28 V,其對(duì)應(yīng)的BCD編碼為"000000101000"。低4位相加為1110,大于9,加6將其調(diào)整為BCD碼,其值為0100,并且向前有一進(jìn)位。4位相加的結(jié)果為0011,由于低位有進(jìn)位,因此最終結(jié)果為0100。高4位的結(jié)果為0100。3位合計(jì)的值為4.44 V,與4.16+0.28的結(jié)果相符。

2.3 譯碼輸出模塊的軟件設(shè)計(jì)

本模塊的任務(wù)是把數(shù)據(jù)處理模塊處理得到的BCD碼轉(zhuǎn)換成能被數(shù)碼管識(shí)別的字型編碼。8位二進(jìn)制數(shù)轉(zhuǎn)換成BCD碼后為12位,因此需3個(gè)數(shù)碼管顯示結(jié)果。為了節(jié)省資源,采用掃描方式控制數(shù)碼管的顯示,掃描時(shí)鐘由CK提供,其頻率應(yīng)大于100 Hz,否則會(huì)有閃爍現(xiàn)象。

3 系統(tǒng)仿真及驗(yàn)證

當(dāng)FPGA從AD0809上讀取的數(shù)據(jù)為0F8H(十進(jìn)制248)時(shí)輸出的段碼為66H、6FH、7D,分別對(duì)應(yīng)字符4、9、6,加上小數(shù)點(diǎn)就是4.96 V,而其分辨率為0.02 V,則A/D轉(zhuǎn)換得到的電壓值應(yīng)為0F8x0.02 V=4.96 V。顯示結(jié)果與理論推算完全相符。

選EPF10K10TC20TC144-4作為目標(biāo)器件并進(jìn)行正確的引腳鎖定后,將程序下載到目標(biāo)配置器件[6]。改變ADC0809的模擬通道輸入電壓,觀察數(shù)碼管的輸出,其輸出隨著輸人電壓的變化而變化,當(dāng)輸入電壓變?yōu)?時(shí),數(shù)碼管的輸出為0,輸人為5 V時(shí)數(shù)碼管輸出也為5.00 V,其余情況下輸入與輸出也一致,至此,基于FPGA的數(shù)字電壓表設(shè)計(jì)完成。本設(shè)計(jì)的結(jié)果已通過硬件測(cè)試。

4 結(jié)束語

本設(shè)計(jì)只用了ADC0809的一個(gè)通道,在不改變硬件電路的前提下,只要稍微改變VHDL的源程序,就可實(shí)現(xiàn)其余通道的利用,構(gòu)成復(fù)雜的數(shù)據(jù)采集系統(tǒng)。數(shù)據(jù)處理模塊用查表方式設(shè)計(jì),設(shè)計(jì)比較簡(jiǎn)單,易于理解,但對(duì)FPGA的芯片資源利用率不高,因此要想編寫出更高效率的數(shù)據(jù)處理源程序,可以用權(quán)位相加的方法實(shí)現(xiàn),其原理見文獻(xiàn)[5]。這種方法不是很好理解,但是其資源利用率明顯高于查表方式;同時(shí)可以用LCD(液晶顯示器)代替LED顯示,用LCD顯示時(shí)譯碼程序要進(jìn)行相應(yīng)更改,以便與LCD驅(qū)動(dòng)時(shí)序同步。編碼用ASCII碼,并且由于LCD的速度較慢,因此時(shí)鐘頻率不能過高,否則將不能對(duì)LCD進(jìn)行讀寫。本設(shè)計(jì)通過添加一些前置電路就可擴(kuò)展其功能,如果采用16位A/D轉(zhuǎn)換器,則可以提高其分辨率。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉