Autor Tema: PROBLEMA CON PROGRAMA Y CIRCUITO SENCILLO  (Leído 2563 veces)

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

Desconectado Juanolo

  • PIC10
  • *
  • Mensajes: 10
PROBLEMA CON PROGRAMA Y CIRCUITO SENCILLO
« en: 10 de Septiembre de 2009, 18:22:28 »
Hola amiguetes:

Pos la verdad no se lo que pasa pero esto no me rula...

os explico:

Estoy haciendo 2 modulos de RF con laipac 433MHZ y pic 16F628A programado en mikroBASIC Pro

El transmisor realiza una funcion tan sencilla como:

Cuando un bumper detecta = 1 este lo envia al pic por RA0, desde ahi el pic tiene que enviar un 1 mediante usart y RB2 hacia el modulo de laipac.

Tiene un LED en RB7 que desde que se le da alimentacion al pic tendría que estar encendido, pero solo se enciende cuando le doy al bumper

Otro led al USART como indicador que solo se enciende cuando le doy al bumper (funciona correctamente y es buena señal de que le envia 1 por RB2

Y un transistor BC548 con R de 1K en la base en RA1 para controlar un Zumbador. Que va de +5V al + del zumbador y del - al colector del transistor y del emisor a masa.

Cristal de 4Mhz con 2 C de 22p a patilla 15 y 16 del pic.

Pero me pasa lo siguiente en el modulo de TX que es el unico que estoy intentando hacer...

El bumper lo tengo de masa al comun y del Normalmente abierto a una resistencia de 10K y de ahi a +5V, el punto que utilizo para RA0 lo cojo entre el NA y la resistencia.

Pues nada tengo problemas con el MCLR porque: solo va a medias cuando pongo el MCLR a una resistencia de 10K y al mismo punto que saco RA0 desde el bumper. Si pongo MCLR con la resistencia de 10K y directo a +5V se me encienden todos los leds y no funciona. Y si no le pongo nada a MCLR no se me enciende y ningun led y no me funciona.

Para que funcione correctamente tendría que:

Siempre que tenga alimentación que se encienda el led verde de RB7

Cuando detecte el bumper:

Sonar intermitentemente el zumbador
Enviar un 1 por RB2 usart y encender su led

Aqui les pongo el código:

Código: [Seleccionar]
program codigotx
'PROGRAMA PARA TX

dim dato as byte   'DECLARAMOS EL DATO DE ENVIO DEL USART

main:
CMCON=7            'QUITAMOS LOS COMPARADORES

TRISA= %00000001   'PONEMOS RA0 COMO ENTRADA Y RA1,RA2 COMO SALIDA
TRISB= %00000010   'PONEMOS PARA TX RB2 COMO SALIDA Y RX RB1 COMO ENTRADA

PORTB.7=1          'ENCENDEMOS EL LED QUE INDICA EL FUNCIONAMIENTO DEL PIC
dato=0             'INICIALIZAMOS DATO A 0

UART1_Init(2400)   'INICIALIZAMOS EL PUERTO UART PARA TRANSMITIR

WHILE PORTA.0=1
PORTA.1=1
DELAY_MS(200)
PORTA.1=0
DELAY_MS(100)
PORTA.1=1
DELAY_MS(200)
PORTA.1=0
DELAY_MS(3000)
dato=1
UART1_Write(dato)
WEND

UART1_Write(dato)

end.

Muchas gracias y espero que alguien me pueda ayudar

Desconectado Juanolo

  • PIC10
  • *
  • Mensajes: 10
Re: PROBLEMA CON PROGRAMA Y CIRCUITO SENCILLO
« Respuesta #1 en: 10 de Septiembre de 2009, 18:26:48 »
por cierto los leds los tengo de la salida del pic al anodo y del kátodo a una resistencia de 330Ohms y a masa

Desconectado Juanolo

  • PIC10
  • *
  • Mensajes: 10
Re: PROBLEMA CON PROGRAMA Y CIRCUITO SENCILLO
« Respuesta #2 en: 11 de Septiembre de 2009, 05:44:04 »


Este es el circuito

Desconectado elmasvital

  • Administrador
  • PIC24H
  • *******
  • Mensajes: 1713
Re: PROBLEMA CON PROGRAMA Y CIRCUITO SENCILLO
« Respuesta #3 en: 11 de Septiembre de 2009, 08:45:17 »
Las leyes de Kirchoff te están jugando una mala pasada. tienes algunos fallitos.

El mas gordo es que MCLR no estará nunca a 5V pq cuando el pulsador cierra el circuito lo estás conectando a masa. Como lo tienes lo tienes al aire y por tanto puede comportarse de cualquier manera. Puede incluso quemar el micro.

Para alimentar MCLR pon una resistencia entre VCC y gnd y desde la parte de la resistencia que está conectada con VCC alimentas MCLR (puedes limitar la corriente que pasa a MCLR con otra resistencia pero no es necesario)

Para RA0 Conecta tambien una resistencia entre vcc y gnd y desde la parte de la resistencia que está conectadacon vcc almientas RA0 y cortale la linea de vcc o gnd con el pulsador.

Pero recuerda si conectas a la resistencia con la parte que va a GND el valor siempre va a ser 0 y vas a tener una entrada al aire.

Desconectado Juanolo

  • PIC10
  • *
  • Mensajes: 10
Re: PROBLEMA CON PROGRAMA Y CIRCUITO SENCILLO
« Respuesta #4 en: 11 de Septiembre de 2009, 09:41:30 »
ok!

respecto al programa esta bien no?

saludos

Desconectado elmasvital

  • Administrador
  • PIC24H
  • *******
  • Mensajes: 1713
Re: PROBLEMA CON PROGRAMA Y CIRCUITO SENCILLO
« Respuesta #5 en: 11 de Septiembre de 2009, 10:10:37 »
A ver me corrijo a mi mismo que estaba un poco espeso

MCLR está bien conectado pero el problema es que cuando cierras el circuito del pulsador mandas MCLR a masa y por tanto reseteas el micro.

Lo que tienes que hacer ahora es conectar como te decia antes el pulsador.

El programa no te lo puedo revisar porque no uso compiladores de basic aunque en principio parece bien
« Última modificación: 11 de Septiembre de 2009, 10:18:16 por elmasvital »


 

anything