ADC Board 12Bit - MAX1238
Das Entwicklungsboard besteht aus dem analog digital Converter Chip MAX1238 der Firma Maxim.
-
12Bit ADC
-
11 Kanäle
-
I2C/TWI
Der Chip ist sehr einfach anzusteuern und besitzt verschiedene Betriebsmodi.
Sehr gut geeignet zur Entwicklung von Prototypen oder um das Löten von SMD Chips zu umgehen.
Features MAX1238
- High-Speed I²C-Compatible Serial Interface
- 400kHz Fast Mode
- 1.7MHz High-Speed Mode
- Single-Supply
- 2.7V to 3.6V (MAX1237/MAX1239)
- 4.5V to 5.5V (MAX1236/MAX1238)
- Internal Reference
- 2.048V (MAX1237/MAX1239)
- 4.096V (MAX1236/MAX1238)
- External Reference: 1V to VDD
- Internal Clock
- 4-Channel Single-Ended or 2-Channel Fully Differential (MAX1236/MAX1237)
- 12-Channel Single-Ended or 6-Channel Fully Differential (MAX1238/MAX1239)
- Internal FIFO with Channel-Scan Mode
- Low Power
- 670µA at 94.4ksps
- 230µA at 40ksps
- 60µA at 10ksps
- 6µA at 1ksps
- 0.5µA in Power-Down Mode
- Software-Configurable Unipolar/Bipolar
- Small Packages
- 8-Pin µMAX (MAX1236/MAX1237)
- 16-Pin QSOP (MAX1238/MAX1239)
AnsteuerungBeispiel für die Ansteuerung im Modus Single-Ended mit externerReferenzspannung an Pin Ref.
Benutzt wurde die I2C/TWI Lib von peter fleury.
Der 12Bit Wert wird vom Max1238 über 2 Nachrichten zu je 1 Byte gesendet. Nachteilig hierbei ist, dass der Max1238 die ungenutzen Bit-Stellen mit 1 auffüllt.
|
Testprogramm für Max1238 - Single ended
//############ Adresse MAX1238 #define Adr_MAX1238 0b01101010 Data_Array_Messwert[11]; //############ init MAX1238 via I2C void ADC_MAX1238_init(void) { i2c_start_wait(Adr_MAX1238+I2C_WRITE);// device address & write mode i2c_write(0b10100010); // write Register i2c_write(0b00010111); // write Register i2c_stop(); // stop i2c } //############ auslesen MAX1238 via I2C void ADC_MAX1238(void) { uint8_t hig,low ; // hight und Low Byte i2c_start_wait(Adr_MAX1238+I2C_READ); // device address & read mode for (uint8_t i=0; i10; i++) // alle 10 Kanäle auslesen { low = i2c_read(1); low &= ~((1 << 7) | (1<<6)| (1<<5)| (1<<4) ); hig = i2c_read(1); Data_Array_Messwert[i]= ((low << 8)| hig); } i2c_stop(); }
Links |
|
|
Forum
Produkt Homepage
Datenblatt
|
|
Downloads |
|
|
Schaltung
Beispiel (GCC)
|
|
