اطلاعیه

Collapse
No announcement yet.

پروگرامر با پورت پرینتر

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

    پروگرامر با پورت پرینتر

    سلام دوستان
    من چند وقتی هست وارد دنیای avr شدم و تازه کارم.
    در اینترنت به یک پروگرامر avr خیلی ساده برخوردم که فقط از یک آی سی بافر (74hc 244) تشکیل شده بود و با پورت پرینتر به کامپیوتر وصل می شد.
    میخواستم ببینم به این پروگرامر ساده میشه اعتماد کرد یعنی کار میکنه؟ و اینکه آیا ممکنه به میکروکنترلر یا حتی کامپیوتر آسیب برسه؟ بخاطر سادگی اش میگم.
    لطفا راهنمایی ام کنید.مخصوصا دوستانی که تجربه کار با این پروگرامر ساده رو دارند

    #2
    پاسخ : پروگرامر با پورت پرینتر

    پروگرامر شما در واقع STK200/300 است. که نقشه آن بصورت زیر است :



    اما نمونه ساده تری نیز وجود دارد که بصورت زیر خواهد بود :



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

    این مدل پروگرامرها از نوع داخل مداری محسوب میشوند. یعنی اینکه بدون خارج کردن میکرو از مدار میتوان عملیات برنامه ریزی را انجام داد. و در نتیجه پروگرامرهایی از این دست فاقد امکان تامین کلاک مناسب برای میکرو هستند و در نتیجه در صورتیکه اشتباها فیوز بیت CKSEL را تغییر دهید؛ احتمال از کار افتادن میکرو وجود خواهد داشت.

    در مجموع خرید یک پروگرامر شما را سریعتر به نتیجه میرساند و از تلف شدن وقت و از دست دادن هزینه به جهت خراب شدن میکرو و یا صدمه دیدن پورت های کامپیوتری جلوگیری میکند. در همین انجمن بوده اند دوستانی که با ساخت یک پروگرامر به ظاهر ارزان و یا خرید یک پروگرامر ساده، در ابتدای کار هزینه بیشتری را بابت از دست دادن میکروهای خود تلف کرده اند.

    نکات بسیار مهم در تهیه پروگرامر که متاسفانه فراموش میشود!

    دیدگاه


      #3
      پاسخ : پروگرامر با پورت پرینتر

      از پاسخ جامع و مفید شما متشکرم. اما چند سوال داشتم
      1. اگر برای تغذیه ی مدار از usb کامپیوتر استفاده کنم مشکل آسیب دیدن پورت به دلیل نوسانات جریان برطرف میشه؟
      2.آیا در اولین استفاده از میکروکنترلر نیاز هست که فیوز بیت ها تنظیم بشن؟
      3. آیا اتمگا 32 برای پروگرام شدن با این پروگرامر ساده نیاز به کلاک خارجی داره؟
      4.ممنون میشم یک کتاب خوب برای شروع کار با میکروکنترلر avr معرفی کنید.

      دیدگاه


        #4
        پاسخ : پروگرامر با پورت پرینتر

        1- متاسفانه یکی از اشکالات پروگرامرهایی که به پورت پرینتر و یا سریال وصل میشوند؛ همین عدم وجود تغذیه بر روی پورت است. و یکی از راهکارها نیز استفاده از پورت USB فقط برای تامین تغذیه پروگرامر است. اما در اینجا چند اشکال اساسی وجود دارد :
        -- برای راه اندازی پروگرامر شما عملا دو پورت را اشغال کردید.
        -- در صورتیکه در مدار اشتباه بدی صورت بگیرد، و احیانا ولتاژی ناخواسته به مدار اعمال شود؛ احتمال صدمه دیدن دو پورت وجود دارد.
        -- در تغذیه توسط پورت USB همیشه این تغذیه بدون کنترل خاصی به مدار اعمال میشود ( چه قبل از درج میکرو و چه در پایان پروگرام) در نتیجه در صورتیکه میکرو اشتباه درج شود احتمال صدمه دیدن میکرو بالا خواهد بود. به تاپیک زیر مراجعه کنید :
        http://www.eca.ir/forum2/index.php?topic=111151.msg720901#msg720901
        کاربر فوق میکروی خود را بخاطر درج اشتباه و اتصال دائم تعذیه میکرو در پروگرامر، از دست داده است.


        نوع پروگرامر مورد استفاده نیز از همین مدل مورد نظر شما است!

        2- در اولین بار نیازی نیست، و میکرو طوری تنظیم شده که بتوان از آن بسادگی استفاده کرد. اما اگر در برنامه تنظیمات خاصی را نیاز داشته باشید که فیوزبیت ها مربوط شود، قاعدتا باید آنها را نیز پروگرام کنید. مثلا اگر در ATmega32 از پورت C استفاده کنید، باید فیوز بیت JTAGEN را غیر فعال کنید.

        3- میکروی فوق اگر فیوز بیت اولیه را تغییر ندهید و CKSEL آن عوض نشود نیازی به کلاک خارجی نیست.

        4- یکی از کتاب های خوب در این زمینه کتاب آقای علی کاهه است.

        نکات بسیار مهم در تهیه پروگرامر که متاسفانه فراموش میشود!

        دیدگاه


          #5
          پاسخ : پروگرامر با پورت پرینتر

          آقای لاچینی شما خودتان چه پروگرامری را پیشنهاد میکنید که زیاد هم گران نباشه ؟
          پاره ای از رویکردهای دفاعی

          دیدگاه


            #6
            پاسخ : پروگرامر با پورت پرینتر

            از پاسختون ممنونم.خیلی مفید بود.

            دیدگاه


              #7
              پاسخ : پروگرامر با پورت پرینتر

              پروگرامری که من پیشنهاد میکنم باید ویژگی های زیر را داشته باشد :
              1- تامین کلاک واقعی برای تمامی حالات فیوزبیت CKSEL؛ به دلیل مشکلات فراوانی که عدم تامین کلاک برای کاربران ایجاد کرده و میکند.
              2- درج تمامی میکروها از پین یک زیف سوکت بجای درج در نقاط مختلف؛ به دلیل کاهش خطای ناشی از درج غلط و بعضا صدمه دیدن میکرو مثل تصویر بالا.
              3- اتصال خطوط تغذیه و سیگنال به میکرو بر روی زیف سوکت و کابل فقط در حین پروگرام؛ به دلیل جلوگیری از صدمه دیدن میکرو و تداخل سیگنالی.
              4- استفاده از فقط یک پورت USB و بصورت خالص؛ بدلیل در صورت استفاده از مبدل USB به سریال احتمال تداخل سیگنالی وجود دارد.
              5- امکان استفاده مستقیم در محیط های IDE همچون بسکام؛ جهت استفاده ساده و بهره برداری از امکانات محیط کامل و ساده تنظیم فیوز بیت در بسکام.
              6- امکان استفاده در تمامی سیستم عامل ها همچون ویندوز، اندروید، لینوکس و مک؛ جهت سهولت استفاده.
              7- کوچک و جیبی بودن؛ جهت جابجایی و استفاده راحت.
              8- دارای قاب باشد؛ تا طول عمر بیشتری داشته و بسادگی بتوان از آن مراقبت کرد.
              9- حدالامکان دارای امکانات جانبی همچون پروگرام حافظه های EEPROM و میکروهای سری 8051 و ... باشد.

              در این میان پروگرامرهای هاتل، جمشاد دارای قابلیت های خوبی هستند، اما پروگرامر سانا علاوه بر قیمت مناسب تر از مشخصات بندهای 1، 4،5،6،9 نیز برخوردار است.
              بخصوص این پروگرامر بر خلاف تمامی پروگرامرهای موجود نیازی به برنامه شرکتی ندارد و بصورت مستقل در بسکام شناسایی میشود.

              نکات بسیار مهم در تهیه پروگرامر که متاسفانه فراموش میشود!

              دیدگاه


                #8
                پاسخ : پروگرامر با پورت پرینتر

                ببخشید که سوالام مبتدیانه است اما یه ابهام برام ایجاد شده
                اینکه میگن میکرو در مدار پروگرام می شه(isp) یعنی همون تغذیه ی جداگانه ی میکرو هست یا اینکه دقیقا باید تمام اجزا ی مدار قرار بگیره. اگه این طور هست (قرار گرفتن تمام اجزا) دلیلش چیه یعنی میکرو تشخیص میده که اجزا بهش وصله یا نه و بعد پروگرام میشه؟

                دیدگاه


                  #9
                  پاسخ : پروگرامر با پورت پرینتر

                  اگه بخوام با نوسان ساز داخلی اتمگا32 کار کنم هنگام برنامه نویسی با کدویژن کلاک رو باید رو چند تنظیم کنم؟
                  و اینکه مزایا و معایب استفاده از انواع نوسان ساز ها،داخلی و خارجی، چیه؟

                  دیدگاه


                    #10
                    پاسخ : پروگرامر با پورت پرینتر

                    پروگرام کردن به چندین روش تقسیم میشود. یکی از روش ها بیرون آوردن میکرو از مدار و قرار دادن بر روی پروگرامر (زیف سوکت) و سپس پروگرام آن است.
                    در این روش امکان صدمه دیدن پایه های میکرو در حین در آوردن و جا زدن مجدد در مدار وجود دارد. و مقداری توسعه برنامه را سخت و کند می کند.
                    در روش دیگر شما میکرو از درون مدار خارج نمیکنید. بلکه از طریق پایه های بخصوصی با میکرو در مدار ارتباط برقرار میشود و عملیات پروگرام انجام میشود. طبیعتا این روش برای توسعه برنامه ساده تر و راحتر از روش قبلی است و شاید تنها عیب های آن نیاز به قرار دادن پایه بخصوص جهت برنامه ریزی در برد باشد و البته این موضوع احتمال کپی برداری را در صورت قفل نکردن میکرو بالا میبرد.
                    به روش فوق که شما بدون خارج کردن میکرو از مدار آنرا پروگرام میکنید. اصطلاحا روش داخل مداری In System Programming - ISP میگویند.
                    ---------
                    اگر منظور شما مدار اسیلاتور RC داخلی است، باید بدانید که بصورت پیش فرض فرکانس این نوسان ساز بر روی یک مگاهرتز است. اما میتوانید با برنامه ریزی فیوزبیت CKSEL سایر گزینه ها شامل 2 و 4 و 8 مگاهرتز را نیز مورد استفاده قرار دهید.

                    نکات بسیار مهم در تهیه پروگرامر که متاسفانه فراموش میشود!

                    دیدگاه


                      #11
                      پاسخ : پروگرامر با پورت پرینتر

                      با سلام.دو سوال داشتم:
                      1.اگر یک پایه ی میکرو بعنوان ورودی انتخاب بشه، پایه بازم جریان میآ‌کشه یا نه؟
                      2.میکرو این قابلیت رو داره که مقدار ولتاژ یک پایه رو بعنوان ورودی بگیره؟ یعنی در کد یک متغیر تعریف کنیم که مقدار آن برابر ولتاژ پایه موردنظر باشه؟

                      دیدگاه


                        #12
                        پاسخ : پروگرامر با پورت پرینتر

                        در واقع هدفم از سوال دوم این بود که میخوام یه تایمر بسازم که مقدار زمان موردنظر به کمک یک مقاومت متغیر که باعث ایجاد مقدار ولتاژ های متغیر روی پایه ورودی میشود،تعیین شود.
                        آیا راهی برای اینکار هست؟
                        درواقع نمیخوام از پد ورودی استفاده کنم.

                        دیدگاه

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