基于FPGA和51單片機(jī)的信號(hào)發(fā)生器設(shè)計(jì)
信號(hào)發(fā)生器又稱為波形發(fā)生器是一種常用的信號(hào)源并且廣泛應(yīng)用于電子電路、通信、控制和教學(xué)實(shí)驗(yàn)等領(lǐng)域的重要儀器之一。為了降低傳統(tǒng)函數(shù)信號(hào)發(fā)生器成本,改善信號(hào)發(fā)生器低頻穩(wěn)定性。筆者結(jié)合FPGA和51單片機(jī)產(chǎn)生0.596 Hz頻率精度函數(shù)信號(hào)。筆者設(shè)計(jì)通過51單片機(jī)控制函數(shù)信號(hào)類型以及相關(guān)參數(shù),用戶可通過按鍵設(shè)置需要的波形、波形幅度、波形頻率以及方波的占空比、相位。本文設(shè)計(jì)方案不僅具有良好的經(jīng)濟(jì)前景,也可以為當(dāng)代高等教育深化改革做一個(gè)參考方向。
本文引用地址:http://m.butianyuan.cn/article/273790.htm1 系統(tǒng)設(shè)計(jì)方案
1.1 系統(tǒng)硬件設(shè)計(jì)
本文中設(shè)計(jì)中硬件包括EP2C8Q20818N芯片和C8051F0201單片機(jī)、DAC0800芯片,T6963的LCD。本文中主要利用FPGA(EP2C8Q20818N)橋接控制LCD、4×4鍵盤和DAC0800(C8051單片機(jī)和DAC0800有一條基準(zhǔn)電壓信號(hào)),系統(tǒng)硬件設(shè)計(jì)框圖如圖2所示。本文中函數(shù)信號(hào)主要由FPGA(EP2C8Q20818N)產(chǎn)生;C8051單片機(jī)用作分析處理用戶信息、給DAC0800提供基準(zhǔn)電壓以及控制FPGA(EP2C8Q20818N)產(chǎn)生需要用戶的函數(shù)信號(hào)。
1.1.1 EP2C8Q20818N簡(jiǎn)介
EP2C8Q20818N是ALTERA公司推出一款嵌入式FPGA(現(xiàn)場(chǎng)可編程門陣列)芯片。具有182管腳。下面列出它的特性表,如圖1所示。
1.1.2 C8051F0201簡(jiǎn)介
C8051F0201(以下簡(jiǎn)稱51單片機(jī))器件是完全集成的混合信號(hào)系統(tǒng)級(jí)MCU芯片,具有32個(gè)數(shù)字I/O引腳。此款51單片機(jī)具有高速、流水線結(jié)構(gòu)的8051兼容的CIP-51內(nèi)核(可達(dá)25 MIPS)。全速、非侵入式的在系統(tǒng)調(diào)試接口(片內(nèi))。12位、100 ksps的8通道ADC,帶PGA和模擬多路開關(guān)。8位500 ksps的ADC,帶PGA和8通道模擬多路開關(guān)兩個(gè)12位DAC,具有可編程數(shù)據(jù)更新方式。64 K字節(jié)可在系統(tǒng)編程的FLASH存儲(chǔ)器。4 352(4 096+256)字節(jié)的片內(nèi)RAM,可尋址64 k字節(jié)地址空間的外部數(shù)據(jù)存儲(chǔ)器接口。硬件實(shí)現(xiàn)的SPI、Sm Bus/I2C和兩個(gè)UART串行接口,5個(gè)通用的16位定時(shí)器。具有5個(gè)捕捉/比較模塊的可編程計(jì)數(shù)器/定時(shí)器陣。列片內(nèi)看門狗定時(shí)器、VDD監(jiān)視器和溫度傳感器,每個(gè)MCU都可在工業(yè)溫度范圍(-45~+85℃)內(nèi)用2.7~3.6 V的電壓工作。端口I/O、/RST和JTAG引腳都容許5 V的輸入信號(hào)電壓。
1.2 C8051單片機(jī)軟件設(shè)計(jì)
C8051單片機(jī)軟件主要包括按鍵處理函數(shù)、信號(hào)發(fā)生器控制函數(shù)、初始化函數(shù)、LCD顯示函數(shù)、D/A函數(shù)以及主函數(shù)。軟件設(shè)計(jì)的主程序流程框圖如圖3所示,子函數(shù)詳細(xì)功能如表1所示。
1.3 FPGA(EP2C8Q20818N)軟件設(shè)計(jì)
本文中主要采用Verilog HDL語言設(shè)計(jì)。主要包括片選模塊、時(shí)鐘驅(qū)動(dòng)模塊、鍵盤掃描模塊、傳出信號(hào)模塊、LCD模塊、DAC0800模塊以及指示燈模塊。詳細(xì)功能如表2所示。
1.4 FPGA核心程序代碼,DAC0800模塊程序
2 測(cè)試結(jié)果
3 結(jié)束語
本文中運(yùn)用FPGA和51單片機(jī)結(jié)合起來制作一個(gè)信號(hào)發(fā)生器。這樣不僅能夠鍛煉學(xué)生單片機(jī)和FPGA的使用更能讓學(xué)生學(xué)習(xí)到如何將FPGA和單片機(jī)聯(lián)合通信使用。本文設(shè)計(jì)中可以對(duì)函數(shù)信精度進(jìn)行升級(jí),從而滿足不同場(chǎng)合的函數(shù)信號(hào)需求。本文中提倡一種將單片機(jī)和FPGA結(jié)合到一起的學(xué)習(xí)方式,可以為現(xiàn)代教育改革提供一個(gè)參考方向。
fpga相關(guān)文章:fpga是什么
51單片機(jī)相關(guān)文章:51單片機(jī)教程
單片機(jī)相關(guān)文章:單片機(jī)教程
單片機(jī)相關(guān)文章:單片機(jī)視頻教程
單片機(jī)相關(guān)文章:單片機(jī)工作原理
負(fù)離子發(fā)生器相關(guān)文章:負(fù)離子發(fā)生器原理 塵埃粒子計(jì)數(shù)器相關(guān)文章:塵埃粒子計(jì)數(shù)器原理
評(píng)論