Академический Документы
Профессиональный Документы
Культура Документы
LENGUAJES DE PROGRAMACIN
El microcontrolador ejecuta el programa cargado en la memoria Flash. Esto se denomina el cdigo ejecutable y est compuesto por una serie de ceros y unos. Dependiendo de la arquitectura del microcontrolador, el cdigo binario est compuesto por palabras de 12, 14 o 16 bits de anchura. Cada palabra se interpreta por la CPU como una instruccin a ser ejecutada durante el funcionamiento del microcontrolador. Todas las instrucciones que el microcontrolador puede reconocer y ejecutar se les denominan colectivamente Conjunto de instrucciones
LENGUAJES DE PROGRAMACIN
LENGUAJES DE PROGRAMACIN
LENGUAJE ENSAMBLADOR
Como el proceso de escribir un cdigo ejecutable era considerablemente arduo, en consecuencia fue creado el primer lenguaje de programacin denominado ensamblador (ASM). Siguiendo la sintaxis bsica del ensamblador, era ms fcil escribir y comprender el cdigo. Las instrucciones en ensamblador consisten en las abreviaturas con significado y a cada instruccin corresponde una localidad de memoria. Un programa denominado ensamblador compila (traduce) las instrucciones del lenguaje ensamblador a cdigo mquina (cdigo binario)
LENGUAJES DE PROGRAMACIN
LENGUAJE ENSAMBLADOR El primer lenguaje de programacin denominado ensamblador (ASM). cuyas instrucciones consisten en las abreviaturas con significado y a cada una corresponde una localidad de memoria.
LENGUAJES DE PROGRAMACIN
LENGUAJE ENSAMBLADOR El programa ensamblador compila (traduce) las instrucciones del lenguaje ensamblador a cdigo mquina (cdigo binario).
LENGUAJES DE PROGRAMACIN
Ventajas de lenguajes de programacin de alto nivel Incluso una sola operacin en el programa escrito en ensamblador consiste en muchas instrucciones, hacindolo muy largo y difcil de manejar. Cada tipo de microcontrolador tiene su propio conjunto de instrucciones que un programador tiene que conocer para escribir un programa Un programador tiene que conocer el hardware del microcontrolador para escribir un programa
LENGUAJES DE PROGRAMACIN
LENGUAJES DE PROGRAMACIN
Ventajas de lenguajes de programacin de alto nivel Los lenguajes de programacin de alto nivel (Basic, Pascal, C etc.) fueron creados con el propsito de superar las desventajas del ensamblador. En lenguajes de programacin de alto nivel varias instrucciones en ensamblador se sustituyen por una sentencia. El programador ya no tiene que conocer el conjunto de instrucciones o caractersticas del hardware del microcontrolador utilizado. Ya no es posible conocer exactamente cmo se ejecuta cada sentencia, de todas formas ya no importa. Aunque siempre se puede insertar en el programa una secuencia escrita en ensamblador.
LENGUAJES DE PROGRAMACIN
Lenguaje C El lenguaje C dispone de todas las ventajas de un lenguaje de programacin de alto nivel (anteriormente descritas) y le permite realizar algunas operaciones tanto sobre los bytes como sobre los bits (operaciones lgicas, desplazamiento etc.). Las caractersticas de C pueden ser muy tiles al programar los microcontroladores. Adems, C est estandarizado (el estndar ANSI), es muy portable, as que el mismo cdigo se puede utilizar muchas veces en diferentes proyectos.
LENGUAJES DE PROGRAMACIN
El proceso entero de la compilacin que incluye todos los pasos anteriormente descritos se le denomina building.
double
unsigned int
short int signed short int int long int
16
8 8 32
de 0 a 65535
de 0 a 255 de -128 a 127 de 0 a 4294967295 de 2147483648 a 2147483647
32
VARIABLES Y CONSTANTES
Una variable es un objeto nombrado capaz de contener un dato que puede ser modificado durante la ejecucin de programa
/* dos lneas de programa consecutivas. En la primera lnea del programa se define el tipo de variable */
int a = 1000; // Variable a es de tipo int y equivale a 1000 a = 15; // a equivale a 15 Una constante tiene las mismas caractersticas que una variable excepto el hecho de que su valor asignado no puede ser cambiado durante la ejecucin de programa.
VARIABLES Y CONSTANTES
Una constante tiene las mismas caractersticas que una variable excepto el hecho de que su valor asignado no puede ser cambiado durante la ejecucin de programa.
A diferencia de las variables, las constantes se almacenan en la memoria Flash del microcontrolador para guardar el mayor espacio posible de memoria RAM. /* dos lneas de programa consecutivas */
const A = 1000 // el valor de la constante A est definido A = 15; // ERROR! no se puede modificar el valor de la constante
VARIABLES Y CONSTANTES
Reglas para nombrar Los identificadores pueden ser tan largos como quiera, pero hay varias restricciones: Los identificadores pueden incluir cualquiera de los caracteres alfabticos A-Z (a-z), los dgitos 0-9 y el carcter subrayado '_'. El compilador es sensible a la diferencia entre minsculas y maysculas. Los nombres de funciones y variables se escriben con frecuencia con minsculas, mientras que los nombres de constantes se escriben con maysculas. Los identificadores no pueden empezar con un dgito. Los identificadores no pueden coincidir con las palabras clave del lenguaje mikroC, porque son las palabras reservadas del compilador.
VARIABLES Y CONSTANTES
Reglas para nombrar
MIKROC - PALABRAS CLAVE absolute asm at auto bit bool break case catch data default delete do double else enum explicit extern if inline int io long mutable return rx sfr short signed sizeof typedef typeid typename union unsigned using virtual void volatile
char
class code const continue
false
float for friend goto
pascal
private public register
template
this true try
while
protected throw
VARIABLES Y CONSTANTES
Reglas para nombrar
temperatura_V1 // OK Presin // OK no_corresponder // OK dat2string // OK SuM3 // OK _vtexto // OK 7temp // NO -- no puede empezar con un nmero %ms_alto // NO -- no pueden contener caracteres especiales if // NO -- no puede coincidir con una palabra reservada j23.07.04 // NO -- no puede contener caracteres especiales (punto) nombre de variable // NO -- no puede contener espacio en blanco
VARIABLES Y CONSTANTES
Declaracin de variables las variables se declaran con frecuencia al principio de las funciones
VARIABLES Y CONSTANTES
Declaracin de variables
VARIABLES Y CONSTANTES
Declaracin de constantes las constantes deben ser declaradas antes de ser utilizadas en el programa
El compilador reconoce las constantes por su prefijo const utilizado en la declaracin. const int MINIMUM = -100; // Declarar constante MINIMUM const MINIMUM = -100; // Declarar constante MINIMUM Las constantes pueden ser de cualquier tipo, incluyendo cadenas: const T_MAX = 3.260E1; // constante de punto flotante T_MAX const I_CLASS = 'A'; // constante carcter I_CLASS const Mensaje = "Presione el botn IZQUIERDA"; // constante de cadena Mensaje
VARIABLES Y CONSTANTES
Las constantes de enumeracin son un tipo especial de constantes enteras que hace un programa ms comprensible al asignar los nmeros ordinales a las constantes. Por defecto, el valor 0 se asigna automticamente a la primera constante entre llaves, el valor 1 a la segunda, el valor 2 a la tercera etc.
enum surtidores {AGUA,GASLEO,CLORO}; // AGUA = 0; GASLEO = 1; CLORO = 2 enum surtidores {AGUA,GASLEO=0,CLORO}; // AGUA = 0; GSOLEO = 0; CLORO = 1 int Velocidad_de_ascensor enum motor_de_ascensor {PARADA,INICIO,NORMAL,MXIMO}; Velocidad_de_ascensor = NORMAL; // Velocidad_de_ascensor = 2
VARIABLES Y CONSTANTES
Definir los nuevos tipos de datos La palabra clave typedef le permite crear con facilidad los nuevos tipos de datos. typedef unsigned int positivo; // positivo es un sinnimo para el tipo sin signo int positivo a,b; // Variables a y b son de tipo positivo a = 10; // Variable a equivale a 10 b = 5; // Variable b equivale a 5
VARIABLES Y CONSTANTES
mbito de variables y constantes
VARIABLES Y CONSTANTES
mbito de variables y constantes
Un bloque compuesto es un grupo de declaraciones y sentencias (que pueden ser bloques tambin) encerradas entre llaves. Un bloque puede ser una funcin, una estructura de control etc. Una variable declarada dentro de un bloque se considera local, o sea, existe slo dentro del bloque. Sin embargo, las variables declaradas fuera del mbito todava son visibles.
VARIABLES Y CONSTANTES
Clases de almacenamiento Las clases de almacenamiento se utilizan para definir el mbito y la vida de variables, constantes y funciones dentro de un programa auto es una clase de almacenamiento por defecto para las variables locales, as que se utiliza raramente. Se utiliza para definir que una variable local tiene duracin local. La clase de almacenamiento auto no se puede utilizar con variables globales.
VARIABLES Y CONSTANTES
Clases de almacenamiento static es una clase de almacenamiento por defecto para las variables globales. Especifica que una variable es visible dentro del archivo. A las variables locales declaradas con el prefijo static se les puede acceder dentro del archivo fuente (o sea se comportan como variables globales). extern: la palabra clave extern se utiliza cuando el programa est compuesto por diferentes archivos fuente. Esto le permite utilizar una variable, una constante o una funcin declarada en otro archivo. Por supuesto, para compilar y enlazar este archivo correctamente, el mismo debe ser incluido en su proyecto.
VARIABLES Y CONSTANTES
Clases de almacenamiento
File 1: extern int cnt; // Variable cnt es visible en File_1 extern void hello(); // Funcin hello()se puede utilizar en File_1 void main(){ PORTA = cnt++; // Cualquier modificacin de cnt en File_1 ser visible en File_2 hello(); // Funcin hello()se puede llamar desde aqu } File 2: int cnt = 0; void hello(); void hello(){ // Modificaciones que afectan a la . // cnt en File_1 son visibles aqu . . }