A continuacion trataremos de mostrar de la mejor y mas resumida forma el set de instrucciones que utilizaremos para realizar nuestro programa en MPLAB.
En MPLAB usamos el lenguaje de programacion llamado assembler, estas instrucciones hacen parte de este lenguaje y son las que el PIC guarda en su EEPROM una vez haya sido grabado el programa. Estas se ejecutan de acuerdo a la forma en que se encuentren dispuestas dentro del programa como tal. Para verificar que no hay errores el programa se puede depurar usando el simulador dentro de la aplicacion o simplemente se puede quemar el programa en el PIC y probar en el protoboard si funciona correctamente. En nuestro caso debemos hacer uso del simulador ya que la quema del programa solo se hara en el laboratorio y las correcciones alli requieren menor tiempo por lo cual les aconsejamos trabajar en grupo y en un entorno que no ejerza presion sobre ustedes.
El set de instrucciones es sencillo, consta de 35 instrucciones y se dividen en 3 grupos: Instrucciones orientadas a bits, instrucciones orientadas a bytes e instrucciones literales y de control.
Las instrucciones son palabras de 14 bits que se dividen en un codigo de operando (OPCODE) que especifica el tipo de operacion y entre quienes se ejecuta dicha operacion ya sea registros u operandos, estas toman un ciclo de maquina.
Para las instrucciones orientadas a bytes la ´f´ representa un registro designador de archivos y la ´d´ representa un designador de destino. El registro designador de archivo especifica que registro de archivo esta siendo usado por la instruccion. El designador de destino indica donde sera colocado el resultado de la operacion. Si ´d´=0 el resultado sera llevado al registro de trabajo W. Si ´d´=1 el resultado sera colocado en el registro de archivo especificado en la instruccion.
Para las instrucciones orientadas a bits la ´b´representa un campo de bit que designa el numero del bit que sera afectado por la operacion, mientras que ´f´representa el numero del archivo en el que el bit es colocado.
Para operaciones de control y entre literales la ´k´representa una constante de 8 u 11 bits o un valor literal.
Todas las instrucciones toman un ciclo de maquina o lo que es igual 4 ciclos de oscilador. Asi para un cristal externo de frecuencia 4MHz el tiempo de ejecucion de una instruccion es de 1uS. Si una prueba condicional es verdad o el contador de programa es cambiado como resultado de una instruccion, la ejecucion de la instruccion toma 2 uS, en este caso el segundo ciclo usado sera un NOP = no operation.
Veamos pues el formato de instrucciones y la lista de ellas.
NOTA: Si eres nuevo en blogger y quieres ver mejor las imagenes da click en la imagen que desees y ella se vera en el tamaño real.
NOTA: Si eres nuevo en blogger y quieres ver mejor las imagenes da click en la imagen que desees y ella se vera en el tamaño real.
Tabla 1 : Set de instrucciones.
Tabla 2. Formato de instrucciones.
Que chevere este blog, me gusta que han llevado una secuencia interesante...pienso que es el momento propicio para tratar de codificar.
ResponderEliminar