Autor Tema: cd4051 y pic16f628a  (Leído 1953 veces)

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

Desconectado remramon2007

  • PIC10
  • *
  • Mensajes: 5
cd4051 y pic16f628a
« en: 05 de Febrero de 2008, 15:58:42 »
hola gente como estan por aca?
yo aca estoy renegando y bastante complicado con un proyecto, les comento estoy armado un circuito en el cual quiero leer varios pulsadores utilizando un 4051, me dijieron de utilizar un 74hc165 y... arme algo pero no me andubo y ahora me puse a armarla con un cd4051 que ya habia utilizado hace unos años atras pero... me encuentro uqe no recuerdo bien como se conecta y he aqui mi gran duda...
aca les paso el codigo del programa con el que estoy trabajando y el pcb (proteus) que tengo armado, agradeceria si me pueden ayudar es algo que me esta quemando la cabeza!!  :D

'****************************************************************
'*  Name    : UNTITLED.BAS                                      *
'*  Author  : [select VIEW...EDITOR OPTIONS]                    *
'*  Notice  : Copyright (c) 2008 [select VIEW...EDITOR OPTIONS] *
'*          : All Rights Reserved                               *
'*  Date    : 05/02/2008                                        *
'*  Version : 1.0                                               *
'*  Notes   :                                                   *
'*          :                                                   *
'****************************************************************
include "bs2defs.bas"

define osc 20

cmcon = 7

'****************** variables ******************
n var byte
TRISA = %11111111
bit_A     var PORTA.0  ; 11
bit_B     var PORTA.1  ; 10
bit_C     var PORTA.2  ; 09
entrada   var PORTA.3  ; 03 (con una R de 4k7 a Vcc)
led       var portb.1  ;led indicador (indica cuando se pulsa culaquier tecla)
pin_reset var portb.2   ;pata 11 del 4040
pin_clock var portb.3   ;pata 10 del 4040

inicio:
    n = 0
    high pin_reset
    pause 10
    low pin_reset
    pause 10

selecciono_pulsador:
    high bit_a
    high bit_b
    high bit_c
    pause 5
       
pulsadores:
    if entrada = 0 then goto incrementar
    pause 10
    if entrada = 0 then goto incrementar
    pause 10
    goto pulsadores
   
incrementar:
    n = n + 1
    pause 1000
    if n < 10 then goto ver
    n = 0
    pulsout pin_reset, 100
    goto pulsadores

ver:       
    pulsout pin_clock, 100
    goto pulsadores

p.d: muchas gracias de ante mano por la data que me puedan facilitar y muy bueno el foro, lo consulto bastante.