Haz una pregunta
  Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

03/04/2009 #21


buen aporte compatriota
30/06/2009 #22


Un buen aportaso gracias por compartirlo se te agrdece
03/08/2009 #23


me ayudarian bastante si tienen un programa de una cerradura electronica codificada en el programa Mlab
28/01/2010 #24


Respuesta: Re: Llave electrónica --> PIC 16f877
hola amigo buen aporte el problema es que cuando compilo el programa me sale falla
desde colombia un abrazo y espero su valiosa colaboracion
17/02/2010 #25


Respuesta: Llave electrónica --> PIC 16f877
hola cm estan a todos.. me preguntaba q programa en lenguaje ccs utilizastes yo tengo es mplab
18/02/2010 #26


Respuesta: Llave electrónica --> PIC 16f877
saludos amigo tengo un problema resulta que copie su programa y funciono de maravilla la verdad te la comiste gracias inclusive lo monte y trabaja bien le cambio la clave y lo hace todo bien pero cuando se queda el pic sin tension hay q meterle la clave (123) de nuevo y volver a configurarlo como hago para q cuando cambie la clave y se quede sin tension el circuito no halla necesidad de volver a cambiar la clave sino q conserve la q yo le meta gracias seria bueno q resolvamos ese asuntico no le parece
20/02/2010 #27


Respuesta: Llave electrónica --> PIC 16f877
hola me podrían decir como crear un nuevo tema ya que estoy asiendo un seguidor de luz con un pic y tengo algunas dudas u quisiera saber si me pueden ayudar..
04/03/2010 #28


Respuesta: Llave electrónica --> PIC 16f877
hola wilfretronic tu tema se ve muy interesante pero no se mucho sobre PIC´S asi que si pudieras explicarme tu programa me serviria de mucho gracias...
08/05/2010 #29


Respuesta: Llave electrónica --> PIC 16f877
Bueno espero que mi aporte ayude:
Compilador: MicroCodeStudio
Software de diseño: Proteus
Web: http://ib-electronic.com/index-6-lla...ca+Eeprom.html

Cerradura electrónica Programando en Basic
Lo podemos usar para contar las cajas que ingresan por una faja transportadora o algún otro trabajo donde necesitemos llevar un registro, usaremos el PIC16f628A.

Esquema:

Código de programación:
Código PHP:
'****************************************************************
'
Name UNTITLED.BAS 
'* Author : Luis Pérez Medina 
'
Notice Copyright (c2010 IB-electronic
'* : All Rights Reserved 
'
Date 03/01/2010 
'* Version : 1.0 
'
Notes 
'* : *
'
****************************************************************
device pic16f628axt_oscwdt_offlvp_offmclr_offprotect_oncpd_on

define osc 20
cmcon
=7
TRISA
=0
Numero 
var byte
var byte
PARLAN 
VAR PORTA.0
LED 
VAR PORTA.1
PUERTA 
VAR PORTA.2
PC 
var porta.3
PA 
var portb.7
F1 
VAR PORTB.0
F2 
VAR PORTB.1
F3 
VAR PORTB.2
F4 
VAR PORTB.3
C1 
VAR PORTB.4
C2 
VAR PORTB.5
C3 
VAR PORTB.6
C4 
VAR PORTB.7
Car1 
var byte
Car2 
var byte
Car3 
var byte
Car4 
var byte

INICIO
:
HIGH LED HIGH parlan
PAUSE 500
LOW LED 
LOW parlan
'*********************************************
'
Claves por defecto=2142:
'*********************************************
eeprom 0,[2,1,4,2]
RESET:
read 0,car1
read 1,car2
read 2,car3
read 3,car4
goto TEcla1[INDENT]TEcla1:
gosub teclado:gosub pid
gosub espacio
if numero=car1 then TEcla2
goto false
TEcla2:
gosub teclado : gosub pid
gosub espacio
if numero=car2 then TEcla3
goto false1
Tecla3:
Gosub Teclado : gosub pid
gosub espacio
if numero=car3 then Tecla4
goto false2
TEcla4:
gosub teclado : gosub pid
gosub espacio
if numero=car4 then open
goto false3
[/INDENT]PID:
high parlan : high led
pause 300
low parlan :low led
return
Espacio:
pause 300
return[INDENT]False:
goto tecla2
False1:
goto tecla3
False2:
goto tecla4
False3:
for r= 1 to 20
high led : high parlan : high pc
pause 100
low led : low parlan : low pc
pause 100
next
high pc
pause 2000
low pc
goto tecla1
OPEN:
for r=0 to 2
high led:high parlan
pause 200
low led :low parlan
pause 200
next
high puerta :high pa : pause 2000
low puerta : low pa
high f1 : high f2 : high f3 : low f4
if c1=0 then graba1
goto tecla1

[/INDENT]Graba1:
high led : high parlan : pause 1500 : low led : low parlan
gosub teclado:gosub PID
write 0,numero
pause 300
Graba2:
gosub teclado:gosub PID
write 1,numero
pause 300
Graba3:
gosub teclado:gosub pid
Write 2,numero
pause 300
Graba4:
gosub teclado:gosub pid
write 3,numero
pause 300
for r = 0 to 5
high parlan : high led
pause 200
low parlan : low led
pause 200
next
goto RESET[INDENT]Teclado:
low f1
if c1=0 then numero=7:return
if c2=0 then numero=8:return
if c3=0 then numero=9:return
high f1
low f2
if c1=0 then numero=4:return
if c2=0 then numero=5:return
if c3=0 then numero=6:return
high f2
low f3
if c1=0 then numero=1:return
if c2=0 then numero=2:return
if c3=0 then numero=3:return
high f3
low f4
if c1=0 then numero=10:return
if c2=0 then numero=0:return
if c3=0 then numero=11:return
high f4
[/INDENT]pause 10
GOTO teclado
END 


Para poder ver la simulación: http://ib-electronic.com/index-6-lla...ca+Eeprom.html

Descargar esquema, pcb y programación: http://ib-electronic.com/Descargas/L...eletronica.rar
10/05/2010 #30


Respuesta: Re: Llave electrónica --> PIC 16f877
alex26 dijo: Ver Mensaje
ingreso la clave de adm 123 y nada
hola que tal, me pasa lo mismo que alex26 cuando ingreso la clave 123 no hace nada, que debo hacer ?????
09/08/2010 #31


Respuesta: Llave electrónica --> PIC 16f877
oye zaiz publica tu proyecto
31/08/2010 #32


Respuesta: Llave electrónica --> PIC 16f877
hoolaa.. buenas soy bastante nueva en el tema de microcontroladores.. estoy viendo por primera vez esta materia y el prof. nos supo un laboratorio que apenas explico.. nos mando a hacer un circuito con el pic16f877 donde podamos mostras en una pantalla lcd 16x4 3 palabras y 3 figuras diferentes cada vez que se activemos unos pulsadores... hemos estado invetsigando terriblemente por la poca informacion que nos do el prof. y estamos bastante perdidos si alguien nos puede ayudaaar urgenteee el laboratorii es el proximo viernes 10... estamos trabajando con mplab y proteus para la simulasion.. y un cristal de 4 MHz por que asi nos asignarion
05/09/2010 #33


Respuesta: Llave electrónica --> PIC 16f877
Hola como tas soy nuevo y tu publicación me parece excelente, pero quisiera saber si me puedes ayudar lo que pasa es que soy nueva en el uso del mikroc y todas sus bondades pero yo quiero hacer un programa que que tenga que ingresar una clave para accder a un menú, que me permitirá manejar un motor DC a través de la técnica PWM, pero todo este es con el PIC16f887...
me podrías ayudar por fa!!! es algo urgente gracias!!!
26/09/2010 #34


Respuesta: Re: Llave electrónica --> PIC 16f877
alex26 dijo: Ver Mensaje
ingreso la clave de adm 123 y nada
hola amigo me encnto tu proyecto y kiero realizarlo solo k a la hora de compilar en el ccs me sale un eerror con la libtreria para hacer que se ingrese la clave... y si me pudieses ayudar c te lo agradeceria o si mke lo mandaras a a mi correo te lo agradeceria... saludos mi correop




Como no cumplo las políticas del Foro me editaron el mensaje @ políticas del Foro.Com
08/10/2010 #35


Respuesta: Llave electrónica --> PIC 16f877
jedilink hola, bueno aca tengo lo que pides pero, el programa esta en basic, espero que ayude

Simulacion:




Esquema:



Código PHP:
'****************************************************************
'
*  Name    UNTITLED.BAS                                      *
'*  Author  : Luis Perez                                 *
'
*  Notice  Copyright (c2010 IB-electronic                  *
'*          : All Rights Reserved                               *
'
*  Date    06/10/2010                                        *
'*  Version : 1.0                                               *
'
*  Notes   :                                                   *
'*          :                                                   *
                                      '
****************************************************************
                                      @ 
device pic16f877awdt_offlvp_off,xt_osc,xt_osc
                                      define osc 4
                                      DEFINE LCD_DREG PORTD
                                      DEFINE LCD_DBIT   4 
                                      DEFINE LCD_RSREG   PORTD 
                                      DEFINE LCD_RSBIT  0 
                                      DEFINE LCD_RWREG  PORTD 
                                      DEFINE LCD_RWBIT  1
                                      DEFINE LCD_EREG  PORTD 
                                      DEFINE LCD_EBIT   2
                                       cmcon
=7
                                        TRISA
=0:porta=0
                                        trisb
=%11111000:portb=0
                                        trisc
=%11111100
                                        trisd
=0:portb=0
                                        trise
=0:porte=0
                                       Numero 
var byte
                                        nu1 
var byte
                                        nu2 
var byte
                                        nu3 
var byte
                                        nu4 
var byte
                                        R 
var byte
                                        x 
var byte
                                        x
=0
                                       PARLAN 
VAR PORTC.0
                                        LED 
VAR PORTC.1
                                        PUERTA 
VAR PORTC.2
                                        PC 
var portc.3
                                        PA 
var portc.7
                                       F1 
VAR PORTB.0
                                        F2 
VAR PORTB.1
                                        F3 
VAR PORTB.2
                                        F4 
VAR PORTB.3
                                       C1 
VAR PORTB.4
                                        C2 
VAR PORTB.5
                                        C3 
VAR PORTB.6
                                        C4 
VAR PORTB.7
                                       Car1 
var byte
                                        Car2 
var byte
                                        Car3 
var byte
                                        Car4 
var byte
                                        dato 
var byte
                                       Pre

                                        
lcdout $FE,1:LCDout $FE,$80,"Llave electronic"
                                        
pause 500
                                        lcdout $Fe
,$C0,"ib-electronic"
                                       
INICIO:
                                        
HIGH LED SOUND parlan,[100,50]:high parlan
                                        LOW LED 
LOW parlan
                                       
'*********************************************
                                        '
Claves por defecto=1234:
                                        
'*********************************************
                                        eeprom 0,[1,2,3,4]
                                        RESET:
                                        read 0,car1
                                        read 1,car2
                                        read 2,car3
                                        read 3,car4
                                      
                                       goto TEcla1
                                        
                                        TEcla1:
                                        lcdout $fe,1
                                        lcdout $FE,$80,"Clave:"
  
                                        gosub teclado: lcdout $fe,$c0,"X" :gosub pid
                                        gosub espacio
                                        nu1=numero
                                        if numero=car1 then TEcla2
                                        goto false
                                       TEcla2:
                                        gosub teclado : lcdout $fe,$c0,"XX" : gosub pid
                                        gosub espacio
                                        nu2=numero
                                        if numero=car2 then TEcla3
                                        goto false1
                                       Tecla3:
                                        Gosub Teclado : lcdout $fe,$c0,"XXX" : gosub pid
                                        gosub espacio
                                        nu3=numero
                                        if numero=car3 then Tecla4
                                        goto false2
                                       TEcla4:
                                        gosub teclado : lcdout $fe,$c0,"XXXX" : gosub pid
                                        gosub espacio
                                        nu4=numero
                                        if numero=car4 then compara
                                        goto false3
                                       Compara:
                                        if (nu1=car1) and (nu2=car2) and (nu3=car3) and (nu4=car4) then open
                                        goto false3
                                       PID:
                                        SOUND parlan,[100,10] : high led
                                        pause 300
                                        low parlan :low led
                                        return
                                       Espacio:
                                        pause 300
                                        return
                                       False:
                                        goto tecla2
                                       False1:
                                        goto tecla3
                                       False2:
                                        goto tecla4
                                       False3:
                                        lcdout $fe,1
                                        lcdout $FE,$80,"Clave:"
                                        lcdout $FE,$C0,"incorrecta"
  
                                        for r= 1 to 20
                                        high led : SOUND parlan,[100,10] : high pc
                                        pause 50
                                        low led : SOUND parlan,[50,10] : low pc
                                        pause 50
                                        next
                                       high pc
                                        pause 2000
                                        low pc
                                        goto tecla1
                                       OPen:
                                        lcdout $fe,1
                                        lcdout $FE,$80,"Clave:"
                                        lcdout $FE,$C0,"Correcta"
  
                                        for r=0 to 2
                                        high led:SOUND parlan,[100,10];high parlan
                                        pause 100
                                        low led :SOUND parlan,[50,10];low parlan
                                        pause 100
                                        next
  
                                        Menu:
                                        lcdout $fe,1
                                        lcdout $fe,$80,"Bienvenido"
                                        lcdout $fe,$C0,"Luis Perez"
                                        pause 1000
                                        lcdout $fe,1
                                        lcdout $fe,$80,"Menu"
                                        lcdout $fe,$c0,"1-Open 2-Clave"
  
                                        Op:
                                        gosub teclado
                                        if numero=1 then door
                                        if numero=2 then graba1
                                        goto op
  
                                        Door:
                                        lcdout $fe,1
                                        lcdout $fe,$80,"Puerta"
                                        lcdout $fe,$C5,"Abierta"
  
                                        high puerta :high pa
                                        pause 5000
                                        low pa :low puerta
                                        goto tecla1
                                      
                                       Graba1:
                                        lcdout $fe,1 
                                        lcdout $fe,$80,"Cambiar Clave" 
                                        lcdout $fe,$c0,"----" 
  
                                        high led : SOUND parlan,[100,300] : pause 1000 : low led : low parlan
                                        gosub teclado:gosub PID 
  
                                        lcdout $fe,$c0,"X--" 
  
                                        write 0,numero
                                        pause 300
                                       Graba2:
                                        gosub teclado:gosub PID
  
                                        lcdout $fe,$c0,"XX--" 
  
                                        write 1,numero
                                        pause 300
                                       Graba3:
                                        gosub teclado:gosub pid
  
                                        lcdout $fe,$c0,"XXX-" 
  
                                        Write 2,numero
                                        pause 300
                                       Graba4:
                                        gosub teclado:gosub pid
  
                                        lcdout $fe,$c0,"XXXX"
  
                                        write 3,numero
                                        pause 300
  
                                        lcdout $fe,1 
                                        lcdout $fe,$80,"Clave guardada" 
                                        lcdout $fe,$c0,"xxxx" 
                                       for r = 0 to 5
                                        SOUND parlan,[100,10] : high led
                                        pause 100
                                        SOUND parlan,[50,10] : low led
                                        pause 100
                                        next
                                        goto RESET
                                       Teclado:
                                        low f1
                                        if c1=0 then numero=7:return
                                        if c2=0 then numero=8:return
                                        if c3=0 then numero=9:return
                                        high f1
  
                                        low f2
                                        if c1=0 then numero=4:return
                                        if c2=0 then numero=5:return
                                        if c3=0 then numero=6:return
                                        high f2
  
                                        low f3
                                        if c1=0 then numero=1:return
                                        if c2=0 then numero=2:return
                                        if c3=0 then numero=3:return
                                        high f3
  
                                        low f4
                                        if c1=0 then numero=10:return
                                        if c2=0 then numero=0:return
                                        if c3=0 then numero=11:return
                                        high f4
  
                                        pause 10
                                        GOTO teclado
                                     end 

Descarga el esquema y programa en http://ib-electronic.com/index-6-lla...con%20lcd.html
15/11/2010 #36


yo quiero en ensamblador solo me falta la configuracion en eeprom
20/11/2010 #37

Avatar de Yobtox

huaao nose sia algen tuviera en mikrobasic el proyecto de la llave electronica se los agradeceria
07/01/2011 #38

Avatar de wilfretronic

laurita_22g dijo: Ver Mensaje
hola cm estan a todos.. me preguntaba q programa en lenguaje ccs utilizastes yo tengo es mplab
El PIC C compiler mas conocido como ccs.

ecaman dijo: Ver Mensaje
saludos amigo tengo un problema resulta que copie su programa y funciono de maravilla la verdad te la comiste gracias inclusive lo monte y trabaja bien le cambio la clave y lo hace todo bien pero cuando se queda el pic sin tension hay q meterle la clave (123) de nuevo y volver a configurarlo como hago para q cuando cambie la clave y se quede sin tension el circuito no halla necesidad de volver a cambiar la clave sino q conserve la q yo le meta gracias seria bueno q resolvamos ese asuntico no le parece
Bueno amigo loq ue tienes que hacer es hacer un cambio en el codigo que la clave se guarde en la memori eprom del PIC y al leerlo darle la dirección de dodne lo guardaste y ahi si se guarda la última contraseña que cambiaste, bueno el programa que hice no utilizo el eprom, suerte.
15/03/2011 #39


ayuda con programa o codigo
hola mi nombre es freedy pero nesecito ayuda urgente nesecito un programa en assembler ..... ya tengo uno pero no me quiere funcionar asi por favor un codigo me caeria de pelos para trabajar una llave magnetica con lcd, teclado 4x4, pic16f877a y que se pueda modificar la clave,,,, les agradeceria

08/04/2011 #40


Hola, me gusto tu proyecto y quisiera implementarlo pero cuando le pongo la clave de administrador 123 no hace nada ni tampoco me funcionan las teclas c y d. Espero tu respuesta sino alguien me podria responder, me urge demasiado
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.