Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
sensor.cpp@47:9e21b199c679, 2017-01-17 (annotated)
- Committer:
- sbarzowski
- Date:
- Tue Jan 17 12:53:49 2017 +0100
- Revision:
- 47:9e21b199c679
- Parent:
- 33:d3cc00e39e6a
- Child:
- 66:a89b7430b424
Times adjustment
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| pannaannap | 27:27cffdb2e9d3 | 1 | #include "sensor.h" |
| pannaannap | 27:27cffdb2e9d3 | 2 | |
| pannaannap | 27:27cffdb2e9d3 | 3 | Sensor::Sensor(SENSOR_TYPE id) : sensor_id_(id) {} |
| pannaannap | 27:27cffdb2e9d3 | 4 | |
| sbarzowski |
47:9e21b199c679 | 5 | const float DigitalSensor::SEND_INTERVAL = 10.0; |
| pannaannap | 27:27cffdb2e9d3 | 6 | |
| pannaannap | 27:27cffdb2e9d3 | 7 | DigitalSensor::DigitalSensor(SENSOR_TYPE id, PinName pin) : |
| pannaannap | 27:27cffdb2e9d3 | 8 | Sensor(id), sensor_(DigitalIn(pin)), |
| pannaannap | 27:27cffdb2e9d3 | 9 | last_state_(false), changes_counter_(0) { |
| pannaannap | 27:27cffdb2e9d3 | 10 | sensor_.mode(PullDown); |
| pannaannap | 27:27cffdb2e9d3 | 11 | } |
| pannaannap | 27:27cffdb2e9d3 | 12 | |
| pannaannap | 27:27cffdb2e9d3 | 13 | void DigitalSensor::updateState() { |
| pannaannap | 27:27cffdb2e9d3 | 14 | bool state = sensor_.read(); |
| sbarzowski |
33:d3cc00e39e6a | 15 | |
| pannaannap | 27:27cffdb2e9d3 | 16 | if (last_state_ != state) { |
| pannaannap | 27:27cffdb2e9d3 | 17 | last_state_ = state; |
| pannaannap | 27:27cffdb2e9d3 | 18 | changes_counter_++; |
| pannaannap | 27:27cffdb2e9d3 | 19 | } |
| pannaannap | 27:27cffdb2e9d3 | 20 | } |
| pannaannap | 27:27cffdb2e9d3 | 21 | |
| pannaannap | 27:27cffdb2e9d3 | 22 | Data DigitalSensor::dataToSend() { |
| pannaannap | 27:27cffdb2e9d3 | 23 | return Data(sensor_id_, changes_counter_); |
| pannaannap | 27:27cffdb2e9d3 | 24 | } |
| pannaannap | 27:27cffdb2e9d3 | 25 | |
| pannaannap | 27:27cffdb2e9d3 | 26 | void DigitalSensor::resetState() { |
| pannaannap | 27:27cffdb2e9d3 | 27 | changes_counter_ = 0; |
| pannaannap | 27:27cffdb2e9d3 | 28 | } |
| pannaannap | 27:27cffdb2e9d3 | 29 | |
| sbarzowski |
47:9e21b199c679 | 30 | const float AnalogSensor::SEND_INTERVAL = 8.0; |
| pannaannap | 27:27cffdb2e9d3 | 31 | |
| pannaannap | 27:27cffdb2e9d3 | 32 | AnalogSensor::AnalogSensor(SENSOR_TYPE id, PinName pin) : |
| pannaannap | 27:27cffdb2e9d3 | 33 | Sensor(id), sensor_(AnalogIn(pin)) { |
| pannaannap | 27:27cffdb2e9d3 | 34 | } |
| pannaannap | 27:27cffdb2e9d3 | 35 | |
| pannaannap | 27:27cffdb2e9d3 | 36 | void AnalogSensor::updateState() {} |
| pannaannap | 27:27cffdb2e9d3 | 37 | |
| pannaannap | 27:27cffdb2e9d3 | 38 | Data AnalogSensor::dataToSend() { |
| pannaannap | 27:27cffdb2e9d3 | 39 | float data_read = sensor_.read(); |
| pannaannap | 27:27cffdb2e9d3 | 40 | return Data(sensor_id_, data_read); |
| pannaannap | 27:27cffdb2e9d3 | 41 | } |
| pannaannap | 27:27cffdb2e9d3 | 42 | |
| sbarzowski |
33:d3cc00e39e6a | 43 | void AnalogSensor::resetState() {} |