資源描述:
《波形發(fā)生程序.doc》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、8.23多功能波形發(fā)生器VHDL程序與仿真--文件名:mine4.vhd。--功能:實(shí)現(xiàn)4種常見波形正弦、三角、鋸齒、方波(A、B)的頻率、幅度可控輸出(方波--A的占空比也是可控的),可以存儲任意波形特征數(shù)據(jù)并能重現(xiàn)該波形,還可完成--各種波形的線形疊加輸出。--說明:SSS(前三位)和SW信號控制4種常見波形種哪種波形輸出。4種波形的頻率、--幅度(基準(zhǔn)幅度A)的調(diào)節(jié)均是通過up、down、set按鍵和4個BCD碼置入器以及一--個置入檔位控制信號(ss)完成的(AMP的調(diào)節(jié)范圍是0~5V,調(diào)節(jié)量階為1/51V)。--其
2、中方波的幅度還可通過u0、d0調(diào)節(jié)輸出數(shù)據(jù)的歸一化幅值(AMP0)進(jìn)行進(jìn)一步--細(xì)調(diào)(調(diào)節(jié)量階為1/(51*255)V)。方波A的占空比通過zu、zp按鍵調(diào)節(jié)(調(diào)節(jié)--量階1/64*T)。系統(tǒng)采用內(nèi)部存儲器——RAM實(shí)現(xiàn)任意輸入波形的存儲,程序只支--持鍵盤式波形特征參數(shù)置入存儲,posting為進(jìn)入任意波置入(set)、清除(clr)狀態(tài)--控制信號,SSS控制存儲波形的輸出。P180為預(yù)留端口,--最后修改日期:2004.3.26。libraryieee;useieee.std_logic_1164.all;useiee
3、e.std_logic_arith.all;useieee.std_logic_unsigned.all;entitymine4isport(clk:instd_logic;--時鐘信號輸入set,clr,up,down,zu,zd:instd_logic;--各個波形特征的調(diào)節(jié)觸發(fā)信號posting:instd_logic;--任意波鍵盤置入信號u0,d0,sw:instd_logic;--方波A、B的切換sw,和方波B的幅度調(diào)節(jié)按鍵ss:instd_logic_vector(3downto0);--檔位選擇信號sss:i
4、nstd_logic_vector(4downto0);--波形選擇信號Data3,Data2,Data1,Data0:instd_logic_vector(3downto0);--BCD碼輸入p180:outstd_logic;--預(yù)留接口lcd:outstd_logic_vector(7downto0);--顯示輸出shift:outstd_logic_vector(3downto0);--位碼輸出dd,a:outstd_logic_vector(7downto0));--波形、幅度數(shù)據(jù)輸出endmine4;archit
5、ecturebehavofmine4issubtypewordisstd_logic_vector(7downto0);typeunitisarray(63downto0)ofword;signalram:unit;signalqqq:integerrange0to250000000;signalqq:integerrange0to78125000;signaltmp:integerrange0to9999;signalcoun:integerrange0to78125000;signalcoun0:integerrange
6、0to250000000;signalb:integerrange0to78125000;signalc:integerrange0to500000000;signalz,con:integerrange0to63;signalf:std_logic_vector(7downto0);signalamp,amp0,d:std_logic_vector(7downto0);signalbcd0,bcd1,bcd2,bcd3:integerrange0to9;signalbcd01,bcd11,bcd21,bcd31:integ
7、errange0to9;signalbcd00,bcd10,bcd20,bcd30:integerrange0to9;signaly:integerrange0to9;signaladdr:integerrange0to63;beginqq<=781250whenss="1000"else7812500whenss="0100"else78125000whenss="0010"else78125;--qq信號對應(yīng)SW=0時的檔位選擇信號SS,實(shí)現(xiàn)方波A和其他三種波形的頻率預(yù)置qqq<=500000whenss="1000"e
8、lse5000000whenss="0100"else50000000whenss="0010"else50000;--qqq信號對應(yīng)SW=1時的檔位選擇信號SS,實(shí)現(xiàn)方波B的頻率預(yù)置process(clk)--此進(jìn)程分別描述了各種波形的頻率、幅度(方波A的占空比)調(diào)節(jié)以及各種波形的任意線