Microcontroller choice 3 UART

Hi all,
I ask a suggestion about my project for best choice of microcontroller. I try to explain.
I have to read GPS data (50Hz) (nmea format) and other 4 sensors (analogic).
The GPS data reads through UART_0 (Rx and TX).
After that i send this this data (gps and sensor ) to other Ic always 50Hz.
I have 20ms for read data, processing them and send to UART1 before refresh on UART_0.
Now I wold like to have other free UART (UART_0) for programming and debug.
I have always used atmega328PB but it has only two UART. I would like to use IDE for programming because I know It.
Which microcontroller do you recommend?

A MEGA2560 has 4 serial ports.

Thanks merkd833. This is a good borad but It is It is difficult to soldering.(Sorry, I forgot this detail.)
I would like to use a simple case QFN/TQFP , with maximum 32 pins. In this case I will be able to build my board.

Is there an Arduino, 32pins max, with 3 hardware UARTs ?

The lower pin count (28 and 32) AVR DA and DB series have 3 UART peripherals. Incredibly they also seem to be in stock.

There's an Arduino core available here.

Thanks alot for this informations. I didn't know these series. I see DB (Compared to DA) can use external oscillator. I think AVR128DB32 is a good solution. Yesterday I saw also ATmega1608. What do you think about this model? Compared to AVR DB series.

I can't speak on the support from the Arduino core, but both series are capable of that.

Edit: There's an errata regarding the DB series. The PLL will not work with an external crystal.

The ATmega1608 is part of the megaAVR 0-series, which also includes the ATmega4809 used in the Arduino Nano Every. You gain first party support which is always nice.

CPU wise they're very similar.

The DA and DB series can be bought in configurations with significantly more flash (128kB vs 64kB) and ram (16kB vs 6kB).

They also have some more specialized peripherals such as a touch controller (DA), built-in opamp (DB), configurable custom logic (think logic gates, DB), DAC (DA and DB), multi voltage domains (DB). There's more, but you should check the datasheet if you want more information. These features does require software support, I'm not sure what the Arduino cores support.

The DA and DB MCU's are slightly more expensive, for obvious reasons.

Conclusion: They're all great microcontrollers. Which to choose depends on your application. Personally I think I would pick the DA, unless price is an issue or the capabilities of the DB is needed.

The ATmega1608, as well as the ATmega4809, are supported in the IDE by MCUdude's MegaCoreX. It is also possibly to modify the standard Nano Every boards package to enable use of the 3rd and 4th serial port, although I don't recall which file had to be modified.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.