اطلاعیه

Collapse
No announcement yet.

بحث راجع به فیوز بیتهای میکروکنترلر AVR

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

    پاسخ : بحث راجع به فیوز بیتهای میکروکنترلر AVR

    سلام
    ببخشید تمام عکس های صفحه اول متاسفانه پاک شده یه جون مرد پیدا میشه عکس هارو دوباره بزاره؟؟
    ممنون

    دیدگاه


      پاسخ : بحث راجع به فیوز بیتهای میکروکنترلر AVR

      باسلام من روی یک پروژه ی فاصله یاب آلتراسونیک کار می کنم اما هنگامی که ولتاژ تغذیع 5ولت را وصل میکنم فقط روی ال سی دی در سطر پایین مربع های سیاهی دیده می شود در ضمن پتانسیو متر مربوط به تنظیم کنتراست را نیز گذاشتم حالا فکر میکنم که مشکل از تنظیمات فیوز بیت ها وپروگرام میکرو باشه در ادامه من برنامه ی میکرو را با شماتیک می گذارم اگه میشه دوستان راهنمایی کنید در برنامه ریزی وتنظیم فیوز بیت ها که مثلا بعد از تنظیم فیوز بیت ها باید کدوم دکمه را بزنم تا تنظیمات اعمال بشه من از نرم افزار progisp دارم استفاده میکنم
      در ضمن دوستان در سایت هم خیلی در این مورد جست وجو کردم به جایی نرسیدم
      لطفا اگه کسی می تونه کمک کنه که عیب این مدار را که گفتم فقط مربع سیاه روی ال سی دی نشون میده را بر طرف کنم


      'Ultrasonic Range Finder
      '-----------------------
      $regfile = "attiny2313.dat"
      $crystal = 8000000
      Config Lcdpin = Pin , Db4 = Portb.4 , Db5 = Portb.5 , Db6 = _
      Portb.6 , Db7 = Portb.7 , E = Portb.2 , Rs = Portb.0
      Config Lcd = 16 * 2
      Config Timer0 = Timer , Prescale = 8
      Config Timer1 = Timer , Prescale = 8
      Config Int0 = Falling
      Config Pind.3 = Output
      Config Pind.4 = Output
      Config Pind.5 = Output
      Declare Sub Lcd_show(byval Hex_val As Integer)
      Enable Interrupts
      Disable Int0
      Enable Ovf0
      Enable Ovf1
      On Int0 Ex0_rut
      On Ovf0 T0_rut
      On Ovf1 T1_rut
      Clkpr = &H80
      Clkpr = &H00
      Out1 Alias Portd.4
      Out2 Alias Portd.5
      Trigger Alias Portd.3
      Dim Lcd_show_flag As Bit
      Dim Dip_switch As Byte
      Dim Timer_val As Integer
      Cursor Off : Cls : Lcd "start" : Waitms 1000
      Out1 = 0 : Out2 = 0
      '---------------------------
      Do
      Disable Int0
      Timer0 = &HF4
      Timer1 = &H0000
      Trigger = 0
      Waitms 10
      '-----------------
      Start Timer0
      Start Timer1
      Waitus 100
      Stop Timer0
      Out1 = 0
      Out2 = 0
      Trigger = 1
      Waitus 150
      '----------------
      Enable Int0
      Dip_switch = Pind And &H03
      Select Case Dip_switch
      Case 0:
      Waitms 200
      Case 1:
      Waitms 500
      Case 2:
      Waitms 1000
      Case 3:
      Waitms 2000
      End Select
      If Lcd_show_flag = 1 Then
      Call Lcd_show(timer_val)
      Lcd_show_flag = 0
      End If
      Loop
      End
      '---------------------------
      Ex0_rut:
      Timer_val = Timer1
      Waitus 20
      If Pind.2 = 0 Then
      Disable Int0
      Stop Timer1
      Lcd_show_flag = 1
      End If
      Return
      '---------------------------
      T0_rut:
      Timer0 = &HF4
      Out1 = Not Out1
      Out2 = Not Out1
      Return
      '---------------------------
      T1_rut:
      Stop Timer1
      Cls
      Lcd "Over range"
      Return
      '---------------------------
      Sub Lcd_show(byval Hex_val As Integer)
      Dim D As Long
      Dim Distance As Integer
      D = Hex_val / 2
      D = D * 343
      D = D / 10000
      Distance = D
      Cls
      Lcd "Range> " ; Distance ; "cm"
      End Sub

      واین هم لینک شماتیک
      http://www.eca.ir/forum2/index.php?topic=49408.msg283888#msg283888
      :cry2: :angry:

      امام علی (ع)
      بزرگترین گناه «ترس» است
      بزرگترین تفریح «کار» است
      بزرگترین بلا «نومیدی» است
      بزرگترین شجاعت «صبر» است
      بزرگترین استاد «تجربه» است
      بزرگترین اسرار «مرگ» است
      بزرگترین افتخار «ایمان» است
      بزرگترین سود «فرزند نیک» است
      بزرگترین هدیه «گذشت» است
      بزرگترین سرمایه «اعتماد به نفس» است

      دیدگاه


        پاسخ : بحث راجع به فیوز بیتهای میکروکنترلر AVR

        همه فیوز بیتا رو یک کن من progipp داشتم خوب بوده هیچ مشکلی نداره

        دیدگاه


          پاسخ : بحث راجع به فیوز بیتهای میکروکنترلر AVR


          خسته نباشید.
          من فیوز بیت RSTDISBL رو یک کردم، بعدش دیگه هرکاری میکنم پروگرامر میکرو رو نمیشناسه. البته میکرو کار میکنه، فقط پروگرام نمیشه. راه حلی داره؟

          دیدگاه


            پاسخ : بحث راجع به فیوز بیتهای میکروکنترلر AVR

            فکر کنم برای بازگردانی به حالت اول باید از پروگرامر بهتری بهره بگیرید.
            مثلا پروگرامر MKII

            شایدم تکنیک خاصی وجود داشته باشه.
            همواره یادمان باشد:
            1-مردان بزرگ اراده می کنند و مردان کوچک آرزو
            2-افراد بزرگ، همیشه به دنبال ایده های بزرگند و افراد کوچک به دنبال افراد بزرگ
            3-همیشه سعی کن آنقدر کامل باشی که بزرگترین تنبیه تو برای دیگران گرفتن خودت از آنها باشد.

            دیدگاه


              پاسخ : بحث راجع به فیوز بیتهای میکروکنترلر AVR

              نوشته اصلی توسط arash_ees
              خسته نباشید.
              من فیوز بیت RSTDISBL رو یک کردم، بعدش دیگه هرکاری میکنم پروگرامر میکرو رو نمیشناسه. البته میکرو کار میکنه، فقط پروگرام نمیشه. راه حلی داره؟
              فیوز بیت rstdisbl بطور پیش فرض برای progisp یک هست احتمالا" فیوز بیت های cksel 0...1 رو دستکاری کردی که فرکانس کاری میکرو تغییر کرده . روشهای زیادی توی همین page گفته شده . بعضی هاشون جواب میده بعضیا شون هم نه . امتحانشون کن . موفق باشی

              دیدگاه


                پاسخ : بحث راجع به فیوز بیتهای میکروکنترلر AVR

                سلام من میخوام میکروی ATMEGA8 رو روی کریستال داخلی 4Mhz تنظیم کنم باید چیکار کنم _ من از پروگرامر هاتل استفاده میکنم_مرسی
                ندانستن عیب نیست نپرسیدن عیب است.

                دیدگاه


                  پاسخ : بحث راجع به فیوز بیتهای میکروکنترلر AVR

                  سلان حمید جان
                  این عکس هایی که گذاشتی که قابل دیدن نیست چیکار کنیم ؟
                  منبعی چیزی معرفی کنی عالی میشه [move][/move]

                  دیدگاه


                    پاسخ : بحث راجع به فیوز بیتهای میکروکنترلر AVR

                    نوشته اصلی توسط hzohani
                    سلام من میخوام میکروی ATMEGA8 رو روی کریستال داخلی 4Mhz تنظیم کنم باید چیکار کنم _ من از پروگرامر هاتل استفاده میکنم_مرسی
                    کسی نبود کمک کنهههههههههههههههههههههههههه؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟ ؟؟؟؟؟؟؟؟؟؟
                    ندانستن عیب نیست نپرسیدن عیب است.

                    دیدگاه


                      پاسخ : بحث راجع به فیوز بیتهای میکروکنترلر AVR

                      با سلام به همه دوستان عزیزم
                      من بابک هستم و در ترکیه زندگی میکنم . الآن مشغول ساخت یک مدار ساده محافظ یخچال با AVR atmega8 هستم
                      مدار رو روی برد سوراخ دار پیاده کردم اما به دلیل آشنایی کم با میکروکنترلر ها در پروگرام کردن میکرو مشکل دارم . که احتمالا از تنظیم فیوز بیتها هست . می خواستم اگر براتوم ممکنه کمک کنید تا این پروژه رو انجام بدم چون از نظر شغلی برام مهمه . ممنون ضمنا با توجه به سفارش شرکت سازنده پروگرامر با نرم افزار AvrOspII_547 پروگرام میکنم .
                      کد رو در زیر گذاشتم که با استفاده از baskom avr تبدیل به فایل هگز کردم و با نرم افزار AvrOspII پروگرام کردم .
                      البته این رو هم بگم که آشنایی من با الکترونیک کاملا تجربی هست در عوض روم خیلی زیاده چیکار کنم عاشق الکترونیکم .

                      $regfile = "M8def.dat"
                      $crystal = 1000000
                      Config Lcd = 16 * 2
                      Config Lcdpin = Pin , Db4 = Portb.2 , Db5 = Portb.3 , Db6 = Portb.4 , Db7 = Portb.5 , E = Portb.1 , Rs = Portb.0
                      Config Adc = Single , Prescaler = Auto , Reference = Avcc
                      Config Clock = Soft , Gosub = Sectic
                      Config Portd = Output

                      Enable Interrupts
                      Enable Timer2

                      '-----------------------------------------------

                      Dim B As Word , Volt As Single , Seco As Byte , Lock As Bit , Fuse1 As Bit , Key1 As Bit , Key2 As Bit , Alarm As Byte
                      Cursor Off
                      Cls
                      Rele Alias Portd.0


                      Fuse1 = 1


                      Do
                      '-----------------------------------------------
                      Start Adc
                      B = Getadc(0)
                      Stop Adc
                      Waitms 100
                      Volt = B * 0.57

                      Home
                      Lcd "Volt = " ; Fusing(volt , "##.#&quot ; " [v] "
                      Lowerline
                      Lcd Seco ; " "


                      '----------------------------------------------- down

                      If Volt < 170 Then
                      Set Portd.1
                      Reset Portd.2
                      Reset Portd.3
                      Reset Rele
                      Lock = 0
                      Key1 = 1
                      Key2 = 0
                      End If

                      '----------------------------------------------- up

                      If Volt > 250 Then
                      Reset Portd.1
                      Reset Portd.2
                      Set Portd.3
                      Reset Rele
                      Lock = 0
                      Key1 = 0
                      Key2 = 1
                      Seco = 0
                      End If
                      '-----------------------------------------------normal
                      If Fuse1 = 1 Then
                      If Volt > 170 And Volt < 250 Then
                      Lock = 1
                      If Seco > 30 Then
                      Fuse1 = 0
                      Seco = 0
                      Lock = 0
                      Key1 = 0
                      Key2 = 0
                      Reset Portd.1
                      Set Portd.2
                      Reset Portd.3
                      Set Rele

                      End If
                      End If
                      End If
                      '******************************************** **

                      If Fuse1 = 0 Then
                      If Volt > 180 And Volt < 245 Then
                      Fuse1 = 0
                      Lock = 0
                      Reset Portd.1
                      Set Portd.2
                      Reset Portd.3
                      Set Rele
                      End If
                      End If
                      '-----------------------------------------------
                      Loop
                      End 'end program


                      Sectic:
                      If Lock = 1 Then
                      Incr Seco
                      If Key1 = 1 Then Toggle Portd.1
                      If Key2 = 1 Then Toggle Portd.3

                      Alarm = Seco Mod 2
                      If Alarm = 0 Then
                      Sound Portd.4 , 500 , 50
                      End If
                      If Alarm = 1 Then Reset Portd.4

                      End If
                      Return
                      در آخر سه چیز باقی خواهد ماند :
                      ایمان - امید و محبت و برترینشان محبت است .

                      دیدگاه


                        پاسخ : بحث راجع به فیوز بیتهای میکروکنترلر AVR

                        مدار رو روی برد سوراخ دار پیاده کردم اما به دلیل آشنایی کم با میکروکنترلر ها در پروگرام کردن میکرو مشکل دارم .
                        که با استفاده از baskom avr تبدیل به فایل هگز کردم و با نرم افزار AvrOspII پروگرام کردم .
                        شما که پروگرام کردی . الان دقیقا مشکل چی هست؟

                        دیدگاه


                          پاسخ : بحث راجع به فیوز بیتهای میکروکنترلر AVR

                          سلام دوستان
                          از مطالب مفید و رزشمندی که گذاشتین واقعا ممنونم.
                          در مورد قفل کردن میکرو یه برنامه هست بنام PROGISP که مثل بسکام و برنامه های دیگه است.موقع پروگرم کردن یه گزینه داره که اگه تیکشو بزنی میکرو قفل میشه .اینم بگم که دیگه نمیتونی میکرو رو بعدار قفل کردن باز کنی.حداقل از طریق این نرم افزار نمیشه.
                          فیوزبیتها رو هم میشه خیلی راحت تنظیم کرد.

                          دیدگاه


                            پاسخ : بحث راجع به فیوز بیتهای میکروکنترلر AVR

                            نوشته اصلی توسط سایمون
                            شما که پروگرام کردی . الان دقیقا مشکل چی هست؟
                            مشکل اینه که مدار کار نمیکنه و فقط یک خط سیاه بر روی ال سی دی نشون داده میشه . فکر کنم اصلا آی سی پروگرام نشده و ف یا فیوز بیت ها مشکل دارن . با سپاس از پیگیری شما
                            در آخر سه چیز باقی خواهد ماند :
                            ایمان - امید و محبت و برترینشان محبت است .

                            دیدگاه


                              پاسخ : بحث راجع به فیوز بیتهای میکروکنترلر AVR

                              سلام آقا حمید ممنون مرسی
                              موفق وسلامت باشی

                              دیدگاه


                                پاسخ : بحث راجع به فیوز بیتهای میکروکنترلر AVR

                                نوشته اصلی توسط paadsystem
                                مشکل اینه که مدار کار نمیکنه و فقط یک خط سیاه بر روی ال سی دی نشون داده میشه . فکر کنم اصلا آی سی پروگرام نشده و ف یا فیوز بیت ها مشکل دارن . با سپاس از پیگیری شما
                                سلام دوست عزیز احتمالا به پورت c متصل کردید
                                فیوزبیت jtagenرو غیر فعال کنید

                                دیدگاه

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