02166766927 -02166703652
info@atrinelec.com تهران پاساژ امجد طبقه1 واحد 16
دوره آموزشی میکرو کنترلرهای STM32 _ راه اندازی واحد PWM(بخش اول)

دوره آموزشی میکرو کنترلرهای STM32 _ راه اندازی واحد PWM(بخش اول)

2018-12-12 20:42:41

جلسه بیستم _ نحوه راه اندازی واحد PWM ونحوه انجام تنظیمات در محیط STM32CubeMX

PWM مخفف pulse Width Modulation می باشد و به معنای مدولاسیون عرض پالس می باشد. این تکنیک در صنایع الکترونیک و مخابراتی کاربرد زیادی دارد و از آن برای کدینگ پیام های مخابراتی، کنترل توان دستگاه های الکتریکی، شارژ باتری، کنترل نور LED ها، کنترل سرعت موتور و ... استفاده می شود.

در واقع PWM یک موج مربعی می باشد و همانطور که می دانید امواج مربعی دو حالت صفر و یک  یاحالت روشن و خاموش دارند خاصیت امواج PWM در این است که زمان روشن بودن یا یک بودن آن ها نسبت به زمان خاموش بودن یا صفر بودن آنها متغیر است. این خاصیت را با عبارت Duty Cycle بیان می کنند که بیانگر مدت زمان یک بودن پالس به کل زمان پریود می باشد و آن را معمولا بر حسب (%) نمایش می دهند.

در تصویر زیر یک موج PWM را با Duty Cycle های مختلف می توانید مشاهده نمایید.

با توجه به اینکه میکرو کنترلرها نیز از این ویژگی برخوردارند در این جلسه قصد داریم تا از این ویژگی مهم و پرکاربرد استفاده نماییم و نحوه راه اندازی و تنظیمات مربوط به آن را بیاموزیم. تولید موج PWM در واحد های تایمر که قابلیت تولید PWM را دارند انجام می شود. برای شروع  ابتدا نرم افزار STM32CubeMXرا اجرا می کنیم و مطابق جلسات گذشته تنظیمات اولیه شامل تنظیم منبع کلاک میکرو و نوع دیباگر و پروگرامر و فرکانس کاری مدار را تنظیم می نماییم واز بخش Pinout & Configuration وارد قسمت Timers می شویم و TIM1 را انتخاب می کنیم.

با انتخاب TIM1 از قسمت TIM1 Mode and Configuration و از بخش Mode تنظیمات را مطابق تصویر زیر انجام می دهیم.

در این قسمت تنها کافیست تا Clock Source را در حالت Internal Clock و Channel1 را در حالت PWM Generation CH1 تنظیم  نماییم.پس از آن پایه مورد نظر فعال می شود.

در ادامه می توانید در قسمت Configuration بقیه تنظیمات مربوط به واحد PWM را تنظیم نمایید و در آن Prescaler ، Counter Period را تنظیم نمایید تا به فرکانس دلخواه خود برسیم. کلاک تایمرهای 1 و 8 از APB2 timer clocks تامین می شود و کلاک تایمر های 2 و 3 و 4 و 5 و 6 و 7  از APB1 Timer clocks تامین می شود. در این پروژه فرکانس این واحد ها 8 مگاهرتز در نظر گرفته شده است.

پس از آن Prescaler و  Counter Periodمطابق تصویر زیر تنظیم می نماییم.

پس از انجام این تنظیمات فرکانس موج PWM از رابطه زیر قابل محاسبه می باشد

پس از انجام تنظیمات می توانیم با انتخاب گزینه Generate Code کد برنامه را تولید نمایید. در جلسه بعد به معرفی دستورات مورد استفاده در پروژه می پردازیم و با دستورات مربوط به PWM بیشتر آشنا می شویم.

                                                                                                                                                                    دلتون شاد و لبتون پرخنده

                                                                                                                                                                             محمد هادی دشتی

دیگر آموزش ها مرتبط با STM32:

برای مشاهده آموزش جلسه اول(معرفی هسته آرم و میکروکنترلرهای 32 بیتی شرکت ST  ) کلیک کنید.

برای مشاهده آموزش جلسه دوم( معرفی نرم افزارهای مورد نیازجهت برنامه نویسی و پروگرام  ) کلیک کنید.

برای مشاهده آموزش جلسه سوم( نحوه دانلود آخرین نسخه از نرم افزار STM32CubeMX   ) کلیک کنید.

برای مشاهده آموزش جلسه چهارم(نحوه انجام تنظیمات در نرم افزار STM32CubeMX  ) کلیک کنید.

برای مشاهده آموزش جلسه پنجم(نحوه برنامه نویسی پروژه چشمک زن با نرم افزار Keil ) کلیک کنید.

برای مشاهده آموزش جلسه ششم(نحوه تولید کد و تنظیمات در محیط STM32CubeMX و برنامه نویسی در محیط Keil برای راه اندازی کلید) کلیک کنید.

برای مشاهده آموزش جلسه هفتم(معرفی نرم افزار STM32 Flash Loader Demonstrator و نحوه دانلود برنامه و پروگرام کردن میکرو) کلیک کنید.

برای مشاهده آموزش جلسه هشتم( نحوه راه اندازی ال سی دی کاراکتری-قسمت اول) کلیک کنید.

برای مشاهده آموزش جلسه نهم( نحوه راه اندازی ال سی دی کاراکتری و آشنایی با دستورات کاربردی کتابخانه ال سی دی کاراکتری ) کلیک کنید.

برای مشاهده آموزش جلسه دهم(دوره آموزشی میکرو کنترلرهای STM32 _ راه اندازی واحد ADC(بخش اول)  ) کلیک کنید.

برای مشاهده آموزش جلسه یازدهم(دوره آموزشی میکرو کنترلرهای STM32 _ راه اندازی واحد ADC(بخش دوم)  ) کلیک کنید.

برای مشاهده آموزش جلسه دوازدهم(دوره آموزشی میکرو کنترلرهای STM32 _ راه اندازی واحد تایمر(بخش اول)  ) کلیک کنید.

برای مشاهده آموزش جلسه سیزدهم(دوره آموزشی میکرو کنترلرهای STM32 _ راه اندازی واحد تایمر(بخش دوم)  ) کلیک کنید.

برای مشاهده آموزش جلسه چهاردهم(دوره آموزشی میکرو کنترلرهای STM32 _ راه اندازی وقفه با تحریک خارجی(جلسه اول) ) کلیک کنید.

برای مشاهده آموزش جلسه پانزدهم(دوره آموزشی میکرو کنترلرهای STM32 _ راه اندازی وقفه با تحریک خارجی (بخش دوم)) کلیک کنید.

برای مشاهده آموزش جلسه شانزدهم(دوره آموزشی میکرو کنترلرهای STM32 _ راه اندازی سون سگمنت(بخش اول)) کلیک کنید.

برای مشاهده آموزش جلسه هفدهم(دوره آموزشی میکرو کنترلرهای STM32 _ راه اندازی سون سگمنت(بخش دوم)) کلیک کنید.

برای مشاهده آموزش جلسه هجدهم(دوره آموزشی میکرو کنترلرهای STM32 _ راه اندازی کانتر(بخش اول)) کلیک کنید.

برای مشاهده آموزش جلسه نوزدهم(دوره آموزشی میکرو کنترلرهای STM32 _ راه اندازی کانتر(بخش دوم)) کلیک کنید.

به سبد خرید اضافه شد.
سبد خرید
Item removed. بازگرداندن