BayEOSArduino Library
MAX11212Board.h
1 #define ADR_A A2
2 #define ADR_B A1
3 #define ADR_C A0
4 #define INHIB A3
5 
6 #ifndef MAX11212_REFERENCE
7 #define MAX11212_REFERENCE 3.3
8 #endif
9 
10 #include <MAX11212.h>
11 
12 MAX11212 adc(A5,A4);
13 
14 void initMAX11212(void){
15  pinMode(ADR_A,OUTPUT);
16  pinMode(ADR_B,OUTPUT);
17  pinMode(ADR_C,OUTPUT);
18  pinMode(INHIB,OUTPUT);
19  digitalWrite(INHIB,HIGH);
20  adc.begin();
21 }
22 
23 
24 float readChannel(uint8_t nr, uint16_t delaytime=20){
25  digitalWrite(ADR_A,nr&0x1);
26  digitalWrite(ADR_B,nr&0x2);
27  digitalWrite(ADR_C,nr&0x4);
28  digitalWrite(INHIB,LOW);
29  delay(delaytime);
30  float v=MAX11212_REFERENCE*adc.read()/131071;
31  digitalWrite(INHIB,HIGH);
32  return v;
33 }
34 
35 long readADC(uint8_t nr, uint16_t delaytime=20){
36  digitalWrite(ADR_A,nr&0x1);
37  digitalWrite(ADR_B,nr&0x2);
38  digitalWrite(ADR_C,nr&0x4);
39  digitalWrite(INHIB,LOW);
40  delay(delaytime);
41  long v=adc.read();
42  digitalWrite(INHIB,HIGH);
43  return v;
44 }
45 
46 
Definition: MAX11212.h:6