source: rtems/c/src/lib/libbsp/arm/lpc176x/include/watchdog.h @ 7b35a36

4.115
Last change on this file since 7b35a36 was 19260fb, checked in by Martin Boretto <martin.boretto@…>, on 06/09/14 at 14:27:18

bsp/lpc176x: New BSP

  • Property mode set to 100644
File size: 1.8 KB
Line 
1/**
2 * @file watchdog.h
3 *
4 * @ingroup lpc176x
5 *
6 * @brief API of the Watchdog driver for the lpc176x bsp in RTEMS.
7 */
8
9/*
10 * Copyright (c) 2014 Taller Technologies.
11 *
12 * @author  Boretto Martin    (martin.boretto@tallertechnologies.com)
13 * @author  Diaz Marcos (marcos.diaz@tallertechnologies.com)
14 * @author  Lenarduzzi Federico  (federico.lenarduzzi@tallertechnologies.com)
15 * @author  Daniel Chicco  (daniel.chicco@tallertechnologies.com)
16 *
17 * The license and distribution terms for this file may be
18 * found in the file LICENSE in this distribution or at
19 * http://www.rtems.com/license/LICENSE.
20 */
21
22#ifndef LIBBSP_ARM_LPC176X_WATCHDOG_H
23#define LIBBSP_ARM_LPC176X_WATCHDOG_H
24
25#include <bsp/watchdog-defs.h>
26
27#ifdef __cplusplus
28extern "C" {
29#endif /* __cplusplus */
30
31/**
32 * @brief Checks if the watchdog was executed by software or not. Set when
33 *        the watchdog timer times out, cleared by software.
34 *
35 * @return TRUE if the watchdog was executed.
36 *         FALSE otherwise.
37 */
38bool lpc176x_been_reset_by_watchdog( void );
39
40/**
41 * @brief Resets the watchdog timer.
42 */
43void lpc176x_watchdog_reset( void );
44
45/**
46 * @brief Configures the watchdog's timer.
47 *
48 * @param tcount Timer's out value.
49 * @return RTEMS_SUCCESSFUL if the watchdog was configured successfully.
50 */
51rtems_status_code lpc176x_watchdog_config( lpc176x_microseconds tcount );
52
53/**
54 * @brief Configures the timer watchdog using interrupt.
55 *
56 * @param tcount Timer's out value.
57 * @param interrupt Interrupt to register.
58 * @return RTEMS_SUCCESSFUL if the watchdog was configured successfully
59 *                          with interrupts.
60 */
61rtems_status_code lpc176x_watchdog_config_with_interrupt(
62  lpc176x_wd_isr_funct interrupt,
63  lpc176x_microseconds tcount
64);
65
66#ifdef __cplusplus
67}
68#endif /* __cplusplus */
69
70#endif  /* LIBBSP_ARM_LPC176X_WATCHDOG_H */
Note: See TracBrowser for help on using the repository browser.