REALIZACION DE PROGRAMAS MICROCONTROLADORES PIC EJERCICIO_1_4 GENÉRICO EJEMPLO 1.4 Restar dos números, A - B, de 16 bits cada uno. Dichos datos se encuentran en las posiciones 10 a 13h de memoria RAM. DE PROGRAMAS MICROCONTROLADORES PIC 06/04/2005 DESARROLLO El ejercicio se realizará en el entorno MPLAB, simulándose posteriormente. Observe como se modifican los valores de: CP, W, REGISTRO DE ESTADO, posiciones de memoria 10, 11, 12, 13, 14, y 15h. CCFF D.P.E. MÓDULO DE PROYECTOS GENÉRICO_4 2 Resolución PROGRAMAS El resultado lo guardaremos en la posición 14h, y 15h (parte baja y alta respectivamente) que asignamos mediante directivas EQU. 06/04/2005 DESARROLLO La resolución se hará utilizando un único módulo, que llamaremos eje_1_4.asm. DE 1. Definición de los módulos Es importante que compruebe como se verifica si se “debe” entre el byte bajo y alto de la resta. CCFF D.P.E. MÓDULO DE PROYECTOS GENÉRICO_4 3 Inicio Indicar tipo de procesador Definir los R. del micro Definir las variables D. LIST, INCLUDE EQU.. PROGRAMAS Definir los vectores de RESET e INTERRUPCIONES Llevar DATO_B_L al R. W (sustraendo) Resta DATO_A_L al R. W (se han restado los bytes de menor peso DE 2. Diagrama De Flujo Salvar resultado parcial en R. RESULTADO_L (14h) DESARROLLO Llevar DATO_B_H al R. W Existió acarreo? C=0 si No Suma 1 al R. W 06/04/2005 Resta DATO_B_H R. W Salvar resultado parcial en R. RESULTADO_h (15h) Fin CCFF D.P.E. MÓDULO DE PROYECTOS GENÉRICO_4 4 3. Edición del programa (1) 06/04/2005 DESARROLLO DE PROGRAMAS • La edición del programa la haremos mediante el editor del MPLAB. • La documentación se realizará en la cabecera del programa y en el campo de comentarios. CCFF D.P.E. MÓDULO DE PROYECTOS GENÉRICO_4 5 Edición del programa (2) 06/04/2005 DESARROLLO DE PROGRAMAS 3. CCFF D.P.E. MÓDULO DE PROYECTOS GENÉRICO_4 6 Edición del programa (3) 06/04/2005 DESARROLLO DE PROGRAMAS 3. CCFF D.P.E. MÓDULO DE PROYECTOS GENÉRICO_4 7 4. PROGRAMAS • Se deberá simular el programa al menos con las siguientes valores: DE A_H A_L B_H B_L 01h 01h 03h 03h 01h 01h 02h 03h 01h 01h 03h 03h 01h 05h 04h FFh =R_H =R_L Anote el resultado obtenido, además de cómo se van modificando los flag C, DC, y Z tras la ejecución de cada una de las instrucciones, comente cada uno de los resultados. 06/04/2005 DESARROLLO Simulación del programa (1) CCFF D.P.E. MÓDULO DE PROYECTOS GENÉRICO_4 8