Hola a todos. Tengo un pequeño problema con un programa que no funciona como debería en una pro mini (3.3V, 8Mhz, 328P) pero sí al 100% en una Uno. El programa está de hecho pensado para una pro mini por lo que el problema no creo que sea software (tocar algún parámetro del programa o similar).
El esquema de la circuitería es como sigue:
-De la patilla (agujero) 8 sale un cable que va a la conexión de datos de una tira de leds 2812.
-A las patillas 9, 10 y 11 se conecta un codificador rotativo con pulsador para cambiar, con el programa que cargo, varios parámetros de los leds: color, intensidad… Si no se conectan, no pasa nada, los leds se encienden, pero obviamente no se pueden "reprogramar". Vamos, que serían como el "menú" del programa.
-A la 12 va un pulsador que sirve para activar un par de ajustes. Digo lo propio: no es imprescindible que esté conectado, porque no influye en el encendido de los leds.
-A la A0 va el punto medio de 2 resistencias en serie de 47 kOhm, que en sus extremos van al + y al -.
Y todo alimentado por una batería 18650.
Bien, con el adaptador, un CR2102 (si no me tangaron en eBay; lo digo porque en el procesador no hay ni números ni letras ni nada, como si lo hubieran "borrado/lijado") con conexión DTR, conectado a la pro mini, subo el sketch a esta (cuidando de escoger placa, procesador y puerto correctos). Sueldo cables… y los led se quedan en blanco a tope de intensidad (de hecho, a los 5 minutos o así se empieza a sentir que cogen temperatura) cuando con el mismo programa y los mismos componentes conectados en la Uno, los led se quedan (configuración por defecto) parte en azul y parte en rojo, a intensidad media.
Compré 2 placas pro mini: en la 1ª, con la que he hecho todo tipo de medidas y comprobaciones, originalmente conecté (por error) el + de la batería al VCC; vamos, que en lugar de haber metido 3.3 V, fueron unos 4.
Al verlo, cambié el + al RAW (donde debería ir desde el primer momento). El regulador de voltaje parece estar bien, ya que si mido el voltaje en VCC tengo 3.34V. Subí como comprobación el sketch del blink, y el led de la placa funciona. Vuelvo a subir el programa de mi proyecto (bueno, el programa no lo he diseñado yo, pero sí puedo hablar de "mi" proyecto con mis componentes y mi placa) y sigue funcionando mal (leds blancos a tope). He medido voltajes en cada una de las patillas, y en principio son consistentes entre la Uno y la pro mini. También, midiendo continuidad y resistencia por si hubiera algún corto o una soldadura mal hecha, todo está como debería.
He probado con la 2ª placa, pero esta vez (aparte de poner el + de la batería donde debe), no he soldado nada, sino que lo he conectado con cables sobre la protoboard (conectando lo mínimo: +, -, la salida a leds y la A0). Tampoco funciona como debería (probado con idéntica configuración en la Uno sí va como debe; no se puede cambiar nada de los leds al no haber puesto el encoder ni el pulsador, pero sí se quedan con la configuración por defecto: no blanca a full sino azul/roja a media intensidad). Lo he hecho así por si en la primera "se me hubiera ido el soldador" y hubiera tocado algún componente o soldadura, y salvo microbolitas de estaño ocultas, en la primera placa lo veo todo bien, al menos a 10 aumentos.
Mis teorías:
-cascó el regulador de voltaje o algún condensador o resistencia asociados en la primera placa. A priori lo descarto (en la 2ª placa seguro descartado al no equivocar conexiones), por la lectura que da el voltímetro, y por ver que con el sketch del blink, el led de la placa parpadea. La batería fue lo último que puse en la 2ª, así que tampoco es decir que se haya hecho un corto por algún lado al meter corriente antes de tiempo.
-cascó el 328 en la 1ª por error en conexión de voltaje. En principio también lo descarto ya que el led de la placa sí luce con el blink. Aparte, no explicaría por qué pasa lo mismo con la 2ª, cuando el voltaje ahí sí lo puse bien.
-fallo de fábrica. En una podría, pero… ¿van a fallar 2 placas exactamente de la misma forma?. Muy poco probable.
-"se me fue el soldador". En la 2ª, aparte de soldar los pines para conectar el adaptador (soldaduras hechas además "por abajo"), no lo he usado. En la primera, salvo que algo se me haya escapado con la lupa, todo parece estar bien: ni bolas, ni pistas unidas/cortadas, ni componentes desoldados, ni componentes dañados externamente.
-Error al pasar el programa (configuración en el IDE) o error en el adaptador. Funciona el programa del blink, por lo que en teoría queda descartado. Además, el IDE no me da error de transferencia y los leds del adaptador se encienden/parpadean, igual que el de la placa, al subir el programa.
En principio esto agota todo lo que se me ocurre. También, he comprado otra Arduino Uno para que me sirva como osciloscopio "casero/cutre salchichero". La salida (patilla 8) del Arduino Uno "de pruebas" me marca picos no distribuidos regularmente, que perfectamente puede ser por la escasa resolución en escala de tiempo del "arduinoscopio" (en el programa, el "ancho" en tiempo de cada bit se mide en décimas de microsegundos). Con ambas pro mini, obtengo básicamente el mismo patrón. Vamos, que lo que quería ver es si, al tener que pasar no voltaje continuo sino información en forma de 0 y 1, el voltaje que me daba el voltímetro era tensión continua (línea plana) o señal/información (picos, ondas, dientes de sierra…), y parece que en efecto manda señal, no simple voltaje.
Entonces, ¿qué os parece que puede ser el fallo?
Si sirve de algo: he leído que quizá alguna pro mini pueda venir sin bootloader. Lo dudo al subirse bien los programas. Lo que no sabía es que venían por defecto con el "blink" instalado, así que no puedo decir por ahí nada (nunca probé las pro mini "en vacío"). Lo que sí puedo decir es (respecto de las pro mini) que si en el IDE le doy, en herramientas, a obtener información de la placa, sí me da PID y VID, pero en BN me dice "placa desconocida" y en SN "subir cualquier sketch para obtenerlo" (¿¿¿??? ¡pero si acabo de hacerlo!; con la Uno SÍ me da esos 2 datos correctamente). También decir que el adaptador se calienta (no mucho, pero tras desconectarlo, el circuito está algo caliente), y decir que al principio (y solo con la 1ª pro mini) lo conectaba en un USB 3.0, que parece que puede dar problemas. Ahora lo conecto en el único USB 2.0 que tiene mi portátil. Si eso pudo cascar originalmente el adaptador y este se está cargando todo lo que le conecte, pues no sé, pero sigue dando un VCC de 3.3V (y de 5 en su patilla de 5V, que no uso).
¿Ayuda? ¿Consejos? ¿Soluciones?.
Gracias por adelantado. Sergio.