본문 바로가기

RTC5

DS1302 DS130x는 MAXIM의 RTC 시리즈 입니다. 그 중 DS1302는 I2c나 SPI가 아닌 serial 통신 방식입니다. 임의의 GPIO포트를 CE, IO, CLK 핀으로 설정해주면 시간을 설정하거나 가져올 수 있습니다. 진행하는 프로젝트에 I2C나 SPI를 사용할 수 없고 딱 3개의 GPIO포트만 남아서 사용하게 되었습니다. 일단 모듈을 사서 테스트를 했습니다. 디바이스마트를 통해 2개를 구입했습니다. 그리고 아두이노를 통해 가장 많이 사용하는 DS1302RTC 라이브러리와 DS1302 라이브러리를 테스트 해봤는데 2가지 모두 이상하게 동작을 하네요. 1초간격으로 정확한 값을 가져오고 그 다음 1초에는 약 5년전의 시간값을 가져오고~ 계속 무한반복입니다. 보시는 것 과 같이 빨간색이 현재 시간인데 .. 2016. 10. 20.
nRF51 DK 예제 14 -Real Time Counter(RTC) 이번 예제는 Real Time Counter입니다. 첨에 RTC(Real Time Clock)인줄 알았는데 Clock이 아니라 Counter군요. LED1은 Real Time Counter로 toggle하고, LED2는 Counter Compare해서 켜줍니다. main.c 123456789101112131415int main(void){ leds_config(); lfclk_config(); rtc_config(); while (true) { __SEV(); __WFE(); __WFE(); }}cs 단촐한 main문입니다. Line 3 : LED를 설정해줍니다. 12345static void leds_config(void){ LEDS_CONFIGURE(((1p_reg, p_config->prescale.. 2015. 3. 12.
ds1338용 HEX <-> DEC 변환 여기서 말하는 HEX DEC 변환은 DS1338용 입니다. DS1338(RTC)보기 일반적인 16진수 10진수 변환이 아닙니다.^^;; 즉 정수 30을 0x30으로 변환해주고, 0x56을 정수 56으로 변한하는 코드입니다. DEC->HEX123456789101112131415int dec2hex(int dec){ int hex; if(decDEC 1234567891011121314int hex2dec(int hex){ int dec; if(hex 2015. 2. 12.
I2C로 DS1338 (RTC) 사용하기 DS1337과 DS1338은 I2C를 이용한 RTC 입니다. 동작전압만 다르고, 똑같다고 생각하시면 됩니다. DS1337은 RTC를 이용한 시계(윤교수님 stm32f103 보드) 에서 사용했었구요. 이번에는 DS1338을 사용하게 되었습니다. DS1338이나 DS1337은 I2C를 사용하기 때문에 처음에 초기화를 해주셔야 합니다. 초기화 초기화는 아래 코드에 RTC의 DEVICE ADDRESS를 넣어주시면 됩니다.12345678910111213141516171819202122232425void I2c_init(u8 addr){ I2C_InitTypeDef I2C_InitStruct; GPIO_InitTypeDef GPIO_InitStructure; RCC_APB2PeriphClockCmd(I2C_SCL_.. 2015. 2. 12.
RTC를 이용한 시계 예제파일 사진정리하다 예전에 했던게 있어서 올립니다. 보드랑 라이브러리는 윤교수님이 만드신거 활용했습니다. 소스는 찾아보고 있으면 올려드릴께요^^ ----------------------------------------------------------소스파일 추가합니다(08-14) 2015. 2. 12.

인기글