Anda di halaman 1dari 18

Unidad1: P3

Programacin en lenguaje C orientado a


microcontroladores PIC

Ing. Rubn Acosta

Agenda
1.- Diagrama de flujo del desarrollo del software
2.- diagrama de flujo de la programacin y simulacin
3.- Caractersticas del lenguaje ANSI C
4.- Qu es una variable?- tipos de datos- declaracin de una variable
5.- Qu son las constantes?
6.- Operadores
7.- Programacin estructurada: sentencias if, if-else, if-else if, switch/case,
while, do while y for.
8.- Funciones

Desarrollo del software

Para escribir y compilar/ensamblar el programa que determinar las acciones del


PIC16F877A y su funcionamiento, existen distintas maneras de desarrollar el programa,
dependiendo del lenguaje inicial que se utiliza para escribir el programa.

Programacin y simulacin del microcontrolador


PIC16F877A

Caractersticas del Lenguaje ANSI C


El C permite manejar variables enteras o punto flotante.
Cuenta con libreras para manejar todo tipo de operaciones aritmticas.
Manejo de arreglos o tabla de datos.
Uso de declaraciones condicionales e iterativas do/while, for, if/else, switch/case.
La estructura de funciones permite transferir parmetros o argumentos de entrada
y salida en forma directa al llamar a determinada funcin.
Manejo fcil de BITS, REGISTROS Y PUERTOS. (Operaciones booleanas AND,
OR, XOR y NOT).
Manejo sencillo de interrupciones.

Qu es una variable?
Es slo un nombre para identificar una posicin de memoria (RAM), este nombre
debe ser un identificador vlido.
En las variables (posiciones de memoria) se guardan los datos (valores) usados
por el programa durante su ejecucin.
En lenguaje C se diferencia las letras maysculas de las minsculas.
m es diferente a M.
Casi siempre los nombres de las variables son escritas con letras minsculas.
Las variables pueden modificar su valor durante la ejecucin del programa

Tipos de datos
Toda variable debe ser declarada antes de ser utilizada.
Los tipos de datos definen los mtodos de almacenamiento disponibles para
representar la informacin y como es interpretada.
En C tenemos diferentes tipos de datos.

Declaracin de variables

char var1; //se reserva un espacio de memoria de 1 byte


long y;
//se reserva un espacio de memoria de 4 bytes.
;
ar una variable e inicializarla se usa el operador de asignamiento (=)
r un comentario en una lnea de sentencia se usa el operador ( // )
r un comentario con ms de una lnea se usa ( /*
*/ )
char var1=0; // se inicializa con el valor 0
int var2= -234; // se inicializa con el valor -234
= 2.3;

Tipos de variables
riables globales se declaran antes de una funcin y son tiles para cu
programa
riables locales se declaran dentro de una funcin y slo sirven para e

Qu son las constantes?


Una constante no pueden modificar su valor durante la ejecucin del programado.
Son aquellos valores que, una vez compilado el programa, no pueden ser cambiados
Las constantes se almacenan en la memoria FLASH del microcontrolador.
# define pi 3.1416
const float pi=3.1416;
const unsigned char var1;

Operadores aritmticos en C

Operadores relacionales o de comparacin en C

Operadores lgicos en C
Generalmente se utilizan para enlazar dos o ms condiciones lgicas simples.

Operadores booleanos en C

Programacin estructurada
1.- Sentencias selectivas: Llamadas tambin sentencias de bifurcacin, sirven para
redirigir el flujo de un programa segn la evaluacin de alguna condicin lgica.
Las sentencias if e ifelse son casi estndar en todos los lenguajes de programacin.
Adems de ellas estn las sentencias ifelse escalonadas y switchcase.

La sentencia if

La sentencia if-else

La sentencia if-else-if escalonada

La sentencia switch
Nos permite seleccionar una opcin entre un conjunto de opciones de acuerdo
al valor de una variable selector.
El selector no es una expresin que conduce a una condicin lgica
Las constantes c1, c2 y c3 deben valores enteros.
Su sintaxis:
switch (selector){
case c1: sentencia1; break;
case c2: sentencia2; break;
case c3: sentencia3; break;
default: sentencia4;
}
Otra forma de usar la sentencia switch dentro de una funcin con la sentencia return.
unsigned char nombre_funcion (selector) {
switch (selector){
case c1: return (sentencia1);
case c2: return (sentencia2);
case c3: return (sentencia3);
case c4: return (sentencia4);
}
}

2.- Sentencias de repeticin (Bucles)


La sentencia while:
Repite una o un grupo de sentencias, mientras el resultado de la
expresin lgica es verdadero, si es falso, la sentencia while termina.
sentencia A;
while(var<20) {sentencia B; sentencia C;}
sentencia X;

La sentencia do-while:
Repite una sentencia o un grupo de sentencias hasta que el resultado
de la expresin lgica sea falso.
Sentencia A;
Do {
sentencia B;
sentencia C;
}
while(var<20);

La sentencia for:
Sintaxis:
for (inicializacin; expresin_lgica; incremento) {sentencia1; sentencia2;}
Ejemplo:
for (A=0; A<20; A++){ sentencia A; sentencia B;}
sentencia X;
Bucles infinitos:
for ( ;

) { sentencia B; sentencia C; }

while (1) { sentencia B;


sentencia C;
}

3.- Las funciones


Las funciones son bloques de cdigo destinado a cumplir una tarea especfica.
Las funciones estn formadas por:
Una declaracin.
Una definicin.
La accin o llamado
Ejemplo: realizar una funcin que realice la suma de dos nmeros enteros positivos
No mayores a 256 y el resultado de la suma tampoco debe de exceder 256.
resultado= a+b;
Declaras la funcin para que el
compilador reconozca la funcin

La definicin o desarrollo
de la funcin

La accin o llamado de la funcin.

Preguntas ?

Anda mungkin juga menyukai