Autor Tema: PROGRAMITA PARA PIC 16F884 EN PBP  (Leído 13903 veces)

0 Usuarios y 2 Visitantes están viendo este tema.

Desconectado batman123

  • Colaborador
  • PIC10
  • *****
  • Mensajes: 46
RE: PROGRAMITA PARA PIC 16F884 EN PBP
« Respuesta #15 en: 12 de Octubre de 2005, 19:22:00 »
Escrito originalmente por LordLafebre
Hola:

batman123 intentaste con el codigo del link que te puse....?

Con respecto al 16F628 tienes que configurar lo fusibles para que tengas acceso a todos los pines, y si mal no recuerdo uno es solo de entrada y otro es colector abierto....  ya lo hiciste...? sino lo tienes te puedo pasar el codigo para los FUSES...!


MIRA ME INTERESA EL CODIGO DE LOS FUSIBLES..
NO LO HE INTENTADO TODAVIA PERO YA ESTOY MODIFICANDO EL CODIGO
EN EL SIMULADOR ME FUNCIONA A LA PERFECCION PERO FALTA COMPROBARLO PORQUE NO TENGO A LA MANO EL PIC DEPRONTO LA OTRA SEMANA  FlashMORFEUS FlashME LO ESTA AYUDANDO A CONSEGUIR...

CUALQUIER COSA ME AVISAS

MI CORREO ES edgar_santiagos@hotmail.com enviame los archivos alli

Flashcuando tenga terminado el codigo lo posteo de nuevo Fumador
No hay cosas imposibles  si no hombres incapaces

Desconectado morfeus

  • PIC12
  • **
  • Mensajes: 78
RE: PROGRAMITA PARA PIC 16F884 EN PBP
« Respuesta #16 en: 12 de Octubre de 2005, 21:37:00 »
Hola,

A ver, yo he trabajado con el pic16f628 y lo de los fusibles no lo he necesitado solo he configurado Power-Uptimer, MCLR Pinf unction este es para habilitar la interrupcion de dicho pin y por ultimo el Brown-out reset.

Para configurarlo como salidas o entradas se hace igual que en 16f84 (solo hay que deshabilitar las entradas A/D del 16f628).

Si hay algo que desconozco por favor me avisan ya que estos detalles es bueno tenerlos en cuenta.

Saludos

morfeusRebotadoRebotado

Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
RE: PROGRAMITA PARA PIC 16F884 EN PBP
« Respuesta #17 en: 12 de Octubre de 2005, 22:59:00 »
Hola:

batman123 aqui te pongo la configuracion para los fusibles al lado de cada instruccion te detalla que hace cada una:

@ DEVICE pic16f628, INTRC_OSC_NOCLKOUT "Reloj interno solo
@ DEVICE pic16f628, WDT_OFF " Watchdog Timer desconectado
@ DEVICE pic16f628, PWRT_ON " Power-On Timer conectado
@ DEVICE pic16f628, BOD_ON " Brown-Out Detect conectado
@ DEVICE pic16f628, MCLR_OFF " Master Clear Externo desconectado
@ DEVICE pic16f628, LVP_OFF " Low-Voltage Programming desconectado
@ DEVICE pic16f628, CPD_OFF " Data Memory Code Protect desconectado

y como te decia, tendrias que leer el data del micro porque no recuerdo bien cual es el pin que funciona solo como entrada pero creo que es la del MCLR, y la otra que es colector abierto, no recuerdo bien, pero puedes probarlo, yo lo he utilizado para que trabaje con el oscilador interno y sin reset y va bien.... SUERTE...!!! Sonrisa Gigante

Desconectado batman123

  • Colaborador
  • PIC10
  • *****
  • Mensajes: 46
RE: PROGRAMITA PARA PIC 16F884 EN PBP
« Respuesta #18 en: 14 de Octubre de 2005, 10:08:00 »
[cita title=Escrito originalmente por LordLafebre]Hola:

batman123 aqui te pongo la configuracion para los fusibles al lado de cada instruccion te detalla que hace cada una:

MUCHAS GRACIAS POR LA CONFIGURACION
EN EL DIA DE HOY ESTARE MEJORANDO EL CODIGO....
YA CASI ESTA LISTO SOLO FALTA PROBAR DIRECTAMENTE EN EL PIC YA QUE SIMULADO  ME CORRE A LA PERFECCION...

Flash SUERTE......RebotadoRebotado
No hay cosas imposibles  si no hombres incapaces

Desconectado batman123

  • Colaborador
  • PIC10
  • *****
  • Mensajes: 46
RE: PROGRAMITA PARA PIC 16F884 EN PBP
« Respuesta #19 en: 14 de Octubre de 2005, 19:34:00 »


listo ya he mirado pero el problema es que cuando yo llamo a la rutina del teclado
nesecito que el programa regrese a la pila donde salto y con el codigo de tu teclado  solamente envia un dato al LCD Y YA no regresa a ningun lado.

despues sigo con el post me tengo que ir urgente...
No hay cosas imposibles  si no hombres incapaces

Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
RE: PROGRAMITA PARA PIC 16F884 EN PBP
« Respuesta #20 en: 14 de Octubre de 2005, 21:11:00 »
hola:

pues si quieres que regrese alinea sseguida de donde lo enviaste a la subrrutina que lee el teclado hazlo asi por ejemplo:

ProgramaPrincipal:
-
-
-
     GOSUB TECLADO
-
-
goto ProgramaPrincipal

TECLADO:
-
-
     "rutina para el teclado"
-
-
return

Eso es lo que entendido que quieres hace...!luego de que termine con la subrrutina teclado regresa a la linea siguiente de donde le enviaste a saltar que seria despues de GOSUB TECLADO...

Desconectado batman123

  • Colaborador
  • PIC10
  • *****
  • Mensajes: 46
RE: PROGRAMITA PARA PIC 16F884 EN PBP
« Respuesta #21 en: 15 de Octubre de 2005, 11:49:00 »

voy a probar lo que tu dices y a ver que pasa pero toca el proximo martes porque

mañana domingo estoy de cumpleaños y me pienzo desordenar un poco con mi esposa y mi familia.
 
  la otra semana te cuento como me fue con el codigo..

TE CUENTO QUE TAMBIEN POSTEARE EL CODIGO PARA EL PIC16F628 QUE ME HA QUEDO SUPER   BACANO.

RebotadoTIENE LAS SIGUIENTES CARACTERISTICAS:
* PARA ENTRAR EN EL PROGRAMA PRESIONAR *
* CLAVE PERSONAL DE 5 DIGITOS INCLUYENDO * # A B C D
 PARA UN PROMEDIO DE PROVALIDADES DE 150.000  INVIOLABLE VERDAD:::::::
* SI DIJITAS 3 VESES LA CLAVE MAL SE BLOQUEA  EL SISTEMA
* SOLO SE PUEDE DESBLOQUEAR CON UNA CLAVE ESPECIAL PARA EVITAR INTRUSOS
* UNA SALIDA PARA ACTIVAR EL RELE DE LA CERRADURA ELECTRICA
* UNA SALIDA PARA ACTIVAR EL RELE DE ALARMA CUANDO SE BLOQUE EL SISTEMA
* UNA BUENA PUBLICIDAD DEL AUTOR OSEA YO.. Y ESPERO QUE NO LA CAMBIEN JEJEJEJEJE.
* UN MENU PARA SELECIONAR SI QUIERO ABRIR LA PUERTA O CAMBIAR LA CLAVE ACTUAL
* CONFIRMACION PARA CUANDO INTRODUCES LA CLAVE  NUEVA PARA EVITAR EQUIVOCACIONES Y LUEGO SE NOS OLVIDE LA CLAVE..
BUENO  ESO ES TODO
Flash
No hay cosas imposibles  si no hombres incapaces

Desconectado batman123

  • Colaborador
  • PIC10
  • *****
  • Mensajes: 46
RE: PROGRAMITA PARA PIC 16F884 EN PBP
« Respuesta #22 en: 20 de Octubre de 2005, 12:06:00 »

si alguien le interesa este proyecto aqui esta el esquema


http://miarroba.com/foros/ver.php?foroid=348538&temaid=3740693
--------------------------------------------------------------------------------


claro que sin los pulsadores ni las resistencias full-uf  en PToA1 y PToA2es que ese esquema es para otro proyecto pero la forma de conectar el teclado y el lcd es el mismo...Sonrisa Gigante

espero les sea de gran utilidad y pronto subire el codigo para el pic 16f628..

Rebotadosuerte....................Rebotado
No hay cosas imposibles  si no hombres incapaces

Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
RE: PROGRAMITA PARA PIC 16F884 EN PBP
« Respuesta #23 en: 20 de Octubre de 2005, 12:19:00 »
Felicidades...!!!

Que bien que ya lo acabaste y lo hisiste solo...! Rebotado

Y lo de las resistencias de Pull-up deben ser por el proyecto de morfeus.... verdad...?

Desconectado batman123

  • Colaborador
  • PIC10
  • *****
  • Mensajes: 46
RE: PROGRAMITA PARA PIC 16F884 EN PBP
« Respuesta #24 en: 20 de Octubre de 2005, 14:30:00 »
si lo de las resistencias en el puerto A si son por lo del proyecto de morfeus..

en el 16f628 me quedo una chimba...

mañana o mas tarde lo subo para que lo mires..Flash

No hay cosas imposibles  si no hombres incapaces

Desconectado electronando

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 427
RE: PROGRAMITA PARA PIC 16F884 EN PBP
« Respuesta #25 en: 24 de Octubre de 2005, 22:56:00 »
Sonrisa Gigantejaja que suerte justo me preguntaba cuando me pongo hacer el proyectito de la cerradura con clave y aparecio batman , me ahorrastes cerebro batman y bueno me gusto la forma como tratas tu codigo bueno pude llegar a no sobrepasar los 1k de codigdel 84 con el teclado de 4*4 (key calc del proteus ) y con 5 digitos de clave le queria poner seis pero no me daba la memoria del chip ni la mia pero se podria hacer algo con la rutina data creo pues eso lo grava al inicio de el grabado y de repente u contador para llenar la eeprom del pic bueno la idea ya esta puesta aunque espero comprendas mi codigo y creo que si pues simule el que modifique del tuyo y funciona en proteus y deberia de funcionar si lo implemento ya luego te cuento pero te dejo el codigo para que lo mastiques Sonrisa Gigante




DEFINE LCD_DREG PORTB " Setea el puertos de datos del LCD por el puerto B
DEFINE LCD_DBIT 0 " Setea el bit de comienzo de datos (0 o 4) si el bus es de 4-bit
DEFINE LCD_RSREG PORTA " Setea el port LCD Register Select
DEFINE LCD_RSBIT 1 " Setea el bit LCD Register Select
DEFINE LCD_EREG PORTA " Setea el port LCD Enable
DEFINE LCD_EBIT 0 " Setea el bit LCD Enable
DEFINE LCD_BITS 4 " Setea el tamaño del bus LCD (4 o 8 bits)
DEFINE LCD_LINES 2 " Setea el numero de lineas en el LCD


a var word " definicion de variables
tecla var word
n1 var byte
n2 var byte
n3 var byte
n4 var byte
n5 var byte
eprom1 var byte
i var byte
R VAR BYTE
 n var byte
 j var byte
 M var byte
 FILA_0 VAR BYTE
 FILA_1 VAR BYTE
 FILA_2 VAR BYTE
 FILA_3 VAR BYTE
 
n1 = "1" " asigno valor a las variables
n2 = "5" " el valor es equivalente en asccII
n3 = "9"
n4 = "7"
n5 = "/"

eprom1 = "0"

pause 100 " inicio el programa
read 0, eprom1
If eprom1 = 255 Then gravar_clave
GoTo publicidad

gravar_clave:
WRITe 0, n1
WRITe 1, n2
WRITe 2, n3
WRITe 3, n4
write 4, n5
LCDOUT $FE,1," CLAVE GRAVADA "
GoSub tiempo_05
GoSub tiempo_05
GoSub tiempo_05
"GOTO publicidad

publicidad: " CICLO INICAL DEL LCD MUESTRA
GoSub tiempo_05 " MENSAJE DE BIENVENIDA
LCDOUT $FE,1," ACCESO à NANDO"
GoSub tiempo_05 " aqui hay que poner una rutina
OPTION_REG = 0
TRISB = %11111110 "Activamos Pull-up
IF portb= $7e then goto clave
LCDOUT $FE,$C0,"   Electronica "
GoSub tiempo_05 " LEE EL TECLADO A VER SI ES "*"
" SI NO ES CONTINUA MOSTRANDO MENSAJE
OPTION_REG = 0
TRISB = %11111110 "Activamos Pull-up
if portb=$7e then goto clave
LCDOUT $FE,1," "
GoTo publicidad



   
teclado:
COLUMNA_0:
R = 0
TRISB = %11111110
 portb 0# = 0
 GoTo PREGUNTA

COLUMNA_1:
R = R + 1

TRISB = %11111101
 portb 0.1 = 0
 GoTo PREGUNTA
COLUMNA_2:
R = R + 1
TRISB = %11111011
 portb 0.2 = 0
 GoTo PREGUNTA
COLUMNA_3:
R = R + 1
TRISB = %11110111
 portb 0.3 = 0
 GoTo PREGUNTA
GoTo teclado

suelta:
if (portb&%11110000)=$f0 then visualiza
GoTo suelta

visualiza:
lookup j, ["741C8520963=/*-+"], tecla
Return



clave:
LCDOUT $FE,1," Digite su Clave"
GoSub tiempo_05
GoSub tiempo_05
GoSub teclado
SWAP tecla, n1
i = 0
GoSub lcd_sal
GoSub tiempo_05
GoSub teclado
SWAP tecla, n2
GoSub lcd_sal
GoSub tiempo_05
GoSub teclado
SWAP tecla, n3
GoSub lcd_sal
GoSub tiempo_05
GoSub teclado
SWAP tecla, n4
GoSub lcd_sal
GoSub tiempo_05
GoSub teclado
SWAP tecla, n5
GoSub lcd_sal
GoSub tiempo_05

read 0, eprom1
If eprom1 = n1 Then miro_dos

incorrecto:
LCDOUT $FE,1,"Clave Incorrecta"
GoSub tiempo_05
GoTo publicidad

miro_dos:
read 1, eprom1
If eprom1 = n2 Then miro_tres
GoTo incorrecto

miro_tres:
read 2, eprom1
If eprom1 = n3 Then miro_cuatro
GoTo incorrecto

miro_cuatro:
read 3, eprom1
If eprom1 = n4 Then miro_cinco
GoTo incorrecto

miro_cinco:
read 4, eprom1
If eprom1 = n5 Then menu



menu:
LCDOUT $FE,1," Selecione "
GoSub tiempo_05
GoSub tiempo_05
LCDOUT $FE,1,"1_Abrir Puerta"
GoSub tiempo_05
LCDOUT $FE,$C0,"2_Cambiar Clave"
GoSub teclado
If tecla = "1" Then GoTo abrir
If tecla = "2" Then GoTo nueva_clave
"if tecla != "1" and tecla!= "2" then LCDOUT $FE,1,"TECLA INCORRECTA "
LCDOUT $FE,1,"TECLA INCORRECTA "
GoSub tiempo_05
GoSub tiempo_05
GoTo menu

abrir:
high porta.3
LCDOUT $FE,1," Bienvenido "
GoSub tiempo_05
GoSub tiempo_05
GoSub tiempo_05
GoSub tiempo_05
GoSub tiempo_05
GoSub tiempo_05
low porta.3
GoTo publicidad

nueva_clave
LCDOUT $FE,1," Digite su Nueva"
LCDOUT $FE,$C0,"Clave:"
GoSub tiempo_05
i = 2
GoSub teclado
SWAP tecla, n1
GoSub lcd_sal
GoSub tiempo_05
GoSub teclado
SWAP tecla, n2
GoSub lcd_sal
GoSub tiempo_05
GoSub teclado
SWAP tecla, n3
GoSub lcd_sal
GoSub tiempo_05
GoSub teclado
SWAP tecla, n4
GoSub lcd_sal
GoSub tiempo_05
GoSub teclado
SWAP tecla, n5
GoSub lcd_sal
GoSub tiempo_05


GoTo gravar_clave

tiempo_05:
pause 500
Return
lcd_sal:
 LCDOUT $FE,$C5+i,"X"
 i = i + 1
 Return
 
 
PREGUNTA:
 M = 4 * R
 FILA_0=($E0 +(portb&%00001111))
 FILA_1=($D0 +(portb&%00001111))
 FILA_2=($B0 +(portb&%00001111))
 FILA_3=($70 +(portb&%00001111))
If portb = FILA_0 Then j = M
M = M + 1
If portb = FILA_1 Then j = M
M = M + 1
If portb = FILA_2 Then j = M
M = M + 1
If portb = FILA_3 Then j = M
if (portb&%11110000)<>$f0 then suelta
If R = 0 Then COLUMNA_1
If R = 1 Then COLUMNA_2
If R = 2 Then COLUMNA_3
GoTo teclado

Desconectado batman123

  • Colaborador
  • PIC10
  • *****
  • Mensajes: 46
RE: PROGRAMITA PARA PIC 16F884 EN PBP
« Respuesta #26 en: 25 de Octubre de 2005, 10:55:00 »
MUY BUEN APORTE ELECTRONANDO

YA LO PROBE Y FUNCIONA A LAS MIL MARAVILLAS ADEMAS

TRATARE DE ENTENDER EL CODIGO  PORQUE HAY RUTINAS QUE NO ENTIENDO..PERO TE QUEDO BACANO..

FlashSUERTE.....Flash
No hay cosas imposibles  si no hombres incapaces

Desconectado electronando

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 427
RE: PROGRAMITA PARA PIC 16F884 EN PBP
« Respuesta #27 en: 25 de Octubre de 2005, 16:02:00 »
si bueno fue el sexto intento luego de varios fallidos y te pase solo el codigo pues se que lo entenderas solo aplique algunas nociones de matrices , y mira te recomiendo que mejor te compres un 16f628 y luego me cuentas pues no etratado con ese pic y tiene varias cosillas el oscilador interno la calibracion cosillas asi bueno suerte con el proyecto Rebotado

Desconectado batman123

  • Colaborador
  • PIC10
  • *****
  • Mensajes: 46
RE: PROGRAMITA PARA PIC 16F884 EN PBP
« Respuesta #28 en: 30 de Octubre de 2005, 13:41:00 »
EN ESTOS DIAS SUBO EL CODIGO PARA UN 16F628 ..

PERO MUY BUEN APORTE  ELECTRONANDO

RollEyesSURTE..Flash
No hay cosas imposibles  si no hombres incapaces

Desconectado batman123

  • Colaborador
  • PIC10
  • *****
  • Mensajes: 46
RE: PROGRAMITA PARA PIC 16F884 EN PBP
« Respuesta #29 en: 08 de Noviembre de 2005, 09:31:00 »
Bueno lo prometido es deuda aqui les dejo el link para que descarguen el programa para el pic 16f628.

http://miarroba.com/foros/ver.php?foroid=348538&temaid=3821626

Que incluye varias mejoras..

1. contraseña de 5 numeros o letras.
2. activa rele para la cerradura por el puerto RA.3
3. Activa rele para alarma por el puerto RA.2
4. confirmacion de repetir clave al cambiarla
5. bloqueo del sistema al introducir 3 veses mal la contraseña
6. desbloqueo del sistema presionando a la vez la tecla (7 y A )del teclado matrixial.

Rebotadocualquier cosa no duden en preguntar..Rebotado

Suerte.....Flash
No hay cosas imposibles  si no hombres incapaces


 

anything