Autor Tema: Ayuda con pic 12f508  (Leído 3734 veces)

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

Desconectado Gerardo_s

  • PIC10
  • *
  • Mensajes: 2
Ayuda con pic 12f508
« en: 03 de Mayo de 2010, 16:09:20 »
Hola, necesito ayuda para poder configurar el puerto de este pic en assembler.
Estuve mirando la hoja de datos pero no entiendo como se hace.

Se como hacerlo en un 16f628 pero no en un 12f508, creo que es algo relacionado con la instruccion TRIS pero mi nivel de ingles no me permite entender como hacerlo bien.

Si alguien me puede ayudar se lo agradeceré mucho.

Desde ya muchas gracias!!

Gerardo

Desconectado sander

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 624
Re: Ayuda con pic 12f508
« Respuesta #1 en: 03 de Mayo de 2010, 22:22:19 »
Si no me equivoco debes cargar el valor para configurar el registro TRIS en W y despues tienes que hacer tris  GPIO para escribir en el registro.

Saludos.
La electrónica es el arte de manipular señales eléctricas que transportan información
Jan Davidse

Visita mi blog
Visita mi canal de youtube

Desconectado Gerardo_s

  • PIC10
  • *
  • Mensajes: 2
Re: Ayuda con pic 12f508
« Respuesta #2 en: 10 de Mayo de 2010, 16:56:56 »
ok, voy a probar a ver como me va.
muchas gracias!

Desconectado alekspm

  • PIC10
  • *
  • Mensajes: 13
Re: Ayuda con pic 12f508
« Respuesta #3 en: 15 de Mayo de 2010, 21:46:50 »
Hola, te envio el siguiente code, es para 12F508A o 12F509A, funciona bien.

   LIST P=12F508, r=hex   ;originalmente es PIC12C508 yo lo cambie porque uso el 12F508
   INCLUDE "P12F508.INC"   ;Incluimos la libreria que originalmente era PIC12C508

   __CONFIG _MCLRE_OFF & _CP_OFF & _WDT_OFF & _IntRC_OSC ;Aquí se configuran los fusibles

; Variables
W   EQU 0
F   EQU 1

OUT1   EQU   0   ;GP0
OUT2   EQU   1   ;GP1
OUT3   EQU   2   ;GP2   ; no se usa GP3 por ser exclusivamente entrada
OUT4   EQU   4   ;GP4
OUT5   EQU   5   ;GP5
AUX1   EQU   0x0C   ;variable auxiliar
AUX2   EQU   0x0D   ;variable auxiliar

   ORG 0x000

   clrwdt

   movlw b'11000000'
   option

   movlw b'00001000'   ; Configura GP0-GP2 y GP4-GP5 como salida. GP3 solo es entrada
   tris GPIO

   bcf GPIO,OUT1   ;Borra todas las salidas
   bcf GPIO,OUT2
   bcf GPIO,OUT3
   bcf GPIO,OUT4
   bcf GPIO,OUT5

start   
   bsf  GPIO,OUT1   ;Enciende el primer LED
   call retardo   ;Espera un tiempo
   bcf  GPIO,OUT1   ;Apaga el primer LED
   call retardo   ;Espera un tiempo

   bsf  GPIO,OUT2   ;Enciende el segundo LED
   call retardo    ;Espera un tiempo
   bcf  GPIO,OUT2   ;Apaga el segundo LED
   call retardo   ;Espera un tiempo

   bsf  GPIO,OUT3   ;Enciende el tercer LED
   call retardo   ;Espera un tiempo
   bcf  GPIO,OUT3   ;Apaga el tercer LED
   call retardo   ;Espera un tiempo   

   bsf  GPIO,OUT4   ;Enciende el cuarto LED
   call retardo   ;Espera un tiempo
   bcf  GPIO,OUT4   ;Apaga el cuarto LED
   call retardo   ;Espera un tiempo

   bsf  GPIO,OUT5   ;Enciende el quinto LED
   call retardo   ;Espera un tiempo
   bcf  GPIO,OUT5   ;Apaga el quinto LED
   call retardo   ;Espera un tiempo
   
   goto  start   ;Reinicia el ciclo

;Esta es la rutina de retardo
retardo
   movlw    0xFF      
   movwf   AUX1
   movwf   AUX2
   
Dec_1
   decfsz   AUX1, F
   goto   Dec_1
   decfsz   AUX2, F
   goto   Dec_1
   retlw   0
   end

Quedo a tus órdenes. Alekspm.

Desconectado Quino29

  • PIC10
  • *
  • Mensajes: 6
Re: Ayuda con pic 12f508
« Respuesta #4 en: 08 de Diciembre de 2010, 10:48:22 »
Hola, por lo que estoy viendo el 12F508 es similar al 10F200 y me gustaría saber si alguien tiene código de este último ya que estoy empezando en la programación en ensamblador con este PIC 10F200 y necesito realizar un receptor de infrarrojos usando el protocolo RC5 de Phiips. Si alguien me puedo ayudar a empezar o mandar código de este pic  o similar me sería de gran ayuda.

Un saludo y gracias,

Joaquín