آردوینو پروژه های آردوینو

آموزش راه اندازی ماژول ساعت Ds3231 آردوینو

آموزش ماژول ساعت ds3231 آردوینو arduino
نوشته شده توسط علیرضا قربانی

آموزش راه اندازی ماژول ساعت Ds3231 آردوینو

آی سی DS2331آی سی تکمیل شده و پیشرفته ترDS1307 بوده که علاوه بر امکانات DS1307 از دقت بالاتر، در نظرگرفتن پین ریست و نیز قابل برنامه ریزی ۲زمان مختلف به منظور تنظیم آلارم است. ولتاژ کاری ماژول ۳٫۳ الی ۵٫۵ ولت بوده و از باتری بک آپ و جریان مصرفی بسیار پایین استفاده می کند. در واقع این ماژول ساعت زمان واقعی real time clock(RTC) بوده که از پروتکل سریالI2C پشتیبانی می کند. کارکرد این ماژول براساس کدهای binary coded decimalکه اصطلاحا کدBCD نامیده می شود، است.باتری بک آپ قرار گرفته بر روی این ماژول زمانیکه برق در دسترس نیست باعث جلوگیری از عقب افتادن زمان خواهد شد. منبع کلاک این آی سی از یک کریستال ساعت به فرکانس ۳۲٫۷۶۸KHZاستفاده می کند. این آی سی قابل کارکرد در دو حالت۲۴ساعته و۱۲ساعته AM/PM را دارد همچنین علاوه بر ساعت بصورت ثانیه، دقیقه، ساعت امکان ذخیره تاریخ بصورت روز، هفته، ماه، سال را نیز دارد. در ضمن اطلاعات نوشته شده بر روی این آی سی تا سال۲۱۰۰ برنامه ریزی شده است. از دیگر امکانات این ماژول می‌توان به اندازه‌گیری دما اشاره نمود. در ادامه آموزش با مرجع تخصصی آردوینو ، دیجی اسپارک همراه باشید.

 

ویژگی‌های ماژول ds3231
  • قابلیت تصحیح سال کبیسه
  • چیپ حافظه AT24C32 با ظرفیت ۳۲ کیلوبایت
  • ارتباط از طریق پروتکل I2C
  • ماکزیمم سرعت انتقال ۴۰۰KHz
  • دقت دماسنج ۳+/- درجه سانتی‌گراد

 

 

پروژه

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

 

سخت افزار مورد نیاز

ماژول ساعت دقیق Ds3231

ماژول نمایشگر OLED I2C

آردوینو MEGA256 ( از آردوینو‌های مدل دیگر نیز می‌توان استفاده نمود)

یک عدد تاچ سوئیچ

برد برد

 

اتصالات

آموزش ماژول ساعت ds3231

اتصالات ماژول ساعت ds3231 به آردوینو

 

 

 

در ابتدا  کتابخانه ماژول ساعت ds3231 را از لینک زیر دانلود نموده و سپس آن را به کتابخانه نرم افزار آردوینو متصل کنید.

دانلود کتابخانه ds3231 مختص آردوینو

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

آموزش ماژول OLED در آردوینو

آموزش دیبانسینگ کلید در آردوینو

کد‌های زیر را بر روی آردوینو آپلود کنید:

 

 

 

 

توضیحات توابع به کار رفته در کد‌های فوق

در ابندا توجه داشته باشید که حتما کتابخانه Wire.h را در برنامه فراخوانی کرده باشید در غیر اینصورت برنامه نتیجه درستی را ارائه نمی‌دهد.

 

RTCDateTime dt;

برای اینکه بتوانیم به مقادیر داخل ساعت دسترسی داشته باشیم باید از استراکت موجود در داخل کتابخانه ساعت یک آبجمت بسازیم.

 

clock.begin ();

توسط تابع فوق ماژول ساعت  ds3231 فعال می‌شود.

clock.setDateTime (__DATE__, __TIME__);

توسط تابع clock.setDateTime  می‌توان ساعت و تاریخ ماژولمان را تنظیم کنیم. که ما با  دادن دو آرگمان __DATE__ و __TIME__  برنامه را جوری تنظیم می‌کنیم که هنگام آپلود شدن کد بر روی آردوینو به طور خودکار ساعت ماژول با ساعت کامپیوتر تنظیم می‌شود و نیازی به تنظیم دستی آن نمی‌باشد.در صورتی که سیستم شما بر روی سال شمسی تنظیم شده باشد ، ماژول نیز ساعت شمسی را در یافت می‌کند.

clock.getDateTime ();

توسط این تابع زمان و تاریخ را از ماژول دریافت می‌کنیم ، سپس باید آن را درون یک استراکت از جنس RTCDateTime بریزیم پس همانند کد زیر عمل می‌کنیم:

 

سپس برای دسترسی به تک تک مقادیر ساعت ، دقیقه و ثانیه باید از دستورات زیر استفاده کنیم:

 

clock.readTemperature ()

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

 


در قسمت‌های بعدی آموزش ماژول ساعت ds3231 به تنظیم alarm می‌پردازیم.

 

در ادامه به ویدیو این پروژه توجه کنید.

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

علیرضا قربانی

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

۱۱ دیدگاه

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