Introducción al Lenguaje C (compilador XC8) para microcontroladores PIC. Identificadores, algunas palabras clave, tipos de datos y estructura básica de un programa.
6° SEM30 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
Introducción al Lenguaje C para microcontroladores PIC
1. Introducci´on al Lenguaje C
Variables y Constantes
Operadores
Lenguaje C para Microcontroladores PIC
Introducci´on
F. A. Urbano-Molano1
1 FIET,Departamento de Telem´atica
Universidad del Cauca
Popay´an, Colombia
faurbano@unicauca.edu.co
7 de octubre de 2017
Fernando Aparicio Urbano-Molano Compilador XC8
2. Introducci´on al Lenguaje C
Variables y Constantes
Operadores
Compilador XC8
1 Introducci´on al Lenguaje C
Identificadores
Keywords ANSI C
Tipos de datos
Estructura de un Programa en C
2 Variables y Constantes
Declaraci´on de Variables
Definici´on de Variables
Literales y Constantes
3 Operadores
Operadores
Operadores Aritm´eticos
Fernando Aparicio Urbano-Molano Compilador XC8
3. Introducci´on al Lenguaje C
Variables y Constantes
Operadores
Identificadores
Keywords ANSI C
Tipos de datos
Estructura de un Programa en C
Compilador MPLAB XC8
1 Introducci´on al Lenguaje C
Identificadores
Keywords ANSI C
Tipos de datos
Estructura de un Programa en C
2 Variables y Constantes
Declaraci´on de Variables
Definici´on de Variables
Literales y Constantes
3 Operadores
Operadores
Operadores Aritm´eticos
Fernando Aparicio Urbano-Molano Compilador XC8
4. Introducci´on al Lenguaje C
Variables y Constantes
Operadores
Identificadores
Keywords ANSI C
Tipos de datos
Estructura de un Programa en C
El Lenguaje C
Breve Historia
Desarrollado en los laboratorios Bell por Dennis Ritchie
(1972).
Usado para desarrollar Unix en 1974
Considerado de m´as bajo que nivel que otros.
Curva de aprendizaje superior al ensamblador.
Rompiendo Mitos
C no es portable. Caracter´ısticas ANSI, s´ı.
C´odigos espec´ıficos de un procesador, no son portables.
No es tan eficiente como el ensamblador.
Usa m´as memoria.
Fernando Aparicio Urbano-Molano Compilador XC8
5. Introducci´on al Lenguaje C
Variables y Constantes
Operadores
Identificadores
Keywords ANSI C
Tipos de datos
Estructura de un Programa en C
Introducci´on
Compiladores C para Microcontroladores
Varios compiladores C para microcontroladores PIC de
Microchip.
http://www.microchip.com/compilers
http://www.ccsinfo.com
http://www.mikroe.com
XC8
Desarrollado para microcontroladores PIC de Microchip.
http://www.microchip.com
Cross-compiler
Fernando Aparicio Urbano-Molano Compilador XC8
6. Introducci´on al Lenguaje C
Variables y Constantes
Operadores
Identificadores
Keywords ANSI C
Tipos de datos
Estructura de un Programa en C
Compilador MPLAB XC8
1 Introducci´on al Lenguaje C
Identificadores
Keywords ANSI C
Tipos de datos
Estructura de un Programa en C
2 Variables y Constantes
Declaraci´on de Variables
Definici´on de Variables
Literales y Constantes
3 Operadores
Operadores
Operadores Aritm´eticos
Fernando Aparicio Urbano-Molano Compilador XC8
7. Introducci´on al Lenguaje C
Variables y Constantes
Operadores
Identificadores
Keywords ANSI C
Tipos de datos
Estructura de un Programa en C
Identificadores
Nombre dado a un elemento del programa (variable, funci´on,
o arreglo).
Sin conocer ubicaci´on en memoria.
Deben ser nombres con caracteres del alfabeto (ingl´es).
Case sensitive
El primer caracter no debe ser un n´umero.
Ejemplos
1var; no valido.
mivariable
Mivariable, MiVariable
MiVariable01, MiVariable 01
Fernando Aparicio Urbano-Molano Compilador XC8
8. Introducci´on al Lenguaje C
Variables y Constantes
Operadores
Identificadores
Keywords ANSI C
Tipos de datos
Estructura de un Programa en C
Compilador MPLAB XC8
1 Introducci´on al Lenguaje C
Identificadores
Keywords ANSI C
Tipos de datos
Estructura de un Programa en C
2 Variables y Constantes
Declaraci´on de Variables
Definici´on de Variables
Literales y Constantes
3 Operadores
Operadores
Operadores Aritm´eticos
Fernando Aparicio Urbano-Molano Compilador XC8
9. Introducci´on al Lenguaje C
Variables y Constantes
Operadores
Identificadores
Keywords ANSI C
Tipos de datos
Estructura de un Programa en C
Palabras Clave
auto break case char
const continue default do
double else enum extern
float for goto if
int long register return
short signed sizeof static
struct switch typedef union
unsigned void volatile while
Fernando Aparicio Urbano-Molano Compilador XC8
10. Introducci´on al Lenguaje C
Variables y Constantes
Operadores
Identificadores
Keywords ANSI C
Tipos de datos
Estructura de un Programa en C
Compilador MPLAB XC8
1 Introducci´on al Lenguaje C
Identificadores
Keywords ANSI C
Tipos de datos
Estructura de un Programa en C
2 Variables y Constantes
Declaraci´on de Variables
Definici´on de Variables
Literales y Constantes
3 Operadores
Operadores
Operadores Aritm´eticos
Fernando Aparicio Urbano-Molano Compilador XC8
11. Introducci´on al Lenguaje C
Variables y Constantes
Operadores
Identificadores
Keywords ANSI C
Tipos de datos
Estructura de un Programa en C
Tipos de datos
Tipo Tama˜no Rango
unsigned char 8 bit 0 a 255
char, signed char 8 bit -127 a 128
unsigned short (int) 16 bits 0 a 65535
short, signed short (int) 16 bits -32768 a 32767
unsigned (int) 16 bits 0 a 65535
int, signed (int) 16 bits -32768 a 32767
unsigned long (int) 32 bits 0 a 232 − 1
long, signed long (int) 32 bits −231 a (231 − 1)
unsigned long long (int) 64 bits 0 a (264 − 1)
long long, signed long long (int) 64 bits -263 a (263 − 1)
Fernando Aparicio Urbano-Molano Compilador XC8
12. Introducci´on al Lenguaje C
Variables y Constantes
Operadores
Identificadores
Keywords ANSI C
Tipos de datos
Estructura de un Programa en C
Compilador MPLAB XC8
1 Introducci´on al Lenguaje C
Identificadores
Keywords ANSI C
Tipos de datos
Estructura de un Programa en C
2 Variables y Constantes
Declaraci´on de Variables
Definici´on de Variables
Literales y Constantes
3 Operadores
Operadores
Operadores Aritm´eticos
Fernando Aparicio Urbano-Molano Compilador XC8
13. Introducci´on al Lenguaje C
Variables y Constantes
Operadores
Identificadores
Keywords ANSI C
Tipos de datos
Estructura de un Programa en C
Estructura
Directivas de preprocesado.
Programas o funciones
Instrucciones
Comentarios
Estructura b´asica de un programa
Figura: Ejemplo Directivas y Cabeceras
Fernando Aparicio Urbano-Molano Compilador XC8
14. Introducci´on al Lenguaje C
Variables y Constantes
Operadores
Identificadores
Keywords ANSI C
Tipos de datos
Estructura de un Programa en C
Programa Principal
Estructura Programa principal
Figura: Ejemplo Programa Principal
Fernando Aparicio Urbano-Molano Compilador XC8
15. Introducci´on al Lenguaje C
Variables y Constantes
Operadores
Declaraci´on de Variables
Definici´on de Variables
Literales y Constantes
Compilador MPLAB XC8
1 Introducci´on al Lenguaje C
Identificadores
Keywords ANSI C
Tipos de datos
Estructura de un Programa en C
2 Variables y Constantes
Declaraci´on de Variables
Definici´on de Variables
Literales y Constantes
3 Operadores
Operadores
Operadores Aritm´eticos
Fernando Aparicio Urbano-Molano Compilador XC8
16. Introducci´on al Lenguaje C
Variables y Constantes
Operadores
Declaraci´on de Variables
Definici´on de Variables
Literales y Constantes
Compilador MPLAB XC8
1 Introducci´on al Lenguaje C
Identificadores
Keywords ANSI C
Tipos de datos
Estructura de un Programa en C
2 Variables y Constantes
Declaraci´on de Variables
Definici´on de Variables
Literales y Constantes
3 Operadores
Operadores
Operadores Aritm´eticos
Fernando Aparicio Urbano-Molano Compilador XC8
17. Introducci´on al Lenguaje C
Variables y Constantes
Operadores
Declaraci´on de Variables
Definici´on de Variables
Literales y Constantes
Declaraci´on de Variables
Declaraci´on de Variables
Es cuando se especifica un tipo y un identificador, pero no se le ha
asignado un valor a la variable.
Ejemplos:
int variable;
int x, y, z;
float area;
unsigned resultado;
Fernando Aparicio Urbano-Molano Compilador XC8
18. Introducci´on al Lenguaje C
Variables y Constantes
Operadores
Declaraci´on de Variables
Definici´on de Variables
Literales y Constantes
Compilador MPLAB XC8
1 Introducci´on al Lenguaje C
Identificadores
Keywords ANSI C
Tipos de datos
Estructura de un Programa en C
2 Variables y Constantes
Declaraci´on de Variables
Definici´on de Variables
Literales y Constantes
3 Operadores
Operadores
Operadores Aritm´eticos
Fernando Aparicio Urbano-Molano Compilador XC8
19. Introducci´on al Lenguaje C
Variables y Constantes
Operadores
Declaraci´on de Variables
Definici´on de Variables
Literales y Constantes
Definici´on de Variables
Definici´on de Variables
Es cuando se le asigna un valor a la variable.
Ejemplos:
unsigned int variable;
unsigned y = 14;
int x, y, z;
float pi = 3.1415;
unsigned resultado;
char letra = ‘a’;
long miVar = 0x1234;
Fernando Aparicio Urbano-Molano Compilador XC8
20. Introducci´on al Lenguaje C
Variables y Constantes
Operadores
Declaraci´on de Variables
Definici´on de Variables
Literales y Constantes
Compilador MPLAB XC8
1 Introducci´on al Lenguaje C
Identificadores
Keywords ANSI C
Tipos de datos
Estructura de un Programa en C
2 Variables y Constantes
Declaraci´on de Variables
Definici´on de Variables
Literales y Constantes
3 Operadores
Operadores
Operadores Aritm´eticos
Fernando Aparicio Urbano-Molano Compilador XC8
21. Introducci´on al Lenguaje C
Variables y Constantes
Operadores
Declaraci´on de Variables
Definici´on de Variables
Literales y Constantes
Literales y Constantes
Literales vs Contantes
En la programaci´on se usan los t´erminos de manera indiferente, sin
embargo aquellos que usan el lenguaje ensamblador, tienen un
concepto diferente.
#define MaxEntero 32767
#define PI 3.14159
const int MinEntero = -32768;
Tipos de literales:
Entero
Punto Flotante
Caracter
Cadena (String)
Fernando Aparicio Urbano-Molano Compilador XC8
22. Introducci´on al Lenguaje C
Variables y Constantes
Operadores
Operadores
Operadores Aritm´eticos
Compilador MPLAB XC8
1 Introducci´on al Lenguaje C
Identificadores
Keywords ANSI C
Tipos de datos
Estructura de un Programa en C
2 Variables y Constantes
Declaraci´on de Variables
Definici´on de Variables
Literales y Constantes
3 Operadores
Operadores
Operadores Aritm´eticos
Fernando Aparicio Urbano-Molano Compilador XC8
23. Introducci´on al Lenguaje C
Variables y Constantes
Operadores
Operadores
Operadores Aritm´eticos
Compilador MPLAB XC8
1 Introducci´on al Lenguaje C
Identificadores
Keywords ANSI C
Tipos de datos
Estructura de un Programa en C
2 Variables y Constantes
Declaraci´on de Variables
Definici´on de Variables
Literales y Constantes
3 Operadores
Operadores
Operadores Aritm´eticos
Fernando Aparicio Urbano-Molano Compilador XC8
24. Introducci´on al Lenguaje C
Variables y Constantes
Operadores
Operadores
Operadores Aritm´eticos
Definici´on de Operadores
1 Los operandos pueden ser variables, constantes o funciones
que retornan un valor.
Un registro en un microcontrolador generalmente representa a
una variable.
2 Se usan 9 operadores aritm´eticos.
Binarios: +, −, ∗, /, %
Unarios: +, −, ++, −−
Fernando Aparicio Urbano-Molano Compilador XC8
25. Introducci´on al Lenguaje C
Variables y Constantes
Operadores
Operadores
Operadores Aritm´eticos
Compilador MPLAB XC8
1 Introducci´on al Lenguaje C
Identificadores
Keywords ANSI C
Tipos de datos
Estructura de un Programa en C
2 Variables y Constantes
Declaraci´on de Variables
Definici´on de Variables
Literales y Constantes
3 Operadores
Operadores
Operadores Aritm´eticos
Fernando Aparicio Urbano-Molano Compilador XC8
26. Introducci´on al Lenguaje C
Variables y Constantes
Operadores
Operadores
Operadores Aritm´eticos
Operadores Aritm´eticos
Operador Operaci´on Ejemplo Resultado
+ Adici´on X + Y Suma de X y Y
− Substracci´on X − Y Diferencia de X y Y
+ (unario) Positivo +X Valor de X
− (unario) Negativo −X Valor negativo de X
∗ Multiplicaci´on X ∗ Y Producto de X y Y
/ Divisi´on X/Y Cociente de X y Y
% M´odulo X %Y Residuo de X dividido Y
Fernando Aparicio Urbano-Molano Compilador XC8