()analogWrite در آردوینو

blog
۱۳۹۶-۰۵-۲۳
1 دقیقه

()analogWrite در آردوینو یک مقدار آنالوگ (PWM wave) را روی پین می‌نویسد. از ()analogWrite می‌توان برای تنظیم روشنایی یک ال‌ای‌دی با شدت نور متنوع یا راندن یک موتور با سرعت‌های مختلف استفاده کرد. پس از فراخوانی ()analogWrite، تا فراخوانی بعد همین دستور (یا فراخوانی ()digitalRead یا ()digitalWrite روی همان پین) پین یک موج مربعی ثابت را طبق چرخه‌ی وظیفه‌ی (دوره‌ی کاری – duty cycle) مشخص‌شده، تولید خواهد کرد. در بیشتر پین‌ها، فرکانس سیگنال PWM، تقریباً 490 هرتز است. در آردوینو Uno و بردهای مشابه، پین‌های 5 و 6 حدوداً فرکانس 980 هرتز دارند. پین‌های 3 و 11 Leonardo هم فرکانس 980 هرتز دارند.

 

در بیشتر بردهای آردوینو (آن‌هایی که مبتنی بر  ATmega168 و ATmega328 هستند)، این تابع (فانکشن) روی پین‌های 10،9،6،5،3 و 11 و در آردوینو Mega، تابع روی پین‌های 13-2 و 46-44 کار می‌کند. بردهای قدیمی‌تر آردوینو دارای ATmega8، فقط روی پین‌های 10،9 و 11 از ()analogWrite پشتیبانی می‌کند.

آردوینو Duo از ()analogWrite روی پین 2 ار طریق پین 13 و پین‌های DAC0 و DAC1 پشتیبانی می‌کند. بر‌خلاف پین‌های PWM، پین  DAC0 و DAC1 مبدل دیجیتال به آنالوگ هستند و همانند خروجی‌های آنالوگ واقعی عمل می‌کنند.

قبل از فراخوانی ()analogWrite نیازی به فراخوانی ()pinMode و تنظیم پین‌ها به‌عنوان خروجی نیست.

تابع analogWrite هیچ ارتباطی با پین‌های آنالوگ و  تابع analogRead ندارد.

سینتکس (نحو)

(analogWrite(pin, value

پارامتر

pin: پین برای نوشتن.

value: چرخه‌ی وظیفه: بین ۲۵۵ (همیشه on) و ۰ (همیشه off)

خروجی

ندارد (هیچ)

نکته

خروجی‌های PWM تولید‌شده روی پین‌های 5 و 6، چرخه‌ی وظیفه‌ی بالاتری نسبت به آنچه انتظار می‌رود را خواهد داشت. این اتفاق به دلیل اثر متقابل با توابع ()millis و ()delay است که تایمر درونیِ یکسانی را برای تولید آن خروجی‌های PWM به‌صورت مشترک استفاده می‌کنند و بیشتر در تنظیمات پایین چرخه‌ی وظیفه (به‌عنوان‌مثال 10 – 0) دیده خواهد شد و ممکن است به مقداری از 0 که به‌صورت کامل خروجی روی پین 5 و 6 را خاموش نکند، بیانجامد.

مثال:

خروجی را به LED تنظیم می کند که متناسب با مقدار خوانده‌شده از پتانسیومتر است:

()analogRead در آردوینو

 

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

Yalda

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

علاقه‌مند به یادگیری چیزهای جدید!

مقالات بیشتر
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
سپهر یحیایی گفت :
۱۳۹۹-۰۸-۱۱ ۱۹:۳۰

خوب بود اما کامل نبود بهتر بود ک توضیحات بیشتری بدهید .
همینطور برنامه رو باز تر می‌کردید .
ممنون

profile
Sisoog Os گفت :
۱۳۹۹-۰۸-۱۲ ۰۲:۰۹

این قسمت بیشتر یه حالت رفرنس داره و ترجمه خود سایت اردوینو هست و گرنه واقعا جا برای توضیحات خیلی زیاد تر هست

profile
حامد گفت :
۱۳۹۸-۱۲-۲۸ ۱۹:۱۰

ببخشید نوشتید که: وقتی value =0 باشه حالت on خواهد داشت و وقتی که value=255باشه حالت off خواهد داشت (در حالت analogWrite).
این برعکسش درست نیست؟

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

بله دوست عزیز – اصلاح شد
ممنون برای نکته سنجی شما 🙂

become a writer

نویسنده شو !

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

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

نویسنده شو !

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

ارسال مقاله