SOGO論壇
  登入   註冊   找回密碼
查看: 1000|回覆: 0
列印 上一主題 下一主題

[技術文章] AVR ATmega16 產生 三角波 [複製連結]

Rank: 4

數位軟體勳章

狀態︰ 離線
跳轉到指定樓層
1
發表於 2013-11-3 08:21:32 |只看該作者 |倒序瀏覽
對應累積式的功率驅動元件如電熱絲,燈光亮度,直流馬達速度控制 ...
都可以透過 PWM 的輸出加以驅動控制 。

ATmega16 內 64 個 I/O Register 的 OCR1A : Output Compare Register 1 A
只要改變 OCR1A 的值就能控制 pin 19 (OC1A)PD5 引腳上的 duty cycle 占空比;
改變 delay_ms( ) 內的 argument 就可以改變 三角波 的頻率 。

主要程式:
  1.     while (1)
  2.     {
  3.         for(i=0; i<255; i++)
  4.         {
  5.             OCR1A = i;
  6.             delay_ms(1);
  7.         }
  8.         for(i=255; i>0; i--)
  9.         {
  10.             OCR1A = i;
  11.             delay_ms(1);
  12.         }
  13.     }
複製代碼


已有 1 人評分威望 收起 理由
紅塵孤鳥 + 2 您發表的文章內容豐富,無私分享造福眾人,.

總評分: 威望 + 2   查看全部評分

喜歡嗎?分享這篇文章給親朋好友︰
               感謝作者     

請注意︰利用多帳號發表自問自答的業配文置入性行銷廣告者,將直接禁訪或刪除帳號及全部文章!
您需要登錄後才可以回覆 登入 | 註冊


本論壇為非營利自由討論平台,所有個人言論不代表本站立場。文章內容如有涉及侵權,請通知管理人員,將立即刪除相關文章資料。侵權申訴或移除要求:abuse@oursogo.com

GMT+8, 2024-5-6 00:06

© 2004-2024 SOGO論壇 OURSOGO.COM
回頂部