Ampliación para Netduino


Multiplexación con BitShift-CI

Desde el momento en que conseguí mi tarjeta de microprocesador Netduino Estaba pensando, ¿cuáles son sus limitaciones y cómo se puede trabajar alrededor de ellos? Una de las limitaciones más evidentes es la cantidad de entrada / salida (E / S). Esta imagen muestra lo que la junta es capaz de:

Como  puede verse   en la placa hay 13 puertos  de E / S digitales.
Quería ver una forma de evitar esta limitación con bastante éxito. Mediante la adición de múltiples BitShift IC es que es posible obtener prácticamente ilimitadas I / O-ports. La única limitación de esto es la velocidad de reloj, pero no he llegado a esta limitación todavía.
He utilizado dos tipos de circuitos integrados, serial-in/parallel-out un 74HC595, llamadas y parallel-in/serial-out un llamado 74HC165. Pueden ser utilizados en las cadenas, por lo que al añadir más circuitos integrados, usted no necesitará utilizar más puertos I / O de la placa Netduino. En mi ejemplo a continuación me dieron 32 puertos I / O por sólo ocupa 5 I / O en la netduino.
El esquema es muy simple, he usado botones con resistencia pull-up para representar las entradas y leds para representar salidas. La idea básica es que cada añadido IC añade 8 entradas o puertos de salida.

Entonces llegamos a la parte del código. Conexión de cosas es una cosa, hacer que funcione es otra. El Netduino está lleno de código compilado de C # y utiliza el MicroFramework. NET.
Este marco tiene un par de clases incorporadas, por ejemplo, OutputPort, InputPort y InterruptPort. Hice copias de esas clases incorporadas para trabajar con el BitShift la IC, por lo que sería un uso sencillo que el resto de la estructura.
La única diferencia es que tenemos que definir la configuración de la IC en primer lugar. Así que tenemos dos de entrada y dos de IC de salida IC. Definimos las cadenas conectadas en primer lugar:
?
1
2
Ic74HC165Chain ChainIn = new Ic74HC165Chain (SPI_Devices.SPI1, Pins.GPIO_PIN_D10, 2);
Ic74HC595Chain ChainOut = new Ic74HC595Chain (SPI_Devices.SPI1, Pins.GPIO_PIN_D9, 2)
Ambas cadenas de CI están conectados a la SPI Netduino de autobuses (pines 11 a 13) y el uso de un chip diferente Select-pin, en este ejemplo los pins 9 y 10. Ambas cadenas contienen 2 IC.
Cuando las cadenas se definen, tenemos que hacer que las interfaces para la del IC. Esto se hace por la presente:
?
1
2
3
4
Ic74HC165 IcIn1 = new Ic74HC165 (ChainIn, 0);
Ic74HC165 IcIn2 = new Ic74HC165 (ChainIn, 1);
Ic74HC595 IcOut1 = new Ic74HC595 (ChainOut, 0);
Ic74HC595 IcOut2 = new Ic74HC595 (ChainOut, 1);
La enumeración comienza en 0 como se puede ver. 0 es la primera IC de la cadena, la segunda 1, 2 de la tercera, etcétera.
Ahora podemos definir nuestra entrada / salida / InterruptPort clases. Ellos tienen los mismos parámetros que las clases regulares a excepción de la primera, que define el IC está conectado a:
?
1
2
InterruptPortShift Button0 = InterruptPortShift nuevo (IcIn1, Ic74HC165.Pins.GPI_PIN_D0, falso, Port.ResistorMode.Disabled, Port.InterruptMode.InterruptEdgeBoth);
OutputPortShift Led0 = new OutputPortShift (IcOut1, Ic74HC595.Pins.GPO_PIN_D0, false);
Aquí hemos definido una InterruptPort OutputPort y uso de registros BitShift. Desde esta parte, el código que sigue es exactamente la misma que se utiliza a bordo de la E / S de los puertos.

Fuente original

solo-electronicos por Carlos Rodriguez Navarro se encuentra bajo una Licencia Creative Commons Atribución-NoComercial-CompartirIgual 3.0 Unported.

Netduino y Skype


Este proyecto  de Greg Duncan ,utiliza una forma SkyNet ventanas para interceptar los mensajes de una conexión de Skype a distancia y los pasa al Netduino para controlar la posición de una cámara web.
..Después de crear el Pan y Tilt para el proyecto Netduino,  estaba usando VNC remotamente a ver una casa (host) PC desde laoficina (a distancia). Ha utilizado un visor de cámara web para ver la imagen de la webcam y un navegador web para enviar los comandos en el PC host.
Pensó que sería realmente agradable simplificar esta viendo la imagen y el control de la cámara remota utilizando una sola aplicación. Skype parecía un buen candidato para ello.
SkyNet se ejecuta en el PC host y automáticamente se inicia Skype si no se está ejecutando.
Intercepta todos los mensajes de chat recibidos por Skype en la PC host que están destinados a la Netduino.
A continuación, envía estos comandos para el Netduino a través de una conexión de socket. Puede utilizar los botones en el formulario de SkyNet para enviar comandos directamente a Netduino para realizar pruebas. También hay disponible una casilla etiquetada ‘Enviar a Netduino. Puede desactivar esta casilla si el Netduino no se conectan y que desea probar SkyNet. También hay un cuadro donde se debe introducir la dirección IP de la Netduino.
Código para enviar comandos a través de socket con el Pan Netduino y aplicación de inclinación:
PanAndTilt Pan y Tilt Webcam
Este proyecto se utiliza para controlar la orientación de la cámara web desde cualquier navegador web. Ha desarrollado este para que  pudiera controlar el patio trasero a distancia (a través de VNC en el trabajo) 
El hardware del proyecto consta de dos servos para controlar el giro e inclinación de una cámara web por el Netdunio +. El Netduino aceptando órdenes a través de la red y moviendo el servo apropiadamente, usando el Servo_API de Chris Seto. Utiliza los pines 9 y 10 para los servos. Asegúrese de conectar el Netduino a través de la toma de alimentación a un transfroamdor de  9v pues desde el conector USB no se suministra la corriente necesaria para los servos.

Los comandos son enviados desde cualquier navegador a través de la Netduino + IP (ec: http://192.168.0.104 ) seguido de / PanTilt.htm como URL. En mi configuración que utilizo: http://192.168.0.104/PanTilt.htm.

PanTilt.htm es un pequeño archivo HTML que se encuentra en la Netduino + tarjeta SD. Se muestra flechas para controlar la posición de la cámara. Al pulsar sobre la flecha de la izquierda, el navegador envía una «L» a través de la netduino Javascript. El Netduino + PantAndTilt aplicación (que es una modificación de mi solicitud MicroServer) servidor de la página de la tarjeta SD y traducir los comandos, en este caso en una «izquierda» de comando para el servo que controla el eje x. Hay comandos para arriba, abajo, izquierda, derecha y centro.
Este proyecto muestra una serie de cosas interesantes, Skype interoperabilidad, el Pan y Tilt proyecto ya un nivel generalmente fresco de geek ‘ness .
He aquí algunos enlaces más te podrían interesar:
  • Netduino se está abriendo a un público más amplio con el. NET Micro Framework v4.2 liberación
  • Una introducción agradable a Netduino
  • Netduino
  • Seis Lugares Dónde puedo comprar Netduino y Otras Cosas Electrónica
  • Nuevo en el Maker Shed: Netduino, una red con motor de código abierto plataforma electrónica.
  • TWC9: Netduino, Twitter OAuth en Windows Phone, pelado Aplicaciones y física universal
  • Netduino -. NET Micro Framework, el código abierto, la plataforma electrónica, libre (software), paseo de código, sin embargo, cool ..
Articulo original  http://channel9.msdn.com/coding4fun/blog/SkyNet-is-here-not-that-one-Skype–Netduino

solo-electronicos por Carlos Rodriguez Navarro se encuentra bajo una Licencia Creative Commons Atribución-NoComercial-CompartirIgual 3.0 Unported.