Problemas de micro comunicación de Arduino pro

4

Estaba trabajando en un programa con una matriz de puntos LED 5 X 7 para mi Arduino pro micro. Había un programa que funcionaba en la matriz de puntos y yo solo lo estaba simplificando usando arreglos y eso.

Acabo de terminar la configuración y agregué un comando en el bucle solo para encender un led para la prueba. Así que subí el código y recibí un error que decía "No se encontró el puerto serie en COM 5", incluso antes de cargar un código diferente.

Así que hice lo habitual ... reinicié Arduino, y todavía tengo el mismo error.

Luego me di cuenta de que Windows 8 estaba dando una burbuja en la parte inferior derecha de la pantalla que decía "dispositivo USB no reconocido", así que pensé que tal vez los controladores se desordenaron. Fui al administrador de dispositivos y vi un dispositivo desconocido (suponiendo que era Arduino), así que traté de actualizar los controladores con la copia de los micro controladores que ya tenía. Dijo que los conductores estaban al día. Solo para asegurarme de que desinstalé los controladores completamente y descargué una copia nueva del sitio web de Arduino. Todavía no funcionó.

En este punto, pensé que mi computadora tenía problemas, así que la probé en la computadora de Windows 7 de mis amigos, pero todavía no funcionó. Mi amigo y yo pensamos que deberíamos seguir adelante. Así que mi amigo, que ha estado programando su micro profesional en su propia computadora portátil con un cable diferente, cargó mi programa de matriz de puntos led a su micro profesional cuando no estaba conectado a nada (no estaba en una placa de pruebas, por lo que no estaba "No hay problema con el cableado en la placa base) y lo MISMO comenzó a suceder con su Arduino pro micro.

NO tengo idea de cuál es el problema, quizás, de alguna manera, es un problema extraño con el código ... Aquí está el código que subí:

//rows
const int dotr1 = 5;
const int dotr2 = 4;
const int dotr3 = 6;
const int dotr4 = 7;
const int dotr5 = 15;
const int dotr6 = 3;
const int dotr7 = 2;
//columns
const int dotc1 = 9;
const int dotc2 = 8;
const int dotc3 = 10;
const int dotc4 = 16;
const int dotc5 = 14;
//extra
const int dt = 1;//for scrolls
const int timeDelay2 = 20000;//micsec//for weave
const int repetitions = 2;//scrolls
const int repetitions2 = 20;//weaves
const int scrollRate = 1;//timedelay2*scroll= duration of weave

int currentStep = 0;
const int frame1r[] = {4,0};
const int frame1c[] = {3,0};
const int frame2r[] = {3,3,3,4,4,5,5,5,0};
const int frame2c[] = {2,3,4,2,4,4,3,4,0};
const int frame3r[] = {2,2,2,3,3,4,4,5,5,6,6,6,0};
const int frame3c[] = {2,3,4,1,5,1,5,1,5,2,3,4,0};
const int frame4r[] = {1,1,1,2,2,6,6,7,7,7,0};
const int frame4c[] = {2,3,4,1,5,1,5,2,3,4,0};

const int high = LOW;
const int low = HIGH;
void setup()
{
  for(int i = 2; i < 11; i++)
  {
    pinMode(i, OUTPUT);
  }
   pinMode(15, OUTPUT);
   pinMode(14, OUTPUT);
   pinMode(16, OUTPUT);
   //for rows
   digitalWrite(dotr1,high);
   digitalWrite(dotr2,high);
   digitalWrite(dotr3,high);
   digitalWrite(dotr4,high);
   digitalWrite(dotr5,high);
   digitalWrite(dotr6,high);
   digitalWrite(dotr7,high);
   //for columns
   digitalWrite(dotc1,low);
   digitalWrite(dotc2,low);
   digitalWrite(dotc3,low);
   digitalWrite(dotc4,low);
   digitalWrite(dotc5,low);
}




void loop(){
for(int i = 0; i < scrollRate; i++){
  digitalWrite(frame1r[currentStep], low);
  digitalWrite(frame1c[currentStep], high);
  delay(dt);

}
}

Si alguien ha tenido este problema o conoce alguna forma de solucionarlo, por favor, ayuda.

    
pregunta capacitor99

2 respuestas

1

No eres el único que tiene este problema. Creo que esta es la publicación que puedes leer para resolver este problema.

Intenta hacer esto:

Primero instale los controladores para Arduino (esto es para Windows 8 o 7):

  1. Conecta tu placa Arduino

  2. Vaya a Panel de control --- > Sistema y seguridad --- > Sistema --- > en el     panel izquierdo del Administrador de dispositivos

  3. Expandir Otros dispositivos .

  4. Debajo de Otros dispositivos , verás un ícono con una pequeña advertencia amarilla. (Desenchufe todos los demás dispositivos conectados a cualquier puerto serie)

  5. Haga clic derecho en ese dispositivo: Actualizar software de controlador

  6. Seleccione Buscar en mi computadora el Software del controlador

  7. Haga clic en Examinar : busque la carpeta de Arduino Environment que has descargado del sitio web de Arduino. Si no se descarga luego enlace

  8. Después de navegar marca 'incluir' subcarpeta.

  9. Haga clic en siguiente --- > Su controlador se instalará.

  10. Vaya a administrador de dispositivos Expandir Puerto (está bajo otros dispositivos )

Verá Arduino escrito --- > Busque su COM PORT (cierre administrador de dispositivos )

  • Vaya a Arduino Environment --- > Herramientas --- > Puerto serie --- > Selecciona el COM PORT como acaba de ver en PORT en administrador de dispositivos . (Si está utilizando Cualquier otro tablero Arduino en lugar de UNO, luego seleccione el mismo en tableros )

Eso es por cierto. estas instrucciones son de @ Divye Bhutani en su publicación original . . .

    
respondido por el Muhamed Krlić
1

Una publicación antigua, pero aparentemente nunca contestada.

Recientemente tuve un problema similar, y parece que a veces sucede simplemente con Pro Micros que dejan de enumerar correctamente en el sistema operativo.

Para mí, en OSX, el error de firma de dmesg fue:

       0        0 dgmdmcontrol: start - Failed to find the CDC driver
     0 [Level 5] [com.apple.message.domain com.apple.commssw.cdc.device] [com.apple.message.signature AppleUSBCDCACMData] [com.apple.message.signature2 0x2341] [com.apple.message.signature3 0x8036]

y por lo que pude ver, la placa estaba tapiada, nunca apareció como un dispositivo en / dev. También verifiqué que Linux tampoco pudo enumerar este dispositivo, pero nunca llegué a probar Windows, espero que el comportamiento sea el mismo.

De todos modos, algo sorprendente, el IDE de Arduino todavía intentará cargar en el dispositivo, incluso si no se ha enumerado correctamente como el dispositivo que configuró en 'Herramientas > Puerto serial'. El truco es comenzar la carga, y mientras aún se está compilando, corta brevemente el pin RST a GND. Esto hace que el cargador de arranque se reinicie, justo a tiempo para la fase de carga.

Hasta ahora he revivido 2 Pro Micros que se dirigían a la basura. Espero que esta publicación también guarde el hardware de otra persona.

    
respondido por el Fanjita

Lea otras preguntas en las etiquetas