source: rtems/c/src/lib/libbsp/arm/lpc176x/include/pwmout.h @ d4edbdbc

4.115
Last change on this file since d4edbdbc was d4edbdbc, checked in by Sebastian Huber <sebastian.huber@…>, on 03/20/15 at 13:09:26

Replace www.rtems.com with www.rtems.org

  • Property mode set to 100755
File size: 1.8 KB
Line 
1/**
2 * @file pwmout.h
3 *
4 * @ingroup lpc176x
5 *
6 * @brief PWM-Out controller for the mbed lpc1768 board.
7 */
8
9/*
10 * Copyright (c) 2014 Taller Technologies.
11 *
12 * @author  Diaz Marcos (marcos.diaz@tallertechnologies.com)
13 *
14 * The license and distribution terms for this file may be
15 * found in the file LICENSE in this distribution or at
16 * http://www.rtems.org/license/LICENSE.
17 */
18
19#ifndef LPC176X_PWMOUT_H
20#define LPC176X_PWMOUT_H
21
22#include <bsp.h>
23#include <bsp/io.h>
24#include <bsp/lpc176x.h>
25
26#ifdef __cplusplus
27extern "C" {
28#endif /* __cplusplus */
29
30/**
31 * @brief Initializes the PWM output device and sets an initial period
32 *  of 20000us.
33 *
34 * @param pin_number The PWM output pin.
35 * @return RTEMS_SUCCESSFULL  if the PWM initialization was OK,
36 *  RTEMS_INVALID_NUMBER for a wrong parameter.
37 */
38rtems_status_code pwm_init( const lpc176x_pin_number pin_number );
39
40/**
41 * @brief Sets a period for the PWM output. (Note that this changes the period
42 * for all the PWM outputs.)
43 *
44 * @param pin_number The pin whose period we want to change.
45 * @param period The desired period in microseconds.
46 *
47 * @return RTEMS_SUCCESSFULL if the period's setting was OK,
48 *  RTEMS_INVALID_NUMBER for a bad parameter.
49 */
50rtems_status_code pwm_period(
51  const lpc176x_pin_number    pin_number,
52  const lpc176x_microseconds period
53);
54
55/**
56 * @brief Sets a pulsewidth for the PWM output.
57 *
58 * @param pin_number The pin whose pulsewidth we want to change.
59 * @param pwidth The desired pulsewidth in microseconds.
60 *
61 * @return RTEMS_SUCCESSFULL if the pulsewidth's setting was OK,
62 *  RTEMS_INVALID_NUMBER for a wrong parameter.
63 */
64rtems_status_code pwm_pulsewidth(
65  const lpc176x_pin_number    pin_number,
66  const lpc176x_microseconds pwidth
67);
68
69#ifdef __cplusplus
70}
71#endif /* __cplusplus */
72
73#endif
Note: See TracBrowser for help on using the repository browser.