Hi,
I'm not new to circuit design, but I have limited experience with MCUs. And I'm overwhelmed by the wide variety of products available, so I'm hoping somebody can weigh in on this.
I'm intending to build a three-phase EV-charger with two plugs. I've been looking into AVR MCUs first and I briefly considered using a raspberry pi. Maybe someone can help. These are my requirements:
Communications: (low bandwidth) wifi - external IC? What do I need for good range? SPI for communication with HV-side ADC. The HV-side ADC measures voltages and is connected via digital isolatorADC: 6 differential inputs, 10 kSps per input (2x3 currents, currents are sensed using hall sensors and thus need no additional isolation). 2 single-ended inputs, 1 kSps per input (2x control pilot) 1 temp sensor (internal)Display: small colour touch LCD using lvgl - what capabilities are helpful? I see some MCUs with touch support. what does that mean? I initially planned to just use a monochrome LCD and a few buttons because I thought it might be easier to talk to, but LCD touch screens are cheap and nice to have. Would there be any significant advantage to the simpler option?additional GPIO: 8x I/O for breakers (via driver, of course), possible buttons, LEDs,Speed: Most demanding task is probably running the display. Also needs to process measurements ADC (max 60k multiplications per second).Software: Fully Open Source toolchain appreciated. I know that an open source compiler is no problem, what about vendor-specific libraries?Memory: Some ROM for storing settings so they won't be lost when power is lost I'm not sure about the footprint of lvgl, otherwise I don't expect much memory use.
Cheers,
Malte
Thanks for your reply.
Either 3.3 V and 5 V are both fine at this point. The current sensors I intend to use (MCA1101 series) come in both 3.3 V and 5 V variants. I would use an ADC and a separate digital isolator to sense the voltage, so I can pretty much choose the supply voltage on that one as well.
Yes, 12 pins/ 6 differential channels. Since the MCA1101 come with differential outputs, I was intending to use those, so I don't need to calibrate them. Of course I *could* use single ended inputs and just high-pass filter the output, it's just not as elegant. Would I be able to schedule sampling for all 6 channels and have a single interrupt when the ADC is done? Alternatively, I suppose I could use an external ADC capable of simultaneous sampling and have it deal with that - but I very much prefer to have as much as possible on a single chip for the sake of simplicity. Would an external ADC makes things easier?