اطلاعیه

Collapse
No announcement yet.

کمک برای ساخت پالس مربعی

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

    کمک برای ساخت پالس مربعی

    جناب حمید رضا رضایی لطفا به دلیل هاستینگ بالا و دادن پول هاستینگ از جیب خود تایپیک را حذف نمایید !
    خواستن توانستن است !

    #2
    پاسخ : کمک برای ساخت پالس مربعی

    بله 100% این کار شدنیه

    شما باید از مد campare یا مقایسه استفاده کنی ...

    شما میتونی فرکانس 600 هرتز هم تولید و یا در برنامه مقدارشو عوض کنی ... حتی با برنامه میشه DUTY رو هم تغییر بدی
    زاویه ی نگاهتو عوض کن . . .

    دیدگاه


      #3
      پاسخ : کمک برای ساخت پالس مربعی

      خب این الان چه ربطی به Compare داره؟ #-o

      تو یه وقفه ی تایمر میتونی مثلا بگی یه پایه 100 میکرو ثانیه روشن و 200 میکرو ثانیه خاموش باشه.
      تازه میتونی هر فرکانسی رو (البته با در نظر گرفتن فرکانست) تولید کنی روی هر پایه ای.
      امیدوارم خوب رسونده باشم.
      ?Why not

      دیدگاه


        #4
        پاسخ : کمک برای ساخت پالس مربعی

        ولی ایشون گفتن اگر به زیر برنامه ای هم رفت این کار همچنان ادامه پیدا کنه! بدون PWM میشه این کار رو کرد؟ ربط compare هم همینه دیگه!

        دیدگاه


          #5
          پاسخ : کمک برای ساخت پالس مربعی

          تایمر بدونه اینکه کاری به محاسبات دیگه داشته باشه به کاره خودش ادامه میده.
          حالا اگه بیایم واین کار رو انجام بدیم قضیه حله.

          Compare :eek:
          ?Why not

          دیدگاه


            #6
            پاسخ : کمک برای ساخت پالس مربعی

            نوشته اصلی توسط QUARK
            خب این الان چه ربطی به Compare داره؟ #-o

            تو یه وقفه ی تایمر میتونی مثلا بگی یه پایه 100 میکرو ثانیه روشن و 200 میکرو ثانیه خاموش باشه.
            تازه میتونی هر فرکانسی رو (البته با در نظر گرفتن فرکانست) تولید کنی روی هر پایه ای.
            امیدوارم خوب رسونده باشم.
            ببین مهندس compare هم یکی از مدهای تایمره پس همیشه انجام میشه ...

            پیشنهاد من برای کارای ساده این مد هستش ...

            با فرض کریستال 8 و prescale = 8 فواصل زمانی ما 1 میکرو ثانیه میشه ( از تایمر کانتر 1 استفاده شده ) ....
            حالا ما 500 هرتز می خوایم ، پس دوره ی تناوب ما 2 میلی ثانیه میشه و زمان high میشه نصفش که 1000 میکرو ثانیه

            $regfile = "m32def.dat"
            $crystal = 8000000
            Config Timer1 = Timer , Compare A = Toggle , Prescale = 8 , Clear Timer = 1
            compare1a= 1000
            timer1 = 0
            start timer1
            do
            loop

            اینم سورس برنامه که ساده تر از سر ریز های تایمره :agree:
            زاویه ی نگاهتو عوض کن . . .

            دیدگاه


              #7
              پاسخ : کمک برای ساخت پالس مربعی

              درست ولی شما دارید به زور از این روش استفاده میکنید.

              ببین مهندس compare هم یکی از مدهای تایمره پس همیشه انجام میشه ...
              بله من نمیگم همیشه انجام نمیشه. یه چیز بدیهیه و احتیاجی به گفتنش نیست.
              کاره ساده و غیره ساده نررره که. باید اصولی کار کرد.
              ?Why not

              دیدگاه


                #8
                پاسخ : کمک برای ساخت پالس مربعی

                نوشته اصلی توسط QUARK
                درست ولی شما دارید به زور از این روش استفاده میکنید.

                بله من نمیگم همیشه انجام نمیشه. یه چیز بدیهیه و احتیاجی به گفتنش نیست.
                کاره ساده و غیره ساده نررره که. باید اصولی کار کرد.
                نه عزیز اجباری نیست

                شما سوالی پرسیدی compare منم توضیح دادم

                به تعداد آدم ها الگوریتم واسه نوشتن برنامه هست :agree:
                زاویه ی نگاهتو عوض کن . . .

                دیدگاه


                  #9
                  پاسخ : کمک برای ساخت پالس مربعیجناب حمید رضا رضایی لطفا به دلیل هاستینگ بالا و د

                  جناب حمید رضا رضایی لطفا به دلیل هاستینگ بالا و دادن پول هاستینگ از جیب خود تایپیک را حذف نمایید !
                  خواستن توانستن است !

                  دیدگاه


                    #10
                    پاسخ : کمک برای ساخت پالس مربعی

                    آره چرا که نه عزیزم؟
                    کد:
                    $regfile = "m8def.dat"
                    $crystal = 8000000
                    '------------------------+++++++++++++++++++++++++++++--------------------------
                    Config Timer1 = Timer , Prescale = 8
                    Config Portb.0 = Input
                    Config Portb.1 = Input
                    Config Portb.2 = Output
                    '------------------------<><><><><><><><><><><><><><><--------------------------
                    Dim A As Word , S As Long
                    A = 1000
                    Enable Timer1
                    Start Timer1
                    '=====================*********************************=========================
                    
                    Do
                    If Pinb.0 = 1 Then
                    Incr A
                    End If
                    If Pinb.1 = 1 Then
                    Decr A
                    End If
                    
                    If Timer1 < A Then
                    Portb.2 = 1
                    End If
                    If Timer1 > A Then
                    Portb.2 = 0
                    End If
                    S = A * 2
                    If Timer1 = S Then
                    Timer1 = 0
                    End If
                    
                    Loop
                    End                             'end program
                    میتونی هر فرکانسی رو باهاش بدست بیاری فقط رو برنامه دقت کن.

                    مد compareهم میدونیم چیه. /
                    ?Why not

                    دیدگاه

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