134
134
#include < MCP9802.h>
135
135
136
136
const byte PIN_D2 = 2 ; // Arduino PIN D2 (PIN 2) connected to the MCP9802's ALERT Pin
137
- const int MCP9802_ADDR = 0x48 ; // DEC: 72 - I2C address of the MCP9802 (Change as needed)
137
+ const byte DEV_ADDR = 0x48 ; // DEC: 72 - I2C address of the MCP9802 (Change as needed)
138
138
139
139
byte config; // Variables to hold configuration register data
140
140
int tempC16, tempF16, hystC16, hystF16, limitC16, limitF16; // Variables to hold conversion data
@@ -147,7 +147,7 @@ typedef enum:byte { // Com
147
147
ON = 1
148
148
} alert_state_t ;
149
149
150
- MCP9802 MCP9802 (MCP9802_ADDR ); // Constructs a new MCP9802 object with the relevant I2C address
150
+ MCP9802 mcp9802 (DEV_ADDR ); // Constructs a new MCP9802 object with the relevant I2C address
151
151
152
152
void setup () {
153
153
pinMode (PIN_D2, INPUT_PULLUP); // Setting Arduino Digital Pin 2 to INPUT with pull-up resistors (for Alert testing)
@@ -189,7 +189,7 @@ void runTests() {
189
189
190
190
void testPingDevice () {
191
191
Serial.print (F (" \n Searching for device...Device " ));
192
- Serial.print (MCP9802 .ping () ? " Not Found\n " : " Found!\n " );
192
+ Serial.print (mcp9802 .ping () ? " Not Found\n " : " Found!\n " );
193
193
quickDelay ();
194
194
}
195
195
@@ -204,18 +204,18 @@ void testGetConfigData() {
204
204
205
205
void testGetAlertType () {
206
206
Serial.print (F (" \n ALERT TYPE:\t\t " ));
207
- Serial.print (MCP9802 .getAlertType () ? " INTERRUPT\n " : " COMPARATOR\n " );
207
+ Serial.print (mcp9802 .getAlertType () ? " INTERRUPT\n " : " COMPARATOR\n " );
208
208
quickDelay ();
209
209
}
210
210
211
211
void testGetAlertMode () {
212
212
Serial.print (F (" \n ALERT MODE:\t\t " ));
213
- Serial.print (MCP9802 .getAlertMode () ? " ACTIVE-HIGH\n " : " ACTIVE-LOW\n " );
213
+ Serial.print (mcp9802 .getAlertMode () ? " ACTIVE-HIGH\n " : " ACTIVE-LOW\n " );
214
214
quickDelay ();
215
215
}
216
216
217
217
void testGetFaultQueue () {
218
- byte fqVal = MCP9802 .getFaultQueue ();
218
+ byte fqVal = mcp9802 .getFaultQueue ();
219
219
Serial.print (" \n FAULT QUEUE:\t\t " );
220
220
Serial.print (fqVal);
221
221
Serial.print (fqVal == 1 ? " FAULT\n " : " FAULTS\n " );
@@ -224,20 +224,20 @@ void testGetFaultQueue() {
224
224
225
225
void testGetResolution () {
226
226
Serial.print (F (" \n RESOLUTION:\t\t " ));
227
- Serial.print (MCP9802 .getResolution ());
227
+ Serial.print (mcp9802 .getResolution ());
228
228
Serial.print (F (" -BIT\n " ));
229
229
quickDelay ();
230
230
}
231
231
232
232
void testGetConMode () {
233
233
Serial.print (F (" \n CONVERSION MODE:\t " ));
234
- Serial.print (MCP9802 .getConMode () ? " SINGLE-SHOT\n " : " CONTINUOUS\n " );
234
+ Serial.print (mcp9802 .getConMode () ? " SINGLE-SHOT\n " : " CONTINUOUS\n " );
235
235
quickDelay ();
236
236
}
237
237
238
238
void testGetTempUnit () {
239
239
Serial.print (F (" \n TEMPERATURE UNIT:\t " ));
240
- Serial.print (MCP9802 .getTempUnit () ? " FAHRENHEIT\n " : " CELSIUS\n " );
240
+ Serial.print (mcp9802 .getTempUnit () ? " FAHRENHEIT\n " : " CELSIUS\n " );
241
241
}
242
242
243
243
void testGetRegData () {
@@ -257,18 +257,18 @@ void testGetTempReadings() {
257
257
}
258
258
259
259
void testGetTempC () {
260
- tempC = MCP9802 .getTemp ();
260
+ tempC = mcp9802 .getTemp ();
261
261
Serial.print (F (" \n Temp (C): \t " ));
262
262
Serial.println (tempC, 4 );
263
263
quickDelay ();
264
264
}
265
265
266
266
void testGetTempF () {
267
- MCP9802 .setTempUnit (FAHRENHEIT);
268
- tempF = MCP9802 .getTemp ();
267
+ mcp9802 .setTempUnit (FAHRENHEIT);
268
+ tempF = mcp9802 .getTemp ();
269
269
Serial.print (F (" \n Temp (F): \t " ));
270
270
Serial.println (tempF, 4 );
271
- MCP9802 .setTempUnit (CELSIUS);
271
+ mcp9802 .setTempUnit (CELSIUS);
272
272
quickDelay ();
273
273
}
274
274
@@ -278,18 +278,18 @@ void testGetHystSetting() {
278
278
}
279
279
280
280
void testGetHystC () {
281
- hystC = MCP9802 .getHyst ();
281
+ hystC = mcp9802 .getHyst ();
282
282
Serial.print (F (" \n Hyst (C): \t " ));
283
283
Serial.println (hystC, 4 );
284
284
quickDelay ();
285
285
}
286
286
287
287
void testGetHystF () {
288
- MCP9802 .setTempUnit (FAHRENHEIT);
289
- hystF = MCP9802 .getHyst ();
288
+ mcp9802 .setTempUnit (FAHRENHEIT);
289
+ hystF = mcp9802 .getHyst ();
290
290
Serial.print (F (" \n Hyst (F): \t " ));
291
291
Serial.println (hystF, 4 );
292
- MCP9802 .setTempUnit (CELSIUS);
292
+ mcp9802 .setTempUnit (CELSIUS);
293
293
quickDelay ();
294
294
}
295
295
@@ -299,18 +299,18 @@ void testGetLimitSetting() {
299
299
}
300
300
301
301
void testGetLimitC () {
302
- limitC = MCP9802 .getLimit ();
302
+ limitC = mcp9802 .getLimit ();
303
303
Serial.print (F (" \n Limit (C): \t " ));
304
304
Serial.println (limitC, 4 );
305
305
quickDelay ();
306
306
}
307
307
308
308
void testGetLimitF () {
309
- MCP9802 .setTempUnit (FAHRENHEIT);
310
- limitF = MCP9802 .getLimit ();
309
+ mcp9802 .setTempUnit (FAHRENHEIT);
310
+ limitF = mcp9802 .getLimit ();
311
311
Serial.print (F (" \n Limit (F): \t " ));
312
312
Serial.println (limitF, 4 );
313
- MCP9802 .setTempUnit (CELSIUS);
313
+ mcp9802 .setTempUnit (CELSIUS);
314
314
quickDelay ();
315
315
}
316
316
@@ -328,7 +328,7 @@ void testSetAlertType() {
328
328
for (byte i=0 ; i<2 ; i++) {
329
329
Serial.print (F (" \n Setting Alert Type to:\t " ));
330
330
i ? Serial.print (" COMPARATOR" ) : Serial.print (" INTERRUPT" );
331
- MCP9802 .setAlertType (alertTypeParams[i]);
331
+ mcp9802 .setAlertType (alertTypeParams[i]);
332
332
Serial.print (F (" ...DONE\n " ));
333
333
testGetAlertType ();
334
334
quickDelay ();
@@ -340,7 +340,7 @@ void testSetAlertMode() {
340
340
for (byte i=0 ; i<2 ; i++) {
341
341
Serial.print (F (" \n Setting Alert Mode to:\t " ));
342
342
i ? Serial.print (" ACTIVE-LOW" ) : Serial.print (" ACTIVE-HIGH" );
343
- MCP9802 .setAlertMode (alertModeParams[i]);
343
+ mcp9802 .setAlertMode (alertModeParams[i]);
344
344
Serial.print (F (" ...DONE\n " ));
345
345
testGetAlertMode ();
346
346
quickDelay ();
@@ -353,7 +353,7 @@ void testSetFaultQueue() {
353
353
Serial.print (F (" \n Setting Fault Queue to:\t " ));
354
354
fqParams[i] == 0 ? Serial.print (F (" 1" )) : Serial.print (fqParams[i] >> 2 );
355
355
fqParams[i] == 0 ? Serial.print (F (" FAULT" )) : Serial.print (F (" FAULTS" ));
356
- MCP9802 .setFaultQueue (fqParams[i]);
356
+ mcp9802 .setFaultQueue (fqParams[i]);
357
357
Serial.print (F (" ...DONE\n " ));
358
358
testGetFaultQueue ();
359
359
quickDelay ();
@@ -366,7 +366,7 @@ void testSetResolution() {
366
366
Serial.print (F (" \n Setting Resolution to:\t " ));
367
367
resParams[i] == 0 ? Serial.print (F (" 9" )) : Serial.print ((resParams[i] >> 5 ) + 9 );
368
368
Serial.print (F (" -BIT" ));
369
- MCP9802 .setResolution (resParams[i]);
369
+ mcp9802 .setResolution (resParams[i]);
370
370
Serial.print (F (" ...DONE\n " ));
371
371
testGetResolution ();
372
372
quickDelay ();
@@ -378,7 +378,7 @@ void testSetConMode() {
378
378
for (byte i=0 ; i<2 ; i++) {
379
379
Serial.print (F (" \n Setting Conversion Mode to: " ));
380
380
i ? Serial.print (" CONTINUOUS" ) : Serial.print (" SINGLE-SHOT" );
381
- MCP9802 .setConMode (conModeParams[i]);
381
+ mcp9802 .setConMode (conModeParams[i]);
382
382
Serial.print (F (" ...DONE\n " ));
383
383
testGetConMode ();
384
384
quickDelay ();
@@ -390,7 +390,7 @@ void testSetTempUnit() {
390
390
for (byte i=0 ; i<2 ; i++) {
391
391
Serial.print (F (" \n Setting Temperature Unit to: " ));
392
392
i ? Serial.print (" CELSIUS" ) : Serial.print (" FAHRENHEIT" );
393
- MCP9802 .setTempUnit (tempUnitParams[i]);
393
+ mcp9802 .setTempUnit (tempUnitParams[i]);
394
394
Serial.print (F (" ...DONE\n " ));
395
395
testGetTempUnit ();
396
396
quickDelay ();
@@ -408,27 +408,27 @@ void testSetHyst() {
408
408
float hystVal[5 ] = { 57 , -32 , 43.5 , 21.1 , -11.6 };
409
409
for (byte i=0 ; i<2 ; i++) {
410
410
Serial.print (F (" \n SETTING HYSTERESIS (" ));
411
- Serial.print (MCP9802 .getTempUnit () ? " FAHRENHEIT)\n " : " CELSIUS)\n " );
411
+ Serial.print (mcp9802 .getTempUnit () ? " FAHRENHEIT)\n " : " CELSIUS)\n " );
412
412
for (byte j=0 ; j<5 ; j++) {
413
413
valStr = " \n Current Hysteresis:\t " ;
414
- valStr += String (MCP9802 .getHyst (), 4 );
415
- valStr += (MCP9802 .getTempUnit () ? " F" : " C" );
414
+ valStr += String (mcp9802 .getHyst (), 4 );
415
+ valStr += (mcp9802 .getTempUnit () ? " F" : " C" );
416
416
Serial.print (valStr);
417
417
valStr = " \n\n Setting Hysteresis to:\t " ;
418
418
valStr += String (hystVal[j], 4 );
419
- MCP9802 .setHyst (hystVal[j]);
420
- valStr += (MCP9802 .getTempUnit () ? " F" : " C" );
419
+ mcp9802 .setHyst (hystVal[j]);
420
+ valStr += (mcp9802 .getTempUnit () ? " F" : " C" );
421
421
valStr += (" ...DONE\n " );
422
422
Serial.print (valStr);
423
423
}
424
424
valStr = " \n Current Hysteresis:\t " ;
425
- valStr += String (MCP9802 .getHyst (), 4 );
426
- valStr += (MCP9802 .getTempUnit () ? " F" : " C" );
425
+ valStr += String (mcp9802 .getHyst (), 4 );
426
+ valStr += (mcp9802 .getTempUnit () ? " F" : " C" );
427
427
Serial.print (valStr);
428
428
Serial.print (F (" \n " ));
429
- MCP9802 .setTempUnit (MCP9802 .getTempUnit () ? CELSIUS : FAHRENHEIT);
429
+ mcp9802 .setTempUnit (mcp9802 .getTempUnit () ? CELSIUS : FAHRENHEIT);
430
430
}
431
- MCP9802 .setHyst (DEFAULT_HYST);
431
+ mcp9802 .setHyst (DEFAULT_HYST);
432
432
quickDelay ();
433
433
}
434
434
@@ -437,67 +437,67 @@ void testSetLimit() {
437
437
float limitVal[5 ] = { 64 , -16 , 35.5 , 17.8 , -24.1 };
438
438
for (byte i=0 ; i<2 ; i++) {
439
439
Serial.print (F (" \n SETTING LIMIT (" ));
440
- Serial.print (MCP9802 .getTempUnit () ? " FAHRENHEIT)\n " : " CELSIUS)\n " );
440
+ Serial.print (mcp9802 .getTempUnit () ? " FAHRENHEIT)\n " : " CELSIUS)\n " );
441
441
for (byte j=0 ; j<5 ; j++) {
442
442
valStr = " \n Current Limit:\t\t " ;
443
- valStr += String (MCP9802 .getLimit (), 4 );
444
- valStr += (MCP9802 .getTempUnit () ? " F" : " C" );
443
+ valStr += String (mcp9802 .getLimit (), 4 );
444
+ valStr += (mcp9802 .getTempUnit () ? " F" : " C" );
445
445
Serial.print (valStr);
446
446
valStr = " \n\n Setting Limit to:\t " ;
447
447
valStr += String (limitVal[j], 4 );
448
- MCP9802 .setLimit (limitVal[j]);
449
- valStr += (MCP9802 .getTempUnit () ? " F" : " C" );
448
+ mcp9802 .setLimit (limitVal[j]);
449
+ valStr += (mcp9802 .getTempUnit () ? " F" : " C" );
450
450
valStr += (" ...DONE\n " );
451
451
Serial.print (valStr);
452
452
}
453
453
valStr = " \n Current Limit:\t\t " ;
454
- valStr += String (MCP9802 .getLimit (), 4 );
455
- valStr += (MCP9802 .getTempUnit () ? " F" : " C" );
454
+ valStr += String (mcp9802 .getLimit (), 4 );
455
+ valStr += (mcp9802 .getTempUnit () ? " F" : " C" );
456
456
Serial.print (valStr);
457
457
Serial.print (F (" \n " ));
458
- MCP9802 .setTempUnit (MCP9802 .getTempUnit () ? CELSIUS : FAHRENHEIT);
458
+ mcp9802 .setTempUnit (mcp9802 .getTempUnit () ? CELSIUS : FAHRENHEIT);
459
459
}
460
- MCP9802 .setLimit (DEFAULT_LIMIT);
460
+ mcp9802 .setLimit (DEFAULT_LIMIT);
461
461
quickDelay ();
462
462
}
463
463
464
464
void testSingleConversion () {
465
465
Serial.print (F (" \n Changing Conversion Mode to SINGLE-SHOT..." ));
466
- MCP9802 .setConMode (SINGLE);
466
+ mcp9802 .setConMode (SINGLE);
467
467
Serial.print (F (" DONE\n " ));
468
468
testGetSingleConC ();
469
- MCP9802 .setTempUnit (FAHRENHEIT);
469
+ mcp9802 .setTempUnit (FAHRENHEIT);
470
470
testGetSingleConF ();
471
- MCP9802 .setTempUnit (CELSIUS);
471
+ mcp9802 .setTempUnit (CELSIUS);
472
472
quickDelay ();
473
473
}
474
474
475
475
void testGetSingleConC () {
476
- tempC = MCP9802 .getTemp ();
476
+ tempC = mcp9802 .getTemp ();
477
477
Serial.print (F (" \n Temp (C): \t " ));
478
478
Serial.println (tempC, 4 );
479
479
quickDelay ();
480
480
}
481
481
482
482
void testGetSingleConF () {
483
- tempF = MCP9802 .getTemp ();
483
+ tempF = mcp9802 .getTemp ();
484
484
Serial.print (F (" \n Temp (F): \t " ));
485
485
Serial.println (tempF, 4 );
486
486
quickDelay ();
487
487
}
488
488
489
489
void testAlertFunctionality () {
490
- MCP9802 .reset ();
490
+ mcp9802 .reset ();
491
491
for (byte i=0 ; i< 2 ; i++) {
492
- MCP9802 .setAlertMode (alertModeParams[i]);
492
+ mcp9802 .setAlertMode (alertModeParams[i]);
493
493
Serial.print (F (" \n TESTING ACTIVE-" ));
494
494
Serial.print (i ? " HIGH" : " LOW" );
495
495
Serial.print (F (" SETTINGS\n\n Initial Conditions:\n " ));
496
496
testGetTempC ();
497
497
quickDelay ();
498
- MCP9802 .setLimit (tempC + 20 );
498
+ mcp9802 .setLimit (tempC + 20 );
499
499
quickDelay ();
500
- MCP9802 .setHyst (tempC + 10 );
500
+ mcp9802 .setHyst (tempC + 10 );
501
501
quickDelay ();
502
502
testGetLimitC ();
503
503
testGetHystC ();
@@ -512,18 +512,18 @@ void testAlertFunctionality() {
512
512
testAlertState (alertModeParams[i], ON);
513
513
Serial.print (F (" \n Verifying Alert Presistance after Entering Shut-Down Mode\n " ));
514
514
Serial.print (F (" \n Switching Device to Shut-Down Mode..." ));
515
- MCP9802 .setConMode (SINGLE);
515
+ mcp9802 .setConMode (SINGLE);
516
516
Serial.print (F (" DONE\n " ));
517
517
testAlertState (alertModeParams[i], ON);
518
518
Serial.print (F (" \n Simulating Return to Normal Conditions..." ));
519
- MCP9802 .setConMode (CONT);
520
- MCP9802 .setLimit (tempC + 20 );
521
- MCP9802 .setHyst (tempC + 10 );
519
+ mcp9802 .setConMode (CONT);
520
+ mcp9802 .setLimit (tempC + 20 );
521
+ mcp9802 .setHyst (tempC + 10 );
522
522
Serial.print (F (" DONE\n " ));
523
523
testAlertState (alertModeParams[i], OFF);
524
524
if (!i) printDivider ();
525
525
}
526
- MCP9802 .reset ();
526
+ mcp9802 .reset ();
527
527
}
528
528
529
529
void testAlertState (alert_mode_t alertMode, alert_state_t alertState) {
@@ -537,27 +537,27 @@ void testAlertState(alert_mode_t alertMode, alert_state_t alertState) {
537
537
538
538
void testSimulateTestConditions () {
539
539
Serial.print (F (" \n Simulating Alert Conditions..." ));
540
- MCP9802 .setLimit (tempC - 10 );
541
- MCP9802 .setHyst (tempC - 20 );
540
+ mcp9802 .setLimit (tempC - 10 );
541
+ mcp9802 .setHyst (tempC - 20 );
542
542
Serial.print (F (" DONE\n " ));
543
543
}
544
544
545
545
void testReset () {
546
546
Serial.print (F (" \n Current Settings:\n " ));
547
547
testGetConfigData ();
548
548
Serial.print (F (" \n Creating New Settings..." ));
549
- MCP9802 .setAlertType (INT);
550
- MCP9802 .setAlertMode (ACTIVE_HIGH);
551
- MCP9802 .setFaultQueue (FQ4);
552
- MCP9802 .setResolution (RES_11);
553
- MCP9802 .setConMode (SINGLE);
554
- MCP9802 .setTempUnit (FAHRENHEIT);
555
- MCP9802 .setLimit (52.5 );
556
- MCP9802 .setHyst (49.5 );
549
+ mcp9802 .setAlertType (INT);
550
+ mcp9802 .setAlertMode (ACTIVE_HIGH);
551
+ mcp9802 .setFaultQueue (FQ4);
552
+ mcp9802 .setResolution (RES_11);
553
+ mcp9802 .setConMode (SINGLE);
554
+ mcp9802 .setTempUnit (FAHRENHEIT);
555
+ mcp9802 .setLimit (52.5 );
556
+ mcp9802 .setHyst (49.5 );
557
557
Serial.print (F (" DONE\n\n Current Settings:\n " ));
558
558
testGetConfigData ();
559
559
Serial.print (F (" \n Resetting Device to Default Settings..." ));
560
- MCP9802 .reset ();
560
+ mcp9802 .reset ();
561
561
Serial.print (F (" DONE\n\n Current Settings:\n " ));
562
562
testGetConfigData ();
563
563
}
0 commit comments