Serial Wombat Arduino Library
SerialWombatUltrasonicDistanceSensor.h
Go to the documentation of this file.
1 #pragma once
2 /*
3 Copyright 2020-2021 Broadwell Consulting Inc.
4 
5 "Serial Wombat" is a registered trademark of Broadwell Consulting Inc. in
6 the United States. See SerialWombat.com for usage guidance.
7 
8 Permission is hereby granted, free of charge, to any person obtaining a
9  * copy of this software and associated documentation files (the "Software"),
10  * to deal in the Software without restriction, including without limitation
11  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
12  * and/or sell copies of the Software, and to permit persons to whom the
13  * Software is furnished to do so, subject to the following conditions:
14 
15 The above copyright notice and this permission notice shall be included in
16  * all copies or substantial portions of the Software.
17 
18 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
19  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
20  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
21  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
22  * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
23  * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
24  * OTHER DEALINGS IN THE SOFTWARE.
25 */
26 
27 
28 #include <stdint.h>
29 #include "SerialWombat.h"
30 
31 
50 {
51 public:
55 
56  enum driver {
57  HC_SR04 = 0,
58  };
59 
60 
67  int16_t begin(uint8_t echoPin, driver driver, uint8_t triggerPin,bool autoTrigger = true, bool pullUp = false);
68 
72  uint16_t readPulseCount();
73 
78  int16_t manualTrigger();
79 
81  uint8_t pin() { return _pin; }
83  uint8_t swPinModeNumber() { return _pinMode; }
84 
85 private:
86 
87 };
SerialWombatUltrasonicDistanceSensor::begin
int16_t begin(uint8_t echoPin, driver driver, uint8_t triggerPin, bool autoTrigger=true, bool pullUp=false)
Initialization routine for SerialWombatUltrasonicDistanceSensor.
Definition: SerialWombatUltrasonicDistanceSensor.cpp:7
SerialWombatChip
Class for a Serial Wombat chip. Each Serial Wombat chip on a project should have its own instance.
Definition: SerialWombat.h:272
SerialWombatUltrasonicDistanceSensor::manualTrigger
int16_t manualTrigger()
Manually trigger a distance reading.
Definition: SerialWombatUltrasonicDistanceSensor.cpp:33
SerialWombatUltrasonicDistanceSensor::readPulseCount
uint16_t readPulseCount()
get the number of pulses that have been sent.
Definition: SerialWombatUltrasonicDistanceSensor.cpp:16
SerialWombatUltrasonicDistanceSensor::swPinModeNumber
uint8_t swPinModeNumber()
Facilitates Inheritance.
Definition: SerialWombatUltrasonicDistanceSensor.h:83
SerialWombatUltrasonicDistanceSensor::SerialWombatUltrasonicDistanceSensor
SerialWombatUltrasonicDistanceSensor(SerialWombatChip &serialWombat)
Class constructor for SerialWombatPulseTimer.
Definition: SerialWombatUltrasonicDistanceSensor.cpp:3
SerialWombat.h
SerialWombatPin
Describes a Serial Wombat Pin. Is base class for other pin modes.
Definition: SerialWombat.h:799
SerialWombatPin::_pinMode
uint8_t _pinMode
Definition: SerialWombat.h:873
SerialWombatUltrasonicDistanceSensor::pin
uint8_t pin()
Facilitates Inheritance.
Definition: SerialWombatUltrasonicDistanceSensor.h:81
SerialWombatAbstractProcessedInput
SerialWombatAnalogInput, SerialWombatPulseTimer, SerialWombatResistanceInput and others inherit from ...
Definition: SerialWombatAbstractProcessedInput.h:79
SerialWombatPin::_pin
uint8_t _pin
Definition: SerialWombat.h:871
SerialWombatUltrasonicDistanceSensor
A Class which uses one or two Serial Wombat 18AB pins to measure distance using an Ultrasonic distanc...
Definition: SerialWombatUltrasonicDistanceSensor.h:49
SerialWombatUltrasonicDistanceSensor::driver
driver
Definition: SerialWombatUltrasonicDistanceSensor.h:56
SerialWombatUltrasonicDistanceSensor::HC_SR04
@ HC_SR04
Standard buffered mode. Colors are uploaded by the host.
Definition: SerialWombatUltrasonicDistanceSensor.h:57