اطلاعیه

Collapse
No announcement yet.

چگونه تمام پایه های Tiny13 را PWM کنم؟ (بسکام)

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

    چگونه تمام پایه های Tiny13 را PWM کنم؟ (بسکام)

    سلام دوستان و اساتید گرامی , با تبریک سال نو و آرزوی موفقیت تمام دوستان در سال 95....
    یک سوال از دوستان داشتم :
    میکروی ATTiny13 به صورت معمولی دارای دو پایه PWM میباشد....
    حال اگر بخوام تمام پایه های آن را (6 پایه) در موود PWM استفاده کنم (در کامپایلر بسکام)
    به این صورت که ابتدا در پایه اول یک LED به آرامی روشن بشه و به مدت 10 ثانیه روشن بمونه و بعد به آرامی
    خاموش بشه و در زمان خاموش شدن پایه دومی میکرو LED دوم را به آرامی روشن کنه و به مدل 10 ثانیه روشن بمونه و بعد
    به آرامی خاموش بشه و در همان زمان LED پایه سوم به آرومی روشن بشه..... تا LED پایه ششم که خاوش شد بعد LED
    پایه اول دباره به آرومی روشن بشه.....
    دوستان میتونن من را در نوشتن این برنامه یاری کنند؟ با تشکر از دوستانی که زحمت میکشند و من را در این زمینه راهنمایی میکنند... :
    wink:
    آموزش ساخت دستگاه برف ساز خانگی : https://www.eca.ir/forums/thread55009.html
    مقاله آموزشی 11 پروژه با AVR و بسکام: https://www.eca.ir/forums/thread31760.html
    _*̡͌l̡*̡̡ ̴̡ı̴̴̡ ̡̡͡|̲̲̲͡͡͡ ̲▫̲͡ ̲̲̲͡͡π̲̲͡͡ ̲̲͡▫̲̲͡͡ ̲|̡̡̡ ̡ ̴̡ı̴̡̡ *̡͌l̡*̡̡__*̡͌l̡*̡̡ ̴̡ı̴̴̡ ̡̡͡|̲̲̲͡͡͡ ̲▫̲͡ ̲̲̲͡͡π̲̲͡͡ ̲̲͡▫̲̲͡͡ ̲|̡̡̡ ̡ ̴̡ı̴̡̡ *̡͌l̡*̡̡__*̡͌l̡*̡̡ ̴̡ı̴̴̡ ̡̡͡|̲̲̲͡͡͡ ̲▫̲͡ ̲̲̲͡͡π̲̲͡͡ ̲̲͡▫̲̲͡͡ ̲|̡̡̡ ̡ ̴̡ı̴̡̡ *̡͌l̡*̡̡_

    #2
    پاسخ : چگونه تمام پایه های Tiny13 را PWM کنم؟ (بسکام)

    نیاز نیست همه پایه ها pwm بشن . شما میتونی از یک خروجی pwm استفاده کنی و از بقیه پینها برای درایو led یا خروجی مورد نظر استفاده کنی .
    برنامه خاصی نمیخواد - نهایت 10خط

    دیدگاه


      #3
      پاسخ : چگونه تمام پایه های Tiny13 را PWM کنم؟ (بسکام)

      نوشته اصلی توسط saeid salehi
      نیاز نیست همه پایه ها pwm بشن . شما میتونی از یک خروجی pwm استفاده کنی و از بقیه پینها برای درایو led یا خروجی مورد نظر استفاده کنی .
      برنامه خاصی نمیخواد - نهایت 10خط
      سلام دوست عزیز
      ممنون برای راهنمایی خوبتون
      میتونید یک نمونه برنامه قرار دهید تا دقیقا متوجه بشم که به چه صورت باید عمل کرد
      اگر زحمتی نیست و برنامه ساده است , در غیر این صورت که مزاحمتون نمیشم....
      آموزش ساخت دستگاه برف ساز خانگی : https://www.eca.ir/forums/thread55009.html
      مقاله آموزشی 11 پروژه با AVR و بسکام: https://www.eca.ir/forums/thread31760.html
      _*̡͌l̡*̡̡ ̴̡ı̴̴̡ ̡̡͡|̲̲̲͡͡͡ ̲▫̲͡ ̲̲̲͡͡π̲̲͡͡ ̲̲͡▫̲̲͡͡ ̲|̡̡̡ ̡ ̴̡ı̴̡̡ *̡͌l̡*̡̡__*̡͌l̡*̡̡ ̴̡ı̴̴̡ ̡̡͡|̲̲̲͡͡͡ ̲▫̲͡ ̲̲̲͡͡π̲̲͡͡ ̲̲͡▫̲̲͡͡ ̲|̡̡̡ ̡ ̴̡ı̴̡̡ *̡͌l̡*̡̡__*̡͌l̡*̡̡ ̴̡ı̴̴̡ ̡̡͡|̲̲̲͡͡͡ ̲▫̲͡ ̲̲̲͡͡π̲̲͡͡ ̲̲͡▫̲̲͡͡ ̲|̡̡̡ ̡ ̴̡ı̴̡̡ *̡͌l̡*̡̡_

      دیدگاه


        #4
        پاسخ : چگونه تمام پایه های Tiny13 را PWM کنم؟ (بسکام)

        ببین دوست عزیز اولا بسکام خودش help دارهو با ذکر مثال توضیح داده.
        واسه کار با تینی13 به این نکته باید دقت داشته باشی که چون sram کمی داره باید مقادیر استک و .... را واسش تعریف کنی و عدد کوچکی متناسب با برنامه بهش بدی.adc را که کانفیگ کنی از شماره 0 تا n امین adc میتونی هرکدوم را که خواستی استفاده کنی.
        این یه برنامه ست که یه ولتاژ را چک میکنه و در صورت کمتر یا بیشتر بودن از یه مقداری یه خروجی را ست میکنه.
        واسه نمونه برداری بهتر من اینجا adc را تو یه تایمر گذاشتم و بعد از چند بار نمونه برداری میانگین گرفتم تا عدد بدست اومده زیاد نوسان نداشته باشه و لحظه ای نباشه.
        $regfile = "attiny13.dat"
        $crystal = 9600000
        $hwstack = 16
        $swstack = 8
        $framesize = 8
        Dim Count As Byte , V As Word , Vol2 As Word , Vol2_average As Single
        Config Portb = &B00001111
        Config Adc = Single , Prescaler = Auto
        Start Adc
        Config Timer0 = Timer , Prescale = 256
        Enable Interrupts
        Enable Timer0
        On Timer0 64ms
        Start Timer0

        Do


        Loop

        End

        64ms:
        Stop Timer0
        Incr Count
        (V = Getadc(2
        Vol2 = V + Vol2

        Start Timer0
        If Count = 15 Then
        Count = 0
        Vol2_average = Vol2 / 511.5

        Select Case Vol2_average

        Case Is < 14.5
        Reset Portb.1
        Set Portb.3

        Case Is =< 17
        Set Portb.3
        Waitms 120
        Reset Portb.3

        Case Is > 17
        Set Portb.1

        End Select


        If Vol2_average > 22 Then Reset Portb.0

        If Vol2_average < 18.3 Then Set Portb.0

        Vol2 = 0


        End If
        Return
        الهم صل علی محمد و آل محمد و عجل فرجهم

        دیدگاه


          #5
          پاسخ : چگونه تمام پایه های Tiny13 را PWM کنم؟ (بسکام)

          دستتون درد نکنه , خیلی لطف کردید دوست عزیز , ببخشید من دقیقا متوجه نشدم
          با ADC به چه صورت باید PWM بر روی پایه های میکرو ATTiny13 ایجاد کنم و از این برنام
          به چه صورت باید برای مدارم بهره بگیرم .... :redface:


          یک توضیح کوتاه در مورد کاری که میخوام بکنم برای شما و دوستان بدم , انگار نتونستم دقیقا منظور
          خودم را به دوستان برسونم :redface: ......
          ببینید دوست عزیز , در داخل حیاط خونه یک حباب کوچک لامپ قرار دارد که سالهاست بی کار مونده و
          هیچ سرپیچ و لامپی ندارد.... به این فکر افتادم که چند رنگ LED پنج میلیمتری داخلش قرار دهم و یک مدار
          فوتوسل مانند هم برای آن درست کنم که در شب روشن و در روز خاموش شوند , ابتدا به این فکر افتادم که هر
          LED به صورت معمولی روشن و خاموش شود (مثلا اول LED سبز روشن و بعد از 10 ثانیه خاموش شود و بعد
          LED قرمز روشن و بعد 10 ثانیه خاموش شود ..... و به این صورت 4 تا 6 رنگ را داشته باشم ) و مدار را هم ساختم
          و کار هم میکند.... اما دیدم زیاد جالب از آب در نیومد و تصمیم گرفتم که روشن و خاموش شدن LED ها کمی با دیلی
          و به صورت منحنی افزایشی و کاهشی انجام شود که فقط با PWM میتوان این کار را کرد.....


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

          دیدگاه


            #6
            پاسخ : چگونه تمام پایه های Tiny13 را PWM کنم؟ (بسکام)

            سلام
            به لینک زیر سر زدید؟

            http://www.eca.ir/forum2/index.php?topic=90246.msg648834#msg648834

            دیدگاه


              #7
              پاسخ : چگونه تمام پایه های Tiny13 را PWM کنم؟ (بسکام)

              نوشته اصلی توسط SINA1359
              دستتون درد نکنه , خیلی لطف کردید دوست عزیز , ببخشید من دقیقا متوجه نشدم
              با ADC به چه صورت باید PWM بر روی پایه های میکرو ATTiny13 ایجاد کنم و از این برنام
              به چه صورت باید برای مدارم بهره بگیرم .... :redface:


              یک توضیح کوتاه در مورد کاری که میخوام بکنم برای شما و دوستان بدم , انگار نتونستم دقیقا منظور
              خودم را به دوستان برسونم :redface: ......
              ببینید دوست عزیز , در داخل حیاط خونه یک حباب کوچک لامپ قرار دارد که سالهاست بی کار مونده و
              هیچ سرپیچ و لامپی ندارد.... به این فکر افتادم که چند رنگ LED پنج میلیمتری داخلش قرار دهم و یک مدار
              فوتوسل مانند هم برای آن درست کنم که در شب روشن و در روز خاموش شوند , ابتدا به این فکر افتادم که هر
              LED به صورت معمولی روشن و خاموش شود (مثلا اول LED سبز روشن و بعد از 10 ثانیه خاموش شود و بعد
              LED قرمز روشن و بعد 10 ثانیه خاموش شود ..... و به این صورت 4 تا 6 رنگ را داشته باشم ) و مدار را هم ساختم
              و کار هم میکند.... اما دیدم زیاد جالب از آب در نیومد و تصمیم گرفتم که روشن و خاموش شدن LED ها کمی با دیلی
              و به صورت منحنی افزایشی و کاهشی انجام شود که فقط با PWM میتوان این کار را کرد.....
              عععععغعه! دوست عزیز من اصلا حواسم نیس! :redface:
              تینی13 اصلا 2تا pwm داره.واسه کانفیگشم این دستورا فکر کنم باید بنویسی البته Prescale را هرعددی که مناسب باشه مینویسی:
              Config Timer0 = Pwm , Prescale = 256
              تایمر تینی 13 هم خیلی دقیق نیست.مثلا در یک ساعت تا چند دقیقه کم و زیاد میشه و متاسفانه کریستال خارجی هم بهش وصل نمیشه ولی کلاک خارجی میشه.
              الهم صل علی محمد و آل محمد و عجل فرجهم

              دیدگاه


                #8
                پاسخ : چگونه تمام پایه های Tiny13 را PWM کنم؟ (بسکام)

                نوشته اصلی توسط SINA1359
                میتونید یک نمونه برنامه قرار دهید تا دقیقا متوجه بشم که به چه صورت باید عمل کرد
                اگر زحمتی نیست و برنامه ساده است , در غیر این صورت که مزاحمتون نمیشم.... [/b]
                شما مراحمی مهندس
                بیسیک کم بلدم . با C نوشتم و روی MEGA16 عملا امتحان کردم و جواب داد . تو لینک پایین میتونید ببینید .
                http://uplod.ir/uli5ku2vk7c4/20160327110.MP4.htm
                اگه مطابق با خواسته شما بود سورس برنامه و شماتیک براتون اپلود کنم .

                دیدگاه


                  #9
                  پاسخ : چگونه تمام پایه های Tiny13 را PWM کنم؟ (بسکام)

                  سلام دوست عزیز
                  خیلی خوب عمل میکنه , زحمت میکشید .....
                  فقط من با زبان C کار نکردم , اگر زحمت بکشید و برای
                  تاینی 13 برنامه را به صورت کامپایل شده قرار دهید ,
                  خیلی خیلی ممنون میشم (فایل Hex) برای من کفایت میکند
                  باز هم ممنون برای زحمتی که میکشید...

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

                  دیدگاه


                    #10
                    پاسخ : چگونه تمام پایه های Tiny13 را PWM کنم؟ (بسکام)

                    نوشته اصلی توسط SINA1359
                    فقط من با زبان C کار نکردم , اگر زحمت بکشید و برای
                    تاینی 13 برنامه را به صورت کامپایل شده قرار دهید ,
                    خیلی خیلی ممنون میشم (فایل Hex) برای من کفایت میکند
                    tiny13 شش پین قابل استفاده داره که یه پایه برای pwm و 5پایه دیگه برای خروجی led راه اندازی میشه .
                    در اسرع وقت فایل هگز و شماتیک رو براتون upload میکنم.

                    دیدگاه


                      #11
                      پاسخ : چگونه تمام پایه های Tiny13 را PWM کنم؟ (بسکام)

                      سلام
                      اقا سینا این لینک فایل هگز و شماتیک خدمت شما .
                      http://uplod.ir/zbnfugnp5wc6/Tiny13_pwm.rar.htm
                      این مدارو روی بردبرد عملا بستم و جواب گرفتم (عکسشو براتون گذاشتم).
                      یه مطلب در مورد فیوزبیت هست که برای یاداوری خدمتتون بگم - فیوزبیت RSTDISBL که عکسشو تو فایل زیپ گذاشتم حتما باید "تیک"ش برداشته باشه تا پایه RESET غیر فعال و بعنوان خروجی معمولی ازش استفاده بشه .
                      موفق باشید

                      دیدگاه


                        #12
                        پاسخ : چگونه تمام پایه های Tiny13 را PWM کنم؟ (بسکام)

                        نوشته اصلی توسط saeid salehi
                        سلام
                        اقا سینا این لینک فایل هگز و شماتیک خدمت شما .
                        http://uplod.ir/zbnfugnp5wc6/Tiny13_pwm.rar.htm
                        این مدارو روی بردبرد عملا بستم و جواب گرفتم (عکسشو براتون گذاشتم).
                        یه مطلب در مورد فیوزبیت هست که برای یاداوری خدمتتون بگم - فیوزبیت RSTDISBL که عکسشو تو فایل زیپ گذاشتم حتما باید "تیک"ش برداشته باشه تا پایه RESET غیر فعال و بعنوان خروجی معمولی ازش استفاده بشه .
                        موفق باشید
                        بینهایت ممنون آقا سعید
                        ببخشید باعث زحمتتون شدم , انشا... روزی بتونم جبران کنم :redface:
                        آموزش ساخت دستگاه برف ساز خانگی : https://www.eca.ir/forums/thread55009.html
                        مقاله آموزشی 11 پروژه با AVR و بسکام: https://www.eca.ir/forums/thread31760.html
                        _*̡͌l̡*̡̡ ̴̡ı̴̴̡ ̡̡͡|̲̲̲͡͡͡ ̲▫̲͡ ̲̲̲͡͡π̲̲͡͡ ̲̲͡▫̲̲͡͡ ̲|̡̡̡ ̡ ̴̡ı̴̡̡ *̡͌l̡*̡̡__*̡͌l̡*̡̡ ̴̡ı̴̴̡ ̡̡͡|̲̲̲͡͡͡ ̲▫̲͡ ̲̲̲͡͡π̲̲͡͡ ̲̲͡▫̲̲͡͡ ̲|̡̡̡ ̡ ̴̡ı̴̡̡ *̡͌l̡*̡̡__*̡͌l̡*̡̡ ̴̡ı̴̴̡ ̡̡͡|̲̲̲͡͡͡ ̲▫̲͡ ̲̲̲͡͡π̲̲͡͡ ̲̲͡▫̲̲͡͡ ̲|̡̡̡ ̡ ̴̡ı̴̡̡ *̡͌l̡*̡̡_

                        دیدگاه


                          #13
                          پاسخ : چگونه تمام پایه های Tiny13 را PWM کنم؟ (بسکام)

                          دوست عزیز توجه داشته باشید که اگه پایه ریست را غیر فعال کنید فقط با پروگرمر های ولتاژ دیگه میشه میکرو را پروگرام کرد.اگه از برنامه مطمئن هستید اول پروگرامش کن بعد فیوزبیت را تغییر بده.
                          الهم صل علی محمد و آل محمد و عجل فرجهم

                          دیدگاه


                            #14
                            پاسخ : چگونه تمام پایه های Tiny13 را PWM کنم؟ (بسکام)

                            اقای shahpoori درست میگن . برای اطمینان از کارکرد صحیح برنامه اول بصورت ازمایشی تست کنید و بعد از اطمینان فیوز بیت رو تغییر بدید .
                            البته من بصورت عملی با tiny13 تست کردم و جواب گرفتم و الان داره کار میکنه .
                            نوشته اصلی توسط shahpoori
                            اگه پایه ریست را غیر فعال کنید فقط با پروگرمر های ولتاژ دیگه میشه میکرو را پروگرام کرد.
                            من یه mega8 داشتم که فیوزبیتشو تغییر دادم و دیگه پروگرام نمیشه . الان میخوام پروگرام کنم باید چکار کنم .
                            اقای shahpoori بیشتر توضیح میدید که باید چکار کنم . متوجه منظورتون نشدم که "ولتاژ دیگه" یعنی چی .
                            خیلی ممنون

                            اضافه شده در تاریخ :
                            این لینکی که الان اپلود کردم برای تایم های تاخیر 5 - 10 - 15 و 20 ثانیه هست .
                            http://uplod.ir/uf0gu2v3axg9/HEX.rar.htm


                            تو ارسال شماره (10) برای تاخیر یک ثانیه بود :NO:
                            نوشته اصلی توسط saeid salehi
                            سلام
                            اقا سینا این لینک فایل هگز و شماتیک خدمت شما .
                            http://uplod.ir/zbnfugnp5wc6/Tiny13_pwm.rar.htm
                            این مدارو روی بردبرد عملا بستم و جواب گرفتم (عکسشو براتون گذاشتم).
                            یه مطلب در مورد فیوزبیت هست که برای یاداوری خدمتتون بگم - فیوزبیت RSTDISBL که عکسشو تو فایل زیپ گذاشتم حتما باید "تیک"ش برداشته باشه تا پایه RESET غیر فعال و بعنوان خروجی معمولی ازش استفاده بشه .
                            موفق باشید

                            دیدگاه


                              #15
                              پاسخ : چگونه تمام پایه های Tiny13 را PWM کنم؟ (بسکام)

                              پروگرامر hi voltage منظورمه.با ولتاژ 12 ولت کار میکنه و میشه باش فیوزبیتها را برگرداند.
                              البته من مدار "دکتر فیوز بیت" را درست کردم.خودش فیوزبیتهای میکرو را به حالت دیفالت کارخانه بر میگردونه و با 12 ولت هم کار میکنه.
                              اینه:

                              http://trex.rozblog.com/post/41
                              در مورد اون مگا 8 کدوم فیوزبیت را تغییر دادید؟
                              الهم صل علی محمد و آل محمد و عجل فرجهم

                              دیدگاه

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