Autor Tema: frecuenciametro con 555  (Leído 2651 veces)

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

Desconectado argonauta

  • PIC10
  • *
  • Mensajes: 1
frecuenciametro con 555
« en: 17 de Marzo de 2008, 23:02:29 »
   

 Hola gente TODO PIC ... muy buena la web  8) 8) 8)

bueno  le s cuento q me dejharon un poryecto fianal  es de un copntdor de pulsos con PIC y 555
Se  debe ,moistar pulsos es decir la frecuencia  en una  LCD 16X2  y ademas cuando la frecuencia sea de 120 hz o mas prendera un led rojo y cuando la frecuencia sea de 100 hz o menos un led verde ; ademas  como  generador de pulsos se ve  utilizar  un 555 configurado en astable con un pot  para variar la frecuencia


No es q  kiero q me hagan todo y yo bien gracias .. lo q pasa q ya he hecho mi programcion en PBP utilizandop el microcode ... me guie de  algunos post del foro sobre frecuencimetros   supuestamente  deberia funcionar  pero lo simulo en proteus  y solo se keda en un valor "65526" y naa mas.. averiguando por ahlli es nuemero es la conversion de word a decimal .. lo q creo es q entonces no esta contandoi naa
 pongo mi porgramacion en  PBP
Código: [Seleccionar]
@ DEVICE pic16f628A, INTRC_OSC_NOCLKOUT 'Reloj interno solo
    @ DEVICE pic16f628A, WDT_OFF ' Watchdog Timer desconectado
    @ DEVICE pic16f628A, PWRT_ON ' Power-On Timer conectado
    @ DEVICE pic16f628A, BOD_OFF ' Brown-Out Detect conectado   
    @ DEVICE pic16f628A, MCLR_OFF ' Master Clear Externo desconectado
    @ DEVICE pic16f628A, LVP_OFF ' Low-Voltage Programming desconectado
    @ DEVICE pic16f628A, CPD_OFF ' Data Memory Code Protect desconectado

TRISA.0=1
Define LCD_DREG PORTB       
Define LCD_DBIT 0           
Define LCD_RSREG PORTB       
Define LCD_RSBIT 5           
Define LCD_EREG PORTB       
Define LCD_EBIT 4


 
 
 x1 var word
 x2 var word
 FR var word
 PR var word

LR var PortA.3
LV var PortA.4


lcdout $FE,1,"Proyecto Final"
pause 100
lcdout $FE,1,"Cont. de Pulsos"

inicio:
 pulsin PortA.0,1,X1
 pulsin PortA.0,0,X2
  PR=x1+x2
  Fr=50000/PR * 10
   if fr>=120 then
   pause 50
   goto Maximo
   else
    if fr<=100 then
    pause 50
    Goto Minimo
    endif
   endif
 lcdout $FE,1,"Frecuencia en Hz:"
 lcdout $FE,$C0,dec FR
 
goto inicio
 
Maximo:
    lcdout $FE,1,"Frecuencia en Hz:"
    lcdout $FE,$C0,dec FR
    high LR
   
    GOTO INICIO

Minimo:
   
   lcdout $FE,$C0,dec fr
   high LV
   GOTO INICIO
end


 

  bueno espero q me ayuden el proyecto se presenta el martes  y la verdad  no se k hacer

Saludos  gente  espero q me puedan ayudar .. es  de suma urgencia
« Última modificación: 18 de Marzo de 2008, 01:09:03 por argonauta »