加入星計劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴(kuò)散
  • 作品版權(quán)保護(hù)
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長期合作伙伴
立即加入
  • 正文
    • 1.呼吸燈概念
    • 2.實現(xiàn)原理
    • 3.硬件介紹
    • 4.FPGA軟件設(shè)計
    • 5.軟件在線仿真與實測
  • 推薦器件
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請入駐 產(chǎn)業(yè)圖譜

FPGA入門基礎(chǔ)之呼吸燈設(shè)計

05/22 11:00
3337
閱讀需 5 分鐘
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論

引言:呼吸燈在日常生活中經(jīng)常見到,如電子時鐘,小夜燈等等,本文我們介紹下通過PWM波來控制LED燈,實現(xiàn)呼吸燈功能。

1.呼吸燈概念

呼吸燈其實是在處理器的控制下,由暗漸亮、然后再由亮漸暗,其實現(xiàn)效果類似人的呼吸方式的LED燈。其要實現(xiàn)呼吸周期重復(fù),明暗漸變功能。

2.實現(xiàn)原理

由于FPGA管腳輸出邏輯電平只有“0”和“1”,因此并不能通過FPGA來改變LED兩側(cè)電壓差來實現(xiàn)呼吸燈。但是,我們可以通過改變單位時間內(nèi)亮燈時間的占空比來實現(xiàn)呼吸效果,即在固定頻率下,通過調(diào)整占空比來控制LED的亮滅,又稱作PWM(Pulse Width Modulation)調(diào)制。PWM是對模擬電路控制的一種非常有效的技術(shù),廣泛應(yīng)用于測量、功率控制、通信等領(lǐng)域。

圖1:占空比調(diào)整示意圖

3.硬件介紹

LED燈電路如下圖所示,當(dāng)電阻其限流作用,保證LED不會超過其工作最大電流,當(dāng)FPGA IO口輸出低電平時,LED燈點亮,反之,LED燈熄滅。

圖2:LED燈電路圖

4.FPGA軟件設(shè)計

本設(shè)計呼吸燈的亮滅周期是2S,PWM每間隔2ms更新一次,共計更新100次即2S后切換PWM的占空比調(diào)整方向。因此PWM占空比的調(diào)整是和2ms定時計數(shù)器和2S定時計數(shù)器相關(guān)。系統(tǒng)框圖如下:

圖3:呼吸燈PWM產(chǎn)生框圖

上圖中包含了3個定時計數(shù)器:

(1)20us定時器,作為本系統(tǒng)的基本定時器,產(chǎn)生時間基準(zhǔn);(2)20ms定時器,通過20us定時器,計數(shù)100次完成20ms定時計數(shù);(3)2s定時器,通過20ms定時器,計數(shù)100次完成2S定時計數(shù)。

1us定時器代碼:

//20us 定時器always @(posedge i_sysclk_p or negedge i_rstn)begin    if(i_rstn == 1'b0)        cnt_20us_timer <= 0;        else if(cnt_20us_timer < T20US_SET)    ????????cnt_20us_timer <=?cnt_20us_timer +?1'b1;    else????????cnt_20us_timer <=?24'd0;??????????end

20ms比較定時器代碼:

//20ms pwm比較定時器,基于 1us timeralways @(posedge i_sysclk_p or negedge i_rstn)begin      if(i_rstn == 1'b0)                               ?????????cnt_20ms_timer?<=?0;????????else?if(20us_timer_done)????????????????????????????         cnt_20ms_timer <= (cnt_20ms_timer < T20MS_SET) ? (cnt_20ms_timer + 1'b1) : 10'd0;       else                                                         cnt_20ms_timer <= cnt_20ms_timer ;end

5.軟件在線仿真與實測

硬件平臺:EP2C8Q208C8N

Quartusii軟件:11.0

工程編譯完成后,下載bit文件到電路板,PWM波測試結(jié)果如下圖所示。

圖4:SignalTapII在線抓取波形

歡迎關(guān)注FPGA技術(shù)實戰(zhàn)公眾號,喜歡就多多轉(zhuǎn)發(fā)吧!

推薦器件

更多器件
器件型號 數(shù)量 器件廠商 器件描述 數(shù)據(jù)手冊 ECAD模型 風(fēng)險等級 參考價格 更多信息
XC7A12T-1CSG325C 1 AMD Xilinx Field Programmable Gate Array, PBGA325, BGA-325
$40.49 查看
ATF22V10C-15PU 1 Microchip Technology Inc IC PLD 10MC 15NS 24DIP

ECAD模型

下載ECAD模型
$1.85 查看
5M80ZE64I5N 1 Altera Corporation Flash PLD, 14ns, 64-Cell, CMOS, PQFP64, 9 X 9 MM, 0.40 MM PITCH, LEAD FREE, PLASTIC, EQFP-64
$3.86 查看

相關(guān)推薦

電子產(chǎn)業(yè)圖譜

專注FPGA技術(shù)開發(fā),涉及Intel FPGA、Xilinx FPGA技術(shù)開發(fā),開發(fā)環(huán)境使用,代碼風(fēng)格、時序收斂、器件架構(gòu)以及軟硬件項目實戰(zhàn)開發(fā),個人公眾號:FPGA技術(shù)實戰(zhàn)。