fbpx

Expresate

Si además quieres enviarnos un Artículo para el Blog y redes sociales, pulsa el siguiente botón:

Generar frecuencia
 
Avisos
Vaciar todo

Generar frecuencia

4 Respuestas
4 Usuarios
0 Reactions
2,653 Visitas
frankenstein
Respuestas: 11
Topic starter
(@frankenstein)
Active Member
Registrado: hace 19 años

hola

Tengo que generar una frecuencia de 38kHz con un pic y estoy bastante perdido, a ver si alguien me puede hechar una mano. El pic es un 16f84 a 4MHz

Gracias

Responder
3 respuestas
ionitron
Respuestas: 98
(@ionitron)
Trusted Member
Registrado: hace 19 años

Hola,

Pues el pic rulando a 4Mhz ejecuta una instrucción cada 1µS..
Tu quieres generar una señal de 38000Hz asi que:

1/38000= 26,316µS pero la precision de tu micro no va mas alla del µS asi que los decimales los ignoramos..

osea que cada 26µS o instrucciones del micro la señal debe de cambiar de estado.

y quedaria algo asi...

bsf PORTB,0 ;sube la señal
call delay_13uS ;espera medio ciclo
bcf PORTB,0 ;baja la señal
call delay_13uS ;espera el otro medio ciclo para completar.

Esto es lo mas simple y si no requieres hacer nada mas durante la ejecucion de la señal esta bien.. pero si quieres hacer mas cosas a la vez entonces o bien usas un timer hardware del micro para que genera interrupcion y cambies el estado de la señal en cada interrupcion.. o bien usas esos 13uS de retardo en los cuales no haces nada para hacer algo.

Suerte!

Responder
nestor_robotia
Respuestas: 21
(@nestor_robotia)
Eminent Member
Registrado: hace 19 años

Hola Frankenstein, fiajte en http://www4.cs.umanitoba.ca/~jacky/RoboCup-ELeague/ los chicos de Canada usaron un pic12C508A pero tenes el fuente que deberia funcionar tal cual, en este caso genera una señal de 38Khz en funcion de los datos que le envias por el serial de la PC. Pero la idea es muy fasil de aplicar a lo que necesites, si tenes un uno en la patita de entrada lo modula en 38Khz, dentro tenes los ciclos de retardo para generar esa frecuencia.
Yo lo estoy usando como base para un sistema de transmición por ir para controlar varios robots de futbol que construi y en las primeras pruebas funciona todo ok.
este el pdf con circuito y el fuente en .asm para pic espero te sirva http://www4.cs.umanitoba.ca/~jacky/RoboCup-ELeague/Documentation/IR-transmitter-board.pdf

Saludos
Néstor
www.RobotIA.com.ar

Responder
ucfort
Respuestas: 760
(@ucfort)
Ardero
Registrado: hace 19 años

Tambien puedes usar el programa de la seccion descargas: calTMRO.
Si le pones preescaler 1 y le das el tiempo que necesitas, en este caso segun las cuentas de ionitron 0.013 te sacara el programa para hacer esa temporizacion. Ese programa funciona con interrupciones con lo cual entre tanto podras hacer cosas, no muchas pero algo si.

Responder
Compartir: