新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于NiosⅡ的數(shù)字示波器的設(shè)計(jì)與實(shí)現(xiàn)

基于NiosⅡ的數(shù)字示波器的設(shè)計(jì)與實(shí)現(xiàn)

作者: 時(shí)間:2015-01-16 來(lái)源:網(wǎng)絡(luò) 收藏

  0 引言

本文引用地址:http://butianyuan.cn/article/268252.htm

  在電子技術(shù)領(lǐng)域中,示波器的應(yīng)用非常廣泛,使用它可以方便直觀地觀察到信號(hào)的全貌,并測(cè)量信號(hào)的幅度、頻率、周期等基本參數(shù)。傳統(tǒng)的模擬示波器顯示時(shí)采用熒光物質(zhì)的余輝時(shí)間都是一定的,導(dǎo)致其難以觀測(cè)到周期較長(zhǎng)的信號(hào)。另外,模擬示波器還無(wú)法對(duì)信號(hào)進(jìn)行一些特殊的數(shù)學(xué)處理(如FFT)。而正好可以克服模擬示波器的不足,它采用各種先進(jìn)的測(cè)量技術(shù)來(lái)滿足各種應(yīng)用。如基于采樣原理,采用高速A/D轉(zhuǎn)換器實(shí)現(xiàn)高速數(shù)據(jù)采集,將模擬信號(hào)數(shù)字化,然后借助處理器強(qiáng)大的數(shù)據(jù)處理能力實(shí)現(xiàn)各種數(shù)字信號(hào)處理算法,將波形以圖形的方式直觀地顯示出來(lái),并能夠得到被測(cè)信號(hào)各種豐富的參數(shù)。

  1 系統(tǒng)總體方案

  本設(shè)計(jì)的系統(tǒng)框圖如圖1所示,得益于FPGA的靈活性,系統(tǒng)的大部分功能都在FPGA內(nèi)部完成,使得整體結(jié)構(gòu)非常簡(jiǎn)潔。外圍電路主要包括A/D轉(zhuǎn)換模塊、LCD顯示器、SD卡、FLASH和按鍵。

  

 

  A/D轉(zhuǎn)換模塊的功能是實(shí)現(xiàn)模擬信號(hào)到數(shù)字信號(hào)的轉(zhuǎn)換;FLASH模塊的功能是存儲(chǔ)(System-on-a-Programmable-Chip)片上系統(tǒng)的固件程序;SD卡模塊的功能是實(shí)現(xiàn)測(cè)量信息的長(zhǎng)期、大量存儲(chǔ),提供與PC機(jī)的接口,便于后期在計(jì)算機(jī)上進(jìn)行分析;LCD模塊的功能是對(duì)測(cè)量信號(hào)波形和相關(guān)參數(shù)的實(shí)時(shí)顯示;按鍵模塊的功能是提供整機(jī)的調(diào)節(jié)和控制接口。

  2 FPGA邏輯功能模塊設(shè)計(jì)

  FPGA內(nèi)部系統(tǒng)框圖如圖2所示。它主要由采樣率控制器、觸發(fā)控制單元、FIFO控制器、頻率測(cè)量單元、按鍵控制單元和LCD驅(qū)動(dòng)器構(gòu)成。

  

 

  3 設(shè)計(jì)

  本設(shè)計(jì)中使用的是/f處理器,使用硬件乘除法器,工作于50 MHz。使用FPGA內(nèi)嵌的RAM塊作為系統(tǒng)的運(yùn)行內(nèi)存。采用FLASH作為片外存儲(chǔ)器,保存用戶程序,其通過(guò)Avalon總線三態(tài)橋與處理器相連。

  3.1 軟件設(shè)計(jì)

  系統(tǒng)開機(jī)調(diào)用相關(guān)函數(shù)初始化LCD,SD卡和FAT文件系統(tǒng)之后,首先繪制圖形界面,輸出固定信息,接著讀取波形參數(shù),將其顯示在LCD上,然后等待FIFO寫滿。若FIFO寫滿則將FIFO數(shù)據(jù)讀入緩沖區(qū)中,同時(shí)在屏幕上繪制波形,獲得波形的最大和最小值。最后如果有用戶按鍵輸入則處理按鍵事件,否則檢測(cè)波形參數(shù)是否變化,若有變化則更新顯示,否則等待FIFO寫滿,進(jìn)行下一次顯示。流程如圖3所示。

  

 

  3.1.1 SoPC底層軟件設(shè)計(jì)

  底層軟件為各設(shè)備的驅(qū)動(dòng)程序,主要有:

  (1)LCD驅(qū)動(dòng)。根據(jù)顯示內(nèi)容的需求,LCD驅(qū)動(dòng)程序設(shè)計(jì)了以下函數(shù):

 ?、侔l(fā)送數(shù)據(jù)/命令:將數(shù)據(jù)/命令通過(guò)驅(qū)動(dòng)器發(fā)送到LCD;

 ?、贚CD初始化:完成LCD的上電復(fù)位和初始化;

 ?、跮CD清屏:清空顯示;

  ④輸出一個(gè)像素:在指定位置輸出一個(gè)指定顏色的像素點(diǎn);

 ?、莓嬛本€:畫從(x0,y0)到(x1,y1)的指定顏色的直線;

  ⑥畫矩形:畫從(x0,y0)到(x1,y1)的指定顏色的矩形,可選擇是否填充;

 ?、咻敵鲆粋€(gè)字符:在指定位置輸出一個(gè)指定顏色的字符;

  ⑧輸出一個(gè)字符串:在指定位置輸出一個(gè)指定顏色的字符串。

  (2)SD卡驅(qū)動(dòng)。SD卡通信采用SPI模式,SD卡驅(qū)動(dòng)的函數(shù)及功能為:

 ?、侔l(fā)送數(shù)據(jù)/命令:將數(shù)據(jù)/命令發(fā)送到SD卡;

 ?、谧x取數(shù)據(jù):從SD卡讀取一個(gè)字節(jié);

 ?、跾D卡復(fù)位:SD卡上電后復(fù)位并使其進(jìn)入SPI模式;

 ?、躍D卡初始化:初始化SD卡使其作好數(shù)據(jù)讀寫準(zhǔn)備;

  ⑤讀一個(gè)扇區(qū):從指定的扇區(qū)地址讀取一個(gè)扇區(qū)的數(shù)據(jù)到緩沖區(qū);

 ?、迣懸粋€(gè)扇區(qū):將緩沖區(qū)數(shù)據(jù)寫入指定的扇區(qū)地址處。

  (3)FAT16文件系統(tǒng)。FAT16文件系統(tǒng)的主要函數(shù)及功能為:

 ?、貴AT初始化:獲取每簇的扇區(qū)數(shù)、FAT表地址、根目錄地址和FAT表占用的扇區(qū)數(shù)等FAT信息;

 ?、诖_定文件名稱:查找已存在的波形文件以確定要保存的文件的名稱;

 ?、厶砑痈夸涰?xiàng):將保存的文件的名稱、大小、位置等添加到根目錄;

 ?、芴砑覨AT表項(xiàng):查找FAT表的空簇,將新文件的簇號(hào)寫入FAT表。


上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: NiosⅡ 數(shù)字示波器 SoPC

評(píng)論


相關(guān)推薦

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

關(guān)閉