ساخت پروگرامر USB جیبی برای AVR

این جلسه از سری آموزش های ” در کوچه پس کوچه های الکترونیک “ را به معرفی و نحوه ساخت پروگرامر USB جیبی برای AVR ، که در واقع یک نمونه Clone از پروگرامر STK500 می باشد اختصاص می دهیم. مزیت اصلی این پروگرامر ویژگی استفاده از پروتکل HID می باشد، یعنی برای شناساندن پروگرامر خود به ویندوزهای مختلف چه نسخه 32 و چه 64 بیتی بدون کوچک ترین زحمتی و بدون نیاز به درایو جداگانه ای ، کافی است پروگرامر خود را از طریق کابل USB به کامپیوتر متصل کنید و از طریق برنامه Sinaprog با پروگرامر ارتباط برقرار کنید و میکروهای مد نظر رو پروگرام کنید! در ادامه با نحوه ساخت پروگرامر USB جیبی برای AVR بیشتر آشنا خواهید شد.
قبل از اینکه به نحوه ساخت پروگرامر بپردازیم ، توجه اتون رو به بسته آموزشی ” نحوه پروگرام کردن AVR و تنظیم فیوزبیت ها “ ، که نحوه ی استفاده از پروگرامر و همه چیز درباره تنظیم فیوزبیت ها و ترفندها رو شامل می شه جلب می کنم.
نکات حائز اهمیت در ساخت پروگرامر USB جیبی برای AVR، پروگرام کردن صحیح میکروکنترلر Atmega8 استفاده شده در این پروگرامر و تنظیم فیوزبیت های صحیح برای حالت استفاده از کریستال خارجی می باشد که در ادامه تشریح خواهد شد. دقت کنید که PCB این پروگرامر 2 رو بوده و قطعات استفاده شده SMT می باشند. IC به شماره 74LS126 با پسوندهای مختلف در بازار وجود دارد، پسوند E و AP تاکنون تست شده و با این مدار سازگار است.
قطعات استفاده شده و تعداد آنها به منظور ساخت پروگرامر USB جیبی برای AVR به شرح ذیل می باشد.
بعد از لحیم کاری و جاگزاری قطعات ، وقت پروگرام کردن میکروکنترلر موجود بر روی پروگرامر است.
برای پروگرام کردن Atmega8 استفاده شده در مدار، کافی است با یک پروگرامر دیگر که دارای روش ( ISP ( In System Programing می باشد پایه های مورد نیاز برای پروگرام کردن را ( MISO,MOSI,SCLK,RST,VCC,GND ) به پایه های متناظرش از پایه های مشخص شده ZIF سوکت در تصویر بالا متصل کرد.
فایل هگز مربوط به پروگرامر را از اینجا دانلود کنید.
موقع پروگرام کردن میکروکنترلر، فیوزبیت CKSEL را برابر مقدار ” 1111 ” تنظیم کنید. به این ترتیب منبع کلاک برای اتصال به کریستال خارجی تنظیم می شود و از کریستال 12MHz مدار استفاده می کند.
به این ترتیب مراحل و نحوه ساخت پروگرامر USB جیبی برای AVR از نوع STK500 به پایان می رسد.
برای دستیابی به سورس کدهای میکرو و آخرین ورژن frimware ها و شماتیک و PCB تک رو به سایت سازنده اصلی مراجعه کنید.
برای دانلود طرح PCB دو رو پروگرامر جیبی اینجا کلیک کنید.
نرم افزار SinaProg را برای ارتباط با پروگرامر از اینجا دانلود کنید.
جهت مشاهده آموزش پروگرام کردن AVR اینجا کلیک کنید.
اگر در تنظیم فیوزبیت های AVR مشکل دارید اینجا کلیک کنید.
توجه
وب سایت EasyMCU در ستاد ساماندهی پایگاه های اینترنتی وزارت فرهنگ و ارشاد اسلامی ثبت شده است. تمامی حقوق این وب سایت شامل مطالب، محتوی و تصاویر متعلق به گروه EasyMCU بوده و هر گونه استفاده از محتوای نوشتاری و چند رسانه ای این وب سایت و یا باز نشر آنها در رسانه های آنلاین و یا نشریات، تنها با ذکر منبع و درج لینک مبداء مجاز می باشد.
درباره مرتضی زندی
خلق کردن شماره 1 علاقه مندی های من هست. برنامه نویسی بهترین ابزاری بوده که تا الان برای این کار پیدا کردم. بیس الکترونیک دارم و دستی بر آتش در دنیای رشته های مجاور. تجربه سال ها فعالیت در تیم های R&D رو دارم، در این بین در حوزه ی امبدد سیستم ها فعالیتم پررنگ تر هست. عاشق یادگیری و یاد دادن هستم و تلاش می کنم تجربیاتم رو به زبانی ساده از طریق EasyMCU.org به نحوی کاربردی و موثر با علاقه مندان این حوزه به اشتراک بذارم.
نوشته های بیشتر از مرتضی زندیمطالب زیر را حتما مطالعه کنید
آموزش نصب و راه اندازی سیستم عامل Free RTOS برای آردوینو Arduino
آموزش نصب و راه اندازی سیستم عامل Free RTOS روی STM32
آموزش FreeRTOS نحوه استفاده از میوتکس Mutex
آموزش Free RTOS نحوه استفاده از سمافور Semaphore
آموزش STM32 راه اندازی وقفه خارجی EXTI
معرفی کتاب ARM
33 دیدگاه
به گفتگوی ما بپیوندید و دیدگاه خود را با ما در میان بگذارید.
دیدگاهتان را بنویسید لغو پاسخ
This site uses Akismet to reduce spam. Learn how your comment data is processed.
سلام مهندس
میشه بجای آیسی TTL 74LS126 از آیسی 74HC126 استفاده کرد؟ چون اون آیسی تو بازار پیدا نمیشه یا اگر امکان داره لطفاً یک آیسی دیگه معرفی کنین.
ممنون.
درود بر شما.
تا جایی که خاطرم هست، فقط با همین مدلی که نوشتم به درستی کار می کنه.
با آرزوی بهترین ها
فکر کنم بشه چون داخل بازار نیست اون مدل
مدار الکترونیکی رو نمیشه با عبارت چون توی بازار نیست راضی کرد که کار کنه!
استاندارد سطح ولتاژ ورودی و خروجی پایه ها متفاوت هست، برای همین در نامشون تفاوت هایی وجود داره و تا جایی که یادمه همون زمان هم به سختی گیر میومد.
در متن موارد تست شده که جواب داده نوشته شده بود، موارد دیگر رو هم میتونید امتحان کنید اما ممکنه همه مدل ها جواب ندن. پسوند E و AP تا کنون تست شده و جواب داده
مهندس این مدل فقط با این مدل گفتید 74Ls126 an درسته
سلام
به جای خازنهای ۲۲ پیکو فاراد میشه از خازنهای ۲۷ پیکو استفاده کرد؟
درود بر شما.
خازن های کریستال منظورتون هست؟ مشکلی نداره می تونید استفاده کنید.
مهندس من داخل بازار خازن 4.7میکرو فاراد نیست چی کار کنم
این رنج خیلی متداول هست، بعید میدونم در بازار نباشه، اگر پیدا نکردید از یک رنج نزدیک به این عدد و ترجیحا بزرگتر استفاده کنید.
مثلان ۶.۲ خوبه
بله اکی هست.
سلام و عرض خسته نباشید خدمت مهندس زندی،
جساراتا یک سوال داشتم کسی تا به حال این pcb دو لایه رو زده؟ مشکلی نداشته؟ چون من فایل رو چک کردم دیدم بیشتر قطعات اتصالشون بین دو لایه از طریق پایه قطعات دیپ برقرار میشه که در این صورت باید قطعات را هم از لایه بالایی و هم از لایه پایینی لحیم کرد که این کار برای بعضی از قطعات مثل سوکت زیف و IDC امکان پذیر نمی باشد و این یک مشکل هست البته به نظر من، آیا درست نمیگم؟ لطفاً راهنماییم کنین که چطور این مشکل رو برطرف کنم؟ آیا باید این برد به صورت متالیزه ساخته بشه؟
درود بر شما.
طبیعتا بردی که دو رو طراحی می شه، نیاز به متالیزه داره. نمونه ساخته شده در عکس همین تاپیک قابل مشاهده است. سالها پیش در زمان دانشجویی طراحیش کردم و کار چاپش هم به شرکت های چاپ PCB سپردم.
با آرزوی بهترین ها.
باسلام و عرض خسته نباشید به شما آقای زندی عزیز، تشکر میکنم بابت این پست بسیار مفید، فقط یک سوال داشتم روش کار کردن با این پروگرامر چطوریه، آیا همه ی میکروهای خانواده AVR رو جواب میده و اینکه هر آیسی با هر پکیجی مثلاً 28 پین و 40 و یا 8 پین و… همگی چطوری در زیف سوکت قرار میگیرند، ایا همگی از پایه شماره یک زیف سوکت جایگزاری میشوند یا خیر لطفاً این مورد را مشخص بفرمایین. ممنونم
درود بر شما آقا امیر گرامی.
خوشحالم مفید بوده. تا جایی که می دونم بله همه رو ساپورت می کنه. ( لینک منبع رو گذاشتم ).
روی ZIF سوکت یک شیار وجود داره که برای میکروهای با تعداد پایه کمتر استفاده می شه. تنها عیبی که در این پروگرامر دیدم اینه که بخش قفل کردن میکرو کار نمی کنه ظاهرا (دقیق خاطرم نیست برای خیلی سال پیش بود). اما در کل پروگرامر خوبی هست و توضیحات بیشتر هم در پست گفته شده.
با آرزوی بهترین ها.
متشکرم از پاسخگویی به موقع شما، عذر میخواهم یک سوال دیگر هم داشتم اون آیسی ttl دقیقا چه کاربردی داره مگر خود مگا 8 usb رو ساپورت نمیکنه؟
خواهش می کنم. IC که فرمودید، یک بافر هست برای هندل کردن سطح ولتاژ سیگنال های ارسالی به میکروکنترلر دیگر جهت پروگرام شدن. خود atmega8 به صورت پیشفرض از usb پشتیبانی نمی کند، اما با کتابخانه نرم افزاری که استفاده شده و تمهیدات سخت افزاری این قابلیت یهش اضافه شده.
سلام
اگر پروگرامر را با میکروهای attiny13 و یا attiny45 پیاده سازی می کردید خوب بود
درود بر شما.
مرسی از نظر شما. فکر نمی کنم میکروهایی که ذکر کردید، فضای کافی برای پیاده سازی واسط USB رو داشته باشند.
با آرزوی بهترین ها
امکان ساخت پروگرمی که کد را از روی یک میکرو که قفل ندارد بردارد
و داخل میکرو های دیگه بریزد را دارید و برنامه را قفل کند را دارید
بدون استفاده از کامپیوتر پروزه ی خوبی است
با سلام.
ممنون از پیشنهاد شما. از نظر ساخت، ساخت هر چیزی امکان پذیر هست، اما موضوع مهمتر بازار اون هست. نیاز بازار به همچین محصولی چقدر است؟ به ادراک فعلی بنده که لزوما درست هم می تونه نباشه، تولید همچین محصولی به صرفه نیست! مگر اینکه خلافش ثابت بشه.
ممنون از شما.
با آرزوی موفقیت.
استاد شماتیک این مدار با فیبر 2رو. رو میشه بزارین
با سلام.
توی لیست کارها می ذارمش. ممنون از نظر شما.
با آرزوی موفقیت.
باسلام. میشه لطف کنید و شماتیکشم بزارید؟
سلام.
لطفا لینک های مرجع موجود در این مقاله رو چک بفرمایید. شماتیک قرار داده شده …
با آرزوی موفقیت …
شماتیکی که گفتیدو مشاهده کردم با شماتیکی که برای PCB دورویی که کشیدید و گذاشتید فرق داره. فایل شماتیک برای این PCB دورویی که گذاشتید میخاستم. ممنون میشم قرار بدید. باتشکر
سلام. بنده پروگرامر tnm 2000 . آیا می شود با این پروگرامر هم ای سی های میکرو را پروگرام کرد؟ از کجا فرکانسش را عوض کنم؟ تشکر
سلام.
بله . لطفا وبسایت سازنده را چک بفرمایید.
با سلام
لطفا عکس از اتمام کار بذارید
سلام.
در لینک ذیل تصویر پروگرامر ساخته شده به همراه آموزش های ویدئویی کامل موجود هست، چک بفرمایید.
https://goo.gl/xfGtI7
سلام
خدا قوت و خسته نباشید
<3
سلام بزرگوار.
مرسی …