문서의 선택한 두 판 사이의 차이를 보여줍니다.
양쪽 이전 판 이전 판 다음 판 | 이전 판 | ||
moacon:rtcread:index [2016/03/23 14:56] 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-|라이브러리 목록으로 가기]] |