사용자 도구

사이트 도구

English

moacon:rtcread:index

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판 이전 판
다음 판
이전 판
moacon:rtcread:index [2016/03/23 14:49]
Comfile Technology [설명]
moacon:rtcread:index [2020/02/23 14:04] (현재)
Comfile Technology [사용예]
줄 1: 줄 1:
 +====== 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 | |  2<​sup>​nd</​sup>​ digit place  |||  1<​sup>​st</​sup>​ digit place  ||||
 +|1 |Minute |0 to 59 | |  2<​sup>​nd</​sup>​ digit place  |||  1<​sup>​st</​sup>​ digit place  ||||
 +|2 |Hour |0 to 23 | | |  2<​sup>​nd</​sup>​ digit place  ||    1<​sup>​st</​sup>​ digit place  ||||
 +|3 |Day |1 to 7 | |  | | | |  1<​sup>​st</​sup>​ digit place  |||
 +|4 |Date |1 to 31 | | |  2<​sup>​nd</​sup>​ digit place  ||    1<​sup>​st</​sup>​ digit place  ||||
 +|5 |Month |1 to 12 | | |  |  2<​sup>​nd</​sup>​ digit   ​| ​   1<​sup>​st</​sup>​ digit place  ||||
 +|6 |Year |00 to 99 |  2<​sup>​nd</​sup>​ digit place  ||||  1<​sup>​st</​sup>​ 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% 일치는 보장할 수 없습니다. 이점 유의하시기 바랍니다. ​
 +
 +
 +==== 사용예 ====
 +<code c>
 +//
 +// 현재 시간 (시,​분,​초)를 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);​
 +   }
 + ​} ​
 +</​code>​
 +
 +
 +[[moacon:​index#​-r-|라이브러리 목록으로 가기]]