Documente Academic
Documente Profesional
Documente Cultură
Compiler
Assembly Source Files Driver
.s Program
(.asm or .s)
Archiver Object
Files Executable
(Librarian) .o
.hex
Object File Libraries
(Archives) Linker
.a
(.lib or .a)
.cof
MPLAB X® IDE
Debug Tool
Linker Script Debug File
.gld
(.lkr or .gld)
C Compiler
.c Preprocessor .h
C Source File C Header File
Compiler
int miVariable;
miVariable = 5;
5.74532370373175
float longitud; × 10-44
radio = 12.0;
area = PI *radio*radio;
printf(“area = %f”,area);
}
unsigned int x;
unsigned y = 12;
int a, b, c;
long int miVar = 0x12345678;
long z;
char primero = ‘a’, segundo, tercero= ‘c’;
float numero_grande = 6.02 e+23;
include <file.h>
Busca el archivo en el path (ruta) de busqueda
del compilador.
La ruta de búsqueda del compilador por lo
general incluye el directorio del compilador y
todos sus subdirectorios.
Por ejemplo: C:\Program Files\Microchip\XC16\v1.10\*.*
#include “file.h”
Busca el archivo solo en el directorio de
proyecto.
#include “c:\MyProject\file.h”
Usa la ruta específica para encontrar archivo
de inclusion (include)
ING. JOSE ESTRADA M.
La directiva #include
Hay 3 formas de usar la directiva #include:
.h main.h .c main.c
Ejemplos:
#define PI 3.14159
#define MCU "PIC24FJ128GA010"
#define mol 6.02E23
#define COEF 2*PI
ING. JOSE ESTRADA M.
Manejo de Bits
ENMASCARAMIENTO
Lee los bits del Puerto y realiza la operación
AND con ‘0’ para ignorar los bits.
TECLA=(PORTB & 0x0F); /* 0000B3B2B1B0 */
int a = 5, b= 10;
printf(“a = %d\n b = %d\n”, a , b);
resulta: a = 5
b = 10
NOTA: La 'd' en %d es el carácter de
conversión.
ING. JOSE ESTRADA M.
Carácter de conversión en Funcion printf()
Caracter de
Conversion Significado
%c Carácter simple
%s String (todos los caracteres hasta '\0')
%d Entero decimal con signo
%o Entero octal sin signo
%u Entero decimal sin signo
%x Entero hexadecimal sin signo con dígitos minúscula (1a5e)
%X Entero hexadecimal sin con dígitos mayúscula (ej. 1A5E)
%f Valor decimal con signo (punto flotante)
%e Decimal con signo con exponente (ej. 1.26e-5)
%E Decimal con signo, usa E como exponente (ej. 1.26E-5)
%g Como e o f, pero depende en tamaño o precisión del valor
%G Como g, pero usa E como exponente
if (expresión) expresión ≠ 0
{ expresión V
sentencia 1;
sentencia 2; sentencia(s)
expresión = 0 F
…… Ing. Jose Estrada
}
if (expresión) expresión ≠ 0
sentencia 1; expresión V sentencia 1
Else
sentencia 2; expresión = 0 F
sentencia 2
Ing. Jose Estrada
if (expresión 1)
sentencia 1; expresión 1 V sentencia 1
else if (expresión 2) F
sentencia 2;
else expresión 2 V sentencia 2
sentencia 3; F
sentencia 3
Ing. Jose Estrada
default: sentencias n
grupo de sentencias n; Ing. Jose Estrada
}
ING. JOSE ESTRADA M.
Sentencia de bucle For
Se usa para repetir una sentencia(s). La
expresion1 inicializa el valor de la variable de
conteo de bucle. La expresion2 si es verdadera,
ejecuta el bucle, si es falso sale del mismo. La
expresion3 se ejecuta al final de la iteración del
bucle, modifica la variable de conteo del bucle.
También es posible anidar bucles.
expresion1
for (expresion1; expresion2; expresion3 )
{ expresion3
sentencias (s);
} sentencia(s)
Ing. Jose Estrada
expresion2 V
{
expresion V sentencia(s)
sentencias(s);
} F
do
{ sentencia(s)
sentencia(s);
} Ing. Jose Estrada
int i=0;
while (i<5) expresion V sentencia(s)
{ F
i++; continue
if (i==2) continue;
sentencia(s)
printf(“Iteracion de bucle %d\n”,i);
}
MUCHAS GRACIAS