Kamcho Library 02.00.03  lib.kamcho.02.00.03.287
pwm_device.h
Go to the documentation of this file.
1 
12 #ifndef __PWM_DEVICE_H__
13 #define __PWM_DEVICE_H__
14 
15 #include <stdint.h>
16 #include "hdf.h"
17 
21 typedef const struct PWM_Device_t {
22  void (*SetPeriod)(uint32_t percent);
23  void (*SetWidth)(uint32_t percent);
24  void (*SetPreScaler)(uint8_t prescaler);
25  void (*InvertOn)(void);
26  void (*Enable)(void);
27  void (*InvertOff)(void);
28  void (*Disable)(void);
29  char *Name;
30 } PWM_Device_t;
31 
39 int32_t PWM_devSetPeriod(PWM_Device_t *dev, uint32_t period);
40 
48 int32_t PWM_devSetWidth(PWM_Device_t *dev, uint32_t width);
49 
57 int32_t PWM_devSetClockDivider(PWM_Device_t *dev, uint8_t div);
58 
65 int32_t PWM_devInvertEnable(PWM_Device_t *dev);
66 
74 
81 int32_t PWM_devEnable(PWM_Device_t *dev);
82 
89 int32_t PWM_devDisable(PWM_Device_t *dev);
90 
97 PWM_Device_t *PWM_devRequest(const char *name);
98 
99 #endif /* __PWM_DEVICE_H__ */
void(* InvertOff)(void)
Definition: pwm_device.h:27
char * Name
Definition: pwm_device.h:29
int32_t PWM_devSetPeriod(PWM_Device_t *dev, uint32_t period)
Set period of a PWM driver.
Definition: pwm_device.c:64
void(* SetPreScaler)(uint8_t prescaler)
Definition: pwm_device.h:24
PWM_Device_t * PWM_devRequest(const char *name)
Request a PWM Device.
Definition: pwm_device.c:118
void(* Disable)(void)
Definition: pwm_device.h:28
int32_t PWM_devDisable(PWM_Device_t *dev)
Disable PWM driver.
Definition: pwm_device.c:110
void(* InvertOn)(void)
Definition: pwm_device.h:25
void(* SetPeriod)(uint32_t percent)
Definition: pwm_device.h:22
void(* Enable)(void)
Definition: pwm_device.h:26
int32_t PWM_devInvertEnable(PWM_Device_t *dev)
Enable PWM inverter.
Definition: pwm_device.c:86
int32_t PWM_devInvertDisable(PWM_Device_t *dev)
Disable PWM inverter.
Definition: pwm_device.c:94
int32_t PWM_devSetClockDivider(PWM_Device_t *dev, uint8_t div)
Set pre-scaler of a PWM driver.
Definition: pwm_device.c:78
int32_t PWM_devEnable(PWM_Device_t *dev)
Enable PWM driver.
Definition: pwm_device.c:102
void(* SetWidth)(uint32_t percent)
Definition: pwm_device.h:23
const struct PWM_Device_t PWM_Device_t
A structure to represent a PWM device.
A structure to represent a PWM device.
Definition: pwm_device.h:21
int32_t PWM_devSetWidth(PWM_Device_t *dev, uint32_t width)
Set width of a PWM driver.
Definition: pwm_device.c:71