Lab 1 Program C
Fork of mbed by
AnalogIn.h
- Committer:
- emilmont
- Date:
- 2011-11-29
- Revision:
- 27:7110ebee3484
- Parent:
- 11:1c1ebd0324fa
- Child:
- 43:aff670d0d510
File content as of revision 27:7110ebee3484:
/* mbed Microcontroller Library - AnalogIn * Copyright (c) 2006-2011 ARM Limited. All rights reserved. */ #ifndef MBED_ANALOGIN_H #define MBED_ANALOGIN_H #include "device.h" #if DEVICE_ANALOGIN #include "platform.h" #include "PinNames.h" #include "PeripheralNames.h" #include "Base.h" namespace mbed { /* Class: AnalogIn * An analog input, used for reading the voltage on a pin * * Example: * > // Print messages when the AnalogIn is greater than 50% * > * > #include "mbed.h" * > * > AnalogIn temperature(p20); * > * > int main() { * > while(1) { * > if(temperature > 0.5) { * > printf("Too hot! (%f)", temperature.read()); * > } * > } * > } */ class AnalogIn : public Base { public: /* Constructor: AnalogIn * Create an AnalogIn, connected to the specified pin * * Variables: * pin - AnalogIn pin to connect to * name - (optional) A string to identify the object */ AnalogIn(PinName pin, const char *name = NULL); /* Function: read * Read the input voltage, represented as a float in the range [0.0, 1.0] * * Variables: * returns - A floating-point value representing the current input voltage, * measured as a percentage */ float read(); /* Function: read_u16 * Read the input voltage, represented as an unsigned short in the range [0x0, 0xFFFF] * * Variables: * returns - 16-bit unsigned short representing the current input voltage, * normalised to a 16-bit value */ unsigned short read_u16(); #ifdef MBED_OPERATORS /* Function: operator float * An operator shorthand for <read()> * * The float() operator can be used as a shorthand for <read()> to simplify common code sequences * * Example: * > float x = volume.read(); * > float x = volume; * > * > if(volume.read() > 0.25) { ... } * > if(volume > 0.25) { ... } */ operator float(); #endif #ifdef MBED_RPC virtual const struct rpc_method *get_rpc_methods(); static struct rpc_class *get_rpc_class(); #endif protected: ADCName _adc; }; } // namespace mbed #endif #endif