اطلاعیه

Collapse
No announcement yet.

PWM +PIC+ خیلی مهم

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

    PWM +PIC+ خیلی مهم

    با سلام

    لطفا اگر درمورد ساختن PWM با DUTY CYCLE 50% وبا فرکانس 120KHZو بااستفاده از کریستال 7.67375M در تایمر 2 میکروPIC اطلاعاتی دارید بنده را راهنمایی فرمایید.
    (ترجیحا در نرم افزار CCS)

    #2
    PWM +PIC+ خیلی مهم

    سلام . خوبی دوست عزیز؟
    از مدیران کسی که با PIC کار کرده آقا هادی هست که ظاهرا خط تلفنشون چند وقت مشکل داره نمیتونن کانکت بشن .امیدوارم ایشون یا دوستان دیگه هر چه سریع تر پاسختون رو بدن .
    موفق باشید .
    شأن انسان در ايمان و هجرت و جهاد است و هجرت، مقدمهآ‌ي جهاد فيآ‌سبيلآ‌الله.
    هجرت، هجرت از سنگينيآ‌هاست و جاذبهآ‌هايي كه تو را به خاك ميآ‌چسباند.
    چكمهآ‌هايت را بپوش، رهآ‌توشهآ‌ات را بردار و هجرت كن.

    دیدگاه


      #3
      جواب

      با سلام
      برای تولید PWM توسط PIC باید چند رجیستر را تنظیم کنی ابتدا باید در CCP1CON در بیتهای 2 و 3 مقدار یک را
      وارد کنی تا حالت PWM برای تایمر 2 انتخاب شود که با این دستور فعال میشه:
      >>>> setup_ccp1(CCP_PWM)
      سپس باید دوره تناوب فرکانسی که نیاز داری رو در رابطه زیر
      برای تعیین مقداری که باید در تایمر 2 بگذاری قرار دهی:
      Period = (PR2 + 1) * 4 * ( 1/xtal ) * prescaler
      از رابطه فوق مقدار PR2 را محاسبه میکنی و در تایمر2 قرار میدهی.
      Period : همان معکوس فرکانس مورد نظر میباشد
      Prescaler : می تواند 1 یا 4 یا 16 باشد .در رجیستر T2CON (بیتهای 0 و1 ) تنظیم شود.
      xtal : فرکانس کریستال میکرو

      در مورد سوال : prescaler = 4 ___ PR2=3 ___ xtal = 7.67375Mhz
      setup_timer_2 ( T2_DIV_BY_4 , 3 , 1 ) <<<<<

      حالا تعیین سیکل کاری :
      از رابطه زیر :
      Duty cycle : (CCPR1L : CCP1CON<5:4&gt * ( 1/xtal ) * prescaler
      رابطه فوق برحسب زمان میباشد . یعنی برای 50% سیکل کاری باید در رابطه بالا
      نصف دوره تناوب مورد نظر را قرار بدهی. پس سیکل کاری مشخص است و یاید
      عددی که در رجیستر های CCPR1L:CCP1CON<5:4> قرار گیرد مشخص میشود.
      بیتهای 5و4 از رجیسترCCP1CON به عنوان بیتهای 8و9 به حساب می ایند( پس کلا 10 بیت در ختیارداریم)

      در مورد سوال: prescaler = 4 و CCPR1L=8 و xtal = 7.67375Mhz و Duty = 4 uS (50%)
      >>>>>>> set_pwm1_duty ( 8 )

      پس با مفروضات سوال داریم:
      (setup_ccp1(CCP_PWM
      setup_timer_2 ( T2_DIV_BY_4 , 3 , 1 )
      set_pwm1_duty ( 8 )

      فرکانسی در حدود 119کیلو هرتز بدست می اید با سیکل کاری 50 درصدروی پایه ccp1 میکرو PIC16f877(A)

      همه تنظیمات فوق را میتوانی با PIC wizard انجام بدهی

      موفق باشید.
      >>>>> اللهم عجل لولیک الفرج <<<



      لطفا براي تشكر از امتياز مثبت استفاده بفرماييد

      دیدگاه


        #4
        تشکر

        با عرض سلام
        از راهنمایی خوب شما بسیار متشکرم.
        بنده قبلا جواب این سوال را از یک سایت دیگر پیدا کرده بودم که پاسخ شما باعث شد دقیقتر جواب ان را بفهمم.
        آدرس سایت را برایتان می نویسم که اگر مایل بودید سری به ان بزنید. به نظر من سایت خیلی خوبی است.(البته من چند روز پیش این پیغام را برای شما ارسال کرده بودم ولی به دلیل مشکلات سایت پاک شده بود.)
        http://www.ccsinfo.com/forum/viewtopic.php?p=67520#67520

        سربلند و پیروز باشید.

        دیدگاه


          #5
          با با کمک کن&ید

          با سلام و عرض خسته نباشید من می خواستم یک کنترل از راه دور مادون قرمز با میکروی picو سنسور سه پایه معروف به چشمی های تلویزیون پارس بسازم البته با سه کانال و بردهای مختلف خواهشمندم حتما رسیدگی شود زیرا چندین سوال دیگر را مطرح کردم اما جواب نگرفتم
          با تشکر وحید
          وچیک همه تون

          دیدگاه


            #6
            جواب

            سلام رفیق
            مشکل شما دقیقا چیه؟
            به نظر من بهتره مدار فرستنده را نسازی بلکه از کنترل تلویزیون سونی استفاده کنی.
            حالا من نمیدونم باید چی جواب بدم مشکل را واضحتر بیان کنید
            شاید تونستم کمکی کنم.
            >>>>> اللهم عجل لولیک الفرج <<<



            لطفا براي تشكر از امتياز مثبت استفاده بفرماييد

            دیدگاه


              #7
              PWM +PIC+ خیلی مهم

              بهترین راه برای استفاده pwm سخت افزاریه چون هیچ طوری شما نمیتونید خیلی دقیق نرم افزاری این نوع سیگنال در بیارید برای استفاده از pwm سخت افزاری توی pic بهتره که از ویزارد
              ccs استفاده کنید توی فرکانسی که شما میخاید کار کنید توی ویزارد انتخابش میکنید بعد روی pin cpp1or pin ccp2 از این سیگنال استفاده میکنید بعضی از pic های سریع 18f تا 15 تا pwm سخت افزاری داره
              void main()
              {
              long duty;
              port_b_pullups(TRUE);
              setup_adc_ports(NO_ANALOGS);
              setup_adc(ADC_OFF);
              setup_spi(FALSE);
              setup_timer_0(RTCC_INTERNAL|RTCC_DIV_256);
              setup_timer_1(T1_DISABLED);
              setup_timer_2(T2_DIV_BY_4,255,1);
              ////// setup_ccp1(CCP_PWM);/////cpp1
              setup_vref(FALSE);
              enable_interrupts(INT_TIMER2);
              enable_interrupts(GLOBAL);

              duty = 512; // .000416/(16*(1/20000000))

              set_pwm1_duty(duty);



              }
              فهبني صبرت علی عذابک فکیف اصبرعلی فراقک
              گیرم که برعذاب توصبر کنم ،چگونه بر جدایی ات شکیبایی ورزم

              دیدگاه


                #8
                PWM +PIC+ خیلی مهم


                http://www.4shared.com/file/3491101/42f83819/pwm.html
                اینم برنامه جامع وکامل برای pwm
                فهبني صبرت علی عذابک فکیف اصبرعلی فراقک
                گیرم که برعذاب توصبر کنم ،چگونه بر جدایی ات شکیبایی ورزم

                دیدگاه


                  #9
                  پاسخ : PWM +PIC+ خیلی مهم

                  من می خوام ، یه pwm بسازم ، و با 2 تا شاسی فرکانس رو عوض کنم ( مثلا 0 تا 100 کیلو ) و با 2 تا شاسی دیوتی سایکل رو کم و زیاد کنم
                  لطفا راهنماییم کنید :cry:

                  دیدگاه


                    #10
                    پاسخ : PWM +PIC+ خیلی مهم

                    سلام.

                    دوستانی که میخوان PWM تنظیم کنن حتما ببینن.
                    http://eng-serve.com/pic/pic_pwm.html
                    خویشتن را اصلاح کنید تا خداوند کارها را اصلاح کند. امیر المومنین علی (ع)

                    دیدگاه

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