Skip to content

Commit 4dbc4d8

Browse files
committed
compiles!
1 parent 072a15e commit 4dbc4d8

File tree

7 files changed

+41
-44
lines changed

7 files changed

+41
-44
lines changed

src/sfeTk/sfeTkIBus.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ class sfeTkIBus
5656
///
5757
/// @retval int returns the number of bytes written, < 0 on error
5858
///
59-
virtual int writeRegisterRegion(uint8_t devReg, const uint8_t *data, uint16_t length) = 0;
59+
virtual int writeRegisterRegion(uint8_t devReg, const uint8_t *data, size_t length) = 0;
6060

6161
/// @brief Read a single byte from the given register
6262
///
@@ -84,7 +84,7 @@ class sfeTkIBus
8484
///
8585
/// @retval int returns 0 on success, or error code
8686
///
87-
virtual int readRegisterRegion(uint8_t reg, uint8_t *data, uint16_t numBytes) = 0;
87+
virtual int readRegisterRegion(uint8_t reg, uint8_t *data, size_t numBytes) = 0;
8888
};
8989

9090
//};

src/sfeTk/sfeTkII2C.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -27,13 +27,13 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
2727

2828
#include "sfeTkIBus.h"
2929

30-
class sfeTkI2C : public sfeTkIBus
30+
class sfeTkII2C : public sfeTkIBus
3131
{
3232
public:
33-
sfeTkI2C() : _address{kNoAddress}
33+
sfeTkII2C() : _address{kNoAddress}
3434
{
3535
}
36-
sfeTkI2C(uint8_t addr) : _address{addr}
36+
sfeTkII2C(uint8_t addr) : _address{addr}
3737
{
3838
}
3939

src/sfeTk/sfeTkISPI.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -27,14 +27,14 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
2727

2828
#include "sfeTkIBus.h"
2929

30-
class sfeTkSPI : public sfeTkIBus
30+
class sfeTkISPI : public sfeTkIBus
3131
{
3232
public:
33-
sfeTkSPI() : _cs{kNoCSPin}
33+
sfeTkISPI() : _cs{kNoCSPin}
3434
{
3535
}
3636

37-
sfeTkSPI(uint8_t csPin) : _cs{csPin}
37+
sfeTkISPI(uint8_t csPin) : _cs{csPin}
3838
{
3939
}
4040
/// @brief setter for the CS Pin

src/sfeTkArdI2C.cpp

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -115,7 +115,7 @@ bool sfeTkArdI2C::writeRegisterWord(uint8_t devReg, uint16_t dataToWrite)
115115
if (!_i2cPort)
116116
return false;
117117

118-
return writeRegisterRegion(devReg, &dataToWrite, sizeof(u_int16_t)) == 0;
118+
return writeRegisterRegion(devReg, (uint8_t *)&dataToWrite, sizeof(u_int16_t)) == 0;
119119
}
120120

121121
//---------------------------------------------------------------------------------
@@ -125,7 +125,7 @@ bool sfeTkArdI2C::writeRegisterWord(uint8_t devReg, uint16_t dataToWrite)
125125
//
126126
// Returns the number of bytes written, < 0 is an error
127127
//
128-
virtual int sfeTkArdI2C::writeRegisterRegion(uint8_t devReg, const uint8_t *data, uint16_t length)
128+
int sfeTkArdI2C::writeRegisterRegion(uint8_t devReg, const uint8_t *data, size_t length)
129129
{
130130
if (!_i2cPort)
131131
return -1;
@@ -155,7 +155,7 @@ bool sfeTkArdI2C::readRegisterByte(uint8_t devReg, uint8_t &dataToRead)
155155
int nData = 0;
156156

157157
_i2cPort->beginTransmission(address());
158-
_i2cPort->write(offset);
158+
_i2cPort->write(devReg);
159159
_i2cPort->endTransmission();
160160
_i2cPort->requestFrom(address(), (uint8_t)1);
161161

@@ -182,7 +182,7 @@ bool sfeTkArdI2C::readRegisterWord(uint8_t devReg, uint16_t &dataToRead)
182182
if (!_i2cPort)
183183
return false;
184184

185-
return readRegisterRegion(devReg, &dataToRead, sizeof(u_int16_t)) == 2;
185+
return readRegisterRegion(devReg, (uint8_t *)&dataToRead, sizeof(uint16_t)) == 2;
186186
}
187187

188188
//---------------------------------------------------------------------------------
@@ -192,7 +192,7 @@ bool sfeTkArdI2C::readRegisterWord(uint8_t devReg, uint16_t &dataToRead)
192192
//
193193
// Returns the number of bytes read, < 0 is an error
194194
//
195-
virtual int sfeTkArdI2C::readRegisterRegion(uint8_t devReg, uint8_t *data, uint16_t numBytes)
195+
int sfeTkArdI2C::readRegisterRegion(uint8_t devReg, uint8_t *data, size_t numBytes)
196196
{
197197
// got port
198198
if (!_i2cPort)

src/sfeTkArdI2C.h

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ class sfeTkArdI2C : public sfeTkII2C
4848
}
4949

5050
// copy constructor
51-
sfeTkArdI2C(sfeTkArdI2C const &rhs) : _i2cPort{rhs._i2cPort}
51+
sfeTkArdI2C(sfeTkArdI2C const &rhs) : sfeTkII2C(), _i2cPort{rhs._i2cPort}
5252
{
5353
}
5454

@@ -76,7 +76,7 @@ class sfeTkArdI2C : public sfeTkII2C
7676
///
7777
/// @retval True on successful execution.
7878
///
79-
bool init(TwoWire &wirePort, uint8_t addr, bInit = false);
79+
bool init(TwoWire &wirePort, uint8_t addr, bool bInit = false);
8080

8181
/// @brief A simple ping of the device at the given address.
8282
/// @note sfeTkIBus interface method
@@ -105,7 +105,7 @@ class sfeTkArdI2C : public sfeTkII2C
105105
///
106106
/// @retval returns number of bytes written, < 0 is an error code
107107
///
108-
virtual int writeRegisterRegion(uint8_t devReg, const uint8_t *data, uint16_t length);
108+
virtual int writeRegisterRegion(uint8_t devReg, const uint8_t *data, size_t length);
109109

110110
/// @brief Reads a byte of data from the given register.
111111
/// @note sfeTkIBus interface method
@@ -136,7 +136,7 @@ class sfeTkArdI2C : public sfeTkII2C
136136
///
137137
/// @retval 0 on success, < 0 on error - see error code
138138
///
139-
virtual int readRegisterRegion(uint8_t devReg, uint8_t *data, uint16_t numBytes);
139+
virtual int readRegisterRegion(uint8_t devReg, uint8_t *data, size_t numBytes);
140140

141141
private:
142142
// The actual Arduino i2c port

src/sfeTkArdSPI.cpp

Lines changed: 17 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11

2-
// sfeTkBusSPI.cpp - Arduino SPI implementation for the toolkit
2+
// sfeTkArdSPI.cpp - Arduino SPI implementation for the toolkit
33

44
/*
55
The MIT License (MIT)
@@ -22,9 +22,8 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
2222
2323
*/
2424

25-
#pragma once
26-
27-
#include "sfeTkArdSPI.h "
25+
#include "sfeTkArdSPI.h"
26+
#include <Arduino.h>
2827

2928
// Note: A leading "1" must be added to transfer with register to indicate a "read"
3029
// Note to our future selves:
@@ -38,7 +37,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
3837
//
3938
// Arduino version of init. Will take in a defined SPI port/settings
4039
//
41-
bool sfeTkBusSPI::init(SPIClass &spiPort, SPISettings &busSPISettings, uint8_t csPin, bool bInit)
40+
bool sfeTkArdSPI::init(SPIClass &spiPort, SPISettings &busSPISettings, uint8_t csPin, bool bInit)
4241
{
4342
// if we don't have a SPI port already
4443
if (!_spiPort)
@@ -62,10 +61,10 @@ bool sfeTkBusSPI::init(SPIClass &spiPort, SPISettings &busSPISettings, uint8_t c
6261
//
6362
// Arduino version of init.
6463
//
65-
bool sfeTkBusSPI::init(uint8_t csPin, bool bInit)
64+
bool sfeTkArdSPI::init(uint8_t csPin, bool bInit)
6665
{
6766
// If the transaction settings are not provided by the user they are built here.
68-
SPISettings spiSettings = SPISettings(3000000, MSBFIRST, SPI_MODE3);
67+
SPISettings spiSettings = SPISettings(3000000, SPI_MSBFIRST, SPI_MODE3);
6968

7069
// In addition of the port is not provided by the user, it defaults to SPI here.
7170
return init(SPI, spiSettings, csPin, bInit);
@@ -76,7 +75,7 @@ bool sfeTkBusSPI::init(uint8_t csPin, bool bInit)
7675
//
7776
// Arduino version of init.
7877
//
79-
bool sfeTkBusSPI::init(bool bInit)
78+
bool sfeTkArdSPI::init(bool bInit)
8079
{
8180
return init(cs(), bInit);
8281
}
@@ -88,7 +87,7 @@ bool sfeTkBusSPI::init(bool bInit)
8887
//
8988
// Returns true on success, false on failure
9089
//
91-
bool sfeTkBusSPI::writeRegisterByte(uint8_t devReg, uint8_t dataToWrite)
90+
bool sfeTkArdSPI::writeRegisterByte(uint8_t devReg, uint8_t dataToWrite)
9291
{
9392

9493
if (!_spiPort)
@@ -115,11 +114,9 @@ bool sfeTkBusSPI::writeRegisterByte(uint8_t devReg, uint8_t dataToWrite)
115114
//
116115
// Returns true on success, false on failure
117116
//
118-
bool sfeTkBusSPI::writeRegisterWord(uint8_t devReg, uint8_t dataToWrite)
117+
bool sfeTkArdSPI::writeRegisterWord(uint8_t devReg, uint16_t dataToWrite)
119118
{
120-
121-
return writeRegisterRegion(defReg, &dataToWrite, sizeof(uint8_t)) > 0;
122-
;
119+
return writeRegisterRegion(devReg, (uint8_t *)&dataToWrite, sizeof(uint8_t)) > 0;
123120
}
124121
//---------------------------------------------------------------------------------
125122
// writeRegisterRegion()
@@ -128,7 +125,7 @@ bool sfeTkBusSPI::writeRegisterWord(uint8_t devReg, uint8_t dataToWrite)
128125
//
129126
// Returns the number of bytes written, < 0 is an error
130127
//
131-
virtual int sfeTkBusSPI::writeRegisterRegion(uint8_t devReg, const uint8_t *data, uint16_t length)
128+
int sfeTkArdSPI::writeRegisterRegion(uint8_t devReg, const uint8_t *data, size_t length)
132129
{
133130
if (!_spiPort)
134131
return -1;
@@ -150,14 +147,14 @@ virtual int sfeTkBusSPI::writeRegisterRegion(uint8_t devReg, const uint8_t *data
150147
return length;
151148
}
152149

153-
bool sfeTkBusSPI::readRegisterByte(uint8_t devReg, uint8_t &data)
150+
bool sfeTkArdSPI::readRegisterByte(uint8_t devReg, uint8_t &data)
154151
{
155-
return readRegisterRegion(devReg, &data) == 1;
152+
return readRegisterRegion(devReg, &data, sizeof(data)) == 1;
156153
}
157154

158-
bool sfeTkBusSPI::readRegisterWord(uint8_t devReg, uint16_t &data)
155+
bool sfeTkArdSPI::readRegisterWord(uint8_t devReg, uint16_t &data)
159156
{
160-
return readRegisterRegion(devReg, &data) == 2;
157+
return readRegisterRegion(devReg, (uint8_t *)&data, sizeof(data)) == 2;
161158
}
162159
//---------------------------------------------------------------------------------
163160
// readRegisterRegion()
@@ -166,7 +163,7 @@ bool sfeTkBusSPI::readRegisterWord(uint8_t devReg, uint16_t &data)
166163
//
167164
// Returns the number of bytes read, < 0 is an error
168165
//
169-
virtual int sfeTkBusSPI::readRegisterRegion(uint8_t devReg, uint8_t *data, uint16_t numBytes)
166+
int sfeTkArdSPI::readRegisterRegion(uint8_t devReg, uint8_t *data, size_t numBytes)
170167
{
171168
if (!_spiPort)
172169
return -1;
@@ -187,5 +184,5 @@ virtual int sfeTkBusSPI::readRegisterRegion(uint8_t devReg, uint8_t *data, uint1
187184
digitalWrite(cs(), HIGH);
188185
_spiPort->endTransaction();
189186

190-
return numByte;
187+
return numBytes;
191188
}

src/sfeTkArdSPI.h

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -27,20 +27,20 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
2727
#pragma once
2828

2929
#include <SPI.h>
30-
#include <sfeTk/sfeTkIBus.h>
30+
#include <sfeTk/sfeTkISPI.h>
3131

3232
/// @brief This class implements the IBus interface for an SPI Implementation on Arduino
3333
///
34-
class sfeTkBusSPI : public sfeTkIBus
34+
class sfeTkArdSPI : public sfeTkISPI
3535
{
3636
public:
3737
///
3838
/// @brief Constructor
3939
///
40-
sfeTkBusSPI(void) : _spiPort(nullptr){};
40+
sfeTkArdSPI(void) : _spiPort(nullptr){};
4141

4242
// copy constructor
43-
sfeTkArdSPI(sfeTkArdSPI const &rhs) : _spiPort{rhs._spiPort}, _sfeSPISettings{rhs._sfeSPISettings}
43+
sfeTkArdSPI(sfeTkArdSPI const &rhs) : sfeTkISPI(), _spiPort{rhs._spiPort}, _sfeSPISettings{rhs._sfeSPISettings}
4444
{
4545
}
4646

@@ -60,7 +60,7 @@ class sfeTkBusSPI : public sfeTkIBus
6060
///
6161
bool init(bool bInit = false);
6262

63-
bool init(uint8_t csPin, bInit = false);
63+
bool init(uint8_t csPin, bool bInit = false);
6464

6565
/// @brief Method sets up the required SPI settings.
6666
///
@@ -98,7 +98,7 @@ class sfeTkBusSPI : public sfeTkIBus
9898
///
9999
/// @retval int - number of bytes written, < 0 = error value
100100
///
101-
virtual int writeRegisterRegion(uint8_t devReg, const uint8_t *data, uint16_t length);
101+
virtual int writeRegisterRegion(uint8_t devReg, const uint8_t *data, size_t length);
102102

103103
/// @brief Read a single byte from the given register
104104
///
@@ -126,7 +126,7 @@ class sfeTkBusSPI : public sfeTkIBus
126126
///
127127
/// @retval int returns the number of bytes read, < 0 on error
128128
///
129-
virtual int readRegisterRegion(uint8_t reg, uint8_t *data, uint16_t numBytes);
129+
virtual int readRegisterRegion(uint8_t reg, uint8_t *data, size_t numBytes);
130130

131131
private:
132132
SPIClass *_spiPort;

0 commit comments

Comments
 (0)