欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 7287|回復(fù): 2
收起左側(cè)

PWM控制蜂鳴器FPGA源碼與教程+仿真與報(bào)告等資料

[復(fù)制鏈接]
ID:240399 發(fā)表于 2018-4-17 16:11 | 顯示全部樓層 |閱讀模式
fpga播放一首歌
0.png

1  實(shí)驗(yàn)?zāi)康?
(1)理解并掌握脈寬調(diào)制(PWM )技術(shù)的控制方法及基本工作原理。   
(2)學(xué)習(xí)并掌握脈寬調(diào)制(PWM )驅(qū)動蜂鳴器的實(shí)現(xiàn)方法。
2  實(shí)驗(yàn)原理
2.1  基本概念
脈沖寬度調(diào)制(PWM)是一種對模擬信號電平進(jìn)行數(shù)字編碼的方法。通過高分辨率計(jì)數(shù)器的使用,方波的占空比被調(diào)制用來對一個具體模擬信號的電平進(jìn)行編碼。PWM 信號仍然是數(shù)字的,因?yàn)樵诮o定的任何時(shí)刻,滿幅值的直流供電要么完全有(ON),要么完全無(OFF)。電壓或電流源是以一種通(ON)或斷(OFF)的重復(fù)脈沖序列被加到模擬負(fù)載上去的。通的時(shí)候即是直流供電被加到負(fù)載上的時(shí)候,斷的時(shí)候即是供電被斷開的時(shí)候。只要帶寬足夠,任何模擬值都可以使用PWM進(jìn)行編碼。 有源蜂鳴器和無源蜂鳴器的差別: 這里的“源”不是指電源。而是指震蕩源。也就是說,有源蜂鳴器內(nèi)部帶震蕩源,所以只要一通電就會叫。而無源內(nèi)部不帶震蕩源,所以如果用直流信號無法令其鳴叫。必須用 2K~5K 的方波去驅(qū)動它。  有源蜂鳴器往往比無源的貴,就是因?yàn)槔锩娑鄠震蕩電路。  無源蜂鳴器的優(yōu)點(diǎn)是:1。便宜,2。聲音頻率可控,可以做出“多來米發(fā)索拉西(1234567)”的效果。3。在一些特例中,可以和 LED 復(fù)用一個控制口  有源蜂鳴器的優(yōu)點(diǎn)是:程序控制方便  。
0.jpg
    開發(fā)板上的蜂鳴器是有源蜂鳴器。FPGA 輸出低電平,即可讓蜂鳴
器鳴響。
0.jpg
Quartus 工程 qsf 文件管腳約束命令,把以下命令拷貝到新建 quartus
工程的 qsf 文件即可完成管腳約束(注意信號名必須相同) :
set_location_assignment PIN_23 -to i_50m_clk
set_location_assignment PIN_28 -to i_rst_n
set_location_assignment PIN_187 -to o_pwm


3  實(shí)驗(yàn)步驟
3.1  綜合
(1)運(yùn)行綜合工具。   
(2)打開項(xiàng)目工程,項(xiàng)目工程存放于以軟件開發(fā)工具命名的文件夾
中。   
(3)編譯運(yùn)行或直接點(diǎn)擊下載,下載 FPGA 軟件到目標(biāo)板。   
(4)查看軟件運(yùn)行效果
3.2  仿真
請參考視頻講解。
主要命令:   
切換仿真路徑   cd  { 仿真庫路徑 }    ,如: cd
{F:\Verilog_demo\M01_buzzer_pwm\sim};
  run 100us:仿真運(yùn)行時(shí)間長度 100us ;
do wave.do:運(yùn)行波形文件;
vlog ../src/*.v:編譯 scr路徑下的所有 v文件
vsim:開始仿真命令
quit –sim:退出仿真
4  實(shí)驗(yàn)結(jié)果
4.1  結(jié)果演示
4.1.1  MODELSIM  仿真演示
0.jpg
4.1.2  M ATLAB  數(shù)據(jù)分析
略。
4.1.3  開發(fā)板演示
略。

4.2  特別說明
          PWM 的一個優(yōu)點(diǎn)是從處理器到被控系統(tǒng)信號都是數(shù)字形式的,無需進(jìn)行數(shù)模轉(zhuǎn)換。讓信號保持為數(shù)字形式可將噪聲影響降到最小。噪聲只有在強(qiáng)到足以將邏輯1改變?yōu)檫壿?或?qū)⑦壿?改變?yōu)檫壿?時(shí),也才能對數(shù)字信號產(chǎn)生影響。   
對噪聲抵抗能力的增強(qiáng)是PWM相對于模擬控制的另外一個優(yōu)點(diǎn),而且這也是在某些時(shí)候?qū)?PWM 用于通信的主要原因。從模擬信號轉(zhuǎn)向PWM 可以極大地延長通信距離。在接收端,通過適當(dāng)?shù)?RC 或LC網(wǎng)絡(luò)可以濾除調(diào)制高頻方波并將信號還原為模擬形式。   
PWM既經(jīng)濟(jì)、節(jié)約空間、抗噪性能強(qiáng),是一種值得廣大工程師在許多設(shè)計(jì)應(yīng)用中使用的有效技術(shù)。


源程序如下:
  1. //==========================================================================
  2. //Filename  :PWM_gen.v
  3. //modulename:PWM_gen
  4. //Author    :a fei
  5. //Date            :2012-5-16
  6. //Function  :PWM產(chǎn)生器,輸出的pwm驅(qū)動蜂鳴器
  7. //Uesedfor  :
  8. //Taobao    :
  9. //E-mail    :2352517093@qq.com
  10. //==========================================================================


  11. module PWM_gen(
  12.                   
  13.                  i_fpga_clk  ,
  14.                  i_rst_n     ,
  15.                  
  16.                  i_pwm_with  ,
  17.                  
  18.                  o_pwm      
  19.                                        
  20.                   );


  21. input    i_fpga_clk  ;//50MHz
  22. input    i_rst_n     ;

  23. input [19:0] i_pwm_with  ;//改變數(shù)值可控制PWM的高電平寬度
  24. output reg   o_pwm       ;   
  25.                                        


  26. //=======================================
  27. //分頻計(jì)數(shù)器
  28. //=======================================
  29. reg[19:0] pwm_cnt ;

  30. always @ (posedge i_fpga_clk or negedge i_rst_n)//時(shí)鐘沿加1              
  31.        if(!i_rst_n)
  32.             pwm_cnt <= 20'b0 ;
  33.        else if( pwm_cnt==20'hfffff)
  34.             pwm_cnt <= 20'b0 ;
  35.        else
  36.             pwm_cnt <= pwm_cnt+1'b1 ;
  37.   
  38. always @ (posedge i_fpga_clk or negedge i_rst_n)
  39.          if(!i_rst_n)
  40.               o_pwm <= 1'b0 ;
  41.          else if(pwm_cnt<=i_pwm_with)
  42.               o_pwm <= 1'b1 ;
  43.          else
  44.               o_pwm <= 1'b0 ;  
  45.             
  46.                         
  47. endmodule
復(fù)制代碼

所有資料51hei提供下載(包含完整的設(shè)計(jì)報(bào)告):
M01_buzzer_pwm.zip (2.38 MB, 下載次數(shù): 97)



回復(fù)

使用道具 舉報(bào)

ID:388978 發(fā)表于 2019-1-6 20:25 | 顯示全部樓層
很有幫助
回復(fù)

使用道具 舉報(bào)

ID:361383 發(fā)表于 2019-11-23 16:41 | 顯示全部樓層
剛好學(xué)習(xí)FPGA,用處很大
回復(fù)

使用道具 舉報(bào)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表