Paso 1: Entender por qué no funciona fuera de la caja
Cuando un protector de Motor de Seeed Grove está conectado a una placa Intel Edison Arduino Breakout que tiene su "fuera de la caja de" configuración estándar, un único motor de la C.C. será controlable por los bocetos de Arduino demo motor estándar.
Observé que un reinicio del escudo motor daría lugar a un exprimido de corta duración del segundo motor DC. Mover sólo una vez, a pesar del lazo de bosquejo repetidamente intentar conducir los motores alternando las direcciones.
Conectando un motor paso a paso y un esquema de control paso a paso de carga resultaría en absoluto en ningún movimiento del motor. Usé un Arduino Uno para confirmar que el escudo del motor, motores y demo bocetos estaban trabajando en el hardware original de Arduino. Los problemas de control eran algo específico a la emulación de Intel Edison Arduino.
Dado que sólo uno de los dos motores DC fue reaccionar a las entradas de control, he probado varias ediciones de bosquejo en un intento de tener el problema de intercambio entre los dos motores. Ajusté el bosquejo de control motores DC para cambiar el orden en que permiten pernos fueron actualizados y retrasos entre las tareas y el uso de pernos. Todo en vano.
Tengo una V1 y una V2 versión del escudo de Control Motor de Seeed. La versión V2 fue de más ayuda en el problema de control de depuración. El escudo del motor V2 tiene indicadores LED para el motor permiten líneas. La V1 no tiene estos indicadores. Utilizando el escudo V2 pude ver que una de las líneas del motor permiten nunca fue cambiar a activo.
Invertí mucho tiempo rastrear menciones de internet de la incompatibilidad de los Grove Seeed Motor escudos con el Edison de Intel. Se encontraron descripciones de problemas, pero no hay referencias para soluciones subidas. Algunas sugerencias para el ajuste de GPIO pin sincronización fueron intentados sin éxito.
No fue hasta que encontré a la guía del hardware de placa de Edison Arduino Breakout se encontró una miga de pan en el camino a la respuesta.
https://communities.Intel.com/servlet/JiveServlet/...
La primera pista fue en la documentación de un bloque de puentes marcados PWM en el tablero de arranque. Este conjunto de 10 pernos con 4 puentes de 2 pines se documenta como la PWMSwizzler. Controla que 4 de los 6 pines de Arduino PWM estándar son activos en el tablero de Edison Arduino Breakout. Sólo 4 de los normales 6 pines PWM están disponibles para cualquier configuración de hardware determinado de la Junta de arranque. Aunque existen PWM ~ marcas serigrafiadas al lado de los 6 terminales en el tablero de arranque, no todos los pines pueden estar activos al mismo tiempo.
La configuración de fábrica de la placa Arduino Breakout permite pines PWM 3, 5, 6 y 9. El PWM 10 y 11 pins están inactivos.
Revisión de las hojas de datos de Grove Seeed escudo Motor revela que los protectores de utilicen alfileres D8 por D13.
http://www.seeedstudio.com/wiki/Motor_Shield_V1.0
http://www.seeedstudio.com/wiki/Motor_Shield_V2.0
Se fue volviendo evidente que la configuración de hardware predeterminada para la placa Arduino Breakout no hablar con el escudo del Motor de Seeed porque las patillas D10 y D11 no eran activas.