SoloCodigo
Programación Específica => Microcontroladores => Programación en C => Mensaje iniciado por: infrarrojo en Jueves 8 de Febrero de 2007, 11:41
-
Hola a todos. Estoy diseñando un programa en C que emule el funcionamiento de un mando a distancia por infrarrojos. He comprobado que la señal original del mando está modulada, es decir, cuando está a nivel alto no mantiene el nivel constantemente sino que "sube y baja" rápidamente. ¿Alguien sabe como implementar ésto en código C? Si alguien tiene alguna idea se lo agradecería.
-
1.-¿para cual micro?
2.-¿que frecuencia base?
3.-¿sobre cual set de comandos?
-
Es para el Motorola M68908QT4, lo estoy programando con el Metrowerks Codewarrior en C más procesador experto. El código que he utilizado es éste, en el cual mantengo el nivel alto constantemente, lo que habría que cambiarlo y modularlo, que es para lo que pido vuestra ayuda.
-
Si lo que te interesa es emular un control remoto IR, en este libro, está explicado:
http://www.parallax.com/detail.asp?product_id=70016 (http://www.parallax.com/detail.asp?product_id=70016)
Fijate que en esa página, más abajo está el PDF para bajar.
-
Gracias le echaré un vistazo, aunque yo ya lo tengo casi hecho, lo único que me falta es modular los pulsos y creo que ya saldría con mi código. Gracias de todos modos.
-
Hola de nuevo. Ya casi lo tengo, pero me falla una cosa.
El código que tiene que enviar son doce pulsos, a alto o bajo según sea un uno o un cero. Tengo diseñado un micro pulso que se repetirá 21 veces si es un cero y 42 si es un uno. Lo tengo así:
for (i=0; i<13; i++) {
for (j=0; j<21+comando*21; j++) {
Pero me da un error en la segunda línea,creo que no lo puedo hacer directamente. Mi idea era que si comando era un cero se repetía 21 veces y si era un uno 42. ¿Alguien sabe si esa instrucción está bien o es fallo de Codewarrior? Gracias.