基于FPGA和51單片機的信號發(fā)生器設計
信號發(fā)生器又稱(chēng)為波形發(fā)生器是一種常用的信號源并且廣泛應用于電子電路、通信、控制和教學(xué)實(shí)驗等領(lǐng)域的重要儀器之一。為了降低傳統函數信號發(fā)生器成本,改善信號發(fā)生器低頻穩定性。筆者結合FPGA和51單片機產(chǎn)生0.596 Hz頻率精度函數信號。筆者設計通過(guò)51單片機控制函數信號類(lèi)型以及相關(guān)參數,用戶(hù)可通過(guò)按鍵設置需要的波形、波形幅度、波形頻率以及方波的占空比、相位。本文設計方案不僅具有良好的經(jīng)濟前景,也可以為當代高等教育深化改革做一個(gè)參考方向。
本文引用地址:http://dyxdggzs.com/article/273790.htm1 系統設計方案
1.1 系統硬件設計
本文中設計中硬件包括EP2C8Q20818N芯片和C8051F0201單片機、DAC0800芯片,T6963的LCD。本文中主要利用FPGA(EP2C8Q20818N)橋接控制LCD、4×4鍵盤(pán)和DAC0800(C8051單片機和DAC0800有一條基準電壓信號),系統硬件設計框圖如圖2所示。本文中函數信號主要由FPGA(EP2C8Q20818N)產(chǎn)生;C8051單片機用作分析處理用戶(hù)信息、給DAC0800提供基準電壓以及控制FPGA(EP2C8Q20818N)產(chǎn)生需要用戶(hù)的函數信號。
1.1.1 EP2C8Q20818N簡(jiǎn)介
EP2C8Q20818N是ALTERA公司推出一款嵌入式FPGA(現場(chǎng)可編程門(mén)陣列)芯片。具有182管腳。下面列出它的特性表,如圖1所示。

1.1.2 C8051F0201簡(jiǎn)介
C8051F0201(以下簡(jiǎn)稱(chēng)51單片機)器件是完全集成的混合信號系統級MCU芯片,具有32個(gè)數字I/O引腳。此款51單片機具有高速、流水線(xiàn)結構的8051兼容的CIP-51內核(可達25 MIPS)。全速、非侵入式的在系統調試接口(片內)。12位、100 ksps的8通道ADC,帶PGA和模擬多路開(kāi)關(guān)。8位500 ksps的ADC,帶PGA和8通道模擬多路開(kāi)關(guān)兩個(gè)12位DAC,具有可編程數據更新方式。64 K字節可在系統編程的FLASH存儲器。4 352(4 096+256)字節的片內RAM,可尋址64 k字節地址空間的外部數據存儲器接口。硬件實(shí)現的SPI、Sm Bus/I2C和兩個(gè)UART串行接口,5個(gè)通用的16位定時(shí)器。具有5個(gè)捕捉/比較模塊的可編程計數器/定時(shí)器陣。列片內看門(mén)狗定時(shí)器、VDD監視器和溫度傳感器,每個(gè)MCU都可在工業(yè)溫度范圍(-45~+85℃)內用2.7~3.6 V的電壓工作。端口I/O、/RST和JTAG引腳都容許5 V的輸入信號電壓。

1.2 C8051單片機軟件設計
C8051單片機軟件主要包括按鍵處理函數、信號發(fā)生器控制函數、初始化函數、LCD顯示函數、D/A函數以及主函數。軟件設計的主程序流程框圖如圖3所示,子函數詳細功能如表1所示。


1.3 FPGA(EP2C8Q20818N)軟件設計
本文中主要采用Verilog HDL語(yǔ)言設計。主要包括片選模塊、時(shí)鐘驅動(dòng)模塊、鍵盤(pán)掃描模塊、傳出信號模塊、LCD模塊、DAC0800模塊以及指示燈模塊。詳細功能如表2所示。

1.4 FPGA核心程序代碼,DAC0800模塊程序



2 測試結果


3 結束語(yǔ)
本文中運用FPGA和51單片機結合起來(lái)制作一個(gè)信號發(fā)生器。這樣不僅能夠鍛煉學(xué)生單片機和FPGA的使用更能讓學(xué)生學(xué)習到如何將FPGA和單片機聯(lián)合通信使用。本文設計中可以對函數信精度進(jìn)行升級,從而滿(mǎn)足不同場(chǎng)合的函數信號需求。本文中提倡一種將單片機和FPGA結合到一起的學(xué)習方式,可以為現代教育改革提供一個(gè)參考方向。
fpga相關(guān)文章:fpga是什么
51單片機相關(guān)文章:51單片機教程
單片機相關(guān)文章:單片機教程
單片機相關(guān)文章:單片機視頻教程
單片機相關(guān)文章:單片機工作原理
負離子發(fā)生器相關(guān)文章:負離子發(fā)生器原理 塵埃粒子計數器相關(guān)文章:塵埃粒子計數器原理
評論