Merge pull request #4319 from haukepetersen/doc_drivers_fixgroups

drivers: various doxygen fixes
This commit is contained in:
Martine Lenders 2015-11-23 13:25:25 +01:00
commit 989743d625
26 changed files with 154 additions and 58 deletions

View File

@ -28,3 +28,12 @@
* Most of these drivers will be connected over some bus or serial connection * Most of these drivers will be connected over some bus or serial connection
* to the MCU. * to the MCU.
*/ */
/**
* @defgroup drivers_actuators Actuator Device Drivers
* @ingroup drivers
* @brief Drivers for actuating devices
*
* The group of actuators includes all kind of devices that can actively
* interact with the physical world, as e.g. motors, lights, sound devices, etc.
*/

View File

@ -10,17 +10,19 @@
* @defgroup drivers_adc ADC * @defgroup drivers_adc ADC
* @ingroup drivers * @ingroup drivers
* @brief Generic interface for ADC drivers * @brief Generic interface for ADC drivers
*
* @deprecated This interface is obsolete. Use the @ref drivers_periph_adc * @deprecated This interface is obsolete. Use the @ref drivers_periph_adc
* interface in @ref drivers_periph instead. * interface in @ref drivers_periph instead.
* @{
*
* @file
* @brief Legacy ADC driver interface
* *
* @author Oliver Hahm <oliver.hahm@inria.fr> * @author Oliver Hahm <oliver.hahm@inria.fr>
*
* @{
* @file
*/ */
#ifndef ADC_H #ifndef ADC_LEGACY_H
#define ADC_H #define ADC_LEGACY_H
#include <stdint.h> #include <stdint.h>
@ -46,5 +48,5 @@ uint16_t adc_read(uint8_t channel);
} }
#endif #endif
#endif /* ADC_LEGACY_H */
/** @} */ /** @} */
#endif /* ADC_H */

View File

@ -7,8 +7,8 @@
*/ */
/** /**
* @defgroup at30tse75x AT30TSE75x temperature sensor with EEPROM * @defgroup drivers_at30tse75x AT30TSE75x temperature sensor with EEPROM
* @ingroup drivers * @ingroup drivers_sensors
* *
* The connection between the MCU and the AT30TSE75x is based on the * The connection between the MCU and the AT30TSE75x is based on the
* I2C-interface. There are 3 versions of this IC, with either 2/4/8 Kb of * I2C-interface. There are 3 versions of this IC, with either 2/4/8 Kb of

View File

@ -7,7 +7,7 @@
*/ */
/** /**
* @defgroup driver_dht DHT Family of Humidity and Temperature Sensors * @defgroup drivers_dht DHT Family of Humidity and Temperature Sensors
* @ingroup drivers_sensors * @ingroup drivers_sensors
* @brief Device driver for the DHT Family of humidity * @brief Device driver for the DHT Family of humidity
* and temperature sensors * and temperature sensors

View File

@ -7,7 +7,7 @@
*/ */
/** /**
* @defgroup diskio Disk IO Driver * @defgroup drivers_diskio Disk IO Driver
* @ingroup drivers * @ingroup drivers
* @brief Low level disk interface * @brief Low level disk interface
* *

View File

@ -7,7 +7,7 @@
*/ */
/** /**
* @defgroup driver_encx24j600 ENCX24J600 * @defgroup drivers_encx24j600 ENCX24J600
* @ingroup drivers_netdev * @ingroup drivers_netdev
* @brief Driver for the ENCX24J600 Ethernet Adapter * @brief Driver for the ENCX24J600 Ethernet Adapter
* @{ * @{

View File

@ -7,7 +7,7 @@
*/ */
/** /**
* @defgroup flashrom Flash memory driver * @defgroup drivers_flashrom Flash memory driver
* @ingroup drivers * @ingroup drivers
* @brief Generic flash memory driver * @brief Generic flash memory driver
* @{ * @{

View File

@ -6,9 +6,6 @@
* directory for more details. * directory for more details.
*/ */
#ifndef GPIOINT_H_
#define GPIOINT_H_
/** /**
* @defgroup drivers_gpioint GPIO IRQ Multiplexer * @defgroup drivers_gpioint GPIO IRQ Multiplexer
* @ingroup drivers * @ingroup drivers
@ -24,6 +21,9 @@
* @author Michael Baar <michael.baar@fu-berlin.de> * @author Michael Baar <michael.baar@fu-berlin.de>
*/ */
#ifndef GPIOINT_H_
#define GPIOINT_H_
#include <stdint.h> #include <stdint.h>
#include <stdbool.h> #include <stdbool.h>
@ -32,19 +32,21 @@ extern "C" {
#endif #endif
/* /*
* gpioint_flags: * @brief GPIO IRQ multiplexer flags
* Note: - We rely on the exact values for the edges. *
* - These flags are extended in hal/drivers/device-gpio.h * @note We rely on the exact values for the edges.
* @note These flags are extended in hal/drivers/device-gpio.h
*
* @{
*/ */
#define GPIOINT_DISABLE 0x00 #define GPIOINT_DISABLE 0x00 /**< disable interrupt */
#define GPIOINT_RISING_EDGE 0x01 ///< interrupt is generated on rising edge #define GPIOINT_RISING_EDGE 0x01 /**< interrupt is generated on rising edge */
#define GPIOINT_FALLING_EDGE 0x02 ///< interrupt is generated on falling edge #define GPIOINT_FALLING_EDGE 0x02 /**< interrupt is generated on falling edge */
#define GPIOINT_DEBOUNCE 0x04 ///< debounce this interrupt #define GPIOINT_DEBOUNCE 0x04 /**< debounce this interrupt */
/** @} */
/** /**
* @brief GPIO IRQ callback function type * @brief GPIO IRQ callback function type
* @param[in] data User defined callback data passed through gpioint_set
* @param[in] edge A combination of GPIOINT_RISING_EDGE and GPIOINT_FALLING_EDGE
*/ */
typedef void(*fp_irqcb)(void); typedef void(*fp_irqcb)(void);
@ -62,6 +64,9 @@ typedef void(*fp_irqcb)(void);
*/ */
bool gpioint_set(int port, uint32_t bitmask, int flags, fp_irqcb callback); bool gpioint_set(int port, uint32_t bitmask, int flags, fp_irqcb callback);
/**
* @brief Initialize the multiplexer
*/
void gpioint_init(void); void gpioint_init(void);
#ifdef __cplusplus #ifdef __cplusplus

View File

@ -7,7 +7,7 @@
*/ */
/** /**
* @defgroup driver_hih6130 HIH6130 humidity and temperature sensor * @defgroup drivers_hih6130 HIH6130 humidity and temperature sensor
* @ingroup drivers_sensors * @ingroup drivers_sensors
* @brief Device driver for Honeywell HumidIcon Digital * @brief Device driver for Honeywell HumidIcon Digital
* Humidity/Temperature Sensors: HIH-6130/6131 Series * Humidity/Temperature Sensors: HIH-6130/6131 Series

View File

@ -7,7 +7,7 @@
*/ */
/** /**
* @defgroup driver_ina220 INA220 current/power monitor * @defgroup drivers_ina220 INA220 current/power monitor
* @ingroup drivers_sensors * @ingroup drivers_sensors
* @brief Device driver for Texas Instruments INA220 High or Low Side, * @brief Device driver for Texas Instruments INA220 High or Low Side,
* Bi-Directional CURRENT/POWER MONITOR with Two-Wire Interface * Bi-Directional CURRENT/POWER MONITOR with Two-Wire Interface

View File

@ -7,7 +7,7 @@
*/ */
/** /**
* @defgroup driver_isl29020 ISL29020 light sensor * @defgroup drivers_isl29020 ISL29020 light sensor
* @ingroup drivers_sensors * @ingroup drivers_sensors
* @brief Device driver for the ISL29020 light sensor * @brief Device driver for the ISL29020 light sensor
* @{ * @{

View File

@ -7,7 +7,7 @@
*/ */
/** /**
* @defgroup driver_isl29125 ISL29125 RGB light sensor * @defgroup drivers_isl29125 ISL29125 RGB light sensor
* @ingroup drivers_sensors * @ingroup drivers_sensors
* @brief Device driver for the ISL29125 RGB light sensor * @brief Device driver for the ISL29125 RGB light sensor
* *

View File

@ -7,7 +7,7 @@
*/ */
/** /**
* @defgroup driver_l3g4200d L3G4200D gyroscope * @defgroup drivers_l3g4200d L3G4200D gyroscope
* @ingroup drivers_sensors * @ingroup drivers_sensors
* @brief Device driver for the L3G4200D gyroscope * @brief Device driver for the L3G4200D gyroscope
* @{ * @{

View File

@ -7,7 +7,7 @@
*/ */
/** /**
* @defgroup driver_lis3dh LIS3DH accelerometer * @defgroup drivers_lis3dh LIS3DH accelerometer
* @ingroup drivers_sensors * @ingroup drivers_sensors
* @brief Device driver for the LIS3DH accelerometer * @brief Device driver for the LIS3DH accelerometer
* @{ * @{

View File

@ -7,7 +7,7 @@
*/ */
/** /**
* @defgroup lm75a LM75A * @defgroup drivers_lm75a LM75A
* @ingroup drivers_sensors * @ingroup drivers_sensors
* @brief Driver for the LM75A digital temperature sensor and thermal watchdog * @brief Driver for the LM75A digital temperature sensor and thermal watchdog
* *

View File

@ -7,7 +7,7 @@
*/ */
/** /**
* @defgroup driver_lps331ap LPS331AP Pressure Sensor Driver * @defgroup drivers_lps331ap LPS331AP Pressure Sensor Driver
* @ingroup drivers_sensors * @ingroup drivers_sensors
* @brief Device driver for the LPS331AP pressure sensor * @brief Device driver for the LPS331AP pressure sensor
* @{ * @{

View File

@ -7,7 +7,7 @@
*/ */
/** /**
* @defgroup driver_lsm303dlhc LSM303DLHC 3D accelerometer/magnetometer * @defgroup drivers_lsm303dlhc LSM303DLHC 3D accelerometer/magnetometer
* @ingroup drivers_sensors * @ingroup drivers_sensors
* @brief Device driver for the LSM303DLHC 3D accelerometer/magnetometer * @brief Device driver for the LSM303DLHC 3D accelerometer/magnetometer
* @{ * @{

View File

@ -6,6 +6,23 @@
* directory for more details. * directory for more details.
*/ */
/**
* @defgroup drivers_ltc4150 LTC4150 Coulomb Counter
* @ingroup drivers_sensors
* @brief Device driver for LTC4150 coulomb counters
*
* @deprecated This driver should be ported to the peripheral driver interface
* (@ref drivers_periph)
*
* @{
*
* @file
* @brief Driver interface for the LTC4150 driver
*
* @author Heiko Will <heiko.will@fu-berlin.de>
*/
#ifndef LTC4150_H #ifndef LTC4150_H
#define LTC4150_H #define LTC4150_H
@ -15,15 +32,61 @@
extern "C" { extern "C" {
#endif #endif
/**
* @brief Initialize the counter
*/
void ltc4150_init(void); void ltc4150_init(void);
/**
* @brief Start a measurement
*/
void ltc4150_start(void); void ltc4150_start(void);
/**
* @brief End the ongoing measurement
*/
void ltc4150_stop(void); void ltc4150_stop(void);
/**
* @brief Get the current electrical current
*
* @return electrical current in mA
*/
double ltc4150_get_current_mA(void); double ltc4150_get_current_mA(void);
/**
* @brief Get the total power used since @p ltc4150_start was called
*
* @return power used in mAh
*/
double ltc4150_get_total_mAh(void); double ltc4150_get_total_mAh(void);
/**
* @brief Get the total energy used since @p ltc4150_start was called
*
* @return energy used in Joule
*/
double ltc4150_get_total_Joule(void); double ltc4150_get_total_Joule(void);
/**
* @brief Get the average electrical current sine @p ltc4150_start was called
*
* @return average current in mA
*/
double ltc4150_get_avg_mA(void); double ltc4150_get_avg_mA(void);
/**
* @brief Get the time the current measurement is going on
*
* @return time
*/
int ltc4150_get_interval(void); int ltc4150_get_interval(void);
/**
* @brief Get the number of samples taken
*
* @return number of samples in the current interval
*/
long ltc4150_get_intcount(void); long ltc4150_get_intcount(void);
#ifdef __cplusplus #ifdef __cplusplus
@ -31,3 +94,4 @@ long ltc4150_get_intcount(void);
#endif #endif
#endif /* LTC4150_H */ #endif /* LTC4150_H */
/** @} */

View File

@ -6,6 +6,18 @@
* directory for more details. * directory for more details.
*/ */
/**
* @defgroup drivers_ltc4150 LTC4150
* @ingroup drivers_sensors
* @brief Driver for the Linear Technology LTC4150 Coulomb Counter
* @{
*
* @file
* @brief LTC4150 Coulomb Counter
*
* @author Heiko Will <heiko.will@fu-berlin.de>
*/
#ifndef LTC4150_ARCH_H #ifndef LTC4150_ARCH_H
#define LTC4150_ARCH_H #define LTC4150_ARCH_H
@ -14,34 +26,39 @@ extern "C" {
#endif #endif
/** /**
* @defgroup ltc4150 LTC4150 * @brief Constants used by the driver
* @ingroup drivers_sensors
* @brief Driver for the Linear Technology LTC4150 Coulomb Counter
* @{ * @{
*
* @file
* @brief LTC4150 Coulomb Counter
*
* @author Heiko Will
*/ */
#define _GFH (double)32.631375 #define _GFH (double)32.631375
#define _R_SENSE (double)0.330 #define _R_SENSE (double)0.330
#define SUPPLY_VOLTAGE (5) #define SUPPLY_VOLTAGE (5)
/** @} */
/** board specific ltc4150 interrupt disable */ /**
* @brief Board specific ltc4150 interrupt disable
**/
void ltc4150_disable_int(void); void ltc4150_disable_int(void);
/** board specific ltc4150 interrupt enable */
/**
* @brief Board specific ltc4150 interrupt enable
**/
void ltc4150_enable_int(void); void ltc4150_enable_int(void);
/** board specific synchronization of ltc4150 */
/**
* @brief Board specific synchronization of ltc4150
**/
void ltc4150_sync_blocking(void); void ltc4150_sync_blocking(void);
/** board specific ltc4150 initialization */
/**
* @brief Board specific ltc4150 initialization
**/
void ltc4150_arch_init(void); void ltc4150_arch_init(void);
/** /**
* ltc4150 interrupt handler, * @brief Ltc4150 interrupt handler
* shall be called on ltc4150 interrupt, *
* implemented in driver * This handler shall be called on ltc4150 interrupt, it is implemented in the
* driver.
*/ */
void ltc4150_interrupt(void); void ltc4150_interrupt(void);

View File

@ -7,7 +7,7 @@
*/ */
/** /**
* @ingroup nvram * @ingroup drivers_nvram
* @{ * @{
* *
* @file * @file

View File

@ -7,7 +7,7 @@
*/ */
/** /**
* @defgroup nvram Non-volatile RAM * @defgroup drivers_nvram Non-volatile RAM
* @ingroup drivers * @ingroup drivers
* @brief Non-volatile RAM interface * @brief Non-volatile RAM interface
* *

View File

@ -8,7 +8,7 @@
/** /**
* @defgroup driver_pcd8544 PCD8544 LCD driver * @defgroup driver_pcd8544 PCD8544 LCD driver
* @ingroup drivers * @ingroup drivers_actuators
* @brief Driver for PCD8544 LCD displays * @brief Driver for PCD8544 LCD displays
* *
* @{ * @{

View File

@ -8,7 +8,7 @@
/** /**
* @defgroup driver_rgbled RGB-LED driver * @defgroup driver_rgbled RGB-LED driver
* @ingroup drivers * @ingroup drivers_actuators
* @brief High-level driver for RGB-LEDs * @brief High-level driver for RGB-LEDs
* @{ * @{
* *

View File

@ -9,7 +9,7 @@
/** /**
* @defgroup driver_servo Servo Motor Driver * @defgroup driver_servo Servo Motor Driver
* @ingroup drivers * @ingroup drivers_actuators
* @brief High-level driver for servo motors * @brief High-level driver for servo motors
* @{ * @{
* *

View File

@ -10,9 +10,9 @@
#define SHT11_H_ #define SHT11_H_
/** /**
* @defgroup sht11 SHT11 * @defgroup drivers_sht11 SHT11
* @brief Driver for Sensirion SHT11 Humidity and Temperature Sensor
* @ingroup drivers_sensors * @ingroup drivers_sensors
* @brief Driver for Sensirion SHT11 Humidity and Temperature Sensor
* @{ * @{
* *
* @file * @file

View File

@ -8,8 +8,7 @@
/** /**
* @defgroup drivers_tcs37727 TCS37727 Light-To-Digital Converter * @defgroup drivers_tcs37727 TCS37727 Light-To-Digital Converter
* * @ingroup drivers_sensors
* @ingroup drivers
* @brief Driver for the AMS TCS37727 Color Light-To-Digital Converter * @brief Driver for the AMS TCS37727 Color Light-To-Digital Converter
* *
* *