میکروکنترلر چیست؟ میکروکنترلر، یک نوع پردازشگر رایانهای است که در یک تراشه یا IC قرار دارد و دارای قابلیت کنترل و اجرای برنامههای نهفته (مخفی) در داخل خود است. این تراشهها به طور گسترده در سیستمها و دستگاههای الکترونیکی مورد استفاده قرار میگیرند و نقش مهمی در کنترل و مدیریت توابع مختلف این دستگاهها ایفا میکنند. میکروکنترلر ARM چیست؟ میکروکنترلر ARM یک نوع میکروکنترلر است که از معماری ARM (Acorn RISC Machine) استفاده میکند. معماری ARM یک معماری پردازشی باز (RISC) است که برای طراحی پردازندههای کم مصرف، کم حجم و با عملکرد بالا مورد استفاده قرار میگیرد. کامپایلر Keil چیست؟ Keil یک محیط توسعه یکپارچه (IDE) و یک کامپایلر برای توسعه نرمافزار برای میکروکنترلرها و پردازندههای دیجیتال ساخت ARM است. Keil به عنوان Keil μVision نیز شناخته میشود و توسط شرکت Keil Software تولید میشود. این محیط توسعه به توسعهدهندگان این امکان را میدهد تا برنامههای نهفته را برای میکروکنترلرهای ARM Cortex-M و Cortex-R بنویسند. اهمیت یادگیری میکروکنترلر ARM با کامپایلر کیل Keil چیست؟ برنامهنویسی با استفاده از کتابخانههای استاندارد CMSIS یادگیری چگونگی کار با میکروکنترلرهای مبتنی بر معماری Cortex را برای کاربرانی که به تازگی شروع به کار با این میکروکنترلرها را کردهاند آسان میکند. برنامهنویسی به روش رجیستری هم، دست برنامهنویسان حرفهای میکروکنترلرها را برای نوشتن هر نوع برنامهای بر اساس علاقه و کاربرد باز میگذارد. یادگیری میکروکنترلرهای ARM Cortex LPC1768، زمینه میکروالکترونیک با رویکرد کاربرد صنعتی این میکروکنترلرها است. با توجه به پیشرفت روزافزون کاربرد میکروکنترلرها در صنعت و احتیاج این بخش به کنترلرهای سریع و پیشرفته نیاز به یادگیری رویکرد استفاده از امکانات کاربردی این میکروکنترلرها و نحوه استفاده از این آیسیها، احساس میشود و میکروکنترلرهای Cortex معماری پیشرفته، میکروکنترلرهای خانواده ARM با هدف کاهش توان و افزایش کارایی این میکروکنترلرها است. میکروکنترلرهای LPC17XX محصول شرکت NXP (بخش تولید میکروکنترلرهای ARM شرکت Philips) هستند. این خانواده از میکروکنترلرهای ARM Cortex-M3 دارای سرعت پردازنده بالا و امکانات جانبی فراوان با هدف به کارگیری در وسایل صنعتی و کنترلی ساخته شده است. لذا، یادگیری میکروکنترلر ARM با کامپایلر کیل Keil، برای دانشجویان مهندسی برق، روباتیک، مکاترونیک و کامپیوتر که با مباحث ابتدایی مدار منطقی و برنامهنویسی زبان C آشنایی دارند و تمام کسانی که مایل به یادگیری این میکروکنترلرها در جهت به کارگیری آن در صنعت هستند، اهمیت بالایی دارد. در این فرادرس چه چیزی یاد میگیریم؟ در این آموزش، پس از معرفی میکروکنترلر LPC1768 و ادوات و پروگرمرهای ARM، با استفاده از Keil IDE و CMSIS، استاندارد نوشتن برنامههای تست را یاد میگیریم و در ادامه، به راهاندازی و کار با واحدهای مختلف شامل GPIO ،NVIC ،ADC (تبدیلکننده آنالوگ به دیجیتال)، Timer و PWM (موج سیگنال پهنای پالس)، DAC (تبدیلکننده دیجیتال به آنالوگ)، USART (واحد ارتباط سریال) و RTC (ساعت و تقویم داخلی) میپردازیم. مثالهایی که در این آموزش ارائه شده است به زبان برنامهنویسی C و به دو روش برنامهنویسی رجیستری و استفاده از کتابخانههای CMSIS نوشته شده است.