====== rtcRead ======
''u8 rtcRead(u8 rtcAdr) ''
|rtcAdr : 어드레스 (0 부터 6 까지 사용가능) |
==== 설명 ====
RTC칩의 지정한 어드레스로부터 정보를 읽어옵니다.
MOACON 에는 정밀도가 높은 RTC 칩이 내장되어 있습니다. 이 칩은 온도센서를 포함하고 있어 온도변화에 따른 오차를 줄여줍니다. 또한 건전지가 내장되어 있어, 전원이 없는
상황에서도 시간이 계속 갱신됩니다.
건전지 교환주기는 10 년입니다. 교환시기가 되면,모아콘 CPU 모듈을 분해한뒤 내부에 RTC 용 건전지(CR2032)를 교환해주시기 바랍니다.
다음은 RTC 칩의 어드레스별 데이터 정보입니다.
^rtcAdr ^Value ^Range ^bit7 ^bit6 ^bit5 ^bit4 ^bit3 ^bit2 ^bit1 ^bit0^
|0 |Second |0 to 59 | | 2nd digit place ||| 1st digit place ||||
|1 |Minute |0 to 59 | | 2nd digit place ||| 1st digit place ||||
|2 |Hour |0 to 23 | | | 2nd digit place || 1st digit place ||||
|3 |Day |1 to 7 | | | | | | 1st digit place |||
|4 |Date |1 to 31 | | | 2nd digit place || 1st digit place ||||
|5 |Month |1 to 12 | | | | 2nd digit | 1st digit place ||||
|6 |Year |00 to 99 | 2nd digit place |||| 1st digit place ||||
데이터는 BCD 코드형태로 기록됩니다. 즉 상위 4 비트와 하위 4 비트에 숫자 한자릿수씩 위치합니다. 요일의 경우 숫자로 기록되며, 다음과 같은 의미로 사용됩니다.
|Sunday |1|
|Monday |2|
|Tuesday |3|
|Wednesday |4|
|Thursday |5|
|Friday |6|
|Saturday |7 |
Hour (시간)은 0 부터 23 까지 변화되므로 12 보다 클경우 오후, 작을경우 오전으로 판단하시면 됩니다.
모아콘에 사용된 RTC 칩은 일반적인 RTC 칩보다는 정밀하지만, 실제 시간과 100% 일치는 보장할 수 없습니다. 이점 유의하시기 바랍니다.
==== 사용예 ====
//
// 현재 시간 (시,분,초)를 clcd 화면상에 표시합니다.
//
#include "moacon500.h"
void cmain(void)
{
int i=0;
clcdI2cInit(0); // 슬레이브 어드레스는 0 으로 합니다.
clcdPower(1); // lcd 의 Power 를 On
delay(100); // clcd 기동시간 대기
clcdCls();
clcdCsr(0);
clcdPrint(0,1,"HH MM SS");
while(1) {
clcdPrint(0,2,"%02X",rtcRead(2));
clcdPrint(4,2,"%02X",rtcRead(1));
clcdPrint(8,2,"%02X",rtcRead(0));
delay(500);
}
}
[[moacon:index#-r-|라이브러리 목록으로 가기]]