- Added WARNING handler - put voltage calculations to dedicated module fixed last errors. Updated menu repair screen without ERROR from PID This is version 0.9.0.3, which is used for the first duration test Will also be tagged git-svn-id: https://svn.vbchaos.nl/svn/hsb/trunk@272 05563f52-14a8-4384-a975-3d1654cca0fa
115 lines
3.6 KiB
C
115 lines
3.6 KiB
C
// -----------------------------------------------------------------------------
|
|
/// @file DACDevice.h
|
|
/// @brief File description
|
|
// -----------------------------------------------------------------------------
|
|
// Micro-Key bv
|
|
// Industrieweg 28, 9804 TG Noordhorn
|
|
// Postbus 92, 9800 AB Zuidhorn
|
|
// The Netherlands
|
|
// Tel: +31 594 503020
|
|
// Fax: +31 594 505825
|
|
// Email: support@microkey.nl
|
|
// Web: www.microkey.nl
|
|
// -----------------------------------------------------------------------------
|
|
/// $Revision$
|
|
/// $Author$
|
|
/// $Date$
|
|
// (c) 2015 Micro-Key bv
|
|
// -----------------------------------------------------------------------------
|
|
|
|
/// @defgroup {group_name} {group_description}
|
|
/// Description
|
|
|
|
/// @file DACDevice.h
|
|
/// @ingroup {group_name}
|
|
|
|
#ifndef INC_DACDEVICE_H_
|
|
#define INC_DACDEVICE_H_
|
|
|
|
|
|
// -----------------------------------------------------------------------------
|
|
// Include files
|
|
// -----------------------------------------------------------------------------
|
|
|
|
#include <stdbool.h>
|
|
|
|
#include "stm32f10x.h"
|
|
|
|
|
|
// -----------------------------------------------------------------------------
|
|
// Constant and macro definitions
|
|
// -----------------------------------------------------------------------------
|
|
|
|
|
|
|
|
// -----------------------------------------------------------------------------
|
|
// Type definitions.
|
|
// -----------------------------------------------------------------------------
|
|
|
|
struct DACDevice;
|
|
|
|
typedef ErrorStatus (*DACWriteFunction)(const struct DACDevice* self, uint32_t voltage);
|
|
typedef uint32_t (*DACReadbackFunction)(const struct DACDevice* self);
|
|
|
|
|
|
struct DACDevice
|
|
{
|
|
DACWriteFunction _write;
|
|
DACReadbackFunction _readback;
|
|
bool initialized;
|
|
unsigned int resolutionInBits;
|
|
};
|
|
|
|
// -----------------------------------------------------------------------------
|
|
// Function declarations
|
|
// -----------------------------------------------------------------------------
|
|
|
|
|
|
/** ----------------------------------------------------------------------------
|
|
* DACDevice_construct
|
|
* Constructor for DAC device
|
|
*
|
|
* @param self DAC object
|
|
* @param write Pointer to write function
|
|
*
|
|
* @return ErrorStatus SUCCESS if construction was successful
|
|
* ERROR otherwise
|
|
*
|
|
* @todo
|
|
* -----------------------------------------------------------------------------
|
|
*/
|
|
extern ErrorStatus DACDevice_construct(struct DACDevice* self, DACWriteFunction write, DACReadbackFunction readback, unsigned int resolutionInBits);
|
|
|
|
|
|
/** ----------------------------------------------------------------------------
|
|
* DACDevice_destruct
|
|
* Destructor for DAC device
|
|
*
|
|
* @param self DAC object
|
|
*
|
|
* @return void
|
|
*
|
|
* @todo
|
|
* -----------------------------------------------------------------------------
|
|
*/
|
|
extern void DACDevice_destruct(struct DACDevice* self);
|
|
|
|
/** ----------------------------------------------------------------------------
|
|
* DACDevice_construct
|
|
* Writes a value to the DAC device output
|
|
*
|
|
* @param self DAC object
|
|
* @param voltage value in volt (signed) to write to output
|
|
*
|
|
* @return ErrorStatus
|
|
*
|
|
* @todo
|
|
* -----------------------------------------------------------------------------
|
|
*/
|
|
extern ErrorStatus DACDevice_write(const struct DACDevice* self, uint32_t voltage);
|
|
|
|
|
|
extern uint32_t DACDevice_getCurrentValue(const struct DACDevice* self);
|
|
|
|
#endif /* INC_DACDEVICE_H_ */
|