PWM تایمر 1 در STM8 | قسمت بیستم آموزش STM8

blog
۱۳۹۷-۰۸-۲۸
4 دقیقه

سیسوگ در قسمت نوزدهم آموزش میکروکنترلر STM8 راه اندازی PWM با تایمر 2 در میکروکنترلر STM8 را توضیح داد و نتیجه عملکرد آن را با 3 عدد LED چشمک‌زن تست کرد. در این قسمت آموزش میکروکنترلر STM8 سیسوگ قصد دارد راه اندازی PWM با تایمر 1 را مورد بررسی قرار دهد. با سیسوگ همراه باشید.

PWM تایمر 1 :

تایمر 1 یک تایمر پیشرفته است، بنابراین PWM‌ هایی که با این تایمر تولید می‌شوند دارای ویژگی‌های اضافی نسبت به دیگر تایمر‌ها هستند. به عنوان مثال، امکان تولید PWM‌های مکمل با TIM1 وجود دارد. بیش از 3 مجموعه PWM مکمل در میکروکنترلر STM8  می‌توان تولید کرد. به عنوان مثال، PWM‌های مورد استفاده در طراحی مبدل سه فاز، یکسوکننده‌ها و … . PWM‌های تولید شده با TIM1 برای برنامه‌های کنترل موتور بسیار مفید هستند. هم‌چنین می‌توان dead_time و brake را نیز اضافه نمود. علاوه بر این‌ها، TIM1 می‌تواند PWM‌هایی را مانند PWM‌های ساخته شده توسط تایمر GP ایجاد کند. در این حالت، خروجی‌های PWM به صورت آزاد در دسترس نیست و تا چهار کانال PWM مستقل می‌تواند در دسترس قرار گیرد.

در این مثال، خواهیم دید که چگونه می‌توان PWM های مکمل را در کانال 1 TIM1 PWM ایجاد کرد.

 

اتصالات سخت افزاری

اتصالات سخت‌افزاری برای PWM تایمر 1

نمونه کد PWM تایمر 1

 

توضیحات

این بار از تمام  16 مگاهرتز سرعت HSI برای کلاک داخلی و CPU استفاده می‌کنیم:

 

مانند مثال‌های قبل، پین‌های GPIO خروجی PWM به عنوان خروجی تنظیم می‌شوند.

 

تنظیم اولیه کانال TIM1 و OC درست همانند مثال قبلی با برخی تفاوت‌های جزئی است. به نظر می‌رسد که بخش تولید زمان نیاز به استدلال‌های اضافی دارد. به این دلیل است که:

  • بر خلاف تایمرهای دیگر، مقدار  precaler TIM1 مقدار ثابتی نیست و می‌تواند ضریبی از 2 باشد.
  • شمارنده علاوه بر شمارش رو به بالا ، شمارش به صورت معکوس را نیز دارد.
  • تایمر 1 شمارنده تکرار شونده نیز دارد.
  • به جز تایمر اصلی تمامی تایمرهای STM8 دارای 16 بیت هستند.

اگر فایل هدر تایمر 1 را باز کنید، توابع بسیاری را خواهید دید. بسیاری از این فانکشن‌ها منحصراً برای تایمر 1 هستند. که بیانگر قدرت این تایمر پیشرفته است.

به همین ترتیب، برخی از اطلاعات اضافی که در هنگام تنظیم کانال‌های OC مورد نیاز است وجود دارد. حتی اگر از کانال‌های مکمل استفاده نکنیم به اطلاعات آن‌ها نیاز داریم. می‌توان پلاریته را برای PWM در حالت پیش فرض قرار داد.

 

برای تغییر چرخه کار کانال، باید این تابع را فراخوانی کنیم:

خروجی‌ها به صورت جفتی اتفاق می‌افتند و آنها کاملاً به هم وابسته هستند. به همین دلیل هیچ عملکرد جداگانه‌ای برای خروجی با برچسب N وجود ندارد.

 

PWM TIM1

PWM TIM1

 

سیسوگ در قسمت بیستم و یکم از مجموعه آموزش میکروکنترلر STM8 قصد دارد به بررسی اجمالی ارتباطات بپردازد. با سیسوگ همراه باشید.

منبع

مطالب مرتبط

 

 

اطلاعات
14
0
لینک و اشتراک
profile

electronic girl

متخصص الکترونیک

دوستدار الکترونیک

مقالات بیشتر
slide

پالت | بازار خرید و فروش قطعات الکترونیک

قطعات اضافه و بدون استفاده همیشه یکی از سرباره‌‌های شرکتها و طراحان حوزه برق و الکترونیک بوده و هست. پالت سامانه‌ای است که بصورت تخصصی اجازه خرید و فروش قطعات مازاد الکترونیک را فراهم می‌کند. فروش در پالت
family

آیسی | موتور جستجوی قطعات الکترونیک

سامانه آی سی سیسوگ (Isee) قابلیتی جدید و کاربردی از سیسوگ است. در این سامانه سعی شده است که جستجو، انتخاب و خرید مناسب تر قطعات برای کاربران تسهیل شود. وقتی شما در این سامانه، قطعه الکترونیکی را جستجو می‌کنید؛ آی سی به سرعت نتایج جستجوی شما در اکثر فروشگاه‌های آنلاین در حوزه قطعات الکترونیک را نمایش می‌دهد. جستجو در آیسی
family

فروشگاه سیسوگ

فروشگاه سیسوگ مجموعه ای متمرکز بر تکنولوژی های مبتنی بر IOT و ماژول های M2M نظیر GSM، GPS، LTE، NB-IOT، WiFi، BT و ... جایی که با تعامل فنی و سازنده، بهترین راهکارها انتخاب می شوند. برو به فروشگاه سیسوگ
family

سیسوگ فروم | محلی برای پاسخ پرسش‌های شما

دغدغه همیشگی فعالان تخصصی هر حوزه وجود بستری برای گفتگو و پرسش و پاسخ است. سیسوگ فروم یک انجمن آنلاین است که بصورت تخصصی امکان بحث، گفتگو و پرسش و پاسخ در حوزه الکترونیک را فراهم می‌کند. پرسش در سیسوگ فرم
become a writer

نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله
become a writer

نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله
خانواده سیسوگ

پالت | بازار خرید و فروش قطعات الکترونیک

قطعات اضافه و بدون استفاده همیشه یکی از سرباره‌‌های شرکتها و طراحان حوزه برق و الکترونیک بوده و هست. پالت سامانه‌ای است که بصورت تخصصی اجازه خرید و فروش قطعات مازاد الکترونیک را فراهم می‌کند.
family

آیسی | موتور جستجوی قطعات الکترونیک

سامانه آی سی سیسوگ (Isee) قابلیتی جدید و کاربردی از سیسوگ است. در این سامانه سعی شده است که جستجو، انتخاب و خرید مناسب تر قطعات برای کاربران تسهیل شود. وقتی شما در این سامانه، قطعه الکترونیکی را جستجو می‌کنید؛ آی سی به سرعت نتایج جستجوی شما در اکثر فروشگاه‌های آنلاین در حوزه قطعات الکترونیک را نمایش می‌دهد.
family

فروشگاه سیسوگ

فروشگاه سیسوگ مجموعه ای متمرکز بر تکنولوژی های مبتنی بر IOT و ماژول های M2M نظیر GSM، GPS، LTE، NB-IOT، WiFi، BT و ... جایی که با تعامل فنی و سازنده، بهترین راهکارها انتخاب می شوند.
family

سیسوگ فروم | محلی برای پاسخ پرسش‌های شما

دغدغه همیشگی فعالان تخصصی هر حوزه وجود بستری برای گفتگو و پرسش و پاسخ است. سیسوگ فروم یک انجمن آنلاین است که بصورت تخصصی امکان بحث، گفتگو و پرسش و پاسخ در حوزه الکترونیک را فراهم می‌کند.
family

دیدگاه ها

profile
fatemeh گفت :
۱۴۰۰-۰۹-۲۲ ۱۰:۳۰

سلام من کد بالا رو در نرم افزار میزنم ارور هم نمیده اما pwm برام کار نمیکنه مشکل ازکجاس؟

profile
Zeus ‌ گفت :
۱۴۰۱-۰۲-۲۱ ۱۷:۲۹

قطعا جایی مشکل هست مثل فعال کردن تایمر یا کال کردن یه روتین یا همچین چیزی

profile
mohsen گفت :
۱۴۰۰-۰۷-۱۷ ۱۰:۱۸

سلام و عرض ادب. با تشکر از مطالب آموزشی مفید شما. در بخش تایمرها امکان این هست که توضیحاتی در مورد شمارش تعداد پالسهای ورودی هم داشته باشیم. بطور مثال یک شمارنده برای تعداد پالسهای ورودی به سیستم.

profile
Zeus گفت :
۱۴۰۰-۰۷-۲۵ ۱۱:۳۵

سلام دوست عزیز
اگر آموزش ادامه پیدا کرد بله حتما چرا که نه !

profile
سعید جنتی گفت :
۱۴۰۰-۰۲-۱۶ ۰۵:۱۵

واقعا نهایت تشکر رو از شما دارم، خیلی سایتتون آموزنده هست و این آموزش زمانی ارزش چند برابر به خودش میگیره که شما آموزش ها رو زحمت کشیدین و سپس رایگان در اختیار عموم قرار دادین، تجربه شخصی خودم در مورد آموزش stm8 اینکه آموزش متنی و رایگان شما از فیلم و سی دی بعضی از فروشگاه ها که حتی با تضمین صد در صد تبلیغ محصول خود را مینمایند و جوابگوی سوالات نیز نیستن و من نیز نام نمیبرم خیلی بهتر برام بوده و صمیمانه آرزوی بهترینها رو برایتان دارم.همچنین STM32 را نیز با کمک سایت شما فرا آموختم .

profile
zeus گفت :
۱۴۰۰-۰۳-۰۴ ۲۲:۵۵

سلام دوست عزیز
خیلی ممنونم برای کامنت انرژی بخشتون – ما رو برای پیمودن ادامه راه دلگرم میکنه 🙂
خوشحالم که بخشی از آموزش ها تونسته براتون مفید باشه و باید تشکر کنم از تمام دوستانی که در این راه ما رو راهنمایی و کمک کردن

profile
حمید رضا گفت :
۱۳۹۹-۱۰-۰۹ ۱۲:۴۰

سلام
توضیحات عالی هست فقط من خروجی pwm روی برد دست ساز خودم ندارم یه جا خوندم که می گفت باید byte option ها رو تنظیم کنید تا خروجی pwm داشته باشید لطفا راهنمایی کنید
ممنون

profile
زئوس Zeus گفت :
۱۳۹۹-۱۰-۲۰ ۱۴:۰۶

سلام دوست عزیز
تا اونجا که من اطلاع دارم – این میکروکنترلر آپشن بایتی برای این موضوع نداره و بیشتر بحث برمیگرده تنظیمات خود تایمر که همه به شکل نرم افزاری انجام میشه

profile
عرفان گفت :
۱۳۹۹-۰۹-۱۷ ۰۵:۵۵

با سلام و خدا قوت
TIM 1 بنده کانال 1 و 2 اش کار نمیکنه ودر صورتی که PWM کانال 3 و 4 به خوبی کار میکنن .STM8S003
ممنون میشم راهنمایی بفرمائید

profile
کامین جلیلی گفت :
۱۴۰۰-۰۱-۲۲ ۱۲:۰۶

سلام عرفان. اگه کدتون رو درست نوشته باشید ممکن است فیزیکالی این کانال‌ها دچار مشکل شده باشن.

profile
Amir گفت :
۱۳۹۷-۰۹-۱۱ ۱۰:۳۳

لطفا مطلب بیشتری در این رابطه قرار بدین
مثلا شما درباره I2C چیزی نگفتین. (راه اندازی یه E2PROM یا هر چیزی که با I2C کار میکنه)

profile
electronic girl گفت :
۱۳۹۷-۰۹-۱۱ ۱۱:۰۵

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

profile
Amir گفت :
۱۳۹۷-۰۹-۱۰ ۱۴:۱۱

سلام خسته نباشید
آموزش هاتون خیلی خوبه _ کاملا مفید هست _ امیدوارم ادامه دار باشه
ممنون

profile
electronic girl گفت :
۱۳۹۷-۰۹-۱۱ ۰۹:۱۰

سلام ممنون از لطف شما
قسمت های آموزشی میکروکنترلر STM8 تقریبا رو به پایان است و در روزهای آینده قسمت بعدی را منتشر میکنیم.

become a writer

نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله
become a writer

نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله