Serial Wombat Arduino Library
SerialWombat.h
Go to the documentation of this file.
1 #ifndef SERIAL_WOMBAT_H__
2 #define SERIAL_WOMBAT_H__
3 
4 /*
5 Copyright 2020-2023 Broadwell Consulting Inc.
6 
7 "Serial Wombat" is a registered trademark of Broadwell Consulting Inc. in
8 the United States. See SerialWombat.com for usage guidance.
9 
10 Permission is hereby granted, free of charge, to any person obtaining a
11  * copy of this software and associated documentation files (the "Software"),
12  * to deal in the Software without restriction, including without limitation
13  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
14  * and/or sell copies of the Software, and to permit persons to whom the
15  * Software is furnished to do so, subject to the following conditions:
16 
17 The above copyright notice and this permission notice shall be included in
18  * all copies or substantial portions of the Software.
19 
20 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
21  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
22  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
23  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
24  * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
25  * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
26  * OTHER DEALINGS IN THE SOFTWARE.
27 */
28 
29 #include <stdint.h>
30 #include "Stream.h"
31 //#include "Serial.h" // Using "" rather than <> for compatibility with Visual C++ simulation project
32 #include "Wire.h"// Using "" rather than <> for compatibility with Visual C++ simulation project
33 #include "Arduino.h"
34 
35 
36 
40 typedef enum
41 {
42  SW_LOW = 0,
43  SW_HIGH = 1,
44  SW_INPUT = 2,
46 
47 
50 
71 // SW_DATA_SOURCE_PIN_20 = 20,
72 // SW_DATA_SOURCE_PIN_21 = 21,
73 // SW_DATA_SOURCE_PIN_22 = 22,
74 // SW_DATA_SOURCE_PIN_23 = 23,
75 // SW_DATA_SOURCE_PIN_24 = 24,
76 // SW_DATA_SOURCE_PIN_25 = 25,
77 // SW_DATA_SOURCE_PIN_26 = 26,
78 // SW_DATA_SOURCE_PIN_27 = 27,
79 // SW_DATA_SOURCE_PIN_28 = 28,
80 // SW_DATA_SOURCE_PIN_29 = 29,
81 // SW_DATA_SOURCE_PIN_30 = 30,
82 // SW_DATA_SOURCE_PIN_31 = 31,
83 // SW_DATA_SOURCE_PIN_32 = 32,
84 // SW_DATA_SOURCE_PIN_33 = 33,
85 // SW_DATA_SOURCE_PIN_34 = 34,
86 // SW_DATA_SOURCE_PIN_35 = 35,
87 // SW_DATA_SOURCE_PIN_36 = 36,
88 // SW_DATA_SOURCE_PIN_37 = 37,
89 // SW_DATA_SOURCE_PIN_38 = 38,
90 // SW_DATA_SOURCE_PIN_39 = 39,
91 // SW_DATA_SOURCE_PIN_40 = 40,
92 // SW_DATA_SOURCE_PIN_41 = 41,
93 // SW_DATA_SOURCE_PIN_42 = 42,
94 // SW_DATA_SOURCE_PIN_43 = 43,
95 // SW_DATA_SOURCE_PIN_44 = 44,
96 // SW_DATA_SOURCE_PIN_45 = 45,
97 // SW_DATA_SOURCE_PIN_46 = 46,
98 // SW_DATA_SOURCE_PIN_47 = 47,
99 // SW_DATA_SOURCE_PIN_48 = 48,
100 // SW_DATA_SOURCE_PIN_49 = 49,
101 // SW_DATA_SOURCE_PIN_50 = 50,
102 // SW_DATA_SOURCE_PIN_51 = 51,
103 // SW_DATA_SOURCE_PIN_52 = 52,
104 // SW_DATA_SOURCE_PIN_53 = 53,
105 // SW_DATA_SOURCE_PIN_54 = 54,
106 // SW_DATA_SOURCE_PIN_55 = 55,
107 // SW_DATA_SOURCE_PIN_56 = 56,
108 // SW_DATA_SOURCE_PIN_57 = 57,
109 // SW_DATA_SOURCE_PIN_58 = 58,
110 // SW_DATA_SOURCE_PIN_59 = 59,
111 // SW_DATA_SOURCE_PIN_60 = 60,
112 // SW_DATA_SOURCE_PIN_61 = 61,
113 // SW_DATA_SOURCE_PIN_62 = 62,
114 // SW_DATA_SOURCE_PIN_63 = 63,
122  SW_DATA_SOURCE_ERRORS = 72,
127  SW_DATA_SOURCE_LFSR = 78,
128  SW_DATA_SOURCE_0x55 = 85,
134  //NOT ANALOG SW_DATA_SOURCE_PIN_5_MV = 105,
135  //NOT ANALOG SW_DATA_SOURCE_PIN_6_MV = 106,
136  //NOT ANALOG SW_DATA_SOURCE_PIN_7_MV = 107,
137  //NOT ANALOG SW_DATA_SOURCE_PIN_8_MV = 108,
138  //NOT ANALOG SW_DATA_SOURCE_PIN_9_MV = 109,
139  //NOT ANALOG SW_DATA_SOURCE_PIN_10_MV = 110,
140  //NOT ANALOG SW_DATA_SOURCE_PIN_11_MV = 111,
141  //NOT ANALOG SW_DATA_SOURCE_PIN_12_MV = 112,
142  //NOT ANALOG SW_DATA_SOURCE_PIN_13_MV = 113,
143  //NOT ANALOG SW_DATA_SOURCE_PIN_14_MV = 114,
144  //NOT ANALOG SW_DATA_SOURCE_PIN_15_MV = 115,
151 // SW_DATA_SOURCE_2HZ_SIN = 166,
154 // SW_DATA_SOURCE_1HZ_SIN = 169,
157 // SW_DATA_SOURCE_2SEC_SIN = 172,
160 // SW_DATA_SOURCE_8SEC_SIN = 175,
163 // SW_DATA_SOURCE_65SEC_SIN = 178,
164  SW_DATA_SOURCE_NONE = 255,
165 };
166 
167 #define ERROR_HOST_INCORRECT_NUMBER_BYTES_WRITTEN 0x10000
168 #define ERROR_HOST_DATA_TOO_LONG 0x10001
169 #define ERROR_HOST_NACK_ADDRESS 0x10002
170 #define ERROR_HOST_NACK_DATA 0x10003
171 #define ERROR_HOST_OTHER_I2C_ERROR 0x10004
172 
173 #define WOMBAT_MAXIMUM_PINS 20
174 
176 {
177  CMD_ECHO ='!',
178  CMD_READ_BUFFER_ASCII = 'G',
179  CMD_ASCII_SET_PIN ='P',
180  CMD_RESET = 'R',
181  CMD_SET_BUFFER_ASCII = 'S',
182  CMD_RESYNC = 'U',
183  CMD_VERSION = 'V',
184  CMD_SUPPLYVOLTAGE = 'v',
195  COMMAND_BINARY_CONFIGURE = 0x9F,
196  COMMAND_BINARY_READ_RAM = 0xA0,
199  COMMAND_BINARY_WRITE_RAM = 0xA3,
201  COMMAND_CALIBRATE_ANALOG = 0xA5,
202  COMMAND_ENABLE_2ND_UART = 0xA6,
204  COMMAND_UART0_TX_7BYTES = 0xB0,
205  COMMAND_UART0_RX_7BYTES = 0xB1,
206  COMMAND_UART1_TX_7BYTES = 0xB2,
207  COMMAND_UART1_RX_7BYTES = 0xB3,
208  CONFIGURE_PIN_MODE0 = 200,
209  CONFIGURE_PIN_MODE1 = 201,
210  CONFIGURE_PIN_MODE2 = 202,
211  CONFIGURE_PIN_MODE3 = 203,
212  CONFIGURE_PIN_MODE4 = 204,
213  CONFIGURE_PIN_MODE5 = 205,
214  CONFIGURE_PIN_MODE6 = 206,
215  CONFIGURE_PIN_MODE7 = 207,
216  CONFIGURE_PIN_MODE8 = 208,
217  CONFIGURE_PIN_MODE9 = 209,
218  CONFIGURE_PIN_MODE10 = 210,
226 
227 };
228 
229 
230 typedef enum {
262 
263 class SerialWombatChip;
264 
265 typedef void (*SerialWombatErrorHandler_t) (uint16_t errorNumber, SerialWombatChip* sw);
266 
273 {
274 public:
283  int16_t begin(HardwareSerial &serial);
295  int16_t begin(HardwareSerial& serial, bool reset);
296 
305  int16_t begin(TwoWire &wire, uint8_t i2cAddress);
306 
314  int16_t begin(uint8_t i2cAddress);
315 
327  int16_t begin(TwoWire& wire, uint8_t i2cAddress, bool reset);
329 
338  int sendPacket( uint8_t tx[], uint8_t rx[]);
339 
347  int sendPacket(uint8_t tx[]);
348 
357  int sendPacket(uint8_t tx[], uint8_t rx[], bool retryIfEchoDoesntMatch, uint8_t beginningBytesToMatch = 8, uint8_t endBytesToMatch = 0);
358 
366  int sendPacket(uint8_t tx[], bool retryIfEchoDoesntMatch);
367 
375 
376  int sendPacketNoResponse(uint8_t tx[]);
377 
384  char* readVersion(void);
385 
390  uint32_t readVersion_uint32(void);
391 
399  uint16_t readPublicData(uint8_t pin);
400 
408  uint16_t readPublicData(SerialWombatDataSource dataSource);
409 
413  uint16_t writePublicData(uint8_t pin, uint16_t value);
414 
422  uint16_t readSupplyVoltage_mV(void);
423 
432  int16_t readTemperature_100thsDegC(void);
433 
434 
439  void hardwareReset();
440 
450  void pinMode(uint8_t pin, uint8_t mode);
451 
459  void pinMode(uint8_t pin, uint8_t mode, bool pullDown, bool openDrain);
460 
467  void digitalWrite(uint8_t pin, uint8_t val);
468 
472  int digitalRead(uint8_t pin);
473 
481  int analogRead(uint8_t pin);
482 
492  void analogWrite(uint8_t pin, int val);
493 
494 
503  bool queryVersion();
504 
509  uint32_t readFramesExecuted();
510 
516 
517  uint16_t readOverflowFrames();
518 
526  void jumpToBoot();
527 
546  uint8_t readRamAddress(uint16_t address);
547 
565 
566  int16_t writeRamAddress(uint16_t address, uint8_t value);
567 
580 
581  uint32_t readFlashAddress(uint32_t address);
582 
591  void sleep();
592 
594  void wake();
595 
597  bool isSW18();
598 
600  int16_t eraseFlashPage(uint32_t address);
602  int16_t writeFlashRow(uint32_t address);
603 
608  uint16_t _supplyVoltagemV = 0;
609 
611  uint8_t model[4] = { 0 };
612 
614  uint8_t fwVersion[4] = { 0 };
615 
619  uint8_t uniqueIdentifier[16];
620 
624 
630  uint16_t deviceRevision;
632  uint16_t errorCount = 0;
633 
635  bool inBoot = false;
636 
644  int16_t setThroughputPin(uint8_t pin);
645 
651  int writeUserBuffer(uint16_t index, uint8_t* buffer, uint16_t count);
652 
658  int writeUserBuffer(uint16_t index, char* s);
659 
665  int writeUserBuffer(uint16_t index, const char s[]);
666 
672 
673  int readUserBuffer(uint16_t index, uint8_t* buffer, uint16_t count);
674 
680  int16_t enable2ndCommandInterface(bool enabled = true);
681 
689  int16_t startStartupCommandCapture();
690 
693  int16_t stopStartupCommandCapture();
694 
695 
705  int16_t writeStartupCommandCapture();
706 
707 
717  int16_t writeFrameTimerPin(uint8_t pin);
718 
719 
726 
732  static uint8_t find(bool keepTrying = false);
733 
735  int16_t lastErrorCode = 0;
736 
741  int16_t readLastErrorCommand(uint8_t* cmd);
742 
746 
748  uint8_t address = 0;
749 
754 
755  int16_t echo(uint8_t data[], uint8_t count = 7);
756  int16_t echo(char* data);
757 
758  uint32_t readBirthday();
759  int16_t readBrand(char* data);
760 private:
761 
762 
763  char version[8] = { 0 };
764  HardwareSerial * Serial = NULL;
765  TwoWire* i2cInterface = NULL;
766  uint8_t _pinmode[WOMBAT_MAXIMUM_PINS]={}; // Includes Pullup
767  bool _pullDown[WOMBAT_MAXIMUM_PINS]={};
768  bool _openDrain[WOMBAT_MAXIMUM_PINS]={};
769  bool _highLow[WOMBAT_MAXIMUM_PINS] = {};
770  bool _asleep = false;
771  void configureDigitalPin(uint8_t pin, uint8_t highLow);
772  uint32_t sendReadyTime = 0;
773  int16_t initialize();
774  void readUniqueIdentifier();
775  void readDeviceIdentifier();
776  uint16_t returnErrorCode(uint8_t* rx);
777  SerialWombatErrorHandler_t errorHandler = NULL;
778  bool _currentlyCommunicating = false;
779 };
780 
782 class SerialWombat : public SerialWombatChip {};
784 #define SW_LE16(_a) (uint8_t)((_a) & 0xFF), (uint8_t)((_a) >>8)
785 
787 #define SW_LE32(_a) (uint8_t)((_a) & 0xFF), (uint8_t)((_a) >>8) , (uint8_t)((_a) >>16), (uint8_t)((_a) >>24)
788 
789 
800 {
801 public:
804  SerialWombatPin(SerialWombatChip& serialWombatChip);
805 
809  SerialWombatPin(SerialWombatChip& serialWombatChip, uint8_t pin);
810 
815  uint16_t readPublicData()
816  {
817  return _sw.readPublicData(_pin);
818  };
819 
828  void pinMode(uint8_t mode);
829 
836  void pinMode(uint8_t mode, bool pullDown, bool openDrain);
837 
844  void digitalWrite(uint8_t val);
845 
851  int digitalRead();
852 
853 
856  uint16_t writePublicData(uint16_t value)
857  { return _sw.writePublicData(_pin, value); }
858 
861  uint8_t pin() {return _pin;}
862 
865  uint8_t swPinModeNumber() { return _pinMode; }
866 
867 
868 
869 
870 protected:
871  uint8_t _pin = 255;
873  uint8_t _pinMode = 0;
874 
875 };
876 
877 
883 void SerialWombatSerialErrorHandlerBrief(uint16_t error, SerialWombatChip* sw);
885 
886 #include "SerialWombatErrors.h"
887 #include "SerialWombatQueue.h"
891 #include "SerialWombat18CapTouch.h"
892 #include "SerialWombat18ABVGA.h"
893 #include "SerialWombatAnalogInput.h"
895 #include "SerialWombatHSClock.h"
896 #include "SerialWombatHSCounter.h"
901 #include "SerialWombatPS2Keyboard.h"
903 #include "SerialWombatPulseTimer.h"
904 #include "SerialWombatPWM.h"
905 #include "SerialWombatQuadEnc.h"
907 #include "SerialWombatServo.h"
908 #include "SerialWombatTM1637.h"
909 #include "SerialWombatUART.h"
911 #include "SerialWombatWatchdog.h"
912 #include "SerialWombatWS2812.h"
914 
915 #endif
SerialWombatPulseOnChange.h
SerialWombatDataSource::SW_DATA_SOURCE_1HZ_SAW
@ SW_DATA_SOURCE_1HZ_SAW
(168) Sawtooth wave that goes from 0 to 65535 to 0 every 1024 frames
SerialWombatCommands::CONFIGURE_PIN_MODE10
@ CONFIGURE_PIN_MODE10
(210)
SerialWombatCommands::CMD_READ_BUFFER_ASCII
@ CMD_READ_BUFFER_ASCII
('G')
SerialWombatChip::writeFrameTimerPin
int16_t writeFrameTimerPin(uint8_t pin)
Set a pin to be a frame timer for system utilization (SW18AB Only)
Definition: SerialWombat.cpp:972
SerialWombatChip
Class for a Serial Wombat chip. Each Serial Wombat chip on a project should have its own instance.
Definition: SerialWombat.h:272
SerialWombatChip::begin
int16_t begin(HardwareSerial &serial)
initialize a Serial Wombat chip to use a Serial Interface.
Definition: SerialWombat.cpp:41
PIN_MODE_ANALOGINPUT
@ PIN_MODE_ANALOGINPUT
(2)
Definition: SerialWombat.h:233
SerialWombatCommands::COMMAND_READ_LAST_ERROR_PACKET
@ COMMAND_READ_LAST_ERROR_PACKET
(0xA7)
SerialWombatCommands::COMMAND_ENABLE_2ND_UART
@ COMMAND_ENABLE_2ND_UART
(0xA6)
SerialWombatChip::jumpToBoot
void jumpToBoot()
Jump to Bootloader and wait for a UART download of new firmware.
Definition: SerialWombat.cpp:639
SerialWombatQuadEnc.h
SerialWombatCommands::CMD_VERSION
@ CMD_VERSION
('V')
SerialWombatDataSource::SW_DATA_SOURCE_PIN_8
@ SW_DATA_SOURCE_PIN_8
(8) 16 bit public data provided by Pin 8
SerialWombatWatchdog.h
PIN_MODE_PULSE_ON_CHANGE
@ PIN_MODE_PULSE_ON_CHANGE
(25)
Definition: SerialWombat.h:252
PIN_MODE_SW18AB_CAPTOUCH
@ PIN_MODE_SW18AB_CAPTOUCH
(22)
Definition: SerialWombat.h:249
SerialWombatHSClock.h
PIN_MODE_HS_CLOCK
@ PIN_MODE_HS_CLOCK
Definition: SerialWombat.h:256
PIN_MODE_UART1_RX_TX
@ PIN_MODE_UART1_RX_TX
(23)
Definition: SerialWombat.h:250
SerialWombatCommands::COMMAND_BINARY_QUEUE_INFORMATION
@ COMMAND_BINARY_QUEUE_INFORMATION
(0x94)
SerialWombatWS2812.h
PIN_MODE_DEBOUNCE
@ PIN_MODE_DEBOUNCE
(10)
Definition: SerialWombat.h:239
SerialWombatDataSource::SW_DATA_SOURCE_1024mvCounts
@ SW_DATA_SOURCE_1024mvCounts
(66) The number of ADC counts that result from a 1.024V reading
SerialWombatCommands::CONFIGURE_PIN_MODE0
@ CONFIGURE_PIN_MODE0
(200)
SerialWombatErrorHandler_t
void(* SerialWombatErrorHandler_t)(uint16_t errorNumber, SerialWombatChip *sw)
Definition: SerialWombat.h:265
SerialWombatCommands::COMMAND_UART0_RX_7BYTES
@ COMMAND_UART0_RX_7BYTES
(0xB1)
SerialWombatChip::lastErrorCode
int16_t lastErrorCode
The last error code returned as part of a protocol error message expressed as a positive integer.
Definition: SerialWombat.h:735
SerialWombatDataSource::SW_DATA_SOURCE_PIN_9
@ SW_DATA_SOURCE_PIN_9
(9) 16 bit public data provided by Pin 9
SerialWombatChip::digitalRead
int digitalRead(uint8_t pin)
Reads the state of a Pin.
Definition: SerialWombat.cpp:571
SerialWombatChip::sendPacketNoResponse
int sendPacketNoResponse(uint8_t tx[])
Send an 8 byte packet to the Serial Wombat chip, don't wait for a response.
Definition: SerialWombat.cpp:409
SerialWombatPinMode_t
SerialWombatPinMode_t
Definition: SerialWombat.h:230
SerialWombatAnalogInput.h
SerialWombatChip::analogRead
int analogRead(uint8_t pin)
Configures pin as analog input and does an immediate A/D conversion.
Definition: SerialWombat.cpp:583
SerialWombatPin::SerialWombatPin
SerialWombatPin(SerialWombatChip &serialWombatChip)
Instantiates a Serial Wombat Pin.
Definition: SerialWombat.cpp:1056
SerialWombatPin::swPinModeNumber
uint8_t swPinModeNumber()
Returns the Mode number. Used primarily by derived classes to populate packet data.
Definition: SerialWombat.h:865
SerialWombatAbstractButton.h
SerialWombatDataSource::SW_DATA_SOURCE_LFSR
@ SW_DATA_SOURCE_LFSR
(78) A Linear Feedback Shift Register that produces a Pseudo random sequence of 16 bit values
SerialWombatDataSource::SW_DATA_SOURCE_PIN_15
@ SW_DATA_SOURCE_PIN_15
(15) 16 bit public data provided by Pin 15
SerialWombatPin::_sw
SerialWombatChip & _sw
Definition: SerialWombat.h:872
SerialWombatDataSource::SW_DATA_SOURCE_PIN_16_MV
@ SW_DATA_SOURCE_PIN_16_MV
(116) Pin 16 public output expressed in mV (for analog modes only)
SerialWombatCommands::CONFIGURE_PIN_MODE7
@ CONFIGURE_PIN_MODE7
(207)
SerialWombatChip::analogWrite
void analogWrite(uint8_t pin, int val)
Set a pin to PWM output.
Definition: SerialWombat.cpp:591
PIN_MODE_WATCHDOG
@ PIN_MODE_WATCHDOG
(7)
Definition: SerialWombat.h:237
PIN_MODE_CONTROLLED
@ PIN_MODE_CONTROLLED
(1)
Definition: SerialWombat.h:232
PIN_MODE_SW_UART
@ PIN_MODE_SW_UART
(13)
Definition: SerialWombat.h:242
SerialWombatChip::queryVersion
bool queryVersion()
Send a version request to the Serial Wombat chip.
Definition: SerialWombat.cpp:603
SerialWombatChip::setThroughputPin
int16_t setThroughputPin(uint8_t pin)
Set a pin to be a throughput monitoring pin.
Definition: SerialWombat.cpp:702
SerialWombatChip::enable2ndCommandInterface
int16_t enable2ndCommandInterface(bool enabled=true)
Enable UART command interface in addition to I2C (SW18AB Only)
Definition: SerialWombat.cpp:944
PIN_MODE_PS2KEYBOARD
@ PIN_MODE_PS2KEYBOARD
(32)
Definition: SerialWombat.h:259
SerialWombatPin::writePublicData
uint16_t writePublicData(uint16_t value)
Write a 16 bit value to this pin.
Definition: SerialWombat.h:856
SerialWombatPin::pinMode
void pinMode(uint8_t mode)
Set pin to INPUT or OUTPUT.
Definition: SerialWombat.cpp:1061
SerialWombatLiquidCrystal.h
SerialWombatChip::readSupplyVoltage_mV
uint16_t readSupplyVoltage_mV(void)
Measure the Serial Wombat chip's Supply voltage.
Definition: SerialWombat.cpp:502
SerialWombatCommands::CONFIGURE_PIN_MODE3
@ CONFIGURE_PIN_MODE3
(203)
SerialWombatChip::inBoot
bool inBoot
Set to true if boot mode is indicated by a version query.
Definition: SerialWombat.h:635
SerialWombatChip::_supplyVoltagemV
uint16_t _supplyVoltagemV
Definition: SerialWombat.h:608
SerialWombat18ABVGA.h
SerialWombat18CapTouch.h
PIN_MODE_RESISTANCEINPUT
@ PIN_MODE_RESISTANCEINPUT
(24)
Definition: SerialWombat.h:251
SerialWombatChip::readFramesExecuted
uint32_t readFramesExecuted()
Get the number of 1mS frames that have been executed since Serial Wombat chip reset.
Definition: SerialWombat.cpp:625
SerialWombatDataSource::SW_DATA_SOURCE_2SEC_SAW
@ SW_DATA_SOURCE_2SEC_SAW
(171)Sawtooth wave that goes from 0 to 65535 to 0 every 2048 frames
SerialWombatDataSource::SW_DATA_SOURCE_VBG_COUNTS_VS_VREF
@ SW_DATA_SOURCE_VBG_COUNTS_VS_VREF
(76) A/D conversion of VBG against VRef . Used for mfg calibration
PIN_MODE_TM1637
@ PIN_MODE_TM1637
(11)
Definition: SerialWombat.h:240
SerialWombatChip::wake
void wake()
Called to send a dummy packet to the Serial Wombat chip to wake it from sleep and ready it for other ...
Definition: SerialWombat.cpp:674
SerialWombatDataSource::SW_DATA_SOURCE_PIN_17_MV
@ SW_DATA_SOURCE_PIN_17_MV
(117) Pin 17 public output expressed in mV (for analog modes only)
PIN_MODE_PWM
@ PIN_MODE_PWM
(16)
Definition: SerialWombat.h:245
SerialWombatHSCounter.h
SerialWombatDataSource::SW_DATA_SOURCE_2HZ_SAW
@ SW_DATA_SOURCE_2HZ_SAW
(165) Sawtooth wave that goes from 0 to 65535 to 0 every 512 frames
SerialWombatCommands::COMMAND_BINARY_WRITE_RAM
@ COMMAND_BINARY_WRITE_RAM
(0xA3)
SerialWombatServo.h
SerialWombatCommands::COMMAND_BINARY_WRITE_USER_BUFFER
@ COMMAND_BINARY_WRITE_USER_BUFFER
(0x84)
SerialWombatProtectedOutput.h
SerialWombatCommands::CONFIGURE_PIN_MODE8
@ CONFIGURE_PIN_MODE8
(208)
SerialWombatCommands::COMMAND_UART1_TX_7BYTES
@ COMMAND_UART1_TX_7BYTES
(0xB2)
SerialWombatDataSource::SW_DATA_SOURCE_PIN_4_MV
@ SW_DATA_SOURCE_PIN_4_MV
(104) Pin 4 public output expressed in mV (for analog modes only)
PIN_MODE_SERVO
@ PIN_MODE_SERVO
(3)
Definition: SerialWombat.h:234
SerialWombatDataSource::SW_DATA_SOURCE_SYSTEM_UTILIZATION
@ SW_DATA_SOURCE_SYSTEM_UTILIZATION
(74) A number between 0 and 65535 that scales to the average length of pin processing frames between ...
SerialWombatCommands::COMMAND_BINARY_QUEUE_READ_BYTES
@ COMMAND_BINARY_QUEUE_READ_BYTES
(0x93)
SerialWombatPWM.h
SerialWombatCommands::CONFIGURE_PIN_MODE4
@ CONFIGURE_PIN_MODE4
(204)
SerialWombatSerialErrorHandlerBrief
void SerialWombatSerialErrorHandlerBrief(uint16_t error, SerialWombatChip *sw)
a sample error handler that can be registered with registerErrorHandler to report protocol errors on ...
Definition: SerialWombat.cpp:1116
SerialWombatChip::SerialWombatChip
SerialWombatChip()
Definition: SerialWombat.cpp:30
SerialWombatDataSource::SW_DATA_SOURCE_65SEC_SAW
@ SW_DATA_SOURCE_65SEC_SAW
(177 )Sawtooth wave that goes from 0 to 65535 to 0 every 65536 frames
SerialWombatQueue.h
SerialWombatChip::hardwareReset
void hardwareReset()
Send a reset command to the Serial Wombat chip.
Definition: SerialWombat.cpp:541
PIN_MODE_PULSETIMER
@ PIN_MODE_PULSETIMER
(18)
Definition: SerialWombat.h:247
SerialWombatChip::uniqueIdentifierLength
uint8_t uniqueIdentifierLength
Definition: SerialWombat.h:623
SerialWombatPin::digitalRead
int digitalRead()
Reads the state of the Pin.
Definition: SerialWombat.cpp:1084
SerialWombatChip::eraseFlashPage
int16_t eraseFlashPage(uint32_t address)
Erases a page in flash. Intended for use with the Bootloader, not by end users outside of bootloading...
Definition: SerialWombat.cpp:685
SerialWombatChip::readLastErrorCommand
int16_t readLastErrorCommand(uint8_t *cmd)
Returns the last Serial Wombat command that produced a protocol error.
Definition: SerialWombat.cpp:1089
SerialWombatDataSource::SW_DATA_SOURCE_NONE
@ SW_DATA_SOURCE_NONE
(255 ) Used to mean "No Source Selected"
SW_HIGH
@ SW_HIGH
Definition: SerialWombat.h:43
SerialWombatTM1637.h
SerialWombatDataSource::SW_DATA_SOURCE_PIN_2
@ SW_DATA_SOURCE_PIN_2
(2) 16 bit public data provided by Pin 2
SerialWombatChip::find
static uint8_t find(bool keepTrying=false)
Search the I2C Bus addresses 0x68 to 0x6F for I2C devices, and test to see if they respond to Serial ...
Definition: SerialWombat.cpp:709
SerialWombatDataSource::SW_DATA_SOURCE_FRAMES_RUN_LSW
@ SW_DATA_SOURCE_FRAMES_RUN_LSW
(67) The number of frames run since reset, least significant 16 bits
SerialWombatAbstractProcessedInput.h
SerialWombatDataSource::SW_DATA_SOURCE_DROPPED_FRAMES
@ SW_DATA_SOURCE_DROPPED_FRAMES
(73) The number of times since reset that a frame ran so far behind that it crossed two subsequent 1m...
SerialWombatCommands::COMMAND_BINARY_WRITE_USER_BUFFER_CONTINUE
@ COMMAND_BINARY_WRITE_USER_BUFFER_CONTINUE
(0x85)
SerialWombatDataSource::SW_DATA_SOURCE_VCC_mVOLTS
@ SW_DATA_SOURCE_VCC_mVOLTS
(75) The system source voltage in mV
SerialWombatChip::digitalWrite
void digitalWrite(uint8_t pin, uint8_t val)
Set an output pin High or Low.
Definition: SerialWombat.cpp:565
SerialWombatDataSource::SW_DATA_SOURCE_TEMPERATURE
@ SW_DATA_SOURCE_TEMPERATURE
(70)The internal core temperature expressed in 100ths deg C
SerialWombatCommands::CMD_SET_BUFFER_ASCII
@ CMD_SET_BUFFER_ASCII
('S')
SerialWombatDataSource::SW_DATA_SOURCE_PIN_14
@ SW_DATA_SOURCE_PIN_14
(14) 16 bit public data provided by Pin 14
PIN_MODE_MATRIX_KEYPAD
@ PIN_MODE_MATRIX_KEYPAD
(15)
Definition: SerialWombat.h:244
SerialWombatDataSource::SW_DATA_SOURCE_PIN_0_MV
@ SW_DATA_SOURCE_PIN_0_MV
(100) Pin 0 public output expressed in mV (for analog modes only)
SerialWombatChip::readUserBuffer
int readUserBuffer(uint16_t index, uint8_t *buffer, uint16_t count)
Read bytes from the User Memory Buffer in the Serial Wombat chip.
Definition: SerialWombat.cpp:748
SerialWombatChip::readOverflowFrames
uint16_t readOverflowFrames()
Get the number of times an overflow Frame has occured.
Definition: SerialWombat.cpp:634
SerialWombatCommands::CONFIGURE_PIN_MODE9
@ CONFIGURE_PIN_MODE9
(209)
SerialWombatChip::deviceIdentifier
uint16_t deviceIdentifier
Definition: SerialWombat.h:627
SerialWombatDataSource::SW_DATA_SOURCE_8SEC_SAW
@ SW_DATA_SOURCE_8SEC_SAW
(174)Sawtooth wave that goes from 0 to 65535 to 0 every 8192 frames
SerialWombatCommands
SerialWombatCommands
Definition: SerialWombat.h:175
SerialWombatChip::readPublicData
uint16_t readPublicData(uint8_t pin)
Read the 16 Bit public data associated with a Serial Wombat Pin Mode.
Definition: SerialWombat.cpp:829
SerialWombatUART.h
SerialWombatPin
Describes a Serial Wombat Pin. Is base class for other pin modes.
Definition: SerialWombat.h:799
SerialWombatDataSource::SW_DATA_SOURCE_PIN_0
@ SW_DATA_SOURCE_PIN_0
(0) 16 bit public data provided by Pin 0
PIN_MODE_HS_COUNTER
@ PIN_MODE_HS_COUNTER
< (29)
Definition: SerialWombat.h:257
SerialWombatChip::readFlashAddress
uint32_t readFlashAddress(uint32_t address)
Read Address from Flash based on 32 bit address.
Definition: SerialWombat.cpp:659
SerialWombatChip::readTemperature_100thsDegC
int16_t readTemperature_100thsDegC(void)
Measure the Serial Wombat chip's internal temperature.
Definition: SerialWombat.cpp:524
SerialWombatChip::uniqueIdentifier
uint8_t uniqueIdentifier[16]
Definition: SerialWombat.h:619
WOMBAT_MAXIMUM_PINS
#define WOMBAT_MAXIMUM_PINS
Definition: SerialWombat.h:173
SerialWombatCommands::CONFIGURE_CHANNEL_MODE_HW_3
@ CONFIGURE_CHANNEL_MODE_HW_3
(223)
SerialWombatChip::pinMode
void pinMode(uint8_t pin, uint8_t mode)
Set a pin to INPUT or OUTPUT.
Definition: SerialWombat.cpp:548
SerialWombatChip::writeFlashRow
int16_t writeFlashRow(uint32_t address)
Writes a row in flash. Intended for use with the Bootloader, not by end users outside of bootloading ...
Definition: SerialWombat.cpp:694
SerialWombatChip::errorCount
uint16_t errorCount
Incremented every time a communication or command error is detected.
Definition: SerialWombat.h:632
SerialWombatChip::readRamAddress
uint8_t readRamAddress(uint16_t address)
Read Address from RAM based on 16 bit address.
Definition: SerialWombat.cpp:645
SerialWombatPin::_pinMode
uint8_t _pinMode
Definition: SerialWombat.h:873
SerialWombatChip::readBirthday
uint32_t readBirthday()
Definition: SerialWombat.cpp:1013
SerialWombatDataSource::SW_DATA_SOURCE_PIN_3
@ SW_DATA_SOURCE_PIN_3
(3) 16 bit public data provided by Pin 3
SerialWombatChip::writeRamAddress
int16_t writeRamAddress(uint16_t address, uint8_t value)
Write byte to Address in RAM based on 16 bit address.
Definition: SerialWombat.cpp:653
SerialWombatCommands::COMMAND_BINARY_READ_FLASH
@ COMMAND_BINARY_READ_FLASH
(0xA1)
SerialWombatCommands::CMD_ASCII_SET_PIN
@ CMD_ASCII_SET_PIN
('P')
SerialWombatDataSource::SW_DATA_SOURCE_PACKETS_RECEIVED
@ SW_DATA_SOURCE_PACKETS_RECEIVED
(71) The nubmer of incoming command packets that have been processed since reset (rolls over at 65535...
SerialWombatCommands::CONFIGURE_CHANNEL_MODE_HW_2
@ CONFIGURE_CHANNEL_MODE_HW_2
(222)
SerialWombatChip::sendPacket
int sendPacket(uint8_t tx[], uint8_t rx[])
Send an 8 byte packet to the Serial Wombat chip and wait for 8 bytes back.
Definition: SerialWombat.cpp:236
SerialWombatCommands::CONFIGURE_PIN_MODE_HW_0
@ CONFIGURE_PIN_MODE_HW_0
(220)
PIN_MODE_WS2812
@ PIN_MODE_WS2812
(12)
Definition: SerialWombat.h:241
PIN_MODE_UNKNOWN
@ PIN_MODE_UNKNOWN
(0xFF)
Definition: SerialWombat.h:260
SerialWombatCommands::COMMAND_CALIBRATE_ANALOG
@ COMMAND_CALIBRATE_ANALOG
(0xA5)
SerialWombatDataSource::SW_DATA_SOURCE_PIN_10
@ SW_DATA_SOURCE_PIN_10
(10) 16 bit public data provided by Pin 10
SerialWombatCommands::COMMAND_BINARY_WRITE_FLASH
@ COMMAND_BINARY_WRITE_FLASH
(0xA4)
SerialWombatChip::deviceRevision
uint16_t deviceRevision
Definition: SerialWombat.h:630
SerialWombatPin::readPublicData
uint16_t readPublicData()
Read the 16 Bit public data associated with this pin.
Definition: SerialWombat.h:815
SerialWombatDataSource::SW_DATA_SOURCE_PIN_16
@ SW_DATA_SOURCE_PIN_16
(16) 16 bit public data provided by Pin 16
SerialWombatDataSource::SW_DATA_SOURCE_PIN_1
@ SW_DATA_SOURCE_PIN_1
(1) 16 bit public data provided by Pin 1
SerialWombatDataSource::SW_DATA_SOURCE_2SEC_SQUARE
@ SW_DATA_SOURCE_2SEC_SQUARE
(170)Square wave that alternates between 0 and 65535 every 1024 frames
SerialWombatChip::sleep
void sleep()
Shuts down most functions of the Serial Wombat chip reducing power consumption.
Definition: SerialWombat.cpp:667
SerialWombatChip::writePublicData
uint16_t writePublicData(uint8_t pin, uint16_t value)
Write a 16 bit value to a Serial Wombat pin Mode.
Definition: SerialWombat.cpp:837
SerialWombatErrors.h
SerialWombatPS2Keyboard.h
SerialWombatDataSource::SW_DATA_SOURCE_FRAMES_RUN_MSW
@ SW_DATA_SOURCE_FRAMES_RUN_MSW
(68) The number of frames run since reset, most significant 16 bits
SerialWombatUltrasonicDistanceSensor.h
SerialWombatChip::writeUserBuffer
int writeUserBuffer(uint16_t index, uint8_t *buffer, uint16_t count)
Write bytes to the User Memory Buffer in the Serial Wombat chip.
Definition: SerialWombat.cpp:845
SerialWombatDataSource::SW_DATA_SOURCE_PIN_3_MV
@ SW_DATA_SOURCE_PIN_3_MV
(103) Pin 3 public output expressed in mV (for analog modes only)
SerialWombatPinState_t
SerialWombatPinState_t
Definition: SerialWombat.h:40
SerialWombatCommands::CONFIGURE_PIN_OUTPUTSCALE
@ CONFIGURE_PIN_OUTPUTSCALE
(210)
SerialWombatCommands::COMMAND_BINARY_CONFIGURE
@ COMMAND_BINARY_CONFIGURE
(0x9F)
SerialWombatChip::readVersion_uint32
uint32_t readVersion_uint32(void)
Request version as a uint32.
Definition: SerialWombat.cpp:494
SerialWombatChip::fwVersion
uint8_t fwVersion[4]
Contains the last firmware Version retreived by queryVersion() as a zero-terminated string.
Definition: SerialWombat.h:614
SW_INPUT
@ SW_INPUT
Definition: SerialWombat.h:44
SerialWombatChip::~SerialWombatChip
~SerialWombatChip()
Definition: SerialWombat.cpp:36
SerialWombatPin::pin
uint8_t pin()
Returns the current SW pin number. Used primarily for virtual calls by derived classes.
Definition: SerialWombat.h:861
SerialWombatDataSource::SW_DATA_SOURCE_INCREMENTING_NUMBER
@ SW_DATA_SOURCE_INCREMENTING_NUMBER
(65) An number that increments each time it is accessed.
SerialWombat
This class name is depricated. Do not use for new development. Use SerialWombatChip instead.
Definition: SerialWombat.h:782
SerialWombatCommands::CONFIGURE_CHANNEL_MODE_HW_1
@ CONFIGURE_CHANNEL_MODE_HW_1
(221)
SW_LOW
@ SW_LOW
Definition: SerialWombat.h:42
PIN_MODE_THROUGHPUT_CONSUMER
@ PIN_MODE_THROUGHPUT_CONSUMER
(4)
Definition: SerialWombat.h:235
SerialWombatMatrixKeypad.h
SerialWombatCommands::CMD_RESYNC
@ CMD_RESYNC
('U')
SerialWombatDataSource::SW_DATA_SOURCE_PIN_18
@ SW_DATA_SOURCE_PIN_18
(18) 16 bit public data provided by Pin 18
SerialWombatDataSource::SW_DATA_SOURCE_PIN_4
@ SW_DATA_SOURCE_PIN_4
(4) 16 bit public data provided by Pin 4
SerialWombatDataSource
SerialWombatDataSource
A list of Serial Wombat public data sources.
Definition: SerialWombat.h:49
PIN_MODE_INPUT_PROCESSOR
@ PIN_MODE_INPUT_PROCESSOR
(14)
Definition: SerialWombat.h:243
SerialWombatCommands::COMMAND_UART1_RX_7BYTES
@ COMMAND_UART1_RX_7BYTES
(0xB3)
SerialWombatChip::echo
int16_t echo(uint8_t data[], uint8_t count=7)
Definition: SerialWombat.cpp:992
SerialWombatDataSource::SW_DATA_SOURCE_PIN_13
@ SW_DATA_SOURCE_PIN_13
(13) 16 bit public data provided by Pin 13
SerialWombatPin::_pin
uint8_t _pin
Definition: SerialWombat.h:871
SerialWombatCommands::COMMAND_BINARY_READ_USER_BUFFER
@ COMMAND_BINARY_READ_USER_BUFFER
(0x83)
SerialWombatChip::startStartupCommandCapture
int16_t startStartupCommandCapture()
Start capture of startup commands (SW18AB Only)
Definition: SerialWombat.cpp:954
SerialWombatProcessedInputPin.h
SerialWombatDataSource::SW_DATA_SOURCE_PIN_1_MV
@ SW_DATA_SOURCE_PIN_1_MV
(101) Pin 1 public output expressed in mV (for analog modes only)
SerialWombatDataSource::SW_DATA_SOURCE_PIN_17
@ SW_DATA_SOURCE_PIN_17
(17) 16 bit public data provided by Pin 17
SerialWombatDataSource::SW_DATA_SOURCE_PIN_19_MV
@ SW_DATA_SOURCE_PIN_19_MV
(119) Pin 19 public output expressed in mV (for analog modes only)
PIN_MODE_QUADRATUREENCODER
@ PIN_MODE_QUADRATUREENCODER
(5)
Definition: SerialWombat.h:236
SerialWombatThroughputConsumer.h
SerialWombatChip::stopStartupCommandCapture
int16_t stopStartupCommandCapture()
Stop capture of startup commands (SW18AB Only)
Definition: SerialWombat.cpp:960
SerialWombatChip::communicationErrorRetries
uint8_t communicationErrorRetries
Definition: SerialWombat.h:753
SerialWombatCommands::CONFIGURE_PIN_MODE2
@ CONFIGURE_PIN_MODE2
(202)
SerialWombatCommands::CMD_RESET
@ CMD_RESET
('R')
SerialWombatDebouncedInput.h
PIN_MODE_FRAME_TIMER
@ PIN_MODE_FRAME_TIMER
(21)
Definition: SerialWombat.h:248
SerialWombatCommands::CONFIGURE_PIN_INPUTPROCESS
@ CONFIGURE_PIN_INPUTPROCESS
(211)
PIN_MODE_LIQUIDCRYSTAL
@ PIN_MODE_LIQUIDCRYSTAL
(28)
Definition: SerialWombat.h:255
SerialWombatCommands::COMMAND_BINARY_READ_PIN_BUFFFER
@ COMMAND_BINARY_READ_PIN_BUFFFER
(0x81)
SerialWombatAbstractScaledOutput.h
PIN_MODE_PROTECTED_OUTPUT
@ PIN_MODE_PROTECTED_OUTPUT
(8)
Definition: SerialWombat.h:238
SerialWombatChip::readVersion
char * readVersion(void)
Request version string (combined model and firmware) and return pointer to it.
Definition: SerialWombat.cpp:479
SerialWombatChip::model
uint8_t model[4]
Contains the last model retreived by queryVersion() as a zero-terminated string.
Definition: SerialWombat.h:611
SerialWombatDataSource::SW_DATA_SOURCE_ERRORS
@ SW_DATA_SOURCE_ERRORS
(72)The number of incoming packets that have caused errors since reset (rolls over at 65535)
SerialWombatPin::digitalWrite
void digitalWrite(uint8_t val)
Set output pin High or Low.
Definition: SerialWombat.cpp:1071
SerialWombatDataSource::SW_DATA_SOURCE_65SEC_SQUARE
@ SW_DATA_SOURCE_65SEC_SQUARE
(176) Square wave that alternates between 0 and 65535 every 32768 frames
SerialWombatDataSource::SW_DATA_SOURCE_0x55
@ SW_DATA_SOURCE_0x55
(85) 0x55 is a reserved value for resyncing. Returns 0x55 0x55
SerialWombatDataSource::SW_DATA_SOURCE_PIN_7
@ SW_DATA_SOURCE_PIN_7
(7) 16 bit public data provided by Pin 7
SerialWombatChip::registerErrorHandler
void registerErrorHandler(SerialWombatErrorHandler_t handler)
Registers an error handler that is called by the SerialWombatChip sendPacket() command when a protoco...
Definition: SerialWombat.cpp:776
SerialWombatDataSource::SW_DATA_SOURCE_2HZ_SQUARE
@ SW_DATA_SOURCE_2HZ_SQUARE
(164) Square wave that alternates between 0 and 65535 every 256 frames
SerialWombatChip::isSW18
bool isSW18()
Returns true if the instance received a model number corresponding to the Serial Wombat 18 series of ...
Definition: SerialWombat.cpp:680
SerialWombatDataSource::SW_DATA_SOURCE_PIN_5
@ SW_DATA_SOURCE_PIN_5
(5) 16 bit public data provided by Pin 5
SerialWombatCommands::CONFIGURE_PIN_MODE5
@ CONFIGURE_PIN_MODE5
(205)
SerialWombatCommands::CONFIGURE_PIN_MODE_DISABLE
@ CONFIGURE_PIN_MODE_DISABLE
(219)
PIN_MODE_ULTRASONIC_DISTANCE
@ PIN_MODE_ULTRASONIC_DISTANCE
(27)
Definition: SerialWombat.h:254
PIN_MODE_DIGITALIO
@ PIN_MODE_DIGITALIO
(0)
Definition: SerialWombat.h:231
SerialWombatDataSource::SW_DATA_SOURCE_PIN_19
@ SW_DATA_SOURCE_PIN_19
(19) 16 bit public data provided by Pin 19
SerialWombatDataSource::SW_DATA_SOURCE_8SEC_SQUARE
@ SW_DATA_SOURCE_8SEC_SQUARE
(173)Square wave that alternates between 0 and 65535 every 4096 frames
SerialWombatCommands::CMD_SUPPLYVOLTAGE
@ CMD_SUPPLYVOLTAGE
('v')
SerialWombatChip::readBrand
int16_t readBrand(char *data)
Definition: SerialWombat.cpp:1029
SerialWombatCommands::CONFIGURE_PIN_MODE1
@ CONFIGURE_PIN_MODE1
(201)
SerialWombatCommands::COMMAND_BINARY_READ_RAM
@ COMMAND_BINARY_READ_RAM
(0xA0)
SerialWombatCommands::CONFIGURE_PIN_MODE6
@ CONFIGURE_PIN_MODE6
(206)
SerialWombatDataSource::SW_DATA_SOURCE_PIN_6
@ SW_DATA_SOURCE_PIN_6
(6) 16 bit public data provided by Pin 6
SerialWombatSerialErrorHandlerVerbose
void SerialWombatSerialErrorHandlerVerbose(uint16_t error, SerialWombatChip *sw)
SerialWombatCommands::CMD_ECHO
@ CMD_ECHO
('!')
SerialWombatCommands::COMMAND_BINARY_QUEUE_ADD_7BYTES
@ COMMAND_BINARY_QUEUE_ADD_7BYTES
(0x92)
SerialWombatDataSource::SW_DATA_SOURCE_PIN_12
@ SW_DATA_SOURCE_PIN_12
(12) 16 bit public data provided by Pin 12
SerialWombatDataSource::SW_DATA_SOURCE_PIN_2_MV
@ SW_DATA_SOURCE_PIN_2_MV
(102) Pin 2 public output expressed in mV (for analog modes only)
SerialWombatChip::writeStartupCommandCapture
int16_t writeStartupCommandCapture()
Write captured startup commands to flash (SW18AB Only)
Definition: SerialWombat.cpp:966
SerialWombatCommands::COMMAND_BINARY_SET_PIN_BUFFFER
@ COMMAND_BINARY_SET_PIN_BUFFFER
(0x82)
PIN_MODE_UART_RX_TX
@ PIN_MODE_UART_RX_TX
(17)
Definition: SerialWombat.h:246
SerialWombatDataSource::SW_DATA_SOURCE_1HZ_SQUARE
@ SW_DATA_SOURCE_1HZ_SQUARE
(167) Square wave that alternates between 0 and 65535 every 512 frames
SerialWombatDataSource::SW_DATA_SOURCE_PIN_18_MV
@ SW_DATA_SOURCE_PIN_18_MV
(118) Pin 18 public output expressed in mV (for analog modes only)
PIN_MODE_HS_SERVO
@ PIN_MODE_HS_SERVO
(26)
Definition: SerialWombat.h:253
PIN_MODE_VGA
@ PIN_MODE_VGA
(31)
Definition: SerialWombat.h:258
SerialWombatPulseTimer.h
SerialWombatResistanceInput.h
SerialWombatCommands::COMMAND_BINARY_QUEUE_INITIALIZE
@ COMMAND_BINARY_QUEUE_INITIALIZE
(0x90)
SerialWombatChip::address
uint8_t address
The I2C address of the SerialWombatChip instance.
Definition: SerialWombat.h:748
SerialWombatCommands::COMMAND_BINARY_READ_EEPROM
@ COMMAND_BINARY_READ_EEPROM
(0xA2)
SerialWombatCommands::COMMAND_UART0_TX_7BYTES
@ COMMAND_UART0_TX_7BYTES
(0xB0)
SerialWombatDataSource::SW_DATA_SOURCE_OVERRUN_FRAMES
@ SW_DATA_SOURCE_OVERRUN_FRAMES
(69) The number of frames that ran more than 1mS
SerialWombatCommands::COMMAND_BINARY_QUEUE_ADD_BYTES
@ COMMAND_BINARY_QUEUE_ADD_BYTES
(0x91)
SerialWombatDataSource::SW_DATA_SOURCE_PIN_11
@ SW_DATA_SOURCE_PIN_11
(11) 16 bit public data provided by Pin 11