新聞中心

        EEPW首頁 > 電源與新能源 > 設計應用 > 一款簡易示波器的設計方案

        一款簡易示波器的設計方案

        作者: 時間:2016-12-08 來源:網絡 收藏

        隨著電子通信以及教學事業的發展,示波器的應用越來越廣泛,它在教學中所起到的作用越來越重要,示波器可以測量信號的幅度,頻率以及波形等等,但是高精度的示波器非常昂貴,對于非盈利事業的教學組織來說無疑不合適,所以提出了一種以單片機為控制核心的簡易示波器設計方案。它由前向控制部分,數據采集和存儲部分,51單片機控制部分以及按鍵和MS12864R顯示部分組成。

        本文引用地址:http://www.104case.com/article/201612/327746.htm

        1 簡易數字示波器的工作原理以及總體框架

        本設計硬件電路部分由單片機控制系統電路,前向輸入調理電路,模數轉換和存儲電路,以及按鍵顯示電路組成。其工作的基本思路就是以單片機為控制核心,讓AD芯片完成數據的離散化,采集數據經過緩沖暫存于存儲器里面,當波形顯示時,單片機從存儲器的讀使能端讀取采集數據存于數組中,然后進行相應的數據處理并把所存取得數據按一定的順序打在液晶顯示器相應的位置上,從而再現波形信號;其中輸入調理電路由阻抗變換電路,信號抬升電路以及頻率測量電路構成,阻抗變換電路是為了提高輸入阻抗,信號抬升是為了使信號的幅度滿足AD芯片的輸入幅度要求,頻率測量電路主要是測量周期性信號的頻率。總體設計框圖如圖1所示。

        2 硬件設計

        2.1 前端信號的處理

        本模塊具有兩大功能,一是輸入信號位置的變換;二是信號波形的變換。

        信號位置的變換主要由阻抗變換電路,信號抬升電路構成,阻抗變換采用ua741構建的阻隨放大電路,信號抬升電路采用ua741構成的加法電路,信號位置的處理主要是對被測輸入信號在幅度與偏移方面進行線性處理,使信號在垂直方向上處于A/D轉換器的輸入范圍內。波形變換電路是用來測量輸入信號的頻率,但是單片機屬于數字器件,為此,我們需要對輸入信號進行波形變換以及脈沖整形;硬件電路設計如圖2所示。

        2.2 信號的采集與存儲

        數據采集部分㈣是本設計的核心部分,本設計采用BB公司的8位AD,試驗中讓AD完成數據采集,采集完數據送往FIFO,通過FIFO中繼再送往單片機,FIFO是一種雙口RAM,它沒有地址線,隨著寫入數據或者讀取數據而使地址指針進行遞增或者遞減來實現尋址,兩者中間接了一個緩沖器,這樣可以起到數據緩沖作用,在MCU與AD之間接入FIFO的作用是起到數據緩沖的作用,因為AD的時鐘高于MCU的工作頻率,所以讓AD和FIFO同步工作來存儲AD轉換的輸出數據,實驗中AD與FIFO的時鐘同步,來自于ALE引腳,為了使時鐘更加穩定,可以讓ALE信號先經過與門再送往采集存儲模塊;FIFO有3個標志位引腳,FF滿標志,HF半滿標志以及EF空標志,本設計只利用了FF滿標志,當FIFO存滿時通知單片機來讀取數據,這是單片機使FIFO的寫使能禁止,只來讀取數據以顯示,硬件電路設計如圖3所示。

        2.3 液晶顯示

        試驗中波形的顯示是借助Ms12864R,采用8位并行數據處理,利用了液晶的打點功能,數據采集的先后順序體現在液晶的橫軸上面,也就是波形顯示的時間先后,而數據值的大小則體現在液晶的縱軸上面,也就是波形的幅度體現。

        由于采用FIFO,所以先采樣的點后顯示,這是波形顯示的核心,如圖4所示。12864主要有4個編程端口,RS(數據命令選擇),RW(讀寫選擇),EN(使能端)以及PSB(串并選擇),電路連接中分別接到單片機的某一I/O口上。

        2.4 按鍵電路

        本設計需要按鍵較少,因為設計要求X方向能夠設置10us/div,20us/div,40us/div三檔水平掃描速度,Y方向能夠設置0.5V/div、1V/div二檔垂直靈敏度,加之幅度和頻率的測量,所以本設計要6個獨立按鍵就夠了。

        3 軟件部分

        3.1 總體程序框圖

        總體程序框圖如圖5所示。


        3.2 測量頻率流程圖

        測量頻率流程圖如圖6所示。本設計頻率測量是基于計數法和測周期法混合使用。其基本思想就是先測量1 s內被測信號的上升沿個數,來一個上升沿計數器加1,為了防止計數器產生溢出,設計中將1 s分成20個50 ms,中斷20次,測出信號頻率,如果頻率值小于1K,則改用測周期法。

        3.3 液晶打點流程圖

        打點操作是作圖的基礎,由于st7920控制器的繪圖RAM是一次進行兩個2個字節的數據的讀寫操作,也就是一次修改的是16個點的狀態,而我們要想只修改一個點的狀態同時不改變其余相鄰15個點的狀態,那只能是先把原來位置的16個點的狀態讀出,使用位操作指令修改其中一個點的狀態,然后在回寫到RAM中。整體的過程即是:讀取-修改(位狀態)-寫入。液晶畫點是編程的難點與重點,需要把液晶縱向每隔轉換為電壓,要把水平方向轉化為時間,將波形顯示出來,其步驟如下:先確定打點的位置;其次讀出該點所在的數據值;接著修改該點相應的位的值,對于單色液晶來說,只有兩種操作,一是點亮該點,另一種是熄滅該點;最后將修改后的數據值寫入對應的地址。打點流程圖如圖7.

        3.4 測試結果

        波形測試結果(波形之一,其他略)頻率幅度測試結果如表1所示。

        4 結束語

        本文提出的便攜式數字存儲示波器的設計,它采用了LCD顯示、高速A/D采集與轉換、FIFO以及單片機等技術,具有較強的實用性以及發展的市場潛力。而且幅度頻率測量誤差較小,顯示波形沒有明顯的失真,滿足設計要求。如果利用高端控制器,則可以實現高精度的測量,前景遠大,很有研究價值。



        評論


        技術專區

        關閉
        主站蜘蛛池模板: 富顺县| 博兴县| 凤凰县| 文水县| 桑植县| 绵竹市| 微山县| 普宁市| 萝北县| 车险| 扶绥县| 营口市| 大冶市| 迁西县| 巴塘县| 中西区| 密山市| 江山市| 黑水县| 类乌齐县| 寿阳县| 滕州市| 竹山县| 临清市| 广丰县| 商水县| 沙洋县| 罗山县| 黄山市| 高安市| 龙海市| 牙克石市| 泗洪县| 林口县| 固阳县| 秦安县| 吴江市| 阳高县| 楚雄市| 青岛市| 游戏|