Difference between revisions of "Microduino-Module RTC"

From Microduino Wiki
Jump to: navigation, search
(Arduino library and supported package)
 
(11 intermediate revisions by 3 users not shown)
Line 4: Line 4:
 
|
 
|
 
[[file:Microduino-RTC-T.jpg|400px|thumb|right|Microduino-RTC]]
 
[[file:Microduino-RTC-T.jpg|400px|thumb|right|Microduino-RTC]]
Microduino-RTC Module is a Real Time Clock module based on NXP CMOS PCF8563. RTC module uses TWI/I2C interface for communication. Data can be backed up with the addtional AT24c32 EEPROM. With an onboard capacitor, RTC module keeps time for serveral minutes after power disconnected. PCF8563 uses external crystal, and can provide timer intterupt tigger.
+
Microduino-RTC Module is a real time clock module based on NXP CMOS PCF8563. RTC module uses TWI/I2C interface for communication. Data can be backed up with the additional AT24c32 EEPROM. With an onboard capacitor, the module can keep timing for minutes after power-off since the PCF8563 adopts an external crystal and a capacitor as well as an interrupt input which can trigger the interruption periodically.
  
* Microduino RTC Real Time Clock Module
 
* PCF8563 CMOS Real-Time Clock (RTC)
 
* Two Wire Interface (I2C)
 
* Backup by additional EEPROM AT24C32
 
  
 
|-
 
|-
 
|
 
|
 
==Feature==
 
==Feature==
*Based on PCF8563 clock chip with century mark, seconds, minutes, hours, day, week, month, year;
+
*Based on PCF8563 clock chip with century mark, second, minute, hour, day, week, month and year.
*Use the I2C interface to communicate with the Core/Core+ module;
+
*Use the IIC interface to communicate with the Core/Core+ module.
*Use EEPROM AT24C32 with I2C interface;
+
*Use EEPROM AT24C32 with I2C interface.
*Low-power clock chip, the typical current value 0.25μA, plus a super capacitor, the clock is still running after a power diconnect;
+
*With a low-power clock chip and the typical current value is 0.25μA.
*Open source hardware circuit design, compatible with the Arduino IDE development environment for programming;
+
*With a super capacitor, the clock will keep running after power-off.
*Define unified interface Microduino specification and contain rich peripheral modules. Set up the quick connection with other Microduino modules and sensors easily and flexibly.  
+
*Open hardware circuit design and Arduino compatible programming development environment.
*2.54 pitch row female connector for easy integration into breadboard.
+
*With a uniform Microduino interface standard and rich peripheral modules, it can easily connect with other Microduino modules and sensors.
 +
*2.54mm(0.1 inch) pin pitch, compatible with bread boards and pegboards.  
 
|-
 
|-
 
|
 
|
Line 27: Line 24:
 
*Clock chip: PCF8563;
 
*Clock chip: PCF8563;
 
**Low-power CMOS real-time clock/calendar chip;
 
**Low-power CMOS real-time clock/calendar chip;
**Provides a programmable clock output, an interrupt output and a brown-out detector, transfers all address and data via the I2C serial bus interface;
+
**Provide a programmable clock output, an interrupt output and a brown-out detector. All the addresses and data will have a serial transmission through the I2C bus interface;
**The maximum bus speed is 400Kbits/s, after read and write data, the embedded word address register is automatically generated increment.
+
**With the maximum bus speed of 400Kbits/s, the embedded word address register will generate increment automatically after reading and writing data every time.
  
*EEPROM chip:AT24C32
+
*EEPROM chip: AT24C32
**Provide 32,768 serial electrically EPROM, organized as 4096 words × 8-bit length;
+
**Provide 32,768 EPROM serial power, which can  be organized with a length of 4096 words × 8-bit;
**Cascade feature allows AT24C32 articulated eight devices on the same I2C bug, the replication cycle of millions lives and saved the data to 100 years  with a write-protect function.
+
**Cascade feature allows AT24C32 to articulate eight devices on the same I2C bug, to have the replication cycle of millions lives and saved the data to 100 years  with a write-protect function.
*Super capacitor:XH414
+
*Super capacitor: XH414
**Provide a power-down timing function in a time slot。
+
**Provide a power-down timing function in a time slot.
  
 
[[File:RTC-Pinout-1.jpg|800px|thumb|center|Microduino-RTC-Pinout]]
 
[[File:RTC-Pinout-1.jpg|800px|thumb|center|Microduino-RTC-Pinout]]
Line 42: Line 39:
  
 
===Main components===
 
===Main components===
*Clock chip:PCF8563 '''[[File:PCF8563 cn.pdf]]''','''[[File:PCF8563 en.pdf]]'''
+
*Clock chip: PCF8563 '''[[File:PCF8563 cn.pdf]]''','''[[File:PCF8563 en.pdf]]'''
*EEPROM:AT24c32 '''[[File:Atmel24c32.pdf]]'''
+
*EEPROM: AT24c32 '''[[File:Atmel24c32.pdf]]'''
 
*Clock crystal:MS2V-T1S '''[[File:MS2V-T1S.pdf]]'''
 
*Clock crystal:MS2V-T1S '''[[File:MS2V-T1S.pdf]]'''
* Pcf8563:'''[[media:Pcf8563.pdf|Pcf8563]]'''
+
* Crystal: '''[[media:MS2V-T1S.pdf|MS2V-T1S]]'''
* AT24c32:'''[[media:AT24c32.pdf|AT24c32]]'''
 
* Crystal:'''[[media:MS2V-T1S.pdf|MS2V-T1S]]'''
 
  
 
[[File:RTC-Pinout-1.jpg|800px|thumb|center|Microduino-RTC-Pinout1]]
 
[[File:RTC-Pinout-1.jpg|800px|thumb|center|Microduino-RTC-Pinout1]]
Line 53: Line 48:
 
==Development==
 
==Development==
  
===Arduino library and supported package===
+
===Arduino library and support package===
*【Rtc_Pcf8563 library'''[http://playground.arduino.cc/Main/RTC-PCF8563 download ]''' 】
+
*Rtc_Pcf8563: https://github.com/Microduino/Microduino_Tutorials/tree/master/Microduino_Libraries/_06_Microduino_RTC_PCF8563
*【I2Cdev library'''[https://github.com/jrowberg/i2cdevlib/tree/master/Arduino/I2Cdev github download ]''' 】
+
*I2Cdev:https: //github.com/Microduino/Microduino_Tutorials/tree/master/Microduino_Libraries/_10_Microduino_System_I2Cdev
*【U8glib library'''[http://code.google.com/p/u8glib/ google download ]''' 】
+
*U8glib:https: //github.com/Microduino/Microduino_Tutorials/tree/master/Microduino_Libraries/_01_Microduino_OLED_U8glib
*【Pcf8563 Arduino Library'''[http://playground.arduino.cc/Main/RTC-PCF8563 ArduinoPlayground]''' 】【'''[[media:Rtc_Pcf8563.zip]]'''】
+
*【Pcf8563 Arduino Library'''[http://playground.arduino.cc/Main/RTC-PCF8563 ArduinoPlayground]''' 】
  
 
==Application==
 
==Application==
  
 
===Software Download===
 
===Software Download===
*Test program::'''[[File:Program Test RTC.zip]]'''
+
*Test program: '''[[File:Program Test RTC.zip]]'''
  
*Prepared hardware:Microduino FT232R、Microduino Core、Microduino RTC、Microduino OLED;
+
*Prepared hardware: Microduino FT232R, Microduino Core, Microduino RTC andMicroduino OLED;
*Prepared software:Microduino provides test program(Arduino part)、Arduino IDE(1.0 release upper)、Rtc_Pcf8563 library;
+
*Prepared software: Microduino provides test program(Arduino terminal), Arduino IDE(version 1.0 and higher)and Rtc_Pcf8563 library;
*Put the downloaded library to the library folder of Arduino IDE installation folder;
+
*Put the downloaded library to the library subfolder of Arduino IDE installation folder;
*Start Arduino IED,open the test program that Microduino provides,card type choose the "Microduino Core (Atmega328P@16M,5V)",then download directly.
+
*Start Arduino IED, open the Microduino test program, choose the "Microduino Core (Atmega328P@16M,5V)" , then download directly.
  
  
 
===Test the continued time after power down:[RTC_Time]===
 
===Test the continued time after power down:[RTC_Time]===
*Boot display the loading process,including:Welcome!Load Time...,Microduino logo,load a project about every 1s. Finished loading, enter into the main program page.
+
*The loading process is displayed after power on, including:Welcome!Load Time and "Microduino". It takes about one second to load a project. After the loading, it will enter into the main program page.
**The first line displays the date, the format is xx/xx/xx(year/month/day);
+
**Date is displayed on the first line. The format is xx/xx/xx(year/month/day);
**The second line displays the time, and week. The time format: xx:xx:xx(Hour:minute:second), followed the week(English format,excluding abbreviations)
+
**Time including week is displayed on the second line. The time format: xx:xx:xx(Hour:minute:second), followed the week(English format,excluding abbreviations);
**The third line fixed displays that:"Microduino-RTC v1.0  201310". Using a small font because of the characters more;
+
**The third line fixedly shows:"Microduino-RTC v1.0  201310". Please choose small font due to lots of characters;
*After program running, disconnect the power. Wait for a moment, you can see the Time on the second line that is the continued time instead of default set time;
+
*After program running, just disconnect the power and wait for a while. You can see the Time on the second line that is the continued time instead of the default time;
**(Note:RTC is a programmable clock output module,use function vosettime() to set time. After the download is completed, need commented vosettime () function to power down and then continue the next time, or else once the power restarts,recover the set value too)
+
**(Note: Microduino-RTC is a programmable clock output module,using function vosettime() to set time. By setting time through vosettime() function, you need to comment out vosettime() so that you can take blackout timing next time. Otherwise, you have to reset the value after power-on and restart.)
  
 
===Test EEPROM read/write:[RTC_EEPROM]===
 
===Test EEPROM read/write:[RTC_EEPROM]===
*Boot display the loading process,including:Welcome!,Load EEPROM,Microduino logo,load a project about every 1s. Finished loading, enter into the main program page;
+
*The loading process is displayed as soon as the system powers on, including Welcome!, Load EEPROM and "Microduino". In every minute, will the system load a project. It will enter the main program page after the download;
**The first line displays the random function values,the first value is a random number from 10 to 99, the second value is the read value power recovered after last power down;
+
**The first line displays the random function values, the first value is a random number from 10 to 99, the second value is the read value power recovered after last power down;
**The second line fixed displays that:"Microduino-RTC v1.0  201310". Using a small font because of the characters more;
+
**The second line fixed displays that: "Microduino-RTC v1.0  201310". Please choose small font due to lots of characters;
*During the test, unplug the power firstly and then plug in the power, you can see the last value prior to power-down transformation of random numbers read EEPROM updates to display the value of place.
+
*You can shut off the power supply and then restart during the test. And you'll see that the last value before the blackout has updated to the place where the EEPROM displays values.  
  
  
===Test timer interrupt:[RTC_Alarm]===
+
===Test regular interruption: [RTC_Alarm]===
*Boot display the loading process,including:Welcome!,Load Time...,Load Alarm..,Microduino logo,load a project about every 1s. Finished loading, enter into the main program page;
+
*The loading process is displayed as soon as the system powers on, including Welcome!, Load EEPROM and "Microduino". In every minute, will the system load a project. It will enter the main program page after the download;
**The first line display the time. Time format: xx:xx:xx(Hour:minute:second);
+
**The first line shows the time. Time format: xx:xx:xx(Hour:minute:second);
**The second line fixed displays that:"Microduino-RTC v1.0  201310". Using a small font because of the characters more;
+
**The second line shows: "Microduino-RTC v1.0  201310". Please choose small font due to lots of characters;
*Timer interrupt,when the time reaches the set time, led flashes once per second,lasts 1 minute, and you can see the countdown time on the OLED screen
+
*When it reaches the set time, the LED light flashes one time per second and lasts for one minute. You can see the countdown time on the OLED screen
  
 
|-
 
|-
 
|
 
|
  
==Buy==
+
==Purchase==
 
* '''[http://www.microduino.cc/Modules/Microdoino%20Extension%20Modules/RTC Buy Microduino-RTC ]'''
 
* '''[http://www.microduino.cc/Modules/Microdoino%20Extension%20Modules/RTC Buy Microduino-RTC ]'''
  

Latest revision as of 23:30, 1 August 2017

Language: English  • 中文
Microduino-RTC

Microduino-RTC Module is a real time clock module based on NXP CMOS PCF8563. RTC module uses TWI/I2C interface for communication. Data can be backed up with the additional AT24c32 EEPROM. With an onboard capacitor, the module can keep timing for minutes after power-off since the PCF8563 adopts an external crystal and a capacitor as well as an interrupt input which can trigger the interruption periodically.


Feature

  • Based on PCF8563 clock chip with century mark, second, minute, hour, day, week, month and year.
  • Use the IIC interface to communicate with the Core/Core+ module.
  • Use EEPROM AT24C32 with I2C interface.
  • With a low-power clock chip and the typical current value is 0.25μA.
  • With a super capacitor, the clock will keep running after power-off.
  • Open hardware circuit design and Arduino compatible programming development environment.
  • With a uniform Microduino interface standard and rich peripheral modules, it can easily connect with other Microduino modules and sensors.
  • 2.54mm(0.1 inch) pin pitch, compatible with bread boards and pegboards.

Specification

  • Clock chip: PCF8563;
    • Low-power CMOS real-time clock/calendar chip;
    • Provide a programmable clock output, an interrupt output and a brown-out detector. All the addresses and data will have a serial transmission through the I2C bus interface;
    • With the maximum bus speed of 400Kbits/s, the embedded word address register will generate increment automatically after reading and writing data every time.
  • EEPROM chip: AT24C32
    • Provide 32,768 EPROM serial power, which can be organized with a length of 4096 words × 8-bit;
    • Cascade feature allows AT24C32 to articulate eight devices on the same I2C bug, to have the replication cycle of millions lives and saved the data to 100 years with a write-protect function.
  • Super capacitor: XH414
    • Provide a power-down timing function in a time slot.
Microduino-RTC-Pinout

Document

Eagle PCB Download

Main components

Microduino-RTC-Pinout1

Development

Arduino library and support package

Application

Software Download

  • Prepared hardware: Microduino FT232R, Microduino Core, Microduino RTC andMicroduino OLED;
  • Prepared software: Microduino provides test program(Arduino terminal), Arduino IDE(version 1.0 and higher)and Rtc_Pcf8563 library;
  • Put the downloaded library to the library subfolder of Arduino IDE installation folder;
  • Start Arduino IED, open the Microduino test program, choose the "Microduino Core (Atmega328P@16M,5V)" , then download directly.


Test the continued time after power down:[RTC_Time]

  • The loading process is displayed after power on, including:Welcome!Load Time and "Microduino". It takes about one second to load a project. After the loading, it will enter into the main program page.
    • Date is displayed on the first line. The format is xx/xx/xx(year/month/day);
    • Time including week is displayed on the second line. The time format: xx:xx:xx(Hour:minute:second), followed the week(English format,excluding abbreviations);
    • The third line fixedly shows:"Microduino-RTC v1.0 201310". Please choose small font due to lots of characters;
  • After program running, just disconnect the power and wait for a while. You can see the Time on the second line that is the continued time instead of the default time;
    • (Note: Microduino-RTC is a programmable clock output module,using function vosettime() to set time. By setting time through vosettime() function, you need to comment out vosettime() so that you can take blackout timing next time. Otherwise, you have to reset the value after power-on and restart.)

Test EEPROM read/write:[RTC_EEPROM]

  • The loading process is displayed as soon as the system powers on, including Welcome!, Load EEPROM and "Microduino". In every minute, will the system load a project. It will enter the main program page after the download;
    • The first line displays the random function values, the first value is a random number from 10 to 99, the second value is the read value power recovered after last power down;
    • The second line fixed displays that: "Microduino-RTC v1.0 201310". Please choose small font due to lots of characters;
  • You can shut off the power supply and then restart during the test. And you'll see that the last value before the blackout has updated to the place where the EEPROM displays values.


Test regular interruption: [RTC_Alarm]

  • The loading process is displayed as soon as the system powers on, including Welcome!, Load EEPROM and "Microduino". In every minute, will the system load a project. It will enter the main program page after the download;
    • The first line shows the time. Time format: xx:xx:xx(Hour:minute:second);
    • The second line shows: "Microduino-RTC v1.0 201310". Please choose small font due to lots of characters;
  • When it reaches the set time, the LED light flashes one time per second and lasts for one minute. You can see the countdown time on the OLED screen

Purchase

History

  • first version: 2013/July/06 passed internal testing


Pictures

Front
Back