Autor Tema: Tabla de funciones en asm  (Leído 2066 veces)

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

Desconectado gustav03

  • PIC10
  • *
  • Mensajes: 31
Tabla de funciones en asm
« en: 11 de Enero de 2005, 09:05:00 »
a esta funcion se le pasa el valor te la tecla presionada en un teclado de 4x4


tabla_fun
      ;clrf    PCLATH
      addwf   PCL       ;agrega al cont. programa el valor de work
      retlw   00h
      retlw   00h
      call    uno      ;1
      retlw   00h            
      call   dos      ;2
      retlw   00h
      call   tres      ;3
      retlw   00h
      call   cuatro     ;4
      retlw   00h
      call   f5      ;5
      retlw   00h
      call   f6      ;6
      retlw   00h
      call   f7      ;7
      retlw   00h
      call   f8      ;6
      retlw   00h
      call   f9      ;9
      retlw   00h
      call   f10      ;10
      retlw   00h
      call   f11      ;11
      retlw   00h
      call   f12      ;12
      retlw   00h
      call   f13      ;13
      retlw   00h
      call   f14      ;14
      retlw   00h
      call   f15      ;15
      retlw   00h
      call   f16      ;16
      retlw   00h

a alguien se le ocurre otra manera ?
                               

Desconectado wqtrp

  • Colaborador
  • PIC16
  • *****
  • Mensajes: 170
RE: Tabla de funciones en asm
« Respuesta #1 en: 11 de Enero de 2005, 16:52:00 »
hola, en realida a ese tipo de funcion no se le pasa el valor de la tecla presionada , sino un codigo numerico de tecla q en este caso conviene q sea de 0 a 15 o algo asi.
y lo q hace la rutina es asignar el verdadero valor de esa tecla, por ej # o * o una letra.
normalmente la tabla se construye solo con RETLW xx donde xx es el dato a retornar para ese valor de la matriz.
tienes q tener en cuenta en el addwf PCL para q micro lo haces, ya q saltara de a una word siempre y para la serie 18 esto son 2 bytes..
ademas los codigos de devolucion no pueden cruzar una pagina de memoria, sino tendras problemas y la rutina es bastante mas compleja.
espero te sirva y te diria q busques en microchip algun AN q maneje teclado y veras como se construye en forma completa

Suerte.

Desconectado gustav03

  • PIC10
  • *
  • Mensajes: 31
RE: Tabla de funciones en asm
« Respuesta #2 en: 12 de Enero de 2005, 20:25:00 »
hola !Como estas ?
te cuento que a mi me anda este metodo u lo uso porque con el teclado controlo los parametros de doa motores y llamar a una funcion para que me ture un dato almasenado en el registro W no es practico es mejor llamar en cada parte de la tabla a una nueva funcion (si te da la pila claro !) y realizar unos calculos simples o actualizar los valores del puerto .Bueno la idea es esa pero como la call de la tabla esta en ina rutina de interrupcion no me siento comodo .Mi pregunta es: si hay otra forma de hacer esto ?  
Gracias de todos modos y espero en el futuro poder ayudarte Giño


 

anything