資源描述:
《pwm信號(hào)發(fā)生器的設(shè)計(jì)——畢業(yè)設(shè)計(jì)論文》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在學(xué)術(shù)論文-天天文庫。
1、PWM信號(hào)發(fā)生器的設(shè)計(jì)實(shí)驗(yàn)/上機(jī)報(bào)告課程名稱:EDA技術(shù)及應(yīng)用專業(yè):電氣工程及其自動(dòng)化成績:指導(dǎo)教師:XXXX姓名:XXX日期:2013/10/16項(xiàng)目序號(hào):實(shí)驗(yàn)二學(xué)號(hào):XXXX時(shí)間:星期三項(xiàng)目名稱:PWM信號(hào)發(fā)生器的設(shè)計(jì)組號(hào):地點(diǎn):XXXXX一、實(shí)驗(yàn)?zāi)康?、掌握序列發(fā)生器和檢測(cè)器的工作原理;2、初步學(xué)會(huì)用狀態(tài)機(jī)進(jìn)行數(shù)字系統(tǒng)設(shè)計(jì)。二、實(shí)驗(yàn)環(huán)境QuartusII7.0開發(fā)系統(tǒng)三、實(shí)驗(yàn)內(nèi)容用狀態(tài)機(jī)設(shè)計(jì)實(shí)現(xiàn)串序列檢測(cè)器設(shè)計(jì),可以用原理圖輸入法設(shè)計(jì)序列信號(hào)發(fā)生器,要求產(chǎn)生序列:11010;再進(jìn)行檢測(cè)設(shè)計(jì),若檢測(cè)到序列:11010則輸出為“1”,否則輸出為“0”。并對(duì)其進(jìn)行仿真和
2、硬件測(cè)試。四、實(shí)驗(yàn)過程本實(shí)驗(yàn)可以分為兩部分來設(shè)計(jì)。-11-第一步設(shè)計(jì)序列信號(hào)發(fā)生器,在這里可以采用模16的計(jì)數(shù)器74LS161來產(chǎn)生模16的計(jì)數(shù),并由它的4位輸出可以產(chǎn)生16種狀態(tài),由此可以用來設(shè)計(jì)序列產(chǎn)生器,也可以采用狀態(tài)機(jī)產(chǎn)生序列,本實(shí)驗(yàn)用狀態(tài)機(jī)產(chǎn)生序列。第二步設(shè)計(jì)序列檢測(cè)器,這里用狀態(tài)機(jī)設(shè)計(jì),如果為真輸出1,為假輸出為0;第三步設(shè)計(jì)串行轉(zhuǎn)并行輸出,將序列并行輸出在LED管上顯示。第四步是設(shè)計(jì)一個(gè)計(jì)數(shù)脈沖,記錄出現(xiàn)所需要的序列的次數(shù)。第五步是將所有模塊連接起來,構(gòu)成一個(gè)完整的序列發(fā)生和檢測(cè)設(shè)計(jì)器。實(shí)驗(yàn)代碼:1、序列發(fā)生器libraryieee;useieee.std
3、_logic_1164.all;entityxulie_produceis—序列產(chǎn)生電路port(clk,reset:instd_logic;comb_outputs:outstd_logic);--序列輸出endxulie_produce;architecturebehavofxulie_produceistypefsm_stis(s0,s1,s2,s3,s4,s5,s6,s7,s8,s9,s10,s11,s12,s13,s14,s15);--狀態(tài)設(shè)計(jì)signalcurrent_state,next_state:fsm_st;beginreg:process(rese
4、t,clk)—主控時(shí)序進(jìn)程beginifreset='1'thencurrent_state<=s0;-11-elsifclk='1'andclk'eventthencurrent_state<=next_state;endif;endprocess;com:process(current_state)—主控組合進(jìn)程begincasecurrent_stateiswhens0=>comb_outputs<='0';next_state<=s1;whens1=>comb_outputs<='1';next_state<=s2;whens2=>comb_outputs<='
5、1';next_state<=s3;whens3=>comb_outputs<='1';next_state<=s4;whens4=>comb_outputs<='0';next_state<=s5;whens5=>comb_outputs<='1';next_state<=s6;whens6=>comb_outputs<='0';next_state<=s7;whens7=>comb_outputs<='0';next_state<=s8;whens8=>comb_outputs<='1';next_state<=s9;whens9=>comb_outputs<='1
6、';next_state<=s10;whens10=>comb_outputs<='0';next_state<=s11;whens11=>comb_outputs<='1';next_state<=s12;whens12=>comb_outputs<='1';next_state<=s13;whens13=>comb_outputs<='0';next_state<=s14;whens14=>comb_outputs<='1';next_state<=s15;whens15=>comb_outputs<='0';next_state<=s0;endcase;endpr
7、ocess;-11-endbehav;2、序列檢測(cè)器libraryieee;useieee.std_logic_1164.all;entitys_machineis—序列檢測(cè)電路port(clk,reset:instd_logic;state_inputs:instd_logic;--狀態(tài)轉(zhuǎn)移控制comb_outputs:outstd_logic);檢測(cè)結(jié)果輸出ends_machine;architecturebehavofs_machineistypefsm_stis(s0,s1,s2,s3,s4,s5);signalcurrent_s