Solución:
Creo que la primera mejor opción es quitar el chip ATMega328p-pu de su Arduino UNO e incorporarlo a su circuito final. Las fichas cuestan sólo 1,50 dólares.
De esa manera, puede usar su UNO como programador en lugar del dispositivo final que implemente.
No estoy seguro de por qué no hay más documentación sobre la forma correcta de quitar el chip ATMega328p-pu y usarlo en su tablero, después de completar su programación.
Explico exactamente cómo hacer esto en mi blog: http://raddev.us/arduino/post/2018/07/03/arduino-uno-using-your-atmega328p-u-as-stand-alone
Pero aquí están los conceptos básicos. Primero quitas el chip. Se verá así después de hacerlo. (Nota: estoy usando el clon de Elegoo de un UNO).
A continuación, aplica energía al pin 7 y conecta el pin 8 a GND.
Necesita un cristal de 16 MHz
Pero, el chip no parece ejecutar su boceto en este punto. Eso es porque en realidad necesitas un cristal para funcionar a 16MHz.
La placa UNO tiene ese chip instalado y por eso funciona. Puedes verlo aqui:
Finalmente, agrega el cristal de 16MHz y un par de tapas de 22pF y su chip funcionará de forma independiente (sin UNO).
Agrega el cristal a los pines 9 y 10. Puede ver todos los detalles leyendo la entrada de mi blog o leyendo la hoja de datos atmega328.
Finalmente, simplemente conecte todo lo demás
Después de eso, simplemente conecte el resto de su circuito a los pines adecuados y podrá ejecutar su ATMega328p-pu de forma independiente.
En realidad, también es una buena experiencia de aprendizaje.
Simplemente compre chips atmega328p-pu de repuesto para su UNO y podrá crear todos los proyectos que desee por muy poco dinero.
Verifique la placa de desarrollo STM32F103C8T6, cuesta alrededor de $ 1.5 y es más rápida / tiene más memoria que la Arduino Uno, y es mucho más pequeña.
Puede funcionar con el IDE de Arduino, pero no todas las bibliotecas son compatibles, así que verifique antes de usarlo si sus bibliotecas usadas son compatibles o si hay diferentes bibliotecas que puede usar en su lugar.
Actualizar
Diferencias:
Arduino Uno STM32F103C8T6 Mini Dev Board
MicroController Atmega328P Cortex M3
MIPS/MHz 1 1.25
Operating Voltage [V] 5 3.3, most pins 5V tolerant
Input Voltage [V] 7-12 USB only
Input Voltage (limit) [V] 6-20 (USB)
Digital I/O Pins 16 37
From them:PWM Digital I/O Pins 6 12
Analog Input Pins 6 10
DC Current per I/O Pin [mA] 20 ?
DC Current for 3.3V Pin [mA] 50 ?
Flash [KB} 32 64
SRAM [KB] 2 20
EEPROM [KB] 1 -
Clock Speed [MHz] 16 72
I2C 1 2
SPI 1 2 (18 MBit/s)
UART 1 3
CAN 0 1
USB 0 USB 2.0 FS 12 MBit
DMA 0 7 channels (ATsP, SPI, I2C, USART)
RTC 0 1
CRC 0 1
Unique ID 0 1
Programmed by USB SWD Debug (around $5)
IDE Arduino IDE Arduino IDE, CubeMX, ...
Libraries Many Limited
Dimensions [mm] 68.6 x 53.4 53 x 22
Weight [g] 25 ?
Price (cheapest) [$] 2.50 1.50
Nota: como se escribió anteriormente, a pesar de las especificaciones en su mayoría mejores, no todas las bibliotecas son compatibles. También es necesario comprar un programador (solo una vez, cuesta alrededor de $ 5).
Para mi producto, pasé de un Arduino Uno:
al Arduino Pro Mini:
Sí, necesitará un cable FTDI para la programación y comunicaciones en serie a la PC, pero siempre que no necesite comunicaciones todo el tiempo, solo necesitará un cable para cargar el programa en cada dispositivo. También se pueden encontrar bastante baratos.
Sin embargo, me doy cuenta de que el Arduino Pro Mini está retirado ahora, por lo que puede ser un poco más difícil de obtener (todavía está disponible en AliExpress). Entonces, por esta razón, te sugiero que pruebes el Arduino Nano:
que tiene la ventaja adicional del USB integrado, lo que significa que ya no necesita el cable FTDI para programación o comunicaciones.
El ATMega328P que es el procesador de estas 3 placas no tiene USB nativo, lo que significa que la placa también necesita incluir el IC FTDI FT232RL que se usa en el cable FTDI. Tener este IC puede agregar costos adicionales a su balance final.
Por unos pocos dólares más barato por dispositivo, puede usar un microcontrolador (como el ATMega32U4) que tiene coms USB nativos (y por lo tanto ahorra en el FTDI IC). Uno de esos productos es Arduino Micro:
Todas estas placas mencionadas son nativas dentro del ecosistema Arduino y (aparte del Pro Mini retirado) deberían ser fáciles de obtener en línea o en su tienda de electrónica local. Su programa Arduino Uno funcionará para todas estas alternativas; solo tiene que cambiar la placa en el IDE de Arduino:
Hay una placa más que me gustaría mencionar: la DigiSpark:
Solo es adecuado para programas más pequeños, tiene algunas de sus características limitadas y no es una placa Arduino oficial. Habiendo dicho eso, hay mucho soporte para Arduino, ¡y es barato!