نرم افزار keil یکی از کامپایلرهای معروف در برنامه نویسی میکروکنترلرهای ARM به زبان C می باشد. نرم افزارهای دیگری نیز مانند IAR ، win arm و سایر کامپایلرها وجود دارند که برای برنامه نویسی استفاده می شود. اما آموزش هایی که قرار است برای شما آموزش داده شود از نرم افزار keil استفاده شده است. در ادامه با الکترونیک پروژه همراه باشید.
این نرم افزار از امکانات و ویژگی های زیادی وجود دارد که دیباگ کردن از جمله یکی از امکانات keil می باشد که قابلیت شبیه سازی مجازی و اشکال زدایی برنامه را توسط پروگرامرها همراه می کند. از دیگر امکانات این نرم افزار قابلیت تنظیم رجیسترهایی از جمله UART، GPIO و … که تنها با تیک زدن و انتخاب تنظیمات دلخواهتان مقدار رجیستر برای شما نشان داده می شود و می توانید از آن در برنامه خودتان استفاده کنید.
نرم افزاری که در اینجا مورد استفاده می شود نسخه keil uVision4 می باشد. این نرم افزار از ظاهر خیلی راحتی استفاده شده است و می توانید به راحتی قسمت های مورد نظر خودتان از جمله نوشتن فایل هدر و C را انتخاب کنید. بر خلاف نرم افزار code vision که قابلیت ویزارد در نرم افزار وجود دارد این نرم افزار امکان رجیستری وجود ندارد و باید به صورت دستی انتخاب مقدار دهی شوند. در زیر آموزش این نرم افزار می دهم.
برای ایجاد پروژه در نرم افزار keil مانند شکل زیر به قسمت project و سپس New uVision project را انتخاب کنید تا تنظیمات مربوط به پروژه در این قسمت به شما نشان داده شود.
در پنجره مشاهده شده اسم پروژه خودتان را وارد کنید.
پنجره select device for target و در قسمت Data base شما شرکت های مختلف ساخت میکرو کنترلر ARM را مشاهده می کنید. می توانید با انتخاب هر کدام از این شرکت ها، میکروهای مربوط به آن در زیر نشان می دهد. چون پروژه ما مربوط به میکرو LPC1768 شرکت NXP می باشد این میکرو را از قسمت دیتابیس NXP انتخاب می کنیم و تایید و سپس yes را میزنیم.
تصویر زیر مشاهده می کنید در قسمت project فایل target شامل فایل start up ساخته شده است. دکمه file extensions, book and environment را انتخاب کنید.
پنجره برای اضافه کردن فایل های مورد نیاز پروژه می باشد که می توانید فایل هایی از جمله فایل سیستمی، هدر، کد برنامه c و کتابخانه ها را به آن اضافه کنید. شما ابتدا در محیط نرم افزار از منوی file گزینه new را انتخاب کنید و همین فایل را با پسوند .c یا .cpp ذخیره کنید سپس در پنجره زیر فایل را به پروژه اضافه کنید.
تصویر زیر برنامه نمونه در محیط نرم افزار نوشته شده است. برای ساخت و کامپایل کردن برنامه از دکمه rebuild استفاده کنید.
از امکانات نرم افزار keil قسمت target option می باشد که تنظیمات مربوط به پروژه در آن انجام می شود.
قسمت output با انتخاب گزینه Create HEX file می توانید بعد از زدن گزینه rebuild فایل هگز را دریافت کنید.
تنظیمات مربوط به کریستال خارجی که در میکرو استفاده می کنید می توانید از قسمت target استفاده کنید و در قسمت Xtal مقدار کریستال را وارد کنید.
مهم ترین و کاربردی ترین قسمت های نرم افزار قابلیت دیباگ (اشکال زدایی) و شبیه سازی برنامه می باشد که می توانید با رفتن به قسمت debug و با انتخاب گزینه use simulator در سمت چپ از قابلیت شبیه سازی میکرو استفاده کنید و اگر پروگرامر در اختیار دارید می توانید از قسمت سمت راست آن بهره ببرید.
مطالبی که در بالا آموزش داده شد، مطالب اولیه یادگیری نرم افزار keil می باشد قطعا امکانات بیشتر در این نرم افزار وجود دارد که می توانید با جستجو به آنها پی ببرید. امیدوارم از این آموزش لذت برده باشید. اگر سوالی برای شما پیش آمد می توانید نظر بدهید.
منبع : الکترونیک پروژه
آموزش برنامه نویسی ARM – نرم افزار keil
در اين بخش ميتوانيد در مورد تمامي مسائل مرتبط با میکروکنترلرهای ARM به بحث بپردازيد
مدیران انجمن: Mahdi Mahdavi, SAMAN, sinaset, شوراي نظارت
بازگشت به “میکروکنترلرهای ARM”
پرش به
- بخشهاي داخلي
- ↲ اخبار و قوانين سايت
- ↲ سوالات، پيشنهادات و انتقادات
- ↲ مرکز جوامع مجازي - CentralClubs Network
- ↲ سرويس ميزباني وب - CentralClubs Hosting
- ↲ مجله الکترونيکي مرکز انجمنهاي تخصصي
- بخش تلفن همراه
- ↲ نرم افزار تلفن همراه
- ↲ Symbian App
- ↲ Android App
- ↲ Windown Phone App
- ↲ iOS App
- ↲ JAVA Mobile App
- ↲ بازيهاي تلفن همراه
- ↲ Symbian Games
- ↲ Android Games
- ↲ iOS Games
- ↲ Windows Phone Games
- ↲ JAVA Mobile Games
- ↲ گوشيهاي تلفن همراه
- ↲ Sony
- ↲ Samsung
- ↲ GLX
- ↲ Dimo
- ↲ Huawei
- ↲ Motorola
- ↲ Nokia
- ↲ گوشيهاي متفرقه
- ↲ سرگرميهاي تلفن همراه
- ↲ خدمات و سرويسهاي مخابراتي
- ↲ تازه ها و اخبار تلفن همراه
- ↲ مطالب كاربردي تلفن همراه
- ↲ متفرقه در مورد تلفن همراه
- ↲ سوالات و اشکالات تلفن همراه
- بخش كامپيوتر
- ↲ نرم افزار كامپيوتر
- ↲ گرافيک و طراحي کامپيوتري
- ↲ طراحي صفحات اينترنتي
- ↲ سوالات و اشکالات نرم افزاري
- ↲ برنامه نويسي
- ↲ C Base Programming
- ↲ Dot Net Programming
- ↲ Web Programming
- ↲ Other Programming
- ↲ Software Engineering
- ↲ Java Programming
- ↲ Database Programming
- ↲ سخت افزار كامپيوتر
- ↲ امنيت و شبكه
- ↲ امنيت
- ↲ شبکه
- ↲ تازه ها و اخبار دنياي کامپيوتر
- ↲ مطالب كاربردي كامپيوتر
- ↲ متفرقه در مورد کامپيوتر
- بخش هوا فضا
- ↲ نيروي هوايي ايران
- ↲ متفرقه درباره نیروی هوایی
- ↲ نیروی هوایی و سازندگی
- ↲ حماسه و حماسه آفرینان نيروي هوايي
- ↲ تیزپروازان در بند
- ↲ شهدا و جانباختگان نیروی هوایی
- ↲ عملیاتهاي نيروي هوايي
- ↲ دستاوردها و اخبار نيروي هوايي
- ↲ تاریخچه نیروی هوایی در ایران
- ↲ هوانيروز ايران
- ↲ حماسه و حماسه آفرينان هوانيروز
- ↲ شهدا و جانباختگان هوانيروز
- ↲ دستاوردها و اخبار هوانيروز
- ↲ هواپيماها
- ↲ هواپيماهاي نظامي
- ↲ هواپيماهاي غير نظامي
- ↲ هواپيماهاي بدون سرنشين
- ↲ بالگردها
- ↲ بالگردهاي نظامي
- ↲ بالگردهاي غير نظامي
- ↲ بالگردهاي بدون سرنشين
- ↲ اخبار بالگردها
- ↲ تسليحات هوايي
- ↲ موشكهاي هوا به هوا
- ↲ موشكهاي هوا به زمين
- ↲ موشکهاي دريايي
- ↲ موشکهاي زمين به هوا
- ↲ موشکهاي زمين به زمين
- ↲ ديگر مباحث هوانوردي
- ↲ الکترونيک هواپيمايي
- ↲ موتورهاي هوايي
- ↲ شبيه سازهاي پرواز
- ↲ گالري تصاوير هوافضا
- ↲ تصاوير هواپيماهاي جنگنده
- ↲ کليپهاي هوايي
- ↲ تصاوير هواپيماهاي بمب افکن
- ↲ تصاوير هواپيماهاي ترابري
- ↲ تصاوير هواپيماهاي مسافربري
- ↲ تصاوير هواپيماهاي شناسايي
- ↲ تصاوير بالگردهاي نظامي
- ↲ تصاوير بالگردهاي غير نظامي
- ↲ تصاوير نمايشگاههاي هوايي
- ↲ تصاوير متفرقه هوايي
- ↲ انجمن نجوم
- ↲ منظومه شمسي
- ↲ كيهانشناسي
- ↲ گالري تصاوير نجوم
- ↲ اخبار نجوم
- ↲ اخبار هوافضا و هوانوردي
- ↲ مدرسه هوانوردي
- ↲ كتابخانهي هوا فضا
- ↲ متفرقه در مورد هوا فضا
- بخش جنگ افزار
- ↲ ادوات زميني
- ↲ ادوات زرهي
- ↲ تجهيزات انفرادي
- ↲ تسليحات سنگين و توپخانهاي
- ↲ خودروهاي نظامي
- ↲ تسليحات ضد زره
- ↲ ادوات دريايي
- ↲ ناوهاي هواپيمابر
- ↲ ناوشکنها
- ↲ رزم ناوها
- ↲ ناوچهها
- ↲ زيردرياييها
- ↲ تجهيزات و تسليحات دريايي
- ↲ ساير ادوات دريايي
- ↲ گالري تجهيزات و ادوات دريايي
- ↲ اخبار ادوات دريايي
- ↲ اخبار نظامي
- ↲ گالري نظامي
- ↲ متفرقه در مورد جنگ افزار
- بخش دفاع مقدس
- ↲ حماسه دفاع مقدس
- ↲ تخريب و خنثي سازي
- بخش خودرو و وسايل نقليه
- ↲ مباحث فنی و تخصصی خودرو
- ↲ معرفي خودرو
- ↲ تازهها و اخبار خودرويي
- ↲ گالري خودرو
- ↲ متفرقه وسايل نقليه
- بخش پزشکي
- ↲ پزشكي و درمان
- ↲ پزشکي
- ↲ سوال پزشکي
- ↲ بهداشت
- ↲ بهداشت عمومي
- ↲ بهداشت مواد غذايي
- ↲ لوازم آرايشي و بهداشتي
- ↲ متفرقه در مورد پزشکي
- ↲ روانشناسي و روان پزشكي
- بخش فرهنگ، تمدن و هنر
- ↲ فرهنگي هنري
- ↲ شعر و ادبيات
- ↲ فيلم و سينما
- ↲ هنرهاي نمايشي
- ↲ فرهنگ هنرهاي نمايشي
- ↲ موسيقي
- ↲ عكس و نقاشي
- ↲ تاريخ، فرهنگ و تمدن
- ↲ تاريخ ايران
- ↲ تاريخ جهان
- ↲ فلسفه
- ↲ زبانهاي خارجي
- ↲ زبان انگليسي
- ↲ زبان اسپانيايي
- ↲ هنر آشپزي
- بخش علم، فناوري و آموزش
- ↲ انجمن علم و فناوري
- ↲ انجمن آموزش
- ↲ کتاب و فرهنگ مطالعه
- ↲ دانش عمومی
- ↲ کنکور و دانشگاه
- ↲ جامعه شناسي
- ↲ خانواده
- ↲ متفرقه جامعه شناسي
- ↲ حقوق و قضا
- ↲ علوم
- ↲ فيزيک
- ↲ شيمي
- ↲ رياضي
- ↲ متالورژي
- ↲ پليمر
- ↲ علوم کشاورزي
- ↲ گياهان زراعي و باغي
- ↲ گياهان دارويي
- ↲ طبیعت و محیط زیست
- ↲ زيست شناسي
- ↲ عمران
- ↲ بتن و سازههاي بتني
- ↲ معماري و شهرسازي
- ↲ سبکها و مشاهير معماري
- ↲ شهرسازي
- ↲ معماري داخلي
- ↲ معماري منظر
- بخش الکترونيک و رباتیک
- ↲ مفاهیم اولیه و پایه در الکترونیک
- ↲ نرم افزارهای کمکی الکترونیک
- ↲ مدارهای مجتمع
- ↲ سوالات و پرسشهای مفاهیم پایه
- ↲ مدارات ساده و آسان
- ↲ مدارهای آنالوگ و دیجیتال
- ↲ شبیه ساز و طراحی مدار
- ↲ مدارات صوتی
- ↲ مدارات، منابع تغذیه سویچینگ و اینورتوری
- ↲ مدارات مخابراتی
- ↲ میکروکنترلرهای AVR
- ↲ آموزش و مثالها AVR
- ↲ طرح آماده و کامل شده AVR
- ↲ میکروکنترلرهای ARM
- ↲ سایر میکروکنترولرها و پردازندهها
- ↲ سایر میکروکنترلرها
- ↲ مدار مجتمع برنامه پذیر FPGA
- ↲ رباتیک
- ↲ اخبار و مصاحبه ها در رباتیک
- ↲ آموزش و مقالات رباتیک
- ↲ پروژهها تکمیل شده رباتیک
- ↲ مدارها و مکانیک در رباتیک
- ↲ رباتهای پرنده
- ↲ برق و الکترونیک عمومی
- ↲ تعمیر لوازم برقی
- ↲ اخبار برق و الکترونیک
- بخش بازيهاي رايانهاي
- ↲ بازيهاي رايانهاي
- ↲ كنسولهاي بازي
- ↲ PSP
- ↲ اخبار بازيها
- بخش تجاري اقتصادي
- ↲ بخش اقتصادی و مالی
- ↲ تجارت آنلاين
- ↲ بورس
- ↲ تحلیل و سیگنال روز
- ↲ کار آفرینی
- بخشهاي متفرقه
- ↲ بخش ويژه
- ↲ ساير گفتگوها
- ↲ صندلي داغ
- ↲ اخبار و حوادث
- ↲ انجمن ورزش
- ↲ آکواريوم و ماهيهاي زينتي
- ↲ معرفي سايتها و وبلاگها