No logro orienterme en mi primer programa pic

bueno lo que quiero hacer es esto les tiro un pseudo programa para que lo vean
el pic que uso es un PIC16F84A y quiero hacer mi primer programa para assembler pero no se como que haga esto

Código:
INICIO
      poner en RB7 un 1 como salida
      reatardo de 1000 milisegundos
      poner en RB7 un 0 como salida
IR A INICIO

me pueden si es posible tirar el programa hecho y explicado para que yo pueda entender

aclaro soy un novato en programacion de pics no hice nunca un programa en assembler
 
LIST P=16F84A
INCLUDE <P16F84A.INC>
__CONFIG _CP_OFF & _WDT_OFF & _PWRTE_ON & _XT_OSC


CBLOCK 0x20
R_ContA
R_ContB
R_ContC
ENDC

Tdesconex EQU d'15'

inicializacion
bsf STATUS, RP0 ;Acceso al Banco 1.
movlw b'00000110' ;
movwf ADCON1
movlw b'00001111' ;habilidamos la parte alta del puerto B como salida, y la

baja como entrada


movwf TRISB ;lo movemos al registro del puerto.

Inicio

bsf PORTB,7 ;BSF, pone a 1 el bit indicado del puerto.
call Retardo_1s ;Call llama a la subrutina que lleva por nombre Retardo_1s.
bcf PORTB,7 ;BCF, pone a 0 el bit indicado del puerto.

goto Inicio


Retardo_1s ; La llamada "call" aporta 2 ciclos máquina.
movlw Tdesconex ; Aporta 1 ciclo máquina. Este es el valor de "N".
Retardo_1Decima
movwf R_ContC ; Aporta 1 ciclo máquina.
R1Decima_BucleExterno2
movlw d'200' ; Aporta Nx1 ciclos máquina. Este es el valor de "M".
movwf R_ContB ; Aporta Nx1 ciclos máquina.
R1Decima_BucleExterno
movlw d'249' ; Aporta MxNx1 ciclos máquina. Este es el valor de "K".
movwf R_ContA ; Aporta MxNx1 ciclos máquina.
R1Decima_BucleInterno
nop ; Aporta KxMxNx1 ciclos máquina.
decfsz R_ContA,F ; (K-1)xMxNx1 cm (si no salta) + MxNx2 cm (al saltar).
goto R1Decima_BucleInterno ; Aporta (K-1)xMxNx2 ciclos máquina.
decfsz R_ContB,F ; (M-1)xNx1 cm (cuando no salta) + Nx2 cm (al saltar).
goto R1Decima_BucleExterno ; Aporta (M-1)xNx2 ciclos máquina.
decfsz R_ContC,F ; (N-1)x1 cm (cuando no salta) + 2 cm (al saltar).
goto R1Decima_BucleExterno2 ; Aporta (N-1)x2 ciclos máquina.
return ;Debe ponerse para que el pic, sepa que debe volver a la llamada.

--------------------------------------------------------------------------------------------------------

Este es el programa, creo que no me he equivocado, aunque lo he hecho un poco aprisa. El retardo, viene dentro de la libreria Retardos. Pero lo he puesto dentro para no complicarte el codigo incluyendo librerias.

En la hoja caracteristica de los pics te vienen las intrucciones que tiene, y un poco como manejar los registros. Hay muchos ejemplos por internet, sobre todo para este pic. Es complicado empezar, pero deberias mirartelo en vez de pedir programas. La manera de aprender es enfrentarte a las complicaciones que el propio diseño te plantea. Y lidiar con muchas hojas caracteristicas, foros, y horas y horas de documentación y busqueda.

Pero todo eso supongo que lo sabes.
 
No es por ser mala onda... pero alguna vez alguien dijo: "dale un pesaco a un hombre y lo alimentaras un dia, ense;ale a pescar y lo alimentaras toda su vida"

En la hoja de datos vienen las instruciones, y me parace que hay unos cuantos tutoriales aqui.

en fin, no trato de agredir a nadie,en caso de ello, pido disculpas, solo expreso un comentario.

saludos...


Esta bueno el script que te impide escribir todo con mayusculas :)
 
mi intensión era que me pasen un programa hecho para aprender primero como se compila en matlab y lo subo al pic sabiendo que el programa anda y ademas aprender el funcionamiento del mismo
 
Randy dijo:
No es por ser mala onda... pero alguna vez alguien dijo: "dale un pesaco a un hombre y lo alimentaras un dia, ense;ale a pescar y lo alimentaras toda su vida"

En la hoja de datos vienen las instruciones, y me parace que hay unos cuantos tutoriales aqui.

en fin, no trato de agredir a nadie,en caso de ello, pido disculpas, solo expreso un comentario.

saludos...


Esta bueno el script que te impide escribir todo con mayusculas :)


Si tienes razón y comparto tu opinión. Pero aveces sin tener ni idea de nada, pues es algo complicado. Yo muchas veces para aprender a hacer algo (sobre todo cuando empiezo con lenguajes de programación) me es más facil coger un programa hecho y usandolo aprender ha hacer cosas yo.

Por eso, le di el programa. Es sencillo y puede mostrarle como funciona. Y añadir la recomendación de que aprendiera por si mismo.
 
Atrás
Arriba