اطلاعیه

Collapse
No announcement yet.

مشکل پروگرامر Multi AVR Programmer یا USBasp پروگرامر در لینوکس

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

    مشکل پروگرامر Multi AVR Programmer یا USBasp پروگرامر در لینوکس

    با سلام من این پروگرامر را خریدم





    که در ویندوز راحت باهاش کار میکنم اما سیستم عامل من لینوکسه و طی اطلاعاتی که گرفتم نقشه این مدار متن باز بوده و در واقع همون USBasp هست و دستورات زیر را ببینید:
    کد:
    mrg@mrg-desktop ~/test $ sudo lsusb
    Bus 002 Device 003: ID 16c0:05dc VOTI USBasp AVR Programmer
    Bus 002 Device 002: ID 09da:000a A4 Tech Co., Ltd Port Mouse
    Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
    Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
    همانطور که ملاحظه میکنید:
    VOTI USBasp AVR Programmer

    که خواستم توسط نرم افزار avrdude مثلا اونا پاک کنم ولی خطای زیر را میگیرم:
    کد:
    mrg@mrg-desktop ~/test $ sudo avrdude -p atmega16 -P usb -c usbasp -e -v
    
    avrdude: Version 5.10, compiled on Mar 23 2010 at 15:03:00
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
         Copyright (c) 2007-2009 Joerg Wunsch
    
         System wide configuration file is "/etc/avrdude.conf"
         User configuration file is "/home/mrg/.avrduderc"
         User configuration file does not exist or is not a regular file, skipping
    
         Using Port          : usb
         Using Programmer       : usbasp
    avrdude: Warning: cannot query manufacturer for device: error sending control message: Timer expired
    avrdude: error: could not find USB device "USBasp" with vid=0x16c0 pid=0x5dc
    که میگه به آدرس vid=0x16c0 pid=0x5dc هیچ چیزی پیدا نشد در صورتی که در lsusb میزنه
    کد:
    Bus 002 Device 003: ID 16c0:05dc VOTI USBasp AVR Programmer
    و همچنین چنین آدرسی هم وجود داره یعنی طبق اطلاعات خط بالا
    کد:
    mrg@mrg-desktop ~/test $ ls -l /dev/bus/usb/002/003
    crw-rw---- 1 root users 189, 130 2011-01-21 17:57 /dev/bus/usb/002/003
    اینترنتو زیرا رو کردم
    این لینک ها را هم کامل انجام دادم
    http://forums.obdev.at/viewtopic.php?p=4436
    http://www.eca.ir/forum2/index.php?topic=41221.0

    ولی بازم خطای بالا را میده
    روانمو بهم ریخته
    :cry2:

    #2
    پاسخ : مشکل پروگرامر Multi AVR Programmer یا USBasp پروگرامر در لینوکس

    USBlib را نصب فرمودید؟
    از چه توزیعی استفاده مینمایید؟

    دیدگاه


      #3
      پاسخ : مشکل پروگرامر Multi AVR Programmer یا USBasp پروگرامر در لینوکس

      احتمالا مشکل بخاطر ورژن avrdude است، از ورژن 5.5 استفاده کنید.
      برای کامپایل از کد منبع از اینجا دانلودش کنید.
      فرمت deb. را نیز میآ‌توانید از اینجا دریافت کنید.
      چگونه هوشمندانه بپرسیم

      دیدگاه


        #4
        پاسخ : مشکل پروگرامر Multi AVR Programmer یا USBasp پروگرامر در لینوکس

        نوشته اصلی توسط el-hobby
        USBlib را نصب فرمودید؟
        از چه توزیعی استفاده مینمایید؟
        بله نصبه
        ابونتو

        دیدگاه


          #5
          پاسخ : مشکل پروگرامر Multi AVR Programmer یا USBasp پروگرامر در لینوکس

          نوشته اصلی توسط حمید رستمی
          احتمالا مشکل بخاطر ورژن avrdude است، از ورژن 5.5 استفاده کنید.
          برای کامپایل از کد منبع از اینجا دانلودش کنید.
          فرمت deb. را نیز میآ‌توانید از اینجا دریافت کنید.

          سلام من حتی آخرین ورژنش را کامپایل کردم. ورژنی که شما داده بودید را هم کامپایل کردم و کار نداد. مشکل اینجاست که برنامه نمیتونه وصل بشه به پورت یو اس بی

          دیدگاه


            #6
            پاسخ : مشکل پروگرامر Multi AVR Programmer یا USBasp پروگرامر در لینوکس

            نوشته اصلی توسط bugattiveyron

            سلام من حتی آخرین ورژنش را کامپایل کردم. ورژنی که شما داده بودید را هم کامپایل کردم و کار نداد. مشکل اینجاست که برنامه نمیتونه وصل بشه به پورت یو اس بی
            این مشکلی است که بعضا دیدم با ورژنهای جدید avrdude پیش میاد، بخاطر همین ورژن 5.5 رو پیشنهاد کردم.
            مطمئنید بعد از کامپایل و نصب ورژن avrdude 5.5، موقع اجرا شدن همین ورژن اجرا میآ‌شود؟ (خروجی avrdude -v را بررسی کنید).
            چگونه هوشمندانه بپرسیم

            دیدگاه


              #7
              پاسخ : مشکل پروگرامر Multi AVR Programmer یا USBasp پروگرامر در لینوکس

              سلام همانطور که ملاحظه میکنید ورژن ۵.۵ هست. دقیقا همین پکیجی که لینک دادید شما و اینم خروجیه من
              کد:
              mrg-desktop mrg # avrdude -c usbasp -p m16 -e -v
              
              avrdude: Version 5.5, compiled on Jan 25 2011 at 10:56:15
                   Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
              
                   System wide configuration file is "/usr/local/etc/avrdude.conf"
                   User configuration file is "/root/.avrduderc"
              
                   Using Port      : /dev/parport0
                   Using Programmer   : usbasp
              avrdude: error: could not find USB device "USBasp" with vid=0x16c0 pid=0x5dc
              یه سوال برای شما قسمت پورت یو اس بی را چی میزنه؟
              امکانش هست خروجی دستور بالا و lsusb را اینجا بگذارید؟

              دیدگاه


                #8
                پاسخ : مشکل پروگرامر Multi AVR Programmer یا USBasp پروگرامر در لینوکس

                نوشته اصلی توسط bugattiveyron
                سلام همانطور که ملاحظه میکنید ورژن ۵.۵ هست. دقیقا همین پکیجی که لینک دادید شما و اینم خروجیه من
                کد:
                mrg-desktop mrg # avrdude -c usbasp -p m16 -e -v
                
                avrdude: Version 5.5, compiled on Jan 25 2011 at 10:56:15
                     Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
                
                     System wide configuration file is "/usr/local/etc/avrdude.conf"
                     User configuration file is "/root/.avrduderc"
                
                     Using Port      : /dev/parport0
                     Using Programmer   : usbasp
                avrdude: error: could not find USB device "USBasp" with vid=0x16c0 pid=0x5dc
                یه سوال برای شما قسمت پورت یو اس بی را چی میزنه؟
                امکانش هست خروجی دستور بالا و lsusb را اینجا بگذارید؟
                خروجی avrdude و lsusb :
                http://paste.pocoo.org/show/326913

                یکبار هم با فایل پیکرهآ‌بندی که ضمیمه کردم آزمایش کنید،
                فایل رو به اسم avrdude.conf در مسیر System wide configuration یا User configuration ذخیره کنید.
                فایل های پیوست شده
                چگونه هوشمندانه بپرسیم

                دیدگاه


                  #9
                  پاسخ : مشکل پروگرامر Multi AVR Programmer یا USBasp پروگرامر در لینوکس

                  نوشته اصلی توسط حمید رستمی
                  خروجی avrdude و lsusb :
                  http://paste.pocoo.org/show/326913

                  یکبار هم با فایل پیکرهآ‌بندی که ضمیمه کردم آزمایش کنید،
                  فایل رو به اسم avrdude.conf در مسیر System wide configuration یا User configuration ذخیره کنید.
                  کانفیگ شما را گذاشتم
                  خروجی من این هست که فرق میکنه. پروگرامره شما ظاهرا ماله همون شرکته هست ولی ماله من فرق داره قسمت سازندش
                  http://codepad.org/6KfdJLEI
                  ولی ماله شما ماله همون شرکتی هست که اسمش تو فایل کانفیگ avrdude هم اومده
                  من همون ارور قبلی را میگیرم

                  دیدگاه


                    #10
                    پاسخ : مشکل پروگرامر Multi AVR Programmer یا USBasp پروگرامر در لینوکس

                    نوشته اصلی توسط bugattiveyron
                    کانفیگ شما را گذاشتم
                    خروجی من این هست که فرق میکنه. پروگرامره شما ظاهرا ماله همون شرکته هست ولی ماله من فرق داره قسمت سازندش
                    http://codepad.org/6KfdJLEI
                    ولی ماله شما ماله همون شرکتی هست که اسمش تو فایل کانفیگ avrdude هم اومده
                    من همون ارور قبلی را میگیرم
                    خب پس مشکل کاملا مشخص شد که از iProduct هست.
                    avrdude دنبال رشتهٔ USBasp برای این فیلد میگرده ولی به ECA AVR Programmer برمیخوره!
                    شما میتونید سورس کد اصلی رو از وبسایت پروژهٔ Usbasp دانلود و بر روی میکروکنترلر پروگرام کنید.
                    http://www.fischl.de/usbasp
                    چگونه هوشمندانه بپرسیم

                    دیدگاه


                      #11
                      پاسخ : مشکل پروگرامر Multi AVR Programmer یا USBasp پروگرامر در لینوکس

                      راه دیگری هم برای حل این مشکل به ذهنم رسید که ویرایش سورسآ‌کد avrdude است.
                      در فایلهای سورس این برنامه فایلی بنام usbasp.c وجود دارد که درون آن تابعی بنام usbasp_open قرار داد که شامل قطعه کد زیر است:
                      کد PHP:
                      static int usbasp_open(PROGRAMMER pgmchar port)
                      {
                       
                      usb_init();

                       if (
                      usbOpenDevice(&PDATA(pgm)->usbhandleUSBASP_SHARED_VID, "www.fischl.de",
                                
                      USBASP_SHARED_PID, "USBasp") != 0) {

                        
                      /* check if device with old VID/PID is available */
                        
                      if (usbOpenDevice(&PDATA(pgm)->usbhandleUSBASP_OLD_VID, "www.fischl.de",
                                 
                      USBASP_OLD_PID, "USBasp") != 0) {

                         
                      /* no USBasp found */
                         
                      fprintf(stderr,
                             &
                      quot;%serrorcould not find USB device "
                             &
                      quot;\"USBasp\&quotwith vid=0x%x pid=0x%x\n",
                              
                      prognameUSBASP_SHARED_VIDUSBASP_SHARED_PID);
                         exit(
                      1);

                        } else {

                         
                      /* found USBasp with old IDs */
                         
                      fprintf(stderr,
                             &
                      quot;%sWarningFound USB device \"USBasp\&quotwith "
                             &
                      quot;old VID/PIDPlease update firmware of USBasp!\n",
                              
                      progname);
                        }
                       }

                       return 
                      0;



                      کافیست کد رو به اینصورت تغییر بدید و دوباره اونو کامپایل و نصب کنید :
                      کد PHP:
                      static int usbasp_open(PROGRAMMER pgmchar port)
                      {
                       
                      usb_init();

                       if (
                      usbOpenDevice(&PDATA(pgm)->usbhandleUSBASP_SHARED_VID, "www.eca.ir",
                                
                      USBASP_SHARED_PID, "ECA AVR Programmer") != 0) {

                        
                      /* check if device with old VID/PID is available */
                        
                      if (usbOpenDevice(&PDATA(pgm)->usbhandleUSBASP_OLD_VID, "www.eca.ir",
                                 
                      USBASP_OLD_PID, "ECA AVR Programmer") != 0) {

                         
                      /* no USBasp found */
                         
                      fprintf(stderr,
                             &
                      quot;%serrorcould not find USB device "
                             &
                      quot;\"USBasp\&quotwith vid=0x%x pid=0x%x\n",
                              
                      prognameUSBASP_SHARED_VIDUSBASP_SHARED_PID);
                         exit(
                      1);

                        } else {

                         
                      /* found USBasp with old IDs */
                         
                      fprintf(stderr,
                             &
                      quot;%sWarningFound USB device \"USBasp\&quotwith "
                             &
                      quot;old VID/PIDPlease update firmware of USBasp!\n",
                              
                      progname);
                        }
                       }

                       return 
                      0;


                      چگونه هوشمندانه بپرسیم

                      دیدگاه


                        #12
                        پاسخ : مشکل پروگرامر Multi AVR Programmer یا USBasp پروگرامر در لینوکس

                        ایول آقا درست شد. دمت گرم
                        اول دم شما گرم. بعد دم لینوکس و اپن سورس :applause: :wow:

                        دیدگاه


                          #13
                          پاسخ : مشکل پروگرامر Multi AVR Programmer یا USBasp پروگرامر در لینوکس

                          آقا فقط یه سوال میکرو 89s52 را هم میتونم پروگرام کنم؟؟ پایه هاش که مثل همین atmega وصله به غیر از ولتاژ و isp هم هست

                          دیدگاه


                            #14
                            پاسخ : مشکل پروگرامر Multi AVR Programmer یا USBasp پروگرامر در لینوکس

                            با سلام من at89s52 را هم به کانفیگم اضافه کردم ولی اررور زیر را میده
                            کد:
                            
                            mrg-desktop avrdude-5.5 # avrdude -c usbasp -p AT89S52 
                            
                            avrdude: error: programm enable: target doesn't answer. 1 
                            avrdude: initialization failed, rc=-1
                                 Double check connections and try again, or use -F to override
                                 this check.
                            
                            
                            avrdude done. Thank you.
                            اینم اررو کامل:
                            http://codepad.org/fTwZou59
                            که تو جدول ارور ها معنیشو نوشته:

                            کد:
                              * Not Connect Programmer with Target circuit
                              * ISP Connector is bad connection
                              * Target circuit power is OFF

                            دیدگاه


                              #15
                              پاسخ : مشکل پروگرامر Multi AVR Programmer یا USBasp پروگرامر در لینوکس

                              خوشحالم که درست شد، بقول یکی از دوستان:
                              زنده باد گنو/لینوکس، زنده باد آزادی(نرمآ‌افزار) و زنده باد حق تغییر به شکلی که دوستش داریم (:

                              نوشته اصلی توسط bugattiveyron
                              آقا فقط یه سوال میکرو 89s52 را هم میتونم پروگرام کنم؟؟ پایه هاش که مثل همین atmega وصله به غیر از ولتاژ و isp هم هست
                              نه فکر نکنم از usbsp بشه برای 8051 استفاده کرد، فقط AVR
                              حداقل توی سایتش که چیزی در این مورد ننوشته.

                              چگونه هوشمندانه بپرسیم

                              دیدگاه

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