استفاده از کامپیوتر شخصی جهت برنامه نویسی AT89C51/C52/LV52/C1051/C2051
استفاده از کامپیوتر شخصی جهت برنامه نویسی AT89C51/C52/LV52/C1051/C2051 – ایران ترجمه – Irantarjomeh
مقالات ترجمه شده آماده گروه برق – الکترونیک
مقالات ترجمه شده آماده کل گروه های دانشگاهی
مقالات
قیمت
قیمت این مقاله: 25000 تومان (ایران ترجمه - irantarjomeh)
توضیح
بخش زیادی از این مقاله بصورت رایگان ذیلا قابل مطالعه می باشد.
شماره | ۲ |
کد مقاله | ELC02 |
مترجم | گروه مترجمین ایران ترجمه – irantarjomeh |
نام فارسی | استفاده از کامپیوتر شخصی جهت برنامه نویسیAT89C51/C52/LV52/C1051/C2051 |
نام انگلیسی | Using a Personal Computer to Program the AT89C51/C52/LV51/LV52/C1051/C2051 |
تعداد صفحه به فارسی | ۱۵ |
تعداد صفحه به انگلیسی | ۸ |
کلمات کلیدی به فارسی | میکروکنترلر |
کلمات کلیدی به انگلیسی | Microcontroller |
مرجع به فارسی | ATMEL |
مرجع به انگلیسی | ATMEL |
کشور | ایالات متحده |
استفاده از کامپیوتر شخصی جهت برنامه نویسی AT89C51/C52/LV52/C1051/C2051
استفاده از کامپیوتر شخصی جهت برنامهنویسی
AT89C51/C52/LV52/C1051/C2051
ATMEL
مقدمه
این مقاله یک پروگرامر سازگار با کامپیوتر شخصی برای میکروکنترلر مبتنی بر فلش AT89C51/C52/LV51/LV52/C1051/C2051 را تشریح مینماید. این پروگرامر از کلیه فانکشنها یا توابع میکروکنترلرحافظههای فلش پشتیبانی میکند، شامل: خواندن کد، نوشتن کد، پاک کردن چیپ، خواندن امضا یا موارد تشریحی یک چیپ، و نوشتن بیت قفل. هر یک از موارد فوقالذکر را میتوان، براساس نیازهای ابزار خاص، در حالتهای ۵ یا ۱۲ ولت اجرا نمود.
ابزارهایی که دارای علامت ”۵-“ بر روی خود میباشند، میبایست در مد ۵ ولت اجرا گردند، در حالیکه ابزارهایی که چنین علامتی را ندارند در مد استاندارد ۱۲ ولت کار میکنند.
این پروگرامر از طریق یک پورت موازی به کامپیوتر شخصی IBM متصل میشود. ولتاژهای عملیاتی مورد نیاز، بوسیله یک تامین کننده نیروی جامع یا بوسیله مبدلی که بر روی دیوار نصب میگردد تامین میشود.
استفاده از کامپیوتر شخصی جهت برنامه نویسی AT89C51/C52/LV52/C1051/C2051
نرمافزار
نرمافزار این برنامه از طریق سایت Atmel BBS آماده دانلود شدن میباشد.
این پروگرامر بوسیله نرمافزار اجرا گشته توسط میزبان کنترل میگردد. AT89C51 ، C52 و C1051/C2051 دارای برنامه کنترل تخصیص یافته میباشند، که به زبان میکرسافت C نوشته شده است. برنامههای تخصیصی برای AT89LV51/LV52 موجود نمیباشند. این ابزارها بوسیله برنامههای AT89C51/C52 بترتیب پشتیبانی میشوند. در متن زیر، کلیه رفرانسهای AT89C51/C52 را میتوان برای AT89LV51/LV52 نیز بکار برد.
کلیه پروگرامرهای کنترل برنامه از طریق دستور DOS و با نوشتن نام برنامه بعلاوه LPT1 یا LPT2 جهت تعیین پورت موازی یک یا دو بترتیب اجرا میگردند. چنانچه پورت موازی مشخص نشده باشد، برنامه پیام خطایی را صادر مینماید. برنامههای کنترل بصورت منویی بوده و توابع زیر را مهیا مینمایند:
پاک کردن چیپ
پاک کردن حافظه بطور کامل. موفق بودن این تابع بطور اتوماتیک تایید نمیشود.
برنامه از فایل
نوشتن محتویات یک فایل خاص در حافظه ابزار. کاربر میبایست اسم فایل را که میتواند شامل مسیر و پسوند آن باشد اعلام نماید.
این فایل دارای داده باینری میباشد و فایلهای هگز مورد قبول واقع نمیگردد. اولین بایت داخل فایل در اولین محل ابزار برنامهریزی میگردد. بایتهای بعدی نیز در محلهای بعدی برنامهریزی شده تا اینکه آخرین محل تحت برنامهریزی قرار گرفته و یا آنکه داده داخل فایل تمام شود.
برنامهریزی صرفنظر از مضامین موجود حافظه ابزار روی میدهد. کنترل خالی یا تهی به صورت اتوماتیک اجرا نمیگردد. پس از برنامهریزی ، محتویات حافظه ابزار در مقابل دادههای فایل به صورت اتوماتیک مورد تصدیق قرار نمیگیرد.
هر یک از محلهای برنامهریزی شده در ابزار حداکثر زمان برنامهریزی را که در کتابچه داده مشخص شده دریافت میدارد. این عمل بدین علت انجام میپذیرد که زمانبندی با استفاده از ابزار اعمال شده و اطلاعات وضعیت برنامهریزی فهرست داده (DATA) و RDY/BSY ، اعمال نمیگردد.
برنامه کنترل هیچگونه وضعیت دیداری در خصوص روند اجرای برنامه عرضه نمیدارد. تنها منوی اصلی به هنگامی که برنامه پایان پذیرفت نشان داده میشود.
استفاده از کامپیوتر شخصی جهت برنامه نویسی AT89C51/C52/LV52/C1051/C2051
تأیید فایل
محتویات حافظه کد را در مقابل محتویات فایل خاص مقایسه نمایید. کاربر در این مرحله میبایست اسم فایل را وارد نماید که ممکن است نیاز به مسیر و پسوند آن نیز محسوس باشد.
این فایل دارای داده باینری بوده و فایل هگز در اینجا کاربردی ندارد. اولین بایت داخل فایل با اولین جای داخل ابزار مقایسه شده و به همین ترتیب بایتهای بعدی نیز با جایی دیگر مقایسه میشوند تا آنکه فایل پایان پذیرد.
محلهایی که در آنها مقایسه با شکست مواجه گردیده بوسیله آدرس آنها نشان داده میشوند. ضمن آنکه محتویات حقیقی بایت نیز به نمایش گذاشته می شود. چنانچه خطای مقایسه وجود نداشته باشد هیچچیز نشان داده نمیشود.
ذخیره در فایل
ذخیره محتویات حافظه ابزار در فایل خاص. در این مرحله کاربر میبایست اسم فایل را وارد نماید که ممکن است نیاز به مسیر و پسوند آن وجود داشته باشد. تعداد بایتهای فایل نتیجه میبایست به همان تعداد محلهای حافظه در ابزار باشد.
کنترل تهی
تأیید کنید که کلیه مضامین حافظه ابزار به صورت دقیق وجود داشته باشند. تنها وضعیت خطا و یا اتمام موفقیت کار گزارش میشود و آدرسها و مضامین محلهای خطا به نمایش در میآید.
خواندن امضا
خواندن و نمایش محتویات بایتهای امضا. تعداد بایتهای امضا و مضامین مورد انتظار آن بین ابزارها متفاوت میباشد. جهت کسب اطلاعات بیشتر به کتابچه اطلاعات مراجعه کنید.
بیت قفل مشخص شده را تنظیم کنید. توجه داشته باشید که AT89C1051/C2051 تنها دارای دو بیت افت میباشد، در حالیکه AT89C51/LV51 و AT89C52/LV52 شامل سه بیت قفل است. وضعیت بیتهای قفل را نمیتوان با مشاهدات مستقیم تصدیق نمود.
استفاده از کامپیوتر شخصی جهت برنامه نویسی AT89C51/C52/LV52/C1051/C2051
خروج
خارج شدن از برنامه کنترل پروگرامر
وابستگی سیستم
برنامههای کنترل AT89C51 و AT89C52 به دو صورت عرضه میشود: به صورت وابسته به سیستم و به صورت غیر وابسته به سیستم. حالت وابستگی به سیستم نتیجه استفاده از حلقههای زمانبندی نرمافزار جهت اعمال وقفههای مورد نیاز میباشد که مدت آن بین سیستمهای میزبان که در سرعتهای متفاوتی اجرا میگردند، مختلف میباشد. کد مهیا گشته بر روی سیستم بر مبنای ۸۰۳۸۶ با سرعت ۳۳ مگاهرتز تست گشته و ممکن است برای استفاده در دیگر سیستمها نیاز به تغییراتی داشته باشد. این روش به واسطه سادگی آن انتخاب گشته است.
وضعیت مستقل بودن سیستم میزبان با استفاده از یک تایمر داخلی قابل برنامهریزی که در داخل سختافزار سیستم قرار گرفته و وقفههای زمان را مستقل از سرعت سیستم اجرا میکند ، عملی میگردد. این تایمر به هنگامی که برنامه کنترل اجرا گشته و قبل از اتمام برنامه و برگشت به وضعیت اصلی خود، پیکربندی مجدد خواهد شد. به منظور اطمینان از آنکه برنامه قبل از پیکربندی تایمر خارج نشده است، کلیدهای CTRL-C و CTRL-EREAK غیر فعال میگردند. این بدین معنا است که برنامه تا رسیدن به دستور خروج که در منوی اصلی تعبیه گشته و یا بوت کردن سیستم خارج نخواهد شد.
کد کنترل تایمر به صورت یک ماژول زبان اسمبلی ۸۰۸۶ ارائه گردیده است که با برنامه کنترل کامپایل مرتبط گردیده است. اجزای تایمر به صورت ۰٫۸۳۸ میکروثانیه میباشند. اما حداقل جزء وقفه سیستم و وابستگی نرمافزاری است. کد تایمر این اطمینان را حاصل مینماید که وقفه تولید شده دارای مدت کمتر از آنچه تقاضا شده نخواهد بود.
برنامههای کنترل ارائه گردیده برای AT89C1051/C2051 مستقل از سیتم میباشند.
استفاده از کامپیوتر شخصی جهت برنامه نویسی AT89C51/C52/LV52/C1051/C2051
پروگرامر
مدار پروگرامر (شکل ۱ و ۲) شامل یک رابط میزبان و تأمین کننده برق قابل سوئیچ میباشد. دامنههای سیگنال و زمان مورد نیاز برنامهنویسی بوسیله میزبان تحت کنترل نرمافزاری ساخته میشود. یک سوکت زیف ۴۰ پین برای برنامه نویسی AT89C51/C52 مهیا گردیده است. همچنین سوکت زیف اسپین نیز برای AT89C1051/C2051 ارائه گردیده است. توجه داشته باشید که برق و ارتباطات زمین و خازنهای عبور که توسط ابزارهای TTL مورد نیاز میباشند در این شماتیک نشان داده نشدهاند.
نیروی برق برای برنامهنویسی مدار و AT89C51/C52/C1051/C2051 بوسیله یک تأمین کننده پنج ولت ثابت مهیا میگردد. تأمین کننده ثانویه نیرویی برابر با ۵ یا ۱۲ ولت را مهیا میسازد که به هنگام برنامهریزی قابل انتخاب است. اضافه کردن یک ترانزیستور به خروجی تأمین کننده متغیر یک سیم زمین سطح سوم را برای استفاده در برنامهریزی AT89C1051/C2051 فراهم میآورد. مقادیر خازن به کار گرفته شده در تأمین کننده نیروی متغیر مدار با استفاده از معادلههای موجود در کتابچه اطلاعات تنظیم ولتاژ LM310 ارائه گردیدهاند. نرخهای تأمین نیرو نیز با استفاده از نرمافزار میزبان مشخص شدهاند. برای برنامهنویسی۵VVPP، ابزار میبایست به صورت AT89CX-XX-5 باشند (در AT89C1051/C2051 موجود نیست).
این پروگرامر با استفاده از یک کابل ریبن ۲۵ رشتهای به دستگاه میزبان متصل میگردد. جهت کاهش تأثیرات سیگنال طول کابل تا حد لازم میبایست کوتاه باشد و ترجیها نباید بیش از ۳ فوت طول داشته باشد.
رابط موازی
رابط موازی اولیه که بوسیله شرکت IBM تهیه گردیده قابلیت پشتیبانی از انتقال داده به صورت دو طرفه را ندارد. با این وجود، از طریق روشی که این رابط پیاده میشود انتقال دو طرفه میتوان محقق گردد. در طی سالیان متمادی، بسیاری از محصولات از این توانایی بهره بردند.
متأسفانه، بسیاری از تولید کنندگان کارتهای رابط سیستمی دارای سازگاری با IBM نبوده و رقابتی را در عرصه تولید باس و رابط داده بوجود آوردند. معمولا ادوات جانبی میتوانند درایوهای رابط را بکار گرفته و اقدامات جانبی خاصی را اجام دهند، البته باید در نظر داشت این یک طرح متناسب نخواهد بود.
بسیاری از رابطهای موازی اکنون در یک چیپ منفرد به کار گرفته میشود، نظیر ۸۲C411 یا ۱۶C452. اینگونه چیپها اجازه میدهند تا درایوهای خروجی تحت کنترل نرمافزاری غیر فعال گردیده و از این طریق عملیات دوطرفه واقعی را مهیا میسازد. نرمافزار پروگرامر به صورت اتوماتیک قادر است عملیات انتقال دو طرفه را انجام دهد آن هم به هنگامی که از رابطهای موازی با چیپهای۸۲C411، ۱۶C452 و یا چیپهای مشابه استفاده میکند.
…
استفاده از کامپیوتر شخصی جهت برنامه نویسی AT89C51/C52/LV52/C1051/C2051