2036 mbed lab4
Dependencies: 4DGL-uLCD-SE PinDetect
TMP36.h@0:bbda88bee65a, 2022-03-28 (annotated)
- Committer:
- lhanks02
- Date:
- Mon Mar 28 18:44:30 2022 +0000
- Revision:
- 0:bbda88bee65a
lab4
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
lhanks02 | 0:bbda88bee65a | 1 | #include "mbed.h" |
lhanks02 | 0:bbda88bee65a | 2 | |
lhanks02 | 0:bbda88bee65a | 3 | //Setup a new class for TMP36 sensor |
lhanks02 | 0:bbda88bee65a | 4 | class TMP36 |
lhanks02 | 0:bbda88bee65a | 5 | { |
lhanks02 | 0:bbda88bee65a | 6 | public: |
lhanks02 | 0:bbda88bee65a | 7 | TMP36(PinName pin); |
lhanks02 | 0:bbda88bee65a | 8 | TMP36(); |
lhanks02 | 0:bbda88bee65a | 9 | operator float (); |
lhanks02 | 0:bbda88bee65a | 10 | float read(); |
lhanks02 | 0:bbda88bee65a | 11 | private: |
lhanks02 | 0:bbda88bee65a | 12 | //class sets up the AnalogIn pin |
lhanks02 | 0:bbda88bee65a | 13 | AnalogIn _pin; |
lhanks02 | 0:bbda88bee65a | 14 | }; |
lhanks02 | 0:bbda88bee65a | 15 | |
lhanks02 | 0:bbda88bee65a | 16 | TMP36::TMP36(PinName pin) : _pin(pin) |
lhanks02 | 0:bbda88bee65a | 17 | { |
lhanks02 | 0:bbda88bee65a | 18 | // _pin(pin) means pass pin to the AnalogIn constructor |
lhanks02 | 0:bbda88bee65a | 19 | } |
lhanks02 | 0:bbda88bee65a | 20 | |
lhanks02 | 0:bbda88bee65a | 21 | float TMP36::read() |
lhanks02 | 0:bbda88bee65a | 22 | { |
lhanks02 | 0:bbda88bee65a | 23 | //convert sensor reading to temperature in degrees C |
lhanks02 | 0:bbda88bee65a | 24 | return ((_pin.read()*3.3)-0.500)*100.0; |
lhanks02 | 0:bbda88bee65a | 25 | } |
lhanks02 | 0:bbda88bee65a | 26 | //overload of float conversion (avoids needing to type .read() in equations) |
lhanks02 | 0:bbda88bee65a | 27 | TMP36::operator float () |
lhanks02 | 0:bbda88bee65a | 28 | { |
lhanks02 | 0:bbda88bee65a | 29 | //convert sensor reading to temperature in degrees C |
lhanks02 | 0:bbda88bee65a | 30 | return ((_pin.read()*3.3)-0.500)*100.0; |
lhanks02 | 0:bbda88bee65a | 31 | } |