SOGO論壇

標題: AVR ATmega16 產生 正弦波 [列印本頁]

作者: if8051    時間: 2013-11-3 13:06:55     標題: AVR ATmega16 產生 正弦波

單晶片微電腦 AVR ATmega16 有 4 channel PWM 脈波寬度調變,可設計 duty cycle 工作週期 ( 占空比 )
T/C 1 波形產生模式 WGM13   WGM12   WGM11   WGM10 可規劃 mode 0 ~ mode 15
5 種 快速 PWM 模式,5 種 相位修正 PWM 模式,2 種 相位與頻率修正 PWM 模式
現今利用 8 位快速 PWM 模式,pin 19 (OC1A)PD5 輸出 Vpp 5v 的 正弦波 。
  1. #include <mega16.h>
  2. #include <delay.h>
  3. #include <math.h>

  4. // Declare your global variables here
  5. // 宣告全域變數,存放正弦表
  6. char sinTable[100];

  7. // 初始化 正弦表
  8. void initialSinTable(void)
  9. {
  10.     char i;
  11.     for(i=0;i<100;i++)
  12.         sinTable[i]=127+sin(0.0628*i)*128;
  13. }
  14. // 255/2=127.5    127 指中點值
  15. // 0.0628 是指一個週期分 100 份
  16. // 2Pi/100 = 2*3.14/100 = 0.0628
  17.         
  18. void main(void)
  19. {
  20. // Declare your local variables here
  21. char j;
複製代碼
  1.     initialSinTable();
  2.     while (1)
  3.     {
  4.         for(j=0;j<100;j++)
  5.         {
  6.             OCR1A=sinTable[j];  // 載入占空比值
  7.             delay_ms(1);
  8.         }
  9.     }
複製代碼






附件: 1.jpg (2013-11-3 13:05:58, 172.74 KB) / 下載次數 8
https://oursogo.com/forum.php?mod=attachment&aid=NzAyMjMyMXw1ZTUzNGVhN3wxNzM5MjU4NjI5fDB8MA%3D%3D

附件: 2.jpg (2013-11-3 13:06:27, 76.46 KB) / 下載次數 5
https://oursogo.com/forum.php?mod=attachment&aid=NzAyMjMyMnw5MWFkZGQ1OXwxNzM5MjU4NjI5fDB8MA%3D%3D
作者: if8051    時間: 2013-11-4 09:58:41

再補上一張 .GIF 動畫圖檔,更能深刻體會 PWM 經過 RC 濾波電路 當成 DAC 數位轉類比的運用 。

pin 19 (OC1A) PD5 輸出 PWM 波形,接示波器 B channel 顯示 藍色 光跡 。
經過 RC 濾波電路接 A channel 顯示 黃色 光跡顯示 正弦波波形 。



附件: sin.gif (2013-11-4 09:58:31, 1.05 MB) / 下載次數 5
https://oursogo.com/forum.php?mod=attachment&aid=NzAyODQ1MnwxYzMyM2UyMHwxNzM5MjU4NjI5fDB8MA%3D%3D
作者: if8051    時間: 2013-11-25 23:30:24

今天實作 正弦波 輸出,搭配 PC-Based USB 示波器 顯示波形 及 FFT 。





附件: 1.jpg (2013-11-25 23:29:44, 140.19 KB) / 下載次數 4
https://oursogo.com/forum.php?mod=attachment&aid=NzE4Nzk3Nnw4NjhkMWQ5OHwxNzM5MjU4NjI5fDB8MA%3D%3D

附件: 2.jpg (2013-11-25 23:30:00, 128.4 KB) / 下載次數 7
https://oursogo.com/forum.php?mod=attachment&aid=NzE4Nzk3N3w4NmM3YzQyYXwxNzM5MjU4NjI5fDB8MA%3D%3D
作者: manpower    時間: 2013-11-26 23:18:10

讚!

真用心,給大哥拍拍手。




歡迎光臨 SOGO論壇 (https://oursogo.com/) Powered by OURSOGO.COM