آموزش میکروکنترلر STM32 قسمت چهاردهم: رجیستر های پشتیبان RTC 

آموزش میکروکنترلر STM32 قسمت چهاردهم: رجیستر های پشتیبان RTC 

آموزش میکروکنترلر STM32 قسمت چهاردهم: رجیستر های پشتیبان RTC 
آموزش میکروکنترلر STM32 قسمت چهاردهم: رجیستر های پشتیبان RTC 

آموزش میکروکنترلر STM32 – قسمت چهاردهم ;

سیسوگ در قسمت سیزدهم از آموزش میکروکنترلر STM32 وقفه های رابط RTC از جمله وقفه ثانیه و وقفه آلارم را معرفی کرد و آموزش داد چگونه می‌توان تاریخ شمسی و میلادی را به یکدیگر  تبدیل کرد و هم‌چنین تبدیل یک تاریخ و زمان به عدد Unix Time Stamp یا بالعکس را آموزش داد. در این قسمت از آموزش میکروکنترلر STM32 قصد دارد به آموزش رجیستر‌های پشتیبان و کاربردی RTC بپردازد. با سیسوگ همراه باشید.

رجیستر های پشتیبان RTC

تعداد رجیسترهای پشتیبان RTC در خانواده CORTEXM3 به تعداد 42 عدد می‌باشد و در خانواده CORTEXM4 به تعداد 20 عدد از این رجیسترهای 32 بیتی موجود می‌باشد. کاربرد این رجیسترها این است که ما می‌توانیم محتوای آن‌ها را حتی در زمانی که برق میکروکنترلر قطع است با اتصال باتری به پایه BAT میکرو حفظ کنیم. به عنوان مثال می‌توانیم از این رجیسترها برای ساخت یک شمارنده در یک خط تولید استفاده کنیم، که تعداد شمارش را داخل این رجیسترها قرار دهیم. تا زمانی که دستگاه خاموش می‌شود محتوا رجیستر که در اصل همان شمارش انجام شده می‌باشد حفظ شود. یک کاربرد اصلی دیگر که از این رجیسترها برای اطلاع از بهم خوردن زمان و تاریخ واحد RTC می‌باشد به این صورت که زمانی که واحد RTC برای اولین بار پیکره‌بندی می‌شود ما یکی از این رجیسترها را با مقداری خاص پر می‌کنیم، در نتیجه هر بار که برق میکروکنترلر قطع و وصل می‌شود ما دوباره در ابتدای برنامه مقدار داخل آن رجیستر را بررسی می‌کنیم، اگر بهم خورده بود به این معنی است که مقادیر RTC بهم خورده و ساعت و تاریخ باید دوباره تنظیم شوند. ما از طریق فرمان‌های زیر می‌توانیم مقادیر داخل این رجیسترها را تغییر دهیم یا بخوانیم.

 

 

از طریق تابع بالا می‌توانیم یک مقدار مشخص را در یکی از رجیسترهای پشتیبان بریزیم. در اینجا منظور از آرگومان hrtc همان نام واحد RTC می‌باشد و منظور از آرگومان BackupRegister  نام رجیستر پشتیبان می‌باشد که میتواند بین RTC_BKP_DR1 تا RTC_BKP_DR42 باشد و منظور از آرگومان Data  همان مقداری است که می‌خواهیم داخل رجیستر مربوطه جایگذاری کنیم.

 

 

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

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

 

حمایت از مهدی عبدالهی

خوشحال میشیم برای تداوم و کیفیت ما رو حمایت کنید.

0 نفر

پــــســنــدیـده انـد

توجه

مهدی عبدالهی
مهدی عبدالهی

کانال میکروالکترونیک @microstm32

دیدگاه ها

6 دیدگاه

  • سعید دلشاد
    ۵ آبان ۱۴۰۰

    با سلام ببخشین چرا اموزش هارو ادامه نمیدین؟؟

  • hossein
    ۱۱ بهمن ۱۳۹۹

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

    میشه درباره این موضوع بیشتر توضیح بدین و اینکه جچوری میشه اینکارو کرد

  • َAmir
    ۱۸ آذر ۱۳۹۸

    سلام
    آموزش های این بخش دیگه ادامه نداره؟

    • Nasim Hematian
      electronic girl
      ۱۹ آذر ۱۳۹۸

      سلام دوست عزیز
      آموزش های STM32 به دو بخش STM32F1 و STM32F4 تقسیم شده. آموزش های STM32F1 در قسمت 14 به پایان رسیده ولی میتونین نکات بیشتر را در آموزش STM32F4 مطالعه کنین.
      در اینجا میتونین آموزش ها را ببینین.

  • مجید
    ۱۴ اسفند ۱۳۹۷

    در میکرو سری f1 میشه محاسبات اعشاری داشت و مثلا محاسبه سینوس و کسینوس؟

    • Zeus ‌
      زئوس Zeus
      ۱۵ اسفند ۱۳۹۷

      البته کتابخانه Math داره که عملیات ریاضی رو سرعت بخشیده ولی خوب به دلیل عدم وجود سخت افزار FPU باز خیلی نسبت به سری F4 کند هست !
      بهترین راه برای سرعت بخشیدن به عملیات ریاضی خصوصا محاسبات مثلثاتی استفاده از Table هستش

پر بحث ترین ها

مسابقه دوم : چالش برنامه نویسی به زبان C

مسابقه اول سیسوگ (مسابقه اول: درک سخت افزار) انتقادهای زیادی رو در پی داشت تا جایی که حتی خودمم به نتیجه مسابقه...

Zeus ‌ Zeus ‌
  • 2 سال پیش

راه اندازی LCD گرافیکی Nokia 1661 و دانلود کتابخانه آن

LCD گرافیکی یکی از مهم ترین پارامترهای موجود در طراحی انواع مدارات الکترونیکی پیچیده و حتی ساده است ، نمایش وضعیت و...

Zeus ‌ Zeus ‌
  • 4 سال پیش

ریموت کدلرن و چکونگی دکد کردن آن به همراه سورس برنامه

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

Zeus ‌ Zeus ‌
  • 5 سال پیش

مسابقه سوم: استخراج داده از رشته ها در زبان C

نزدیک به 5 ماه از مسابقه دوم سیسوگ می‌گذره و فکر کردم که بد نیست یک چالش جدید داشته باشیم! البته چالش‌ها...

Zeus ‌ Zeus ‌
  • 2 سال پیش

همه چیز درباره ریموت کنترل‌های هاپینگ

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

Zeus ‌ Zeus ‌
  • 5 سال پیش

مسابقه ششم: بزن میکروکنترلر را بسوزون!

بزنم میکروکنترلر را بسوزونم اونم تو  این شرایط!، طراحی مسابقه از اون چیزی که به نظر می‌رسه سخت‌تر است، باید حواست باشه...

Zeus ‌ Zeus ‌
  • 9 ماه پیش

آموزش قدم به قدم راه اندازی +NRF24L01

آموزش قدم به قدم راه اندازی +NRF24L01  با کتابخانه سازگار با انواع میکروکنترلرها و کامپایلرها قبل از اینکه قسمت بشه با ماژول...

رسول خواجوی بجستانی رسول خواجوی بجستانی
  • 3 سال پیش

ساخت ماینر با FPGA و ARM

چند ماهی هست که تب بیت کوین و ارزهای دیجیتال خیلی بالا رفته! چه شد که این پست را نوشتم همانطور که...

Zeus ‌ Zeus ‌
  • 3 سال پیش

مسابقه چهارم: کدام حلقه سریع‌تر است؟

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

Zeus ‌ Zeus ‌
  • 1 سال پیش

درآمد زایی به سبک پینوکیو

ما مهندسین, بخصوص مهندسین برق و الکترونیک … علاقه خاصی به طراحی و ساختن داریم علاقه زیادی به تکنولوژی , بخصوص از...

Sisoog Os Sisoog Os
  • 3 سال پیش
سیـــســـوگ

مرجع متن باز آموزش الکترونیک