اطلاعیه

Collapse
No announcement yet.

راه اندازی تایمر کانتر صفر

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    #16
    پاسخ : راه اندازی تایمر کانتر صفر

    خیلی خیلی ممنون دوست عزیز، واقعا لطف کردی :applause:

    دیدگاه


      #17
      پاسخ : راه اندازی تایمر کانتر صفر

      سلام
      با سپاس از این پست خوب
      آیا برنامه های ساده ی دیگه ای در مورد تایمر کانتر ها و وقفه های داخلی ندارید
      اگر دارید بزارید خیلی عالی میشه
      مثلا تولید موج مربعی و ....
      مولا علی (ع) میفرمایند : آسوده باش , آستین هارا بالا بزن , بر خدا توکل کن , آنگاه خدا را خواهی دید که زودتر از تو دست به کار شده است .

      دیدگاه


        #18
        پاسخ : راه اندازی تایمر کانتر صفر

        نوشته اصلی توسط mhm_004
        با سلام خدمت دوستان عزیز
        من کار با AVR رو یه مدتی میشه شروع کردم، تو بحث تایمر کانتر ها به مشکل برخورد کردم. از Mega8 استفاده میکنم و میخوام تایمر کانتر صفر رو استفاده کنم برای تولید تاخیر، یعنی یه Led روشن میکنم و میخوام حدود 1 ثانیه که با تایمر تولید میکنم روشن بمونه بعد حدود یک ثانیه خاموش بمونه. برنامه ای که نوشتم اینه:
        #include <mega8.h>
        #include <delay.h>

        void main(void)
        {
        DDRB=0xFF;
        PORTB=0x00;
        TCCR0=0x00;
        TCNT0=0x00;
        while (1)
        {
        TCCR0=0x05;
        while(!(TIFR&0x02))
        {
        PORTB=0x01;
        }

        PORTB=0x00;
        TIFR|=0x02;
        delay_ms(500);
        }
        }

        ولی کار نمیکنه و Led همینطور روشن میمونه. از اسیلاتور داخلی 1 مگ استفاده میکنم که با توجه به اینکه TCCR0=0x05 گذاشتم فرکانسی کع تایمر باید با اون شمارش رو انجام بده حدود 976 هرتز میشه ، یعنی هر شمارش حدود 1 میلی ثانبه طول میکشه و تا سرریز شدن تایمر 256میلی ثانیه باید Led روشن بمونه. ولی کار نمیکنه. مشکل از کجاست، میتونین راهنماییم کنین؟
        ببخشین مگه قرار نیست ما تاخیر با تایمر بسازیم پس اون دستور تاخیر 500 میلی ثانیه چیه دیگه ؟
        بعدش بهتر نبود که مقدار تایمر رو با 24 پر میکردیم تا زمان دقیق تر بشه ؟
        بعد ش خط قرمز و نمیتونید واسم توضیح بدید ؟
        بعدش کدوم دستور باز سریز و صفر می کنه ؟
        و اینکه اگر بخوام بشمارم با کانتر چطوری این کارو انجام بدم ؟
        سولاتم زیاد شد می دونم ببخشین
        ولی خواهشا جواب سوالاتمو بدید
        مولا علی (ع) میفرمایند : آسوده باش , آستین هارا بالا بزن , بر خدا توکل کن , آنگاه خدا را خواهی دید که زودتر از تو دست به کار شده است .

        دیدگاه

        لطفا صبر کنید...
        X