Curso En C Para Pic Ccs
INGENIERIA
ELECTRÓNICA
Compilador C para PIC
CCS C
1
Compilador C para PIC
CCS PIC COMPILER
•
Un compilador convierte un lenguaje de alto nivel a instrucciones en código máquina.
Un “cross-compiler” es un compilador que funciona en un procesador (normalmente
en PC) diferente al procesador objeto. Varios compiladores C tiene como procesador
objetos los PICmicro tal es elcaso de HiTECH, MicroChip y CCS.
•
•
Los programas son editados y compilados a instrucciones máquina en el PC.
•
El código máquina es cargado del PC al sistema PIC mediante el ICD2.
El código es ejecutado en el PIC y puede ser depurado (puntos de ruptura, paso a
paso, etc) desde el PC.
•
Nota: Ver documentos anexos sobre CCS
2
Compilador C para PIC
CCS PIC COMPILER
•
Los elementosbásicos de un programa en C
– Directivas de preprocesado
Indican al compilador cómo debe generar el
código máquina.
•
–
Programas
• Bloques de programa.
• Siempre debe incluirse una llamada main().
–
Sentencias
• Instrucciones que definen lo que hace el
programa y la secuencia de ejecución del
mismo.
–
Comentarios
• Imprescindibles como documentación del
código fuente.
3
Compilador C para PICVARIABLES
•Una
RAM.
variable es un nombre asignado a una o varias posiciones de memoria
•En
C es necesario declarar todas las variables antes de poder utilizarlas,
indicando el nombre asignado y el tipo de datos que en ella se van a
almacenar (opcionalmente también el valor inicial asignado).
tipo nombre_variable [=valor];
•Los
p.e.:int i;
tipos de datos aceptados en C estándar son cinco:char (carácter)
int (entero)
float (coma flotante en 32 bits) double (coma flotante en 64 bits)
void (sin valor)
•Las
variables pueden ser locales o globales. Las variables locales sólo pueden
ser usadas en la función en que se declaran, mientras que las variables
globales son compartidas por todas las funciones del programa (deben
declararse fuera de cualquier función y antes de serutilizadas).
4
Compilador C para PIC
VARIABLES
•
El compilador de CCS acepta los siguiente tipos de variable.
Especificación
Significado
Tamaño
char
carácter 8 bits 0 a 255 (sin signo)
int
entero
8 bits 0 a 255 (sin signo)
float
coma flotante
32 bits
6
double float doble precisión no soportado
void
sin valor nulo ninguno
int1
entero de 1 bit
1 bit
0
int8
entero de 8 bits
8 bits
0
int16
entero de 16 bits16 bits
0
int32
entero de 32 bits 32 bits
0
short
entero de 1 bit
1 bit
0
long
entero de 16 bits 16 bits
0
Rango
bits de precisión
No para PCM
a
a
a
a
a
a
1
255 (sin signo)
65535 (sin signo)
(232-1)
1
65535 (sin signo)
•Los
tipos de variable short y long pueden tener detrás la palabra int sin
efecto alguno.
5
Compilador C para PIC
VARIABLES
•Todos
los tipos de datos son por defecto sinsigno (unsigned) salvo los de tipo
float.
•Para almacenar datos con signo, hay que introducir el modificador signed
delante del tipo. El efecto que se consigue es el recogido en la siguiente tabla.
Especificación
signed char
signed int16
signed long
•Los
Significado
carácter con signo
entero con signo
coma flotante
TamañoRango
8 bits
-128 a 127
16 bits -16384 a 16383
16 bits -32768 a 32767
númerosnegativos se codifican en complemento a 2.
•Cuando
se opera con distintos grupos de datos en una misma expresión, se
aplican una serie de reglas para resolver las diferencias. En general se produce
una “promoción” hacia los tipos de datos de mayor longitud presentes en la
expresión.
6
Compilador C para PIC
FUNCIONES
•Las
funciones son los bloques constructivos fundamentales en C. Todas lassentencias deben encontrarse dentro de funciones.
•Las funciones deben ser definidas antes de ser utilizadas.
•Formato general de definición de una función:
tipo_dato_return nombre_func (tipo param1 , tipo param2 , … )
{
cuerpo de la función (sentencias);
}
•Las
funciones pueden devolver un valor a la sentencia que las llama. El tipo de
dato devuelto se indica mediante tipo_dato (char, int16,...
Regístrate para leer el documento completo.