تحلیل کتابخانه

تحلیل و بررسی کتابخانه M62429P

M62429P-h-arduino-library-digispark
نوشته شده توسط معین صابری

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

 


نصب کتابخانه M62429P


 به منظور استفاده از کتابخانه M62429P، ابتدا می بایست آن را نصب کنیم. در این قسمت به نصب کتابخانه سنسور شتاب سنج با جستجو در مخازن آردوینو می پردازیم. به همین منظور، ابتدا در نرم افزار آردوینو بر روی گزینه Tools و سپس Manage Libraries را کلیک کنید. پس از کلیک بر روی این گزینه، با تصویر زیر رو به می شوید. این منو کتابخانه های در دسترس را به شما نشان می دهد. شما نیز می توانید با جستجوی نام کتابخانه مورد نظر خود، آن را در مخازن آردوینو یافته و سپس نصب کنید.

روش نصب کتابخانه PCF8574.h - دیجی اسپارک

 

مطابق فلش مشخص شده در تصویر فوق، در کادر جستجو عبارت M62429P را تایپ کنید. پس از چند لحظه با تصویر زیر رو به رو می شوید. در این مرحله، کتابخانه مشخص شده با کادر قرمز رنگ را با کلیک بر روی گزینه install، نصب کنید.

 


 الزامات و نکات فنی آی سی و کتابخانه M62429P


 همانطور که پیشتر نیز گفته شد، آی سی M62429P یک آی سی مخصوص کنترل صداست. به کمک این آی سی می توانید ولوم صدا را کنترل کرده و به آمپلی فایر اعمال کنید. این  آی سی که دارای ولتاژ ۴٫۵ الی ۵٫۵ است، با برد آردوینو سازگاری کامل دارد. همچنین این آی سی از دو کانال مجزا جهت کنترل صدا بهره می برد. در رابطه با کتابخانه این آی سی، به نظر می رسد که علاوه بر بردهای مبتنی بر AVR، بر بردهای مبتنی بر پلتفرم آردوینو قابل اجراست.

 

 این آی سی دارای دو پایه DATA و CLOCK جهت تبادل داده با میکروکنترلرهاست. اما توجه داشته باشید که این دو پایه ارتباطی با پروتکل های I2C و SPI ندارند. این آی سی با فرمت مخصوص به خود فرامین را از میکروکنترلر دریافت و اجرا می کند. البته کتابخانه M62429P ارتباط بین آی سی و آردوینو را به صورت خودکار فراهم ساخته و برنامه نویس به کمک توابع طراحی شده، با آی سی ارتباط برقرار خواهد نمود. در قسمت بعدی به تحلیل و بررسی توابع کلیدی و کاربردی خواهیم پرداخت.

 


توابع کلیدی کتابخانه M62429P


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

شرح ورودی ها تابع
این تابع کتابخانه را راه اندازی می نماید. ورودی اول پایه DATA و ورودی دوم پایه CLOCK جهت ارتباط با آی سی را تعیین می نماید. ورودی اول از نوع بدون علامت ۸ بیتی

ورودی دوم از نوع بدون علامت ۸ بیتی

void begin(uint8_t dataPin, uint8_t clockPin);
این تابع می توان ولوم هر کانال را در خروجی خود قرار می دهد. ورودی این تابع شماره کانال را تعیین می کند. عدد ۰ برای کانال نخست و عدد ۱ برای کانال دوم تعیین می گردد. ورودی از نوع بدون علامت ۸ بیتی int     getVolume(uint8_t channel);
به کمک این تابع می توانیم ولوم هر کانال را تعیین کنیم. ورودی اول شماره کانال و ورودی دوم میزان ولوم را تعیین می کند. برای ورودی اول مقادیر ۰ و ۱ به ترتیب برای کانال های الو و دوم و عدد ۲ برای هر دو کانال است. مقادیر معتبر برای ورودی دوم نیز بین ۰ الی ۲۵۵ به ترتیب از کمترین تا بیشترین مقدار خواهد بود.

توجه: در صورتیکه ورودی اول عدد ۲ قرار داده شود، هر دو کانال به طور همزمان ولوم آن ها کنترل خواهد شد.

ورودی اول از نوع بدون علامت ۸ بیتی

ورودی دوم از نوع بدون علامت ۸ بیتی

int     setVolume(uint8_t channel, uint8_t volume)
به کمک این تابع ولوم افزایش می یابد. بدون ورودی void    incr()
به کمک این تابع ولوم کاهش می یابد. بدون ورودی void    decr()
به کمک این تابع میزان ولوم روی وسط قرار می گیرد. بدون ورودی void    average()
به کمک این تابع صدا قطع(MUTE) خواهد شد. بدون ورودی void    muteOn()
به کمک این تابع صدا در صورت قطع بودن وصل خواهد شد. بدون ورودی   void    muteOff()
به کمک این تابع قطع و یا وصل بودن صدا تشخیص داده می شود. در صورتیکه صدا قطع باشد، خروجی TRUE خواهد شد. بدون ورودی bool    isMuted()

 

پس از بررسی توابع کلیدی و کاربردی، در قسمت بعد به بررسی یک نمونه برنامه جهت استفاده از توابع می پردازیم.

 


اجرای یک نمونه برنامه


 پس از بررسی توابع کلیدی و کاربردی، نوبت به اجرای یک نمونه برنامه می رسد.  در این برنامه ولوم صدا یکبار افزایش یافته و سپس کاهش خواهد یافت.

#include "M62429.h"
M62429  amp;
void setup() {
  Serial.begin(115200);
  delay(300);
  amp.begin(4, 5);
  Serial.print("AVERAGE VOLUME:");
  Serial.flush();
  for (int i = 0; i < 255; i = i + 10)
  {
    amp.setVolume(2, i);
    delay(200);
  }
  for (int i = 255; i > 0; i = i - 10)
  {
    amp.setVolume(2, i);
    delay(200);
  }

}

void loop() {
  // put your main code here, to run repeatedly:

}

 


 لوازم متناسب با آموزش


انواع برد آردوینو

انواع برد ESP

آی سی M62429P

 


جمع بندی


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

 

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

 

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

معین صابری

کارشناسی ارشد رشته معماری سیستم های کامپیوتری

مالي که ز تو کس نستاند، علم است
حرزي که تو را به حق رساند، علم است
جز علم طلب مکن تو اندر عالم
چيزي که تو را ز غم رهاند، علم است
(شیخ بهایی)

تبادل نظر و رفع عیب با ثبت دیدگاه