Pages: [1]   Go Down
Author Topic: MCP3901 looks like a neat chip... Anyone have experience with it?  (Read 2228 times)
0 Members and 1 Guest are viewing this topic.
Peoples Republic of Cantabrigia
Offline Offline
God Member
*****
Karma: 6
Posts: 722
Arduino happiness
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Hi all,

Just wondering if any of you have used the MCP3901 before or not? It's an analog front end for energy measurements that looks like a neat intermediary chip between dedicated energy IC's like the AD7753 from Analog Devices and general-purpose dual-channel ADC's like the ADC122 series from National Semi/TI, for example. The device is interesting in multiple ways that I find quite intriguing:

1) It doesn't feature a bazillion internal registers and impossible (for a hobbyist, IMO) calibration routines like the AD7753. Just a few internal control registers that mere mortals can handle.
2) It does feature a PGA for each channel (up to 32x gain), a Voltage Ref In and Out, a phase compensation register, up to 256x oversampling, an external clock, dithering, and a data ready pin (for interrupt-driven data sampling).
3) The analog end runs on 4.5-5.5V, the digital end can handle everything from 2.7-5.5V. This makes interfacing with the chip a lot simpler, regardless of MCU used.
4) It uses SPI, which I dislike, but there is a library available to make configuring / listening to the chip easier.

The data sheet suggests that if you put a 8MHz crystal on this thing, set up the PRE/OSR registers appropriately, and you'll allegedly get 7812 samples per second for both channels with 14 ENOB... and if you can live with 3.9ksps per channel, up to 14.9 ENOB... all in a chip that costs less than $2.5 ea in single quantities. Seems like a pretty awesome solution, wonder why not more people are talking about / using this chip?

Along similar lines, the MCP3911 offers 3.3V-only operation but a much wider latitude re: oversampling, gain calibration, offset calibration, etc.
« Last Edit: April 02, 2013, 03:11:42 pm by Constantin » Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 8
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hi!

I am also interested in using this chip. Indeed it is strange that so few people are trying to use it.

Were you able to port the library from your link to Arduino? If yes, could you please share the ported Arduino library? It would be very kind of you since I can't port it myself.
Logged

Global Moderator
Boston area, metrowest
Offline Offline
Brattain Member
*****
Karma: 547
Posts: 27363
Author of "Arduino for Teens". Available for Design & Build services. Now with Unlimited Eagle board sizes!
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
It uses SPI, which I dislike
Why? Is it due to SPI being up to 20 times faster than I2C?
Or you don't like giving up 2 pins for all that speed?

I haven't done any 24bit data collection, the 12bit 8-channel MCP3208 has been enough for me so far.
http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en010534
Logged

Designing & building electrical circuits for over 25 years. Check out the ATMega1284P based Bobuino and other '328P & '1284P creations & offerings at  www.crossroadsfencing.com/BobuinoRev17.
Arduino for Teens available at Amazon.com.

Peoples Republic of Cantabrigia
Offline Offline
God Member
*****
Karma: 6
Posts: 722
Arduino happiness
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
It uses SPI, which I dislike
Why? Is it due to SPI being up to 20 times faster than I2C?
Or you don't like giving up 2 pins for all that speed?

Neither. Unlike I2C, I have never ever had any good luck dealing with SPI devices other than memory cards. Presumably, a lot has to do with the devices in question, my inability to decipher the relevant datasheets, and my inexperience. Perhaps I2C is simply more tolerant for hamfisted beginners like myself.
Logged

Pages: [1]   Go Up
Jump to: