اطلاعیه

Collapse
No announcement yet.

ساده ترین روش تولید موج مربعی 5 ولت 50 هرتز با بسکام؟

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

    ساده ترین روش تولید موج مربعی 5 ولت 50 هرتز با بسکام؟

    سلام دوستان واساتید گرامی
    ساده ترین روش برای تولید یک موج مربعی 50 هرتز در بسکام را میتوانید به من آموزش دهید ...؟
    با تشکر ....
    آموزش ساخت دستگاه برف ساز خانگی : https://www.eca.ir/forums/thread55009.html
    مقاله آموزشی 11 پروژه با AVR و بسکام: https://www.eca.ir/forums/thread31760.html
    _*̡͌l̡*̡̡ ̴̡ı̴̴̡ ̡̡͡|̲̲̲͡͡͡ ̲▫̲͡ ̲̲̲͡͡π̲̲͡͡ ̲̲͡▫̲̲͡͡ ̲|̡̡̡ ̡ ̴̡ı̴̡̡ *̡͌l̡*̡̡__*̡͌l̡*̡̡ ̴̡ı̴̴̡ ̡̡͡|̲̲̲͡͡͡ ̲▫̲͡ ̲̲̲͡͡π̲̲͡͡ ̲̲͡▫̲̲͡͡ ̲|̡̡̡ ̡ ̴̡ı̴̡̡ *̡͌l̡*̡̡__*̡͌l̡*̡̡ ̴̡ı̴̴̡ ̡̡͡|̲̲̲͡͡͡ ̲▫̲͡ ̲̲̲͡͡π̲̲͡͡ ̲̲͡▫̲̲͡͡ ̲|̡̡̡ ̡ ̴̡ı̴̡̡ *̡͌l̡*̡̡_

    #2
    پاسخ : ساده ترین روش تولید موج مربعی 5 ولت 50 هرتز با بسکام؟

    اگه با بسکام کار میکنید دستور sound راحت ترین روش است
    اگه این زندگی باشه , اگه این سهمم از دنیاست ; من از مردن هراسم نیست

    دیدگاه


      #3
      پاسخ : ساده ترین روش تولید موج مربعی 5 ولت 50 هرتز با بسکام؟

      نوشته اصلی توسط پدرام شمس آبادی ❇
      اگه با بسکام کار میکنید دستور sound راحت ترین روش است
      سلام پدرام خان
      خوب هستید دوست عزیز؟
      یک نمونه برنامه ساده میتونید قرار دهید...
      آموزش ساخت دستگاه برف ساز خانگی : https://www.eca.ir/forums/thread55009.html
      مقاله آموزشی 11 پروژه با AVR و بسکام: https://www.eca.ir/forums/thread31760.html
      _*̡͌l̡*̡̡ ̴̡ı̴̴̡ ̡̡͡|̲̲̲͡͡͡ ̲▫̲͡ ̲̲̲͡͡π̲̲͡͡ ̲̲͡▫̲̲͡͡ ̲|̡̡̡ ̡ ̴̡ı̴̡̡ *̡͌l̡*̡̡__*̡͌l̡*̡̡ ̴̡ı̴̴̡ ̡̡͡|̲̲̲͡͡͡ ̲▫̲͡ ̲̲̲͡͡π̲̲͡͡ ̲̲͡▫̲̲͡͡ ̲|̡̡̡ ̡ ̴̡ı̴̡̡ *̡͌l̡*̡̡__*̡͌l̡*̡̡ ̴̡ı̴̴̡ ̡̡͡|̲̲̲͡͡͡ ̲▫̲͡ ̲̲̲͡͡π̲̲͡͡ ̲̲͡▫̲̲͡͡ ̲|̡̡̡ ̡ ̴̡ı̴̡̡ *̡͌l̡*̡̡_

      دیدگاه


        #4
        پاسخ : ساده ترین روش تولید موج مربعی 5 ولت 50 هرتز با بسکام؟

        برادر سینا برای اون کاری که شما احتیاج داری باید دقیقا پریودهای 10 میلی ثانیه ایجاد کنی که بهترین راهش استفاده از تایمره نه دستورات wait و یا sound
        راه دیگه هم استفاده از مدارات آنالوگ اسیلاتور هست که مشکل هنگ کردن نداری. بطور مثال یه 555 ساده!

        دیدگاه


          #5
          پاسخ : ساده ترین روش تولید موج مربعی 5 ولت 50 هرتز با بسکام؟

          نوشته اصلی توسط sina1359
          سلام پدرام خان
          خوب هستید دوست عزیز؟
          یک نمونه برنامه ساده میتونید قرار دهید...
          Action

          Sends pulses to a port pin.

          Syntax
          ______________________
          SOUND pin, duration, pulses
          _______________________

          Remarks

          Pin پایه
          Any I/O pin such as PORTB.0 etc.

          Duration فرکانس
          The number of pulses to send. Byte, integer/word or constant.

          Pulses دامنه
          The time the pin is pulled low and high.



          This is the value for a loop counter.




          When you connect a speaker or a buzzer to a port pin (see hardware) , you can use the SOUND statement to generate some tones.

          The port pin is switched high and low for pulses times.

          This loop is executed duration times.



          The SOUND statement is not intended to generate accurate frequencies. Use a TIMER to do that.




          اگه این زندگی باشه , اگه این سهمم از دنیاست ; من از مردن هراسم نیست

          دیدگاه


            #6
            پاسخ : ساده ترین روش تولید موج مربعی 5 ولت 50 هرتز با بسکام؟

            نوشته اصلی توسط -Alone-
            برادر سینا برای اون کاری که شما احتیاج داری باید دقیقا پریودهای 10 میلی ثانیه ایجاد کنی که بهترین راهش استفاده از تایمره نه دستورات wait و یا sound
            راه دیگه هم استفاده از مدارات آنالوگ اسیلاتور هست که مشکل هنگ کردن نداری. بطور مثال یه 555 ساده!
            سلام دوست عزیز
            بی زحمت کمی توضیح میدهید؟
            مثلا برنامه زیر بر روی پایه های D0-D1-D2-D3 میکرو مگا 8 باید موج مربعی 50 هرتز تولید بشه و به
            برنامه اضافه بشه , به صورت جدول زیر (به جز پایه OC1A که موج SPWM تولید میکند...):

            در نیم سیکل اول باید :
            A) پایه D0 باید یک باشد
            B) پایه D1 باید یک باشد
            C) پایه D2 باید صفر باشد
            D) پایه D3 باید صفر باشد

            در نیم سیکل دوم باید :
            A) پایه D0 باید 0 باشد
            B) پایه D1 باید 0 باشد
            C) پایه D2 باید 1 باشد
            D) پایه D3 باید 1 باشد




            کد:
            $regfile = "m8def.dat"
            $crystal = 8000000
            
            Config Timer1 = Pwm , Pwm = 8 ,, Compare B Pwm = Disconnect , Prescale = 8
            Enable Interrupts
            
            Dim A As Byte , I As Byte
            I = 1
            
            Do
            
            I
            
            Loop
            
            End
            
            .....
            آموزش ساخت دستگاه برف ساز خانگی : https://www.eca.ir/forums/thread55009.html
            مقاله آموزشی 11 پروژه با AVR و بسکام: https://www.eca.ir/forums/thread31760.html
            _*̡͌l̡*̡̡ ̴̡ı̴̴̡ ̡̡͡|̲̲̲͡͡͡ ̲▫̲͡ ̲̲̲͡͡π̲̲͡͡ ̲̲͡▫̲̲͡͡ ̲|̡̡̡ ̡ ̴̡ı̴̡̡ *̡͌l̡*̡̡__*̡͌l̡*̡̡ ̴̡ı̴̴̡ ̡̡͡|̲̲̲͡͡͡ ̲▫̲͡ ̲̲̲͡͡π̲̲͡͡ ̲̲͡▫̲̲͡͡ ̲|̡̡̡ ̡ ̴̡ı̴̡̡ *̡͌l̡*̡̡__*̡͌l̡*̡̡ ̴̡ı̴̴̡ ̡̡͡|̲̲̲͡͡͡ ̲▫̲͡ ̲̲̲͡͡π̲̲͡͡ ̲̲͡▫̲̲͡͡ ̲|̡̡̡ ̡ ̴̡ı̴̡̡ *̡͌l̡*̡̡_

            دیدگاه


              #7
              پاسخ : ساده ترین روش تولید موج مربعی 5 ولت 50 هرتز با بسکام؟

              برادر سینا منظورت یه چنین چیزیه؟
              کد:
              $regfile = "m8def.dat"
              $crystal = 8000000
              
              Config Timer1 = Timer , Prescale = 8
              Enable Interrupts
              Enable Ovf1
              On Timer1 _10ms
              Timer1 = 55535
              Start Timer1
              Ddrd.0 = 1 : Portd.0 = 0
              
              Do
                  Wait 1
              Loop
              
              _10ms:
                 Timer1 = 55535
                 Toggle Portd.0
              Return
              عاااایا؟ :biggrin:

              دیدگاه


                #8
                پاسخ : ساده ترین روش تولید موج مربعی 5 ولت 50 هرتز با بسکام؟

                بله دقیقا دوست عزیز
                دستتون درد نکنه :mrgreen:

                من به برنامه به صورت زیر اضافه کردم ولی نمیدونم چرا بعد از اضافه کردن , موج SPWM از بین رفت.... :mrgreen:

                فقط موج مربعی 50 هرتز باقی موند

                کد:
                $regfile = "m8def.dat"
                $crystal = 8000000
                
                Config Pind.0 = Output
                
                
                
                Config Timer1 = Pwm , Pwm = 8 , , Compare B Pwm = Disconnect , Prescale =8
                Enable Interrupts
                
                
                Dim A As Byte
                Dim I As Byte
                
                I = 1
                
                
                
                
                
                Do
                
                
                
                
                
                
                Loop
                
                End
                
                .............
                
                _10ms:
                   Timer1 = 55535
                   Toggle Portd.0
                Return
                آموزش ساخت دستگاه برف ساز خانگی : https://www.eca.ir/forums/thread55009.html
                مقاله آموزشی 11 پروژه با AVR و بسکام: https://www.eca.ir/forums/thread31760.html
                _*̡͌l̡*̡̡ ̴̡ı̴̴̡ ̡̡͡|̲̲̲͡͡͡ ̲▫̲͡ ̲̲̲͡͡π̲̲͡͡ ̲̲͡▫̲̲͡͡ ̲|̡̡̡ ̡ ̴̡ı̴̡̡ *̡͌l̡*̡̡__*̡͌l̡*̡̡ ̴̡ı̴̴̡ ̡̡͡|̲̲̲͡͡͡ ̲▫̲͡ ̲̲̲͡͡π̲̲͡͡ ̲̲͡▫̲̲͡͡ ̲|̡̡̡ ̡ ̴̡ı̴̡̡ *̡͌l̡*̡̡__*̡͌l̡*̡̡ ̴̡ı̴̴̡ ̡̡͡|̲̲̲͡͡͡ ̲▫̲͡ ̲̲̲͡͡π̲̲͡͡ ̲̲͡▫̲̲͡͡ ̲|̡̡̡ ̡ ̴̡ı̴̡̡ *̡͌l̡*̡̡_

                دیدگاه


                  #9
                  پاسخ : ساده ترین روش تولید موج مربعی 5 ولت 50 هرتز با بسکام؟

                  شما که دیگه خودت استادی داداش :biggrin:
                  نمیشه از یه تایمر در دو مد استفاده کرد :mrgreen:
                  برای ساختن 50 هرتز از یه تایمر دیگه استفاده کن مثلاتایمر صفر

                  دیدگاه


                    #10
                    پاسخ : ساده ترین روش تولید موج مربعی 5 ولت 50 هرتز با بسکام؟

                    نوشته اصلی توسط -Alone-
                    شما که دیگه خودت استادی داداش :biggrin:
                    نمیشه از یه تایمر در دو مد استفاده کرد :mrgreen:
                    برای ساختن 50 هرتز از یه تایمر دیگه استفاده کن مثلاتایمر صفر
                    راست میگید :mrgreen:
                    چرا به این موضوع دقت نکردم
                    آموزش ساخت دستگاه برف ساز خانگی : https://www.eca.ir/forums/thread55009.html
                    مقاله آموزشی 11 پروژه با AVR و بسکام: https://www.eca.ir/forums/thread31760.html
                    _*̡͌l̡*̡̡ ̴̡ı̴̴̡ ̡̡͡|̲̲̲͡͡͡ ̲▫̲͡ ̲̲̲͡͡π̲̲͡͡ ̲̲͡▫̲̲͡͡ ̲|̡̡̡ ̡ ̴̡ı̴̡̡ *̡͌l̡*̡̡__*̡͌l̡*̡̡ ̴̡ı̴̴̡ ̡̡͡|̲̲̲͡͡͡ ̲▫̲͡ ̲̲̲͡͡π̲̲͡͡ ̲̲͡▫̲̲͡͡ ̲|̡̡̡ ̡ ̴̡ı̴̡̡ *̡͌l̡*̡̡__*̡͌l̡*̡̡ ̴̡ı̴̴̡ ̡̡͡|̲̲̲͡͡͡ ̲▫̲͡ ̲̲̲͡͡π̲̲͡͡ ̲̲͡▫̲̲͡͡ ̲|̡̡̡ ̡ ̴̡ı̴̡̡ *̡͌l̡*̡̡_

                    دیدگاه


                      #11
                      پاسخ : ساده ترین روش تولید موج مربعی 5 ولت 50 هرتز با بسکام؟

                      نوشته اصلی توسط -Alone-
                      برادر سینا منظورت یه چنین چیزیه؟
                      کد:
                      $regfile = "m8def.dat"
                      $crystal = 8000000
                      
                      Config Timer1 = Timer , Prescale = 8
                      Enable Interrupts
                      Enable Ovf1
                      On Timer1 _10ms
                      Timer1 = 55535
                      Start Timer1
                      Ddrd.0 = 1 : Portd.0 = 0
                      
                      Do
                          Wait 1
                      Loop
                      
                      _10ms:
                         Timer1 = 55535
                         Toggle Portd.0
                      Return
                      عاااایا؟ :biggrin:
                      جسارتا امکانش هست همین برنامه بالا را که زحمت کشیدید قرار دادید , بدون تغییری در مود تایمر صفر بنویسید؟ :mrgreen:
                      هرچی فکر میکنم یادم نمیاد
                      از صبح هم وقتم را گرفته
                      آموزش ساخت دستگاه برف ساز خانگی : https://www.eca.ir/forums/thread55009.html
                      مقاله آموزشی 11 پروژه با AVR و بسکام: https://www.eca.ir/forums/thread31760.html
                      _*̡͌l̡*̡̡ ̴̡ı̴̴̡ ̡̡͡|̲̲̲͡͡͡ ̲▫̲͡ ̲̲̲͡͡π̲̲͡͡ ̲̲͡▫̲̲͡͡ ̲|̡̡̡ ̡ ̴̡ı̴̡̡ *̡͌l̡*̡̡__*̡͌l̡*̡̡ ̴̡ı̴̴̡ ̡̡͡|̲̲̲͡͡͡ ̲▫̲͡ ̲̲̲͡͡π̲̲͡͡ ̲̲͡▫̲̲͡͡ ̲|̡̡̡ ̡ ̴̡ı̴̡̡ *̡͌l̡*̡̡__*̡͌l̡*̡̡ ̴̡ı̴̴̡ ̡̡͡|̲̲̲͡͡͡ ̲▫̲͡ ̲̲̲͡͡π̲̲͡͡ ̲̲͡▫̲̲͡͡ ̲|̡̡̡ ̡ ̴̡ı̴̡̡ *̡͌l̡*̡̡_

                      دیدگاه


                        #12
                        پاسخ : ساده ترین روش تولید موج مربعی 5 ولت 50 هرتز با بسکام؟

                        باید مقادیر رو کمی دستکاری کرد
                        منتها شما اول بگو فرکانس کار رو چند بزاریم تا طبق همون بریم جلو
                        8-12-16؟؟؟

                        دیدگاه


                          #13
                          پاسخ : ساده ترین روش تولید موج مربعی 5 ولت 50 هرتز با بسکام؟

                          بطور مثال برای همون 8 مگ
                          $regfile = "m8def.dat"
                          $crystal = 8000000

                          Config Timer0 = Timer , Prescale = 64
                          Enable Interrupts
                          Enable Ovf0
                          On Timer0 _1ms
                          Timer0 = 130
                          Dim T1 As Byte
                          T1 = 0
                          Start Timer0

                          Ddrd.0 = 1 : Portd.0 = 0

                          Do
                          Wait 1
                          Loop

                          _1ms:
                          Timer0 = 130
                          Incr T1
                          If T1 >= 10 Then
                          Toggle Portd.0
                          T1 = 0
                          End If
                          Return

                          دیدگاه


                            #14
                            پاسخ : ساده ترین روش تولید موج مربعی 5 ولت 50 هرتز با بسکام؟

                            نوشته اصلی توسط -Alone-
                            باید مقادیر رو کمی دستکاری کرد
                            منتها شما اول بگو فرکانس کار رو چند بزاریم تا طبق همون بریم جلو
                            8-12-16؟؟؟
                            سلام دوست عزیز
                            همان 16 فکر کنم خوب باشد ...
                            فرکانس میکرو را میفرمایید یا Prescale تایمر را؟
                            آموزش ساخت دستگاه برف ساز خانگی : https://www.eca.ir/forums/thread55009.html
                            مقاله آموزشی 11 پروژه با AVR و بسکام: https://www.eca.ir/forums/thread31760.html
                            _*̡͌l̡*̡̡ ̴̡ı̴̴̡ ̡̡͡|̲̲̲͡͡͡ ̲▫̲͡ ̲̲̲͡͡π̲̲͡͡ ̲̲͡▫̲̲͡͡ ̲|̡̡̡ ̡ ̴̡ı̴̡̡ *̡͌l̡*̡̡__*̡͌l̡*̡̡ ̴̡ı̴̴̡ ̡̡͡|̲̲̲͡͡͡ ̲▫̲͡ ̲̲̲͡͡π̲̲͡͡ ̲̲͡▫̲̲͡͡ ̲|̡̡̡ ̡ ̴̡ı̴̡̡ *̡͌l̡*̡̡__*̡͌l̡*̡̡ ̴̡ı̴̴̡ ̡̡͡|̲̲̲͡͡͡ ̲▫̲͡ ̲̲̲͡͡π̲̲͡͡ ̲̲͡▫̲̲͡͡ ̲|̡̡̡ ̡ ̴̡ı̴̡̡ *̡͌l̡*̡̡_

                            دیدگاه


                              #15
                              پاسخ : ساده ترین روش تولید موج مربعی 5 ولت 50 هرتز با بسکام؟

                              نوشته اصلی توسط -Alone-
                              باید مقادیر رو کمی دستکاری کرد
                              منتها شما اول بگو فرکانس کار رو چند بزاریم تا طبق همون بریم جلو
                              8-12-16؟؟؟
                              :mrgreen:
                              اشتباه شد
                              آموزش ساخت دستگاه برف ساز خانگی : https://www.eca.ir/forums/thread55009.html
                              مقاله آموزشی 11 پروژه با AVR و بسکام: https://www.eca.ir/forums/thread31760.html
                              _*̡͌l̡*̡̡ ̴̡ı̴̴̡ ̡̡͡|̲̲̲͡͡͡ ̲▫̲͡ ̲̲̲͡͡π̲̲͡͡ ̲̲͡▫̲̲͡͡ ̲|̡̡̡ ̡ ̴̡ı̴̡̡ *̡͌l̡*̡̡__*̡͌l̡*̡̡ ̴̡ı̴̴̡ ̡̡͡|̲̲̲͡͡͡ ̲▫̲͡ ̲̲̲͡͡π̲̲͡͡ ̲̲͡▫̲̲͡͡ ̲|̡̡̡ ̡ ̴̡ı̴̡̡ *̡͌l̡*̡̡__*̡͌l̡*̡̡ ̴̡ı̴̴̡ ̡̡͡|̲̲̲͡͡͡ ̲▫̲͡ ̲̲̲͡͡π̲̲͡͡ ̲̲͡▫̲̲͡͡ ̲|̡̡̡ ̡ ̴̡ı̴̡̡ *̡͌l̡*̡̡_

                              دیدگاه

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