Advanced I/O - پیشرفته

tone – ایجاد موج مربع

tone – ایجاد موج مربع

توضیحات

تابع tone – ایجاد موج مربع در آردوینو، یک موج مربعی با فرکانس مشخص (و 50 درصد چرخه کار) را روی یک پین ایجاد می کند. همچنین می توان مدت زمان تداوم این موج را می توان مشخص کرد ، در صورتی که مدت زمان مشخص نشود موج تا زمان فرخوان دستور noTone() ادامه پیدا می کند. برای پخش tone، پین می‌تواند به بازر piezo یا هر نوع بلندگوی دیگری متصل شود.

فقط یک تن می تواند همزمان تولید شود. اگر لحنی از قبل روی پین متفاوتی پخش می شود ، فراخوانی () صدا هیچ تاثیری نخواهد داشت. اگر tone در حال اجرا روی همان پینی که فراخوان انجام می‌شود، است این فراخوانی، فرکانس را تنظیم خواهد کرد.

نکته : استفاده از تابع  tone() در خروجی PWM در پایه های 3 و 11 (روی بردهایی به جز Mega) تداخل ایجاد می کند.

  • امکان تولید آهنگهای کمتر از 31 هرتز وجود ندارد. برای جزئیات فنی ، Brett Hagman’s notes را ببینید.

نحوه استفاده

tone(pin, frequency)
tone(pin, frequency, duration)
  • pin: پین اردوینو که قرار است موج در ان ایجاد شود.
  • frequency: فرکانس صدا (موج) که قرار است در ان ایجاد شود. داده از نوع unsigned int است.
  • duration (اختیاری): مدت زمان پخش صدا (موج) برحسب میلی ثانیه. داده از نوع unsigned long است.

خروجی تابع

تابع خروجی ندارد.

نکات مهم

اگر می خواهید صدا های مختلف را روی چندین پایه پخش کنید، باید قبل از فراخوانی tone()  روی پایه بعدی، noTone()  را روی پایه مورد نظر اجرا کنید.

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *