Stackable/Configurable IO Arduino UNO Shield Data Conversion Solution via ADC/DAC

I feel good. :grinning_face:

An Arduino UNO shield that supports data conversion via dedicated ICs of 12-bit resolution DAC (the MCP4822 with two output channels) & ADC (the MCP3008 with 8 input channels at 200ksps) using the SPI protocol. Although as a place holder on the board, the shield also supports the MCP4728T, which is an I2C 12-bit DAC. Users can add this I2C DAC IC later if desired.

Although the shield is made specifically to stack onto the Arduino UNO, it can be used as a standalone board with any microcontroller by supplying the 5V and GND to it and connect to the neccessary IO pins to do data conversion.

PM me if you would like one or go to here. Thank you.

2 Likes

SPI should come in via the ICSP connector, to make it compatible with a Mega.

1 Like

Thanks for sharing. Hopefully your hole pattern aligns with the mounting holes on an Arduino UNO.

Hopefully you will also provide some test code and an annotated schematic.

You did one thing I really like that many do not: you supplied mounting holes, and even better, you specified the screw size. :-)

2 Likes

Mega shield is separately made is in the design process. This is specifically for the Arduino UNO. However, the shield can be used as a standalone board with any microcontroller. See my OP. Thanks for your input.

1 Like

The board pattern is taken from the official Arduino UNO R3 release. Honestly, the mounting are not used at all, since it's mounted/stacked onto the UNO's female pin headers. Thanks for your input.

As hinted, one Uno-sized shield with ICSP pins can accommodate both Uno and Mega.
Both boards have duplicate SPI on those six pins and duplicate I2C near pin13.

I know...But I rather have the exact size for the Mega board. Besides, flashing an Arduino board is from the bootloader via the IDE. I can your point of duplicatiing the ICSP 2x3 pins. But I opted "NO" on that one. Thanks for the input.

1 Like

Not sure what you mean with "flasing" and if you understand what I mean with duplicate pins.

The processor of an Uno R3 has it's SPI pins connected to pin 11 and 12 as well as the ICSP connector. The Mega has it's SPI pins connected to pin 50 and 51 as well as to the ICSP connector.
It doesn't make sense to design an SPI shield without making use of that ICSP feature,

Same for the I2C pins. Use the shared pins, not A4, A5 or 20, 21.

It perfectly makes sense to the UNO shield I made, per my previous posts. I would suggest that it would make sense for you to use KiCAD to make what makes sense for you.