examples: ds3231: Add simple example for ds3231
Simple example for reading out the time and temperature from ds3231 RTC every second. Signed-off-by: Bhuvanchandra DV <bhuvanchandra.dv@gmail.com>
This commit is contained in:
parent
782cdfd11d
commit
f388bbc7c4
2 changed files with 44 additions and 0 deletions
3
examples/ds3231_test/Makefile
Normal file
3
examples/ds3231_test/Makefile
Normal file
|
@ -0,0 +1,3 @@
|
|||
PROGRAM=ds3231_test
|
||||
EXTRA_COMPONENTS = extras/ds3231 extras/i2c
|
||||
include ../../common.mk
|
41
examples/ds3231_test/ds3231_test.c
Normal file
41
examples/ds3231_test/ds3231_test.c
Normal file
|
@ -0,0 +1,41 @@
|
|||
/* Test code for DS3231 high precision RTC module
|
||||
*
|
||||
* Part of esp-open-rtos
|
||||
* Copyright (C) 2016 Bhuvanchandra DV <bhuvanchandra.dv@gmail.com>
|
||||
* MIT Licensed as described in the file LICENSE
|
||||
*/
|
||||
#include "espressif/esp_common.h"
|
||||
#include "esp/uart.h"
|
||||
#include "FreeRTOS.h"
|
||||
#include "task.h"
|
||||
#include "i2c/i2c.h"
|
||||
|
||||
#include "ds3231/ds3231.h"
|
||||
|
||||
void task1(void *pvParameters)
|
||||
{
|
||||
struct tm time;
|
||||
float tempFloat;
|
||||
|
||||
while(1) {
|
||||
vTaskDelay(100);
|
||||
ds3231_getTime(&time);
|
||||
ds3231_getTempFloat(&tempFloat);
|
||||
printf("TIME:%d:%d:%d, TEMPERATURE:%.2f DegC\r\n", time.tm_hour, time.tm_min, time.tm_sec, tempFloat);
|
||||
}
|
||||
}
|
||||
|
||||
void user_init(void)
|
||||
{
|
||||
const int scl = 5, sda = 4;
|
||||
|
||||
uart_set_baud(0, 115200);
|
||||
|
||||
printf("\n");
|
||||
printf("SDK version : %s\n", sdk_system_get_sdk_version());
|
||||
printf("GIT version : %s\n", GITSHORTREV);
|
||||
|
||||
ds3231_Init(scl, sda);
|
||||
|
||||
xTaskCreate(task1, (signed char *)"tsk1", 256, NULL, 2, NULL);
|
||||
}
|
Loading…
Reference in a new issue