فهرست مطالب:
تصویری: برنامه نویسی ATTiny85 ، ATTiny84 و ATMega328P: Arduino به عنوان ISP: 9 مرحله (همراه با تصاویر)
2024 نویسنده: John Day | [email protected]. آخرین اصلاح شده: 2024-01-30 08:57
پیشگفتار
من اخیراً چند پروژه IoT مبتنی بر ESP8266 را توسعه داده ام و متوجه شدم پردازنده اصلی در انجام تمام وظایفی که برای مدیریت به آن نیاز داشتم ، مشکل داشت ، بنابراین تصمیم گرفتم برخی از فعالیتهای کمتر مهم را در میکروکنترلرهای مختلف توزیع کنم. به این ترتیب ESP8266 آزاد می شود تا کار خود را به عنوان یک دستگاه اینترنت اشیا ادامه دهد.
با توجه به اینکه می خواستم پروژه خود را برای هرچه بیشتر مخاطبین منتشر کنم ، تصمیم گرفتم از Arduino IDE به عنوان پلت فرم توسعه مورد نظر استفاده کنم ، زیرا دارای چنین جامعه ای است که از حمایت گسترده ای برخوردار است.
محدودیت های طراحی
به منظور ارائه گستره معقولی از دستگاه های هدف که امکان انتخاب میکروکنترلر مناسب برای برنامه مورد نظر را فراهم می کند ، من بر روی قطعات Atmel زیر تصمیم گرفتم. ATMega328P ، ATTiny84 و ATTiny85. برای محدود کردن پیچیدگی برنامه نویس ضروری ، من انتخاب ساعت را به داخلی برای همه دستگاه ها و 16 مگاهرتز خارجی را فقط برای ATMega328P و ATTiny84 محدود کردم.
آنچه در زیر می آید مجموعه ای از یادداشت ها در زمینه برنامه نویسی با آردوینو و شرح نحوه برنامه نویسی ساده Arduino Uno برای این دستگاه ها است (تصاویر بالا).
به چه قطعاتی نیاز دارم؟
برای ساخت برنامه نویس به قسمتهای زیر نیاز دارید
- 1 تخفیف برای آردوینو اونو
- 2 سوکت 28 پین Zero Insertion Force (ZIF) DIP (برای نگهداری ATMega328P ، ATTiny85 ، ATTiny84)
- 1 سپر نمونه اولیه آردوینو (من اینجا را گرفتم ؛
- 2 عدد LED 5 میلی متری
- 2 مقاومت 1K خاموش
- 1 مقاومت 10K
- 4 خازن سرامیکی 22pF
- 2 عدد کریستال 16 مگاهرتز
- 3 خازن سرامیکی 0.1uF
- 1 خازن الکترولیتی 47uF
- 1 خازن الکترولیتی 10uF
- طول سیم های مختلف سیم پیچ.
به چه نرم افزاری نیاز دارم؟
آردوینو IDE 1.6.9
به چه مهارتهایی نیاز دارم؟
- آشنایی با Arduino IDE
- آشنایی با لوازم الکترونیکی و نحوه لحیم کاری
- مهارت ماهرانه زیادی
- بار زیادی از صبر و بینایی خوب
موضوعات تحت پوشش
- مقدمه ای کلی بر برنامه نویسی میکروکنترلرهای Atmel
- ISP یا Bootloader: همه چیز کمی گیج کننده است
- نمای کلی مدار
- برنامه نویس خود را راه اندازی کنید
- از برنامه نویس ISP آردوینو خود استفاده کنید
- توسعه کد در سیستم هدف شما
- Gotchas
- نتیجه
- مراجع استفاده شده است
سلب مسئولیت
مانند همیشه ، شما از این دستورالعمل ها با مسئولیت خود استفاده می کنید و از آنها پشتیبانی نمی شود
مرحله 1: مقدمه عمومی در مورد برنامه ریزی میکروکنترلرهای اتم
دو روش برای برنامه نویسی میکروکنترلرهای Atmel وجود دارد.
- در برنامه نویسی سیستم (ISP) ،
- برنامه نویسی خودکار (از طریق بوت لودر)
روش قبلی (1) پس از اولین بار تنظیم مجدد دستگاه ، مستقیماً میکروکنترلر را از طریق رابط SPI برنامه ریزی می کند. مگر اینکه دستورالعمل دیگری گفته شود ، یک برنامه منبع اجرایی کامپایل شده به طور تدریجی در حافظه دستگاه از جایی که هنگام راه اندازی اجرا می شود ، نوشته می شود. بسیاری از دستگاههای ISP قادر به برنامه نویسی دستگاههای Atmel هستند که تعدادی از آنها (عکس 1) هستند. AVRISPmkII ، Atmel-ICE ، Olimex AVR-ISP-MK2 ، Olimex AVR-ISP500. تصویر 2 نحوه اتصال دستگاه ISP به ATMega328P (ICSP علامت گذاری عجیب) را در برد Arduino Uno R3 نشان می دهد (عکس 3 پین ISP را خارج می کند). همچنین می توان یک میکروکنترلر Atmel را از طریق رابط SPI آن با استفاده از Arduino Uno به عنوان ISP برنامه ریزی کرد (تصویر 4) ، در اینجا از Uno برای برنامه ریزی ATMega328P استفاده می شود.
روش اخیر (2) از یک کد خرد کوچک استفاده می کند که به عنوان "bootloader" شناخته می شود و به طور دائم در حافظه کد اجرایی (که معمولاً برای جلوگیری از بازنویسی تصادفی تصویر 5 قفل می شود) قفل شده است. این کد ابتدا با روشن شدن دستگاه یا تنظیم مجدد دستگاه اجرا می شود و به میکروکنترلر اجازه می دهد تا خود را با کد جدیدی که از طریق یکی از رابط های خود از منبع خارجی به خود دریافت می کند ، مجددا برنامه ریزی کند. روش بوت لودر توسط Arduino IDE برای برنامه نویسی مجدد Arduinos نقشه برداری شده به عنوان یک پورت USB comm در رایانه (یا MAC ، جعبه لینوکس و غیره ، تصویر 6) استفاده می شود و در مورد Arduino Uno از طریق آن با دستگاه Atmel ارتباط برقرار می کند. رابط سریال در IC پین 2 و 3 ATMega328P. همچنین Arduino Uno (با حذف میکروکنترلر ATMega328P) می تواند برای برنامه ریزی یک ATMega328P از طریق روش بوت لودر به طور موثر به عنوان یک دستگاه آداپتور USB به سریال عمل کند (عکس 7).
آداپتور USB به سریال چیست؟
آداپتور USB به سریال قطعه ای از سخت افزار است که به پورت USB رایانه های شخصی شما متصل می شود و شبیه یک پورت سریال سریال است (میراثی از زمانهای قبل که رایانه ها از استاندارد ارتباطات سری معروف به EIA-232 ، V24 یا RS232 استفاده می کردند) که به شما این امکان را می دهد ارسال و دریافت داده های سریال در همان سطوح الکتریکی میکروکنترلر. هنگامی که Tools -> Port -> COMx را از Arduino IDE انتخاب می کنید ، رایانه خود را به Arduino متصل/وصل می کنید.
دستگاهی مانند این گاهی اوقات به عنوان FTDI (عکس 8 ، که در واقع نام تجاری آن است) یا CH340G و غیره به سریال USB در Arduino uno از طریق ATMega16U2-MU (R) IC ZU4 همانطور که در Arduino Schematic گفته می شود ، اشاره می شود. در زیر
برای وضوح تصویر 9 ، دو دستگاه Atmel و اتصالات ISP مربوطه در Arduino Uno R3 را مشخص می کند.
توجه 1: در صورت انتخاب مسیر FTDI دستگاه خود را از فروشنده معتبر خریداری کنید زیرا بسیاری از دستگاه های تقلبی ارزان قیمت در بازار وجود داشته است که پس از به روزرسانی ویندوز از کار افتاده اند.
توصیه شده:
آردوینو به عنوان ISP -- رایت فایل هگز در AVR -- فیوز در AVR -- آردوینو به عنوان برنامه نویس: 10 مرحله
آردوینو به عنوان ISP || رایت فایل هگز در AVR || فیوز در AVR || Arduino به عنوان برنامه نویس: ……………………… لطفاً برای ویدیوهای بیشتر به کانال YouTube من مشترک شوید …….. این مقاله همه چیز درباره آردوینو به عنوان isp است. اگر می خواهید فایل hex را بارگذاری کنید یا اگر می خواهید فیوز خود را در AVR تنظیم کنید ، نیازی به خرید برنامه نویس ندارید ، می توانید
ساعت و برنامه نویسی فعالیتهای ارتعاشی پوشیدنی ATtiny85 ATtiny85 با Arduino Uno: 4 مرحله (همراه با تصاویر)
سازمان دیده بان و برنامه نویسی فعالیتهای ارتعاشی پوشیدنی ATtiny85 ATtiny85 با Arduino Uno: چگونه ساعت ردیابی فعالیت های پوشیدنی را بسازیم؟ این یک ابزار پوشیدنی است که هنگام تشخیص رکود برای ارتعاش طراحی شده است. آیا بیشتر وقت خود را مثل من در کامپیوتر می گذرانید؟ آیا ساعت ها بدون این که بدانید نشسته اید؟ سپس این دستگاه f
برنامه افزودنی ساده در زبان برنامه نویسی شکسپیر: 18 مرحله
برنامه افزودنی ساده در زبان برنامه نویسی شکسپیر: زبان برنامه نویسی شکسپیر (SPL) نمونه ای از زبان برنامه نویسی باطنی است ، که شاید یادگیری آن جالب و استفاده از آن جالب باشد ، اما در برنامه های کاربردی واقعی بسیار مفید نیست. SPL زبانی است که در آن کد منبع r
برنامه نویسی میکروکنترلرها با برنامه نویس USBasp در Atmel Studio: 7 مرحله
برنامه نویسی میکروکنترلرها با یک برنامه نویس USBasp در Atmel Studio: سلام من آموزش های زیادی را در مورد نحوه استفاده از برنامه نویس USBasp با Arduino IDE خواندم و آموختم ، اما برای تکالیف دانشگاه نیاز به استفاده از Atmel Studio داشتم و هیچ آموزشی پیدا نکردم. پس از تحقیق و مطالعه از طریق بسیاری از
تراشه های برنامه نویسی با آردوینو - AVR ISP که ATTiny85 ، ATTiny2313 و ATMega328 را پوشش می دهد: 3 مرحله
تراشه های برنامه نویسی با آردوینو - AVR ISP که ATTiny85 ، ATTiny2313 و ATMega328 را پوشش می دهد: من این را به عنوان پیش نویس از سالها پیش پیدا کردم. این هنوز برای من مفید است ، بنابراین من قصد دارم آن را منتشر کنم! این دستورالعمل مجموعه ای از دانش است که از سراسر شبکه و همچنین دستورالعمل های جمع آوری شده جمع آوری شده است. این برنامه نویسی AVR Microco را پوشش می دهد