Microcontroladores Intel MCS51. Arquitectura y programación

José Carlos Campelo Rivadulla, Ángel F. Perles Ivars, Francisco Rodríguez Ballester


Table of Contents

1. Ampliaciones
1. Utilizando el compilador Keil en lugar del IAR
2. Errata

Chapter 1. Ampliaciones

1. Utilizando el compilador Keil en lugar del IAR

Los programas incluidos en el libro se han escrito para el compilador IAR. Usar cualquier otro compilador para la familia MCS-51 suele ser inmediato.

El compilador de la empresa Keil es uno de los más completos y mejor adaptados a distintas versiones del 51, además, su versión de evaluación es adecuada para aprender a usar este tipo de herramientas. Estos y otros motivos han hecho que se haya optado por cambiar de compilador.

Este apartado da unas pautas para adaptar los programas IAR incluidos en el libro a sus equivalentes IAR.

  • Para la definición de bits se emplea el tipo sbit en la zona SFR y bit en la zona baja de la memoria directa.

  • La notación sfr.bit se sustituye por la notación sfr^bit. Por ejemplo P1.5 se escribirá como P1^5. Además, solo se permite esta notación en las definiciones de variables, no en el código.

    Por ejemplo, en IAR se puede hacer:

    sfr P0 = 0x80;

    ...

    P0.2 = 1;

    Su equivalente Keil será;

    sfr P0=0x80;

    P0_2 = P0^2;

    ...

    P0_2 = 1;

  • Para los servicios de interrupción se emplea la notación:

    void nombre_funcion(void) interrupt N;

    En lugar de la notación IAR

    interrupt [vector] void nombre_funcion(void);

    La siguiente tabla indica las equivalencias.

    Dirección (vector)Número de interrupción (N)
    0003h0
    000Bh1
    0013h2
    ... 

Chapter 2. Errata

  • pg. 27. Cambiar el sentido de Led 1.