دوستان چگونه میشه موج سینوسی رو با AVR تولید کرد؟؟؟
اطلاعیه
Collapse
No announcement yet.
تولید موج سینوسی با AVR؟؟؟
Collapse
X
-
پاسخ : تولید موج سینوسی با AVR؟؟؟
فقط فقط با AVR ؟ یعنی فقط از یه پین خروجی بگیری؟
اگه اینه که با شیفت دادن فاز می تونی.
مثلا برات این نمونه کد رو میذارم:
کد:#include <avr/io.h> #include <util/delay.h> #include <avr/pgmspace.h> #include "sin.h" int main(void) { uint8_t i; DDRB = 0x08; TCCR2 = 0x69; while(1) { uint8_t delay,n; for (delay=1;delay<=50;delay++) { for (n=0;n<(51-delay);n++) { for (i=0;i<=254;i++) { OCR2=pgm_read_byte_near(sine+i); _delay_loop_2(delay); } } } for (delay=50;delay>=2;delay--) { for (n=0;n<(51-delay);n++) { for (i=0;i<=254;i++) { OCR2=pgm_read_byte_near(sine+i); _delay_loop_2(delay); } } }//TODO:: Please write your application code } }
کد:#include <avr/pgmspace.h> prog_uint8_t sine[256]={ 127, 130, 133, 136, 139, 143, 146, 149, 152, 155, 158, 161, 164, 167, 170, 173, 176, 178, 181, 184, 187, 189, 192, 195, 197, 200, 203, 205, 207, 210, 212, 214, 217, 219, 221, 223, 225, 227, 229, 231, 232, 234, 236, 237, 239, 240, 242, 243, 244, 245, 246, 248, 248, 249, 250, 251, 251, 252, 253, 253, 253, 254, 254, 254, 254, 254, 254, 254, 253, 253, 253, 252, 252, 251, 250, 250, 249, 248, 247, 246, 245, 243, 242, 241, 239, 238, 236, 235, 233, 231, 229, 227, 225, 224, 221, 219, 217, 215, 213, 210, 208, 206, 203, 201, 198, 195, 193, 190, 187, 185, 182, 179, 176, 173, 170, 167, 164, 161, 158, 155, 152, 149, 146, 143, 140, 137, 134, 131, 128, 125, 121, 118, 115, 112, 109, 106, 103, 100, 97, 94, 91, 88, 85, 82, 79, 76, 73, 71, 68, 65, 62, 60, 57, 55, 52, 50, 47, 45, 42, 40, 38, 36, 34, 31, 29, 27, 26, 24, 22, 20, 19, 17, 15, 14, 13, 11, 10, 9, 8, 7, 6, 5, 4, 3, 3, 2, 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 2, 2, 3, 4, 4, 5, 6, 7, 8, 9, 10, 12, 13, 14, 16, 17, 19, 21, 22, 24, 26, 28, 30, 32, 34, 36, 39, 41, 43, 45, 48, 50, 53, 55, 58, 61, 63, 66, 69, 72, 74, 77, 80, 83, 86, 89, 92, 95, 98, 101, 104, 107, 110, 113, 116, 119, 122, };
-
پاسخ : تولید موج سینوسی با AVR؟؟؟
نوشته اصلی توسط RoboRaziولی اگه ممکنه در مورد برنامه تون بیشتر توضیح بدید...
البته من اینو با codevision میخوام compile کنم ارور میده؟؟؟
این یه موج سینوسی روی پین خروجی تایمر 2 مس ازه که شبیه صداری یه آژیر هستش. شما برنامه رو روی کاغذ تحلیل کن که چیکار کرده. اینجوری خیلی خوب می فهمید چیکار کرده.
دیدگاه
-
پاسخ : تولید موج سینوسی با AVR؟؟؟
با PWM میکرو یه موج SIN رو راحت می تونی مدوله کنی
البته برای ظاهر شدن شکل موج سینوسیت باید یه مدار خیلی ساده RC به پایه خروجی( PWM (OCR وصل کنی :rolleyes:
تو سایت سرچ کنی چند تا تاپیک توپ هست که دوستان در حد تیم ملی روش کار کردنخداوند بی نهایت است اما به قدر نیاز تو فرود می آید ، به قدر آرزوی تو گسترده می شود و به قدر ایمان تو کارگشاست.[hr]
دیدگاه
-
پاسخ : تولید موج سینوسی با AVR؟؟؟
نوشته اصلی توسط Rohalaminفیلتر پایین گذر!
نوشته اصلی توسط RoboRaziجناب "4850" ممکنه آدرس کامل این تاپیک ها رو بفرمائید...من تمام مطلب های مرتبط با این موضوع رو گشتم ولی مطلب مناسبی پیدا نکرد..
خیلی ممنون میشم آدرس دقیقشونو بذارید
تو این تاپیک حسابی پیرامون این مطلب بحث شده یکم پشتکار و علاقه داشته باشی خیلی بدردت می خوره
موفق و پیروز باشی
خداوند بی نهایت است اما به قدر نیاز تو فرود می آید ، به قدر آرزوی تو گسترده می شود و به قدر ایمان تو کارگشاست.[hr]
دیدگاه
دیدگاه