Hello, new to the forum. I'm looking for an Arduino that has at least 16 I/O pins for a keypad and 2 UARTS that support simultaneous operation at slow speeds, 19200 baud. I was using a Uno R3 but found that software serial did not support support this. The Arduino will be reading in bytes from legacy hardware via com1 , looking at the hex commands and updating certain commands to support a new character display. These will be sent via com2 to the 40x2 character display. Simultaneously, keypad button presses will be read by the digital inputs and those values will be sent to the legacy hardware via com1.
I'd love to have an Arduino with a DIP package, because I'm old fashioned and like to be able to remove the chip, but it seems like I'll have to go with the Arduino Due with a surface mount 32 bit processor. This seems like a little bit of overkill for 9600 baud and buttons.
This will be a low volume product to keep some legacy hardware alive. So I'll need to program and then mount the processor on a custom PCB that I'm working on. Any recommendations or advice would be appreciated.
Welcome to the forum, SMunyon! For your project needing 2 UARTs and sufficient I/O pins, consider the Arduino Mega 2560. It supports your desired baud rate of 19200 and offers ample I/O options for your keypad and components. Good luck with your project!
Thanks for the suggestion. Is there a evaluation board available or would I need to breadboard my own? I guess that wouldn't be too difficult, I'll have to look at the data 'book'.
Thank you for the suggestion. I was looking at the MegaCoreX readme file and it looks very thoroughly done. I'd need to look around on the 'net to see who else has used this package.
I use it both with the Nano Every and directly with the AT Mega 4809 and I find it just works, everything does what it's supposed to do without any problems. You can use up to 4 UARTs on 2 sets of alternative pins per UART with it. Plenty of pins for other things.
think some details of the legacy hardware is required?
e.g. are the serial ports TTL, RS232 or RS485? are the digital inputs 5V logic? etc etc
is the target an industrial environment?
typical Arduino boards are not designed for critical applications but there are industrial versions (at a cost)
It's standard serial port RS232 interface from a CPU board running DOS. I'm using a max232 chip to bring the voltages to TTL levels.
Thanks everyone for the information. I was leaning towards the ATmega328P, but I only see 1 USART. So I'll order a Nano Every and see how that works out.
One clarification, because some new posters aren't aware - is that actually a 16 key keypad, or are you really looking for an 8x8 (64 key) keypad? I ask, because if it's really a 16 key keypad, that is commonly supported as a 4x4 matrix, using only 8 pins.
I ask, because it may influence your hardware selection.
I’ve used the 4809 and made a PCB for it to make experimenting easier .
If you pm me and pay the postage I can send you a bare one for the 40pin dip .
How it goes together is fairly obvious and you can use DuPont leads to connect to pots, leds , switches etc
To load the megacore bootloader you need to make a programmer for it .
Thanks for the input, cattledog. As long as the pinout mapping works for me, I like the idea of just plugging a Nano into a PCB. It'll make servicing much easier.
I designed this neat little PCB for doing "typical 2-uart Serial data munging", based on a ATtiny1634 (which has two UARTs.) While not explicitly Arduino-like, it should be programmable with DrAzzy's ATtinyCore (alas, it was never thoroughly tested, especially WRT the rs232 converters.)
Atmega328PB is ALMOST the same as at ATmega328p, and has two UARTS. Pololu has a board...