Autor Tema: 38 KHz con pic 16f8xx y el PNA4602  (Leído 5636 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado gio

  • PIC10
  • *
  • Mensajes: 27
38 KHz con pic 16f8xx y el PNA4602
« en: 09 de Octubre de 2008, 05:03:08 »
Hola disculpen, pero pues ya e buscado y pues la verdad eske no le entiendo a los codigos posteados en este foro muy bien, compre un sensor pna4602 pero necesito enviar los 38 khz a un led infrarrojo ya probe los algunos codigos y no me funciona, no se si tengan alguno en en ensamblador o en c seria bueno ke me lo pasaran...

de antemano gracias...

Desconectado migsantiago

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8257
    • Sitio de MigSantiago
Re: 38 KHz con pic 16f8xx y el PNA4602
« Respuesta #1 en: 10 de Octubre de 2008, 12:02:24 »
Hola

Talvez te sirva este tutorial...

Medidor ADC con conexión RS232 infrarroja.
http://www.migsantiago.com/index.php?option=com_content&view=article&id=7&Itemid=8

o

http://www.todopic.com.ar/foros/index.php?topic=23114.0

Por favor usa el buscador del foro antes de publicar temas.
« Última modificación: 21 de Marzo de 2009, 15:05:59 por migsantiago »

Desconectado gio

  • PIC10
  • *
  • Mensajes: 27
Re: 38 KHz con pic 16f8xx y el PNA4602
« Respuesta #2 en: 14 de Abril de 2009, 02:42:06 »
Hola alguien tiene el codigo para generar los 38 khz en C, son pocas lineas lo perdi y los ke encuentron tienen mucho codigo ke genera mas problemas solo recuerdo ke es un pwm y prende y apaga un led por un segundo me parese y cuando esta prendido manda los 38 khz gracias de antemano.

Desconectado migsantiago

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8257
    • Sitio de MigSantiago
Re: 38 KHz con pic 16f8xx y el PNA4602
« Respuesta #3 en: 14 de Abril de 2009, 11:43:10 »
Aquí mis cálculos que he usado para generar 38kHz:

f=38kHz
Tpwm=26.3157us
duty time= 13.1578us
Tpwm=(PR2+1)4 Tosc PRtm2
Tpwm=(25+1)(4)(1/4MHz)(1)=26us
fpwm=1/26us=38.461kHz
duty time=CCP Tosc PRtm2
duty time=52(1/4MHz)(1)=13us
Res=[log(4MHz/38.461KHz)/log 2]=6.7bit=6bit
52d=0x34=110100b O.K.

Debes configurar el timer2 con PR2 = 25 y prescaler 1:1 usando setup_timer_2().

El duty time se configura con 0x0034 usando set_pwm1_duty().

Para entender cómo funcionan las instrucciones, lee el archivo .h del pic que vas a programar. Todo lo anterior es hecho usando CCS.


 

anything