Skip to content

Commit e8a78a9

Browse files
committed
Chaging timeout datatype to unsigned int
This allows a small compiler optimization on different architectures. See #43 (comment)
1 parent 320b57d commit e8a78a9

File tree

2 files changed

+13
-13
lines changed

2 files changed

+13
-13
lines changed

src/utility/Sd2Card.cpp

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -248,7 +248,7 @@ uint8_t Sd2Card::init(uint8_t sckRateID, uint8_t chipSelectPin) {
248248
errorCode_ = inBlock_ = partialBlockRead_ = type_ = 0;
249249
chipSelectPin_ = chipSelectPin;
250250
// 16-bit init start time allows over a minute
251-
uint16_t t0 = millis();
251+
unsigned int t0 = millis();
252252
uint32_t arg;
253253

254254
// set pin modes
@@ -288,7 +288,7 @@ uint8_t Sd2Card::init(uint8_t sckRateID, uint8_t chipSelectPin) {
288288

289289
// command to go idle in SPI mode
290290
while ((status_ = cardCommand(CMD0, 0)) != R1_IDLE_STATE) {
291-
uint16_t d = millis() - t0;
291+
unsigned int d = millis() - t0;
292292
if (d > SD_INIT_TIMEOUT) {
293293
error(SD_CARD_ERROR_CMD0);
294294
goto fail;
@@ -311,7 +311,7 @@ uint8_t Sd2Card::init(uint8_t sckRateID, uint8_t chipSelectPin) {
311311

312312
while ((status_ = cardAcmd(ACMD41, arg)) != R1_READY_STATE) {
313313
// check for timeout
314-
uint16_t d = millis() - t0;
314+
unsigned int d = millis() - t0;
315315
if (d > SD_INIT_TIMEOUT) {
316316
error(SD_CARD_ERROR_ACMD41);
317317
goto fail;
@@ -543,9 +543,9 @@ uint8_t Sd2Card::setSpiClock(uint32_t clock)
543543
#endif
544544
//------------------------------------------------------------------------------
545545
// wait for card to go not busy
546-
uint8_t Sd2Card::waitNotBusy(uint16_t timeoutMillis) {
547-
uint16_t t0 = millis();
548-
uint16_t d;
546+
uint8_t Sd2Card::waitNotBusy(unsigned int timeoutMillis) {
547+
unsigned int t0 = millis();
548+
unsigned int d;
549549
do {
550550
if (spiRec() == 0XFF) return true;
551551
d = millis() - t0;
@@ -556,9 +556,9 @@ uint8_t Sd2Card::waitNotBusy(uint16_t timeoutMillis) {
556556
//------------------------------------------------------------------------------
557557
/** Wait for start block token */
558558
uint8_t Sd2Card::waitStartBlock(void) {
559-
uint16_t t0 = millis();
559+
unsigned int t0 = millis();
560560
while ((status_ = spiRec()) == 0XFF) {
561-
uint16_t d = millis() - t0;
561+
unsigned int d = millis() - t0;
562562
if (d > SD_READ_TIMEOUT) {
563563
error(SD_CARD_ERROR_READ_TIMEOUT);
564564
goto fail;

src/utility/Sd2Card.h

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -107,13 +107,13 @@ uint8_t const SPI_SCK_PIN = 13;
107107
/** Protect block zero from write if nonzero */
108108
#define SD_PROTECT_BLOCK_ZERO 1
109109
/** init timeout ms */
110-
uint16_t const SD_INIT_TIMEOUT = 2000;
110+
unsigned int const SD_INIT_TIMEOUT = 2000;
111111
/** erase timeout ms */
112-
uint16_t const SD_ERASE_TIMEOUT = 10000;
112+
unsigned int const SD_ERASE_TIMEOUT = 10000;
113113
/** read timeout ms */
114-
uint16_t const SD_READ_TIMEOUT = 300;
114+
unsigned int const SD_READ_TIMEOUT = 300;
115115
/** write time out ms */
116-
uint16_t const SD_WRITE_TIMEOUT = 600;
116+
unsigned int const SD_WRITE_TIMEOUT = 600;
117117
//------------------------------------------------------------------------------
118118
// SD card errors
119119
/** timeout error for command CMD0 */
@@ -253,7 +253,7 @@ class Sd2Card {
253253
void chipSelectHigh(void);
254254
void chipSelectLow(void);
255255
void type(uint8_t value) {type_ = value;}
256-
uint8_t waitNotBusy(uint16_t timeoutMillis);
256+
uint8_t waitNotBusy(unsigned int timeoutMillis);
257257
uint8_t writeData(uint8_t token, const uint8_t* src);
258258
uint8_t waitStartBlock(void);
259259
};

0 commit comments

Comments
 (0)