Controlado por PIC barato casco cámara con Sony LANC (bueno para los deportes extremos) (3 / 4 paso)

Paso 3: ¿Qué es LANC y cómo funciona el programa?


Si visitas este enlace, dirá usted cómo funciona el protocolo LANC de Sony, y todos los comandos y datos de la cámara disponibles en el protocolo LANC:

http://www.boehmel.de/LANC.htm

Como se puede ver, puede obtener mucha información de la cámara, así como controlar todas las funciones de la cámara a través de la LANC puerto de comunicación.

Mi código es muy básico y el fichero .asm puede ser cargado en MPLAB (sin Micochip.com) y utilizando el PicKit2 fácilmente.

Cómo funciona el código:

Si descarga el código fuente, está documentado por decirle lo que está pasando, pero te voy a dar un breve expanation aquí también.

Hay 8 bytes en el puerto LANC cada 20ms (16,6ms para NTSC). Cada byte tiene un inicio poco seguido de 8 bits, cada uno con una longitud de 104uS. Hay un espacio de acerca de 200uS - 400 entre bytes. Después de los 8 bytes han aparecido en la línea LANC, hay un espacio largo (5 a 8 ms) donde la línea LANC es 'en' alta, y luego el mismo 8 bytes 'aparecen' otra vez.

-Cuando el programa se inicia, mantiene control LANC de entrada hasta que 've' lo alto durante un período más de 1000uS, esto quiere decir que estamos en la brecha entre los 8 bytes y el primer byte.

-A continuación el programa espera ver el Bit de inicio (lógica 0) en la línea. Cuando esto sucede, el programa espera 52uS (mitad una bit de longitud) y cheques otra vez para asegurarse de que hay todavía una lógica 0 en la línea LANC. Si es así, sabemos que tenemos un poco de inicio válido y está preparados para leer el byte.

-Ahora esperamos 104uS (la longitud de 1 bit), así que estaremos en el centro el siguiente bit en la línea LANC. Leer este pedacito, esperar 104uS y leer otra vez. Esto continúa para todos los 8 bits. Ahora tenemos Byte 0.

-El programa entonces espera el Bit de inicio siguiente y realiza la misma tarea para obtener los bytes 1, 2, 3, 4, 5, 6 y 7.

Byte 4 es el que utilizo en el programa para obtener la información sobre el estado del registro de la cámara, pero como pueden ver en el link que proporciona, hay un montón de información disponible.

A la derecha, que es la lectura de la línea LANC discutida, ¿qué hay escrito al control de la cámara?

-Cuando se pulsa un botón, 2 registros se cargan con los bytes necesarios para llevar a cabo la operación específica y un registro llamado 'Remitente' está cargado con el número 5 (voy a explicar por qué más adelante). Cuando el programa llega a la parte 'listo para leer los bytes', si el registro 'Remitente' no se cambia el pin RA0 a una salida de 0 y empieza outputing el primer byte. Luego busca el siguiente bit de arranque y salidas el siguiente byte. El registro 'Remitente' se disminuye en 1 y RA0 se cambia a una entrada para leer los últimos 6 bytes.

El registro que se utiliza 'Remitente' es porque la cámara de aceptar una orden, necesita ver el comando de algunos ciclos. Algunos sitios dicen que solo 3 son necesarios, pero como 1 ciclo sólo toma 20ms, enviar 5 veces (para estar en el lado seguro) sólo tarda 100ms para completar.

Espero este breve Instructable tiene sentido y que son capaces de hacer sus propia cams casco DIY. Siéntase libre de adaptar mi código a sus necesidades, pero por favor me crédito el código si publican en cualquier otro lugar.

Artículos Relacionados

Sistema de domótica controlado por voz (barato y fácil)

Sistema de domótica controlado por voz (barato y fácil)

Utilizando un Arduino, un portátil reciclado y limitados conocimientos de programación, podría ser capaz de crear su propio sistema de automatización del hogar siguiendo estos pasos.Este instructable muestra un método barato para crear un sistema de
Cámara de nivel de iPad para los accesorios de lentes de Photojojo

Cámara de nivel de iPad para los accesorios de lentes de Photojojo

Paso 1: Crear cuñas de madera dura para iPad esquinaEl caso del iPad es redondeado donde se encuentra la cámara, y los accesorios de lentes de Photojojo (angular, teleobjetivo, etc.) requieren una superficie plana para colocar el anillo de la lente s
Arduino controlado por dimmer luz

Arduino controlado por dimmer luz

ADVERTENCIA: ¿ Algunas personas tratan de construir esto con un optoacoplador con coz zerocrossing derecho 'es mejor'? Algunos se dicen incluso en tiendas de electrónica es mejor utilizar tal un optoacoplador. MAL. Esto sólo funcionará con un optoaco
Controlado por Twitter alimentador del animal doméstico

Controlado por Twitter alimentador del animal doméstico

Un gran proyecto para los dueños de mascotas ocupados. Este alimentador del animal doméstico controlado por Twitter automáticamente distribuye alimentos en respuesta a la actividad en su cuenta de Twitter. El proyecto es controlado por un Arduino y e
Controlado por ordenador Arduino

Controlado por ordenador Arduino

¿Que siempre quisiste controlar Arduino con un programa de ordenador que puede manejar un completo interfaz gráfico? Seguramente la mayoría dirá que sí, pero una GUI completa toma el trabajo duro. Necesita saber lo básico de todo antes de hacer todo
Coche RC controlado por Arduino sensores - autónoma y fácil de construir

Coche RC controlado por Arduino sensores - autónoma y fácil de construir

Este instructable muestra cómo volver a construir un coche de control remoto de segunda mano. Usted verá cómo volver a conectar la placa de circuito. Así, codificación básica y Arduino basado en competencias se demuestran en esta construcción. El pro
Reproducir vídeo por USB en Nissan o Infiniti vehículos (puede trabajar para otros)

Reproducir vídeo por USB en Nissan o Infiniti vehículos (puede trabajar para otros)

Si usted tiene un vehículo Nissan o Infiniti con el vehículo en sistema de entretenimiento, usted probablemente ha notado que el USB era una fuente de vídeo opcional. Podría incluso han puesto algunos videos en un pendrive y trató de jugar. Pero a pa
Robot controlado por Bluetooth con la cámara inalámbrica espía

Robot controlado por Bluetooth con la cámara inalámbrica espía

En este instructables que te mostrará cómo hacer robot inalámbrico controlada Bluetooth module.the mejor característica de este robot es inalámbrico, trabajando más de wiffi.in sobre el cuadro que usted puede ver mi trabajo teléfono camera.my teléfon
Palanca de mando controlado por cámara de vigilancia

Palanca de mando controlado por cámara de vigilancia

Hola a todos!Quisiera empezar compartiendo la demostración del vídeo de Youtube de este Instructable.Resumen del proyecto:Lo que se hacer está convirtiendo un Galileo de Intel en un servidor web. Este servidor actúa como el Host y almacenará los dato
Controlado por ordenador luces de Navidad con luz-O-Rama

Controlado por ordenador luces de Navidad con luz-O-Rama

¡ Bienvenido a mi guía paso a paso sobre cómo hacer una increíble pantalla de luz de Navidad! Yo le guiará a través de todos los pasos desde la planificación hasta oprimir start. Vamos a empezar!Paso 1: Introducción y pensando en el futuroEn primer l
Tanque con video controlado por app inventor android y bluetooth

Tanque con video controlado por app inventor android y bluetooth

Bueno, el objetivo de este proyecto DIY es el poder proceso implementar un vehículo con orugas.El cual cuente con:1. Transmisión de vídeo2. las instrucciones de desplazamiento mar por comandos a través de bluetooth3. el "control" de este vehícul
Tanque Oruga con vídeo, controlado por android (inventor de la aplicación) mediante bluetooth

Tanque Oruga con vídeo, controlado por android (inventor de la aplicación) mediante bluetooth

Bueno, el objetivo de este proyecto DIY es el poder proceso implementar un vehículo con orugas.El cual cuente con:Transmisión de vídeoLas instrucciones de desplazamiento mar por comandos a través de bluetoothEl "control" de este vehículo, o sea
Lámpara de sobremesa - con caja de relé controlado por Arduino Bluetooth

Lámpara de sobremesa - con caja de relé controlado por Arduino Bluetooth

Hoy voy a mostrar cómo construir tu propia lámpara de escritorio controlado Bluetooth con arduino uno.Para este proyecto tienes que construir el ralay de caja que se puede encontrar aquí:(Nota: si no desea construir una caja se puede usar un módulo d
Cómo hacer un Robot de 2 ruedas, controlado por infrarrojos, compatible con Arduino

Cómo hacer un Robot de 2 ruedas, controlado por infrarrojos, compatible con Arduino

Es este instructable sobre cómo usted puede hacer su propio robot para que:-Es controlado por un control remoto IR-Son capaces de acceder y modificar el código para el contenido de su corazón-Usted puede cambiar el robot chassy a cualquier tamaño o f