Arduino controlado por dimmer luz (11 / 15 paso)

Paso 11: PIC controlada lightdimmer: el software

Si desea utilizar este circuito con un microcontrolador PIC, el software en este enlace puede ayudarle a obtener más:
http://www.edaboard.com/thread265546.html

Un buen artículo sobre cero detección de cruce con un PIC se puede encontrar aquí:

http://tahmidmc.blogspot.nl/2012/10/Zero-Crossing-...

El escritor Syed Tahmid Mahbub da un programa básico que detecta el paso por cero y luego se activa el LED con un retardo de 20 ms.
Aunque nunca he trabajado con PIC de antes y no soy ninguna grieta en programación en C. Me decidí a ver si podía construir en su programa y que permiten variar la intensidad de la luz, en lugar de sólo darle un valor (el retardo de 20 MS).
Pronto descubrí que las funciones delay_ms y delay_us en C, son un poco complicado, es decir, que no acepta una variable. El tiempo de retardo debe ser conocido en el momento de compilación como lo es duro codificada. VI algunas soluciones complicadas, pero me pareció una solución más simple sería hacer una función que da 75 Estados Unidos demora (hacer que 65 para 60Hz) y que llame con un parámetro de determinar cuánto se enlaza ese retraso.
El número máximo de veces que el retraso se coloca es de 128. Eso es porque he elegido al azar que la luz debe ser atenuada en 128 pasos (con 0 en y fuera de 128).
Aunque una advertencia: no tengo ningún programador PIC y no estoy planeando (todavía) entrar en fotos, felices como estoy con la serie Atmega y Attiny. Por lo tanto no puedo probar el programa. Sólo puedo decir que compila sin problemas, y si desea utilizar el circuito en una foto, te ayudará a empezar. También puede encontrar proyectos completos, incluyendo un programa, aquí y aquí, incluyendo un control remoto IRy aquí
//---------------------------------------------------------------------------------------------------------
Programador: DIY_Bloke
Fuertemente basado en un programa de 0 X de Syed Tahmid Mahbub
Compilador: mikroC PRO para PIC v4.60
Blanco Foto: PIC16F877A
Programa para el control de ángulo de fase
cero señal de cruce en el pin RB0/INT 33
bloquean señal a MOC3021 por 220-470R de pin RD0 19/PSP0
Tal X 4 MHz
//---------------------------------------------------------------------------------------------------------
unsigned char FlagReg;
int x;
int maal;
atenuación de int = 20; / '20' es sólo un ejemplo. Regulación debe contener un
valor entre 0 y 128 y se puede tomar de ejemplo un
resistor variable o LDR o un valor que sale de un programa
SBIT ZC en FlagReg.B0;

{} void interrupt()
Si (INTCON. INTF) {//INTF bandera levantada, por lo que se produjo la interrupción externa
ZC = 1;
INTCON. INTF = 0;
}
}

{} void retardo (int maal)
para (x = 1; x < maal; x ++) {}
delay_us(75); 65 para 60Hz
}
}

void main() {}
PORTB = 0;
TRISB = 0 X 01; RB0 entrada para interrupción
PORTA = 0;
ADCON1 = 7; Desactivar la ADC
TRISA = 0XFF; Hacer todas las entradas de PORTA
PORTD = 0;
TRISD = 0; Todo PORTD salida
OPTION_REG. INTEDG = 0; interrupción en flanco descendente
INTCON. INTF = 0; limpiar bandera de interrupción
INTCON. INTE = 1; activar interrupción externa
INTCON. GIE = 1; habilitar interrupción global

mientras que {} (1)
Si (ZC) {//zero cruce ocurrió
Delay(dimming); '20' es un ejemplo
PORTD. B0 = 1; Enviar un pulso de
delay_us(250);
PORTD. B0 = 0;
ZC = 0;
}
}
}

Artículos Relacionados

CARduino - vehículo accionado Arduino, controlado por LabVIEW

CARduino - vehículo accionado Arduino, controlado por LabVIEW

El CARduino es un vehículo operado por control remoto que es controlado por un regulador conectado a un equipo que ejecute LabVIEW. El vehículo es accionado por el Arduino y se puede ampliar a través de la adición de sensores u otros dispositivos. Us
Wake-up light (usando microprocesador controlado por dimmer)

Wake-up light (usando microprocesador controlado por dimmer)

invierno está llamando a la puerta otra vez en Europa.Odio tener que levantarse en la oscuridad, por lo tanto necesito una luz para despertar...Ahora las personas normales probablemente tos el E90, - para un Wake-Up Light de Philips.U obtener una est
¿Instalación de Bluetooth multifunción coche Smart para Arduino controlado por teléfono móvil

¿Instalación de Bluetooth multifunción coche Smart para Arduino controlado por teléfono móvil

por lo que usted quiere hacer un coche smart? ¿No sabes dónde empezar? Por qué aprender con equipo de ICStation.El Arduino Bluetooth coche Smart tiene la función de seguimiento, evitación del obstáculo, control remoto por infrarrojos y Bluetooth remo
Bluetooth de rover 4WD Arduino controlado por teléfono/tablet Android

Bluetooth de rover 4WD Arduino controlado por teléfono/tablet Android

4WD de Arduino bluetooth controlado roverSe trata de un rover 4WD simple que hice con Arduino.el rover se controla con un teléfono android o tablet por bluetooth. Con esa aplicación puede controlar velocidad (usando pwm del Arduino), correr con el ac
Generador de forma de onda de Arduino controlado por iOS

Generador de forma de onda de Arduino controlado por iOS

Este generador se basa en el trabajo de Amanda Ghassaei. Generadores de forma de onda (o generadores de funciones) se utilizan para probar y depurar circuitos. por ejemplo, respuesta de frecuencia de amp op o sensores. Este generador es alimentado po
Coche del RC con dos Arduinos controlado por ordenador

Coche del RC con dos Arduinos controlado por ordenador

piezas necesarias: este proyecto requiere de dos placas de Arduino que pueden ser adquiridos en http://www.adafruit.com/category/17Este proyecto utiliza dos placas compatibles de Arduino Uno.Se necesitará un L293D u otro chip de controlador de Motor
Cañón neumático accionado por Arduino controlado por Android

Cañón neumático accionado por Arduino controlado por Android

cada verano, Qualcomm celebra una batalla de la competencia de las escuelas, que ofrece a los empleados la oportunidad de representar a su Universidad de origen. Este año, las entradas debían ser artilugios caseros, y que fueron juzgados según lo gua
Mezclador de colores de Arduino controlado por iPhone

Mezclador de colores de Arduino controlado por iPhone

concurso Robot 18 +Este es el video de demostración de producto final como se verá.  Esto fácilmente podría ser usado para controlar un robot arduino o cualquier cosa en todo lo que el arduino corre!Si el vídeo no reproduce aquí es el enlace http://w
Toque de queda del animal doméstico: Un Arduino controlado puerta para mascotas

Toque de queda del animal doméstico: Un Arduino controlado puerta para mascotas

El problema: quiere restringir el tiempo cuando su mascota pueda salir al exterior. Esto podría ser porque el barrio no es seguro para su gato o perro pequeño por la noche (Merodeadores coyotes viene a la mente). Pero desea que su mascota para poder
Cómo hacer fotografía Time-lapse inteligente controlado por Arduino

Cómo hacer fotografía Time-lapse inteligente controlado por Arduino

proyecto: fotografía Time-lapse dinámica sensible a la luz y ajustablePor Holden Leslie-BoleCosto aproximado: $70 sin la cámaraHe estado haciendo alguna fotografía Time-lapse con mi GoPro HERO3 un rato ahora, y he conseguido algunas imágenes grandes.
Pequeño Smartphone controlado por Arduino tanque

Pequeño Smartphone controlado por Arduino tanque

en este Instructable te voy a mostrar cómo hacer un tanque de arduino controlado muy pequeño smartphone.He intentado hacer la TinyTank tan pequeños como sea posible, también quería controlarlo con un smartphone.Por lo menos que quería hacer fácil de
Controlado por Arduino Bluetooth-bot

Controlado por Arduino Bluetooth-bot

este instructable le mostrará cómo convertir un viejo coche de R/C del juguete de la tienda ($1,50) en un robot controlado por bluetooth. Para hacer la conversión, usted necesitará un Arduino (cualquier tipo), un L298N 2 amp motor-controlador doble (
Arduino Robot V2 (rápido) también controlado por voz

Arduino Robot V2 (rápido) también controlado por voz

Esta es mi segunda versión de mi robot arduino después "Construir tu primer robot". Mi segunda versión es un poco complicada en comparación con mi primer uno pero ofrece mejor. En este instructable voy para mostrarle cómo construir un robot rápi
Mente-controlado por semáforo utilizando Arduino y MindFlex

Mente-controlado por semáforo utilizando Arduino y MindFlex

Hola a todos, este es mi primer instructable. Hoy voy a mostrar cómo hacer un simple semáforo controlado por sus ondas cerebrales mediante el juguete MindFlex del EEG. Este es un proyecto muy simple y básico, pero los usos del MindFlex Hack son mucho