aboutsummaryrefslogtreecommitdiffstats
path: root/testhal/ATSAMA5D2/RTC/main.c
diff options
context:
space:
mode:
Diffstat (limited to 'testhal/ATSAMA5D2/RTC/main.c')
-rw-r--r--testhal/ATSAMA5D2/RTC/main.c130
1 files changed, 0 insertions, 130 deletions
diff --git a/testhal/ATSAMA5D2/RTC/main.c b/testhal/ATSAMA5D2/RTC/main.c
deleted file mode 100644
index d75ed1caa..000000000
--- a/testhal/ATSAMA5D2/RTC/main.c
+++ /dev/null
@@ -1,130 +0,0 @@
-/*
- ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-*/
-
-#include "ch.h"
-#include "hal.h"
-#include "chprintf.h"
-#include "string.h"
-#include <time.h>
-
-/* This macro converts from decimal to BCD */
-#define decimal2BCD(nt, nu) ((nt << 4) | (nu))
-
-#define SIZE 30
-
-RTCDateTime cfg_time = {
- 38,
- 4,
- 0,
- 1,
- 9,
- 66840000
-};
-
-RTCDateTime now_DateTime;
-struct tm now_tm;
-
-char buffer[SIZE];
-
-/*
- * Alarm configuration.
- * Fields are in BCD format
- */
-RTCAlarm alarmspec = {
- RTC_TIMALR_HOUREN | RTC_TIMALR_HOUR(decimal2BCD(1,8)) |
- RTC_TIMALR_MINEN | RTC_TIMALR_MIN(decimal2BCD(3,5)) , /* timalarm */
- 0 /* calalarm */
-};
-
-/*
- * Alarm callback.
- */
-static void alarm_cb(RTCDriver *rtcp, rtcevent_t event) {
-
- (void)rtcp;
-
- switch (event) {
- case RTC_EVENT_SECOND:
- /* Toggle Led green very second */
- palToggleLine(LINE_LED_GREEN);
- break;
- case RTC_EVENT_ALARM:
- /* Led red on alarm */
- palClearLine(LINE_LED_RED);
- break;
- }
-}
-
-static const SerialConfig sdcfg = {
- 115200,
- 0,
- UART_MR_PAR_NO
-};
-
-/*
- * LED blinker thread, times are in milliseconds.
- */
-static THD_WORKING_AREA(waThread1, 512);
-static THD_FUNCTION(Thread1, arg) {
-
- (void)arg;
- chRegSetThreadName("blinker");
-
- while (true) {
- palToggleLine(LINE_LED_BLUE);
- chThdSleepMilliseconds(500);
- }
-}
-
-/*
- * Application entry point.
- */
-int main(void) {
-
- /*
- * System initializations.
- * - HAL initialization, this also initializes the configured device drivers
- * and performs the board-specific initializations.
- * - Kernel initialization, the main() function becomes a thread and the
- * RTOS is active.
- */
- halInit();
- chSysInit();
-
- /*
- * Activates the serial driver 1 using the driver default configuration.
- */
- sdStart(&SD1, &sdcfg);
-
- chThdCreateStatic(waThread1, sizeof(waThread1), NORMALPRIO , Thread1, NULL);
-
- /*
- * Configures date
- */
- rtcSetTime(&RTCD0, &cfg_time);
- rtcSetAlarm(&RTCD0, 0, &alarmspec);
- rtcSetCallback(&RTCD0, alarm_cb);
-
- while (true) {
- if(!palReadPad(PIOB, PIOB_USER_PB)) {
- rtcGetTime(&RTCD0, &now_DateTime);
- rtcConvertDateTimeToStructTm(&now_DateTime, &now_tm, NULL);
- strftime(buffer, SIZE, "%Y-%m-%d %H:%M:%S", &now_tm);
- chprintf((BaseSequentialStream *) &SD1,"Current time:%s\n\r",buffer);
- }
- chThdSleepMilliseconds(1000);
- }
-}