TODOPIC

Microcontroladores PIC => Lenguaje Basic para microcontroladores PIC => Mensaje iniciado por: er_clemen en 10 de Julio de 2003, 23:52:00

Título: PEQUEÑAS DUDAS DE PROGRAMACIÓN
Publicado por: er_clemen en 10 de Julio de 2003, 23:52:00
Hola amigos:

Me gustaria que alguien me explicara cuando es imprescindible hacer uso de los comandos CLEAR  y END.

Otra cosa:

¿Como puedo hacer un eficaz anti-rebotes por software?

MUCHAS GRACIAS
Título: RE: PEQUEÑAS DUDAS DE PROGRAMACIÓN
Publicado por: jriofrio en 11 de Julio de 2003, 07:23:00
Hola Clemen....
Te digo que END es impresindible, cada programa en asemble debe tenerlo al final del codigo....

El CLEAR = CLRF
Podeis usarlo cada ves que quereis borrar los bits de una register...EX     CLRF   PORTA
Este comado borrara/pondra ceros en el register PortA

CLRW, borra la register acumuladora W...

Como podeis inmaginar, el clear comando es usado solamente si necesitais borrar una register....

JR
Título: RE: PEQUEÑAS DUDAS DE PROGRAMACIÓN
Publicado por: MGLSOFT en 11 de Julio de 2003, 08:11:00
El CLEAR en PBP borra los registros de memoria, es muy bueno utilizarlo antes del inicio de los programas para evitar arrancar con valores aleatorios en RAM.
El END es prolijo utilizarlo al final de los programas, aunque no es imprescindible hacerlo.
Título: RE: PEQUEÑAS DUDAS DE PROGRAMACIÓN
Publicado por: MarquesSalsero en 11 de Julio de 2003, 12:47:00
yo hace muchos años que deje la programacion y desarrollo y lo he retomado recientemente, pero ya en aquellos entonces habia grandes discusiones entre los programadores sobre si se debie poner un "END" al final o era mejor un salto a la posicion de inicio del programa.

Si pones un "END" como final del programa y por cualquier fallo se llega a el, simplemente detienes todo, sin embargo si pones una llamada a la rutina de inicializacion, el programa arrancara de nuevo.

Yo en general, salvo casos muy particulares, pongo siempre una llamada al bucle principal o a la rutia de inicializacion.
Título: RE: PEQUEÑAS DUDAS DE PROGRAMACIÓN
Publicado por: todopic en 12 de Julio de 2003, 09:15:00
Hola Amig@s, segun tengo entendido, el END es solo para el programa de compilacion, y no para el micro,-...  es decir, con END le indicamos al compilador, que alli termina el codigo a compilar....

suerte!

Norberto
Título: RE: PEQUEÑAS DUDAS DE PROGRAMACIÓN
Publicado por: MarquesSalsero en 12 de Julio de 2003, 11:36:00
El "END" literalmente y segun el manual de Me-Labs:

*******

Detiene la ejecucion del programa y entra en un modo de baja potencia. Todos los pines de entrada salida permanecen en su estado actual. END funciona ejecutando un modo de "Sleep" en un bucle continuo.

Un END o STOP o GOTo debera ser puesto al final de cada programa para evitar que caiga fuera del fin de la memoria y se reinicie.

**************
Título: RE: PEQUEÑAS DUDAS DE PROGRAMACIÓN
Publicado por: jorgeansuini en 12 de Julio de 2003, 13:01:00
Realmente lo que pasa es que en los programas, generalmente de una u otra manera se produce una recursividad, en general se espera algun cambio, se ejecuta algo y se vuelve a la espera del cambio, siendo asi, nunca se utilizaria el END, salvo que se produzca algun error, que depende del error , aveces solo es recuperable a través del watchdog.-
En el caso de que el programa ejecute algo y se detenga, si es necesario el END, porque sino se seguiria incrementando el contador de programas, como codigo encontraria NOP o memoria vacia, llegaria al final de la memoria y comenzaria de nuevo. Por eso se utiliza el END para terminar la ejecucion de codigo.-
Pero tambien aunque sepamos que nuestro programa cumple un ciclo, es "elegante" terminarlo con END.
Saludos
Jorge
Título: RE: PEQUEÑAS DUDAS DE PROGRAMACIÓN
Publicado por: MarquesSalsero en 13 de Julio de 2003, 04:25:00
Escrito originalmente por jorgeansuini


Pero tambien aunque sepamos que nuestro programa cumple un ciclo, es "elegante" terminarlo con END.
Saludos
Jorge


Me has convencido con le de "legante" es realmente el mejor argumento que me han dado hasta el momento, y dado que a los argentinos se las ha considerado siempre como muy elegantes lo acepto y a partir de ahora pondré siempre un END al final por elegancia.
Título: RE: PEQUEÑAS DUDAS DE PROGRAMACIÓN
Publicado por: MGLSOFT en 14 de Julio de 2003, 06:45:00
Gracias por el piropo.
END
Título: RE: PEQUEÑAS DUDAS DE PROGRAMACIÓN
Publicado por: RGL en 22 de Julio de 2003, 21:07:00
Hola,

Si la especificación del fabricante, que es el que más sabe de su producto, dice que hay que poner un end al final del programa pues vamos y lo ponemos sin más, porque quizás evitemos problemas en nuestro código.

Saludos
Ricky