elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


+  Foro de elhacker.net
|-+  Informática
| |-+  Electrónica
| | |-+  ayuda a programar un pic 16f84a
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: ayuda a programar un pic 16f84a  (Leído 4,060 veces)
dario9669

Desconectado Desconectado

Mensajes: 2


Ver Perfil
ayuda a programar un pic 16f84a
« en: 9 Septiembre 2013, 00:45 am »

hola quisiera hacer un programita para un pic 16f84a , el proyecto se basa de esta manera ,
son 3 pulsadores cada uno maneja 3 leds independientemente un pulsador de oto , po ej ;
pulsador 1 :
1° pulso prende un led rojo y lo deja prendido
2° pulso prende otro led rojo y queda prendido
3° pulso prende otro led rojo y lo deja prendido
4° pulso apaga todos los led rojos

pulsador 2 :
hace lo mismo que el pulsador 1 pero con led verdes , indepemdientemente del pulsador 1

pulsador 3:
hace lo mismo que pulsador 1 y 2 tambien independientemente de los otros dos pulsadores .
de esta forma se pueden prender los led con su respectivo pulsador de forma independiente sin importar que haga o en que estado este cada conjunto de led
basicamente con la distribucion de patas del pic 16f84 seria esta

pulsador 1 =porta,0 --> led =b0,b1,b2

pulsador 2 =porta,1 --> led =b3,b4,b5

pulsador 3 =porta,2 --> led =b6,b7,a3

si alguien me puede dar una mano con esto se los voy a agradecer ya que no manejo el tema de sentencias de programacion , si puedo hacer el tema de grabar el pic con el archivo hex , MUCISIMAS GRACIAS A TODOS UN ABRAZO


En línea

xiruko


Desconectado Desconectado

Mensajes: 438


Ver Perfil
Re: ayuda a programar un pic 16f84a
« Respuesta #1 en: 10 Septiembre 2013, 21:10 pm »

No creo que nadie vaya a hacerte el programa, o bueno al menos hablo por mí y ya te digo que no te lo haré.

Y bueno para darte un poco de ayuda, tienes que saber que los pulsadores padecen de rebotes con lo que para detectar cuando se ha pulsado no basta con leer el pin al que este conectado y ver su estado, ya que así verás que los leds se te encienden y apagan más de una vez cuando hagas solo una pulsación.

En su lugar, deberías tener dos variables, una para detectar el estado anterior del pulsador y una para detectar el estado actual. Si la anterior estaba en 0 y el actual está en 1 significa que ha habido un flanco de subida y tendrías que encender el led. Si quieres hacerlo por flanco de bajada pues sería al revés. Así para evitar los rebotes, solo te bastará con tener un flag que lo pongas a 0 cuando detectes un flanco de subida (o bajada, como quieras) y que lo vuelvas a poner a 1 al cabo de, por ejemplo, 400 o 500 msec. Y claro, para detectar si se ha pulsado habrían dos condiciones: 1. que se detecte un flanco de subida, y 2. que el flag esté a 1.

De esta manera conseguirás detectar la pulsación solo 1 vez sin rebotes y sin que pasen cosas que no quieres que pasen.

Un saludo!


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
pic 16F84A
Electrónica
niclo 1 2,966 Último mensaje 30 Diciembre 2004, 06:38 am
por jon6195
Pasar de 16F84A a 16F627
Electrónica
Meta 0 3,593 Último mensaje 10 Abril 2009, 12:14 pm
por Meta
En C he encontrado este código. [code]#include<16f84A.h> #fuses XT,NOLVP,NOWDT
Electrónica
Meta 2 6,046 Último mensaje 20 Enero 2011, 13:50 pm
por Meta
[Peticion] Algun .Hex para probar mi 16f84a
Electrónica
andres_5 0 4,736 Último mensaje 30 Enero 2011, 21:45 pm
por andres_5
Uso de USART con pic 16f84a
Electrónica
andres_5 0 3,583 Último mensaje 29 Febrero 2012, 01:53 am
por andres_5
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines