جهت خرید میکرو کنترلر آرم میتوانید از فروشگاه آترین الک اقدام نمایید.(لینک خرید)
در این دوره قصد داریم تا در ابتدا با میکروکنترلرهای STM32 آشنا شویم و کلیه امکانات موجود در این خانواده قدرتمند را با همدیگر به کمک کتابخانه HAL پیاده سازی کنیم. در این دوره آموزشی از نرم افزار کاربردی STM32CubeMX استفاده می کنیم.
معماری آرم: (ARM architecture) نوعی از معماری و ساختار پردازندههای رایانهای است که بهوسیلهٔ شرکت انگلیسی آرم هولدینگز طراحی شدهاست و بیشتر برایتلفن های هوشمند، تبلت ها و دستگاههای قابلحمل کاربرد دارد. معماری آرم دستورالعملهای ۳۲ بیتی را پردازش میکند و از دهه ۱۹۸۰ میلادی تا به امروز در حال توسعه و گسترش است. شرکت آرم هولدینگز خود تولیدکننده پردازندهها نیست و گواهینامه بهکارگیری از معماری آرم را به تولیدکنندگان نیمههادی میفروشد. کمپانیها نیز به راحتی تراشههای خود را براساس معماری آرم تولید میکنند. از جمله کمپانیهایی که پردازندههای خود را براساس معماری آرم طراحی میکنند میتوان به اپل در تراشههای اختصاصی خود، سامسونگ الکترونیکس در پردازندههایاگزینوس،ان ویدیا در پردازشگرهایتلگرا و کوالکام در پردازندههای اسنپ دراگون اشاره کرد. معماری آرم بهگونهای طراحیشده که برای هسته اصلی پردازشگر تنها به حدود ۳۵ هزارترانزیستور نیاز است و این باعث میشود که پردازنده بسیار کممصرف شود، کمتر داغ کند و نیازی به خنککننده یا فن نداشته باشد بر خلاف معماری x86 بهکار رفته در پردازندههای شرکتهای اینتل وای ام دی که نیازمند میلیونها ترانزیستور هستند و همین مسئله باعث افزایش توان مصرفی و داغ شدن آنان میشود.
اغلب گوشی های موبایل امروزه از پردازه ARM استفاده میکنند. شرکت ST نیز از این قائده جدا نیست دست به تولید میکروکنترلرهای بسیار اقتصادی با هسته ARM کرده است.
در این سری از آموزش ها سعی میکنیم تا با استفاده از دستورات کتابخانه HAL برنامه های خود را با صرف زمان کمتر اجرا نماییم.برای ساخت پروژه و آماده سازی اولیه آن سعی شده تا از نرم افزار STM32CubeMX استفاده نماییم تا با تمام امکانات این نرم افزار آشنا شوید و بتوانید پروژه ها را خیلی سریع آماده نمایید. در ابتدای کار سعی شده از قسمت های ساده مثل GPIO شروع کنیم و رفته رفته دیگر امکانات میکرو را معرفی و نحوه راه اندازی و بکارگیری آنها را آموزش دهیم و امکاناتی همچون Usart ، ADC ، DAC، اینتراپت ها را آموزش دهیم و در مرحله بعد به سراغ امکاناتی همچون USB، CAN، راه اندازیDMA و انواع LCD و شبکه برویم.
در انتها نیز سیستم های بلادرنگ را بررسی می کنیم و نحوه کارکرد آنها را توضیح می دهیم و برنامه نویسی با سیستم عامل FreeRtos را در کنار هم آغاز می کنیم.
آشنایی با انواع خانواده های میکروکنترلرهای ST :
تولید کننده های قطعات الکترونیک محصولات متنوعی دارند که هر کدام امکانات و ویژگی های مخصوص به خود را دارند ولی در برخی از مشخصات با هم تشابه دارند. شرکت ST نیز محصولات خود را در چند خانواده معرفی کرده است که می توانیم آنها را با توجه به ویژگی ها و امکانات مختلف در تصویر زیر ببینیم:
با رجوع به لینک زیر می توانید اطلاعات بیشتری از این میکروها بدست آورید.
https://www.st.com/content/st_com/en/products/microcontrollers/stm32-32-bit-arm-cortex-mcus.html
هر کدام از محصولات این شرکت نام مخصوص به خود را دارند که برای نامگذاری از یک استاندار و قانون ثابت استفاده شده است که مشخص می کند هر بخش یا کاراکتر موجود در نام قطعه (پارت نامبر) مشخص کننده کدام ویژگی این میکرو می باشد در ادامه به بررسی این اطلاعات می پردازیم. با استفاده از این اطلاعات می توانید به خانواده میکرو، تعداد پایه هاو حجم حافظه فلش پی ببریم.
در اول تمام میکروکنترلر های 32 بیتی این شرکت عبارت STM32 وجود دارد که مشخص می کند این میکرو از محصولات شرکت ST می باشد و در رده میکروهای 32 بیتی قرار دارد دوکاراکتر بعدی مربوط به خانواده ها یا سری های مختلف میکروهای 32 بیتی این کارخانه می باشند.اطلاعات مربوط به این بخش در جدول زیر مشخص شده است:
دو کاراکتر بعدی مربوط به زیر شاخه آن خانواده می باشد.
کاراکتر بعدی مربوط به تعداد پایه های میکروکنترلر می باشد که می توانید تعداد پایه ها را از جدول زیر بدست آورید:
کاراکتر بعدی مربوط به میزان حافظه فلش میکروکنترلر می باشد :
کاراکتر بعدی نوع بسته بندی یا پکیج میکرو را مشخص می کند که در تصویر زیر مشخص شده است:
کاراکتر بعدی که در واقع یک عدد می باشد دما کاری میکرو را مشخص می کند.
در انتها تصویر نام یک میکروکنترلر را می بینیم که بصورت جز به جز تفکیک و مشخصات میکرو بصورت کامل شرح داده شده است.
برای آشنایی بیشتر با خانواده میکروکنترلرهای 32 بیتی شرکت ST می توانید به لینک زیر مراجعه فرمایید.
https://en.wikipedia.org/wiki/STM32
برای مشاهده آموزش جلسه دوم( معرفی نرم افزارهای مورد نیازجهت برنامه نویسی و پروگرام ) کلیک کنید.
شاد و پر انرژی باشید
محمد هادی دشتی