Shop OBEX P1 Docs P2 Docs Learn Events
Anyone familiar with this ADC? — Parallax Forums

Anyone familiar with this ADC?

bnikkelbnikkel Posts: 104
edited 2020-08-24 20:47 in Propeller 1
im currently using an mcp3208 ADC but i need more channels, i found this and was curious if anyone on here knows about it?

AD7490
16-Channel, 1 MSPS, 12-Bit ADC
with Sequencer in 28-Lead TSSOP

https://analog.com/media/en/technical-documentation/data-sheets/AD7490.pdf

about $13 on mouser
«1

Comments

  • jmgjmg Posts: 15,175
    If you need mcp3208 ADC level performance, but more channels, you could also look at smaller MCU's - these days, MCUs can cost less than specific ADCs.
    What voltage range, precision, and sample rate do you actually need ?
  • i made a 2.4ghz remote control with a 7" touch screen, i use the 3208 to receive position from two gimbles and 4 sliders and send to the prop, im running 3.3 on prop and 5v on 3208. i want minimum one more channel on the adc so i can display battery voltage on the screen.

    by mcu, do you mean an mcu board with an adc already on it?
  • jmgjmg Posts: 15,175
    bnikkel wrote: »
    by mcu, do you mean an mcu board with an adc already on it?

    Yes, either a board, or a chip.
    If you look for ADCs of 12+ bits and 12+ channels, the dedicated devices appear from around $5.85/100 on Digikey.

    In contrast, MCUs with 12+ channels of 12b ADC, start from 31c/100 for 3v3 part in EFM8BB1, or 85c /100 for 5V part TQFP32 MS51PC0AE A/D 15x12b
    or in 3v3 you can get
    EFM8BB31F16G-C-QFP32 A/D 20x10/12b SAR; D/A 2x12b 76c/100
    EFM8LB12F64E-C-QFP32 A/D 20x14b; D/A 4x12b $1.70/100

  • Peter JakackiPeter Jakacki Posts: 10,193
    edited 2020-08-25 04:32
    I also have code that can Flash these chips use 2 Prop I/O. You can load the programmer code to RAM with the included binary and it automatically programs the EFM8 chip. The good thing about using MCUs is that you can define the interface, and I don't just mean I2C or SPI or serial, but you might even set it up to transmit 6 channels continually on one serial pin so all the Prop has to do is sit there collecting it and storing the results in global variables. Your main program doesn't even have to bend an elbow, just reads the variable.

    btw, jmg or myself will be happy enough to write some code and generate a binary for the EFM.
  • Do they have ENOB figures on these ADCs? 14 bit is unusual
  • I also have code that can Flash these chips use 2 Prop I/O. You can load the programmer code to RAM with the included binary and it automatically programs the EFM8 chip. ...

    btw, jmg or myself will be happy enough to write some code and generate a binary for the EFM.

    And I was just looking into the EFM8 line of mcus and figuring out how not to spend a lot on the C2 programmer and now this. Fabulous. Just another good reason to use your excellent forth. Since you mentioned it here I am guessing you don't mind sharing this code, right ?

  • jmgjmg Posts: 15,175
    Maciek wrote: »
    And I was just looking into the EFM8 line of mcus and figuring out how not to spend a lot on the C2 programmer and now this.
    The EFM8 series also have UART bootloaders included at the factory, so you can just tie one pin low at reset, and use any USB-TTL_UART

    Or, the EFM8BB1LCK includes a C2 programmer, you can use with other external parts, and it is $6.65

  • jmgjmg Posts: 15,175
    Tubular wrote: »
    Do they have ENOB figures on these ADCs? 14 bit is unusual
    EFM8LB1 Data does not have a ENOB stated, but it does say 14b typical, and gives DNL of ±1 LSB typical, and SiLabs tend to be one of the better analog companies.
  • jmg wrote: »
    Maciek wrote: »
    And I was just looking into the EFM8 line of mcus and figuring out how not to spend a lot on the C2 programmer and now this.
    ...Or, the EFM8BB1LCK includes a C2 programmer, you can use with other external parts, and it is $6.65

    Thanks a ton, jmg. That I wasn't sure of as the information I have on the programmer chip on that board is rather scarce (since the board is so inexpensive I was suspicious the programmer chip might id the EFM8 chip and refuse to respond if the EFM8 chip it sees is not the same as the one installed on the board).
    Good news if it works and the fact that this very information is coming from you tells me it will. However, that doesn't answer my question on sharing the code, but I leave that for Peter to answer if he chooses so.
  • jmgjmg Posts: 15,175
    Maciek wrote: »
    ...That I wasn't sure of as the information I have on the programmer chip on that board is rather scarce (since the board is so inexpensive I was suspicious the programmer chip might id the EFM8 chip and refuse to respond if the EFM8 chip it sees is not the same as the one installed on the board)....

    Yes, the QFN part there is the same Debug-MCU they use on their Toolsticks, and UDAs and they have 8 solder pads you can isolate the BB1 on board, and wire to an external part.
    The Debug MCU includes a UART path too, but we are still waiting for support other than 115200 baud.

  • @jmg My search for an inexpensive C2 programmer/debugger (I so naturally forgot to mention the obvious, the debugger part in my previous posts above :) but you grasped that on the spot ) is over then, all credits to you. Thanks again.
  • The original Silabs MCUs never had bootloaders so when I designed these early parts in a long long time ago I arranged for the Prop to program them in-circuit. Then I wrote the routines to not only program them, but also debug as well. So the newer EFM8 parts have bootloaders so that you can load them up serially anyway, and that might be all you need. But typically they pull C2D low to enter the bootloader for parts that have already been programmed, so if you want to be able to upgrade the firmware you should have a jumper in there for that. Alternatively, just use a spare I/O for C2D, and in which case, just run another one for C2CK so that you can program it over the C2 interface :smile:
  • Thanks, Peter.
    I take that as an extremelly polite "NO" as an answer to my question and I respect that. Plus, it has a solution for me as you and jmg described above. A big thank you to both of you.
  • Why don't you just use two MC3208's. Thats what I do, if you have a couple of extra prop pins.
  • Peter JakackiPeter Jakacki Posts: 10,193
    edited 2020-08-25 16:53
    @Maciek - I'm not quite sure what I said no to? I wouldn't worry about an external programmer or debug tool from my experience. Basically I'm saying is just connect the C2 lines to the Prop and then no matter what, the Prop can always program the EFM8.. You shouldn't have to debug this chip since the software is fairly simple and I'd check it before I gave you the binary, but if you did debug it then you would have to know all about it. Is that what you want?

    @DigitalBob - The MCP3208s don't have any voltage reference and need SPI bus plus extra chip selects, and cost way more than a 20 channel 14-bit "super-ADC" that you can configure just the way you like.
  • @"Peter Jakacki" No worries. I was just refering to this post:
    Maciek wrote: »
    jmg wrote: »
    Maciek wrote: »
    And I was just looking into the EFM8 line of mcus and figuring out how not to spend a lot on the C2 programmer and now this.
    ...Or, the EFM8BB1LCK includes a C2 programmer, you can use with other external parts, and it is $6.65

    Thanks a ton, jmg. That I wasn't sure of as the information I have on the programmer chip on that board is rather scarce (since the board is so inexpensive I was suspicious the programmer chip might id the EFM8 chip and refuse to respond if the EFM8 chip it sees is not the same as the one installed on the board).
    Good news if it works and the fact that this very information is coming from you tells me it will. However, that doesn't answer my question on sharing the code, but I leave that for Peter to answer if he chooses so.
    .
    I got all the answers I wanted. Thanks.

  • .....

    @DigitalBob - The MCP3208s don't have any voltage reference and need SPI bus plus extra chip selects, and cost way more than a 20 channel 14-bit "super-ADC" that you can configure just the way you like.

    Agreed !

  • Seems to me your already running one MCP3208, it would be easy to add another, rather than adding a microcontroller to your microcontroller. The MCP3561 single channel are only $2.50, 24 bit run it with a Mux.
  • Peter JakackiPeter Jakacki Posts: 10,193
    edited 2020-08-26 00:46
    DigitalBob wrote: »
    Seems to me your already running one MCP3208, it would be easy to add another, rather than adding a microcontroller to your microcontroller. The MCP3561 single channel are only $2.50, 24 bit run it with a Mux.

    If it is a one-off hand wired prototype then certainly that would be the case. If though you are designing a PCB that may become the production PCB then it pays to get it right. If the OP was considering using a special 28-pin TSSOP ADC then he may as well consider using another device which is even easier to use (with the forum's help) and at a 1/10 of the cost. Besides, once you put in the extra effort you'll find that it will benefit you each and every time you make a design choice, and I would never hesitate to drop in a small micro, especially the EFM8 series for almost anything at all.
  • Yes, but what limitations such as sample rate comes into play using the EFM8 or other mcu? Or delay time moving the samples out of the mcu?
  • Yes, but what limitations such as sample rate comes into play using the EFM8 or other mcu? Or delay time moving the samples out of the mcu?

    Even at 14-bit it still runs at 900ksps plus with the variety of interfaces available make it easy to interface. Don't forget, because it is an MCU, it is even possible to have a parallel interface, not that I would. I'd consider using the UART which could run at 12Mbd if the Prop could keep up, but maybe a few Mbd would be fine and keep things simple. Alternatively, use the I2C bus since it has been proven that even on the slower 48MHz part it can run at 3.5mbs. With the Prop as the master it can dictate the timing then.

    These Silabs MCUs are well designed and thought out and are not just a bunch of standard cells crammed onto a die like some.

  • this remote is for personnel use and will never be in production, im currently using one cog to run one mcp3208, the goal is simply to still only use one cog and have a 9th channel to monitor battery voltage but i would like to only use one chip. i believe the AD7490 would do this and give me 7 more channels on top of the 9 required. and the code im using for the 3208 will hopefully work the same with the AD7490.
  • In that case why bother making it complicated. Just use a 74HC4051 then to mux some extra channels. No extra software, just select one of 8 channels of one existing A/D channel using 3 I/O.
  • @"Peter Jakacki" im not familiar with multiplexers how would i actually incorporate it into my design?
  • This is and 8:1 (or 1:8) analog mux with 3 lines to select one of 8 to connect to the 1. In this case 8 lines are analog inputs that are muxed to the output line which connects to a channel on the MCP3208. Using 3 I/O from the Prop you select which extra channel you need to mux. With this approach you get 15 analog inputs total and yet you only need 3 extra I/O. As for where and how to connect, that you would know but you can post the circuit and I can show you if need be.
  • kwinnkwinn Posts: 8,697
    edited 2020-08-26 14:25
    It's pretty simple. See the attached jpg from the data sheet.

    The common out/in pin (3) is connected to one of the adc inputs (lets say #8)

    Three pins of the Prop are connected to pins 11, 10, and 9 of the '4051 to select one of the 8 analog channels to be connected to adc channel 8

    The adc now reads the voltage from the '4051 pin selected
    1322 x 483 - 76K
  • not sure why this is blowing my mind, i think i finally understand how it works.
    ive attached a drawing, is this correct?
    519 x 790 - 20K
  • Yes, as simple as that!

  • so is there a major benifet using the 3208/4051 combo rather than two 3208's? one more wire and one more channel. if using two 3208's could they share the same connections to the prop except for different CS pins?
  • It would be even easier to take out your 4051 in your drawing and add the second mcp3208. With the mux you will have to setup a scan rate and capture a sample byte for your reading. And the 4051 only gives you 15 channels instead of 16 with two MCP3208's. You already have a program loop for the 3208 just copy it for another 3208. Keep it simple.
Sign In or Register to comment.