CCS - Funciones

De Ucontrol
Saltar a: navegación, buscar

<keywords content="TTL 74Ls164N, electronica, circuito, pic, NE555, PIC BASIC, PIC SIMULATOR IDE, esquema, circuito impreso, proyecto, gratis, download, programa, CMOS, pin, e/s, i/o, ucontrol, PIC, 16F628a, 16f84a" /> <center>


Inicio Foro Revista uControl Circuiteca Microcontroladores Electrónica Básica Herramientas y Software Tutoriales Colaboradores Enlaces
¿Ya descargaste los ejemplares GRATUITOS de la Revista uControl? ¡No te los pierdas!.
<linkedimage>

wikipage=Dado electrónico con PIC tooltip=Dado electrónico con PIC img_src=Image:dado100.jpg img_width=150px img_alt=Dado electrónico con PIC </linkedimage>

Dado electrónico
<linkedimage>

wikipage=Como trucar un servo tooltip=Como trucar un servo img_src=Image:trucaservo150.jpg img_width=150px img_alt=Como trucar un servo </linkedimage>

¿Como trucar un servo?
<linkedimage>

wikipage=Comunicación inalámbrica entre PICs tooltip=Comunicación inalámbrica entre PICs img_src=Image:TXRX150.jpg img_width=150px img_alt=Comunicación inalámbrica entre PICs </linkedimage>

Comunicación inalámbrica
<linkedimage>

wikipage=CCS - Libreria de gráficos para GLCD K0108 tooltip=CCS - Libreria de gráficos para GLCD K0108 img_src=Image:GLCD-100.gif img_width=150px img_alt=CCS - Libreria de gráficos para GLCD K0108 </linkedimage>

Gráficos con CCS
<linkedimage>

wikipage=Funcionamiento de una matriz de LEDs tooltip=Funcionamiento de una matriz de LEDs img_src=Image:GNUxx.jpg img_width=150px img_alt=Funcionamiento de una matriz de LEDs </linkedimage>

Carteles de LEDs
Foroizq.jpg
Todos los articulos y proyectos de uControl tienen su lugar en el foro. Si tienes dudas o comentarios, busca o crea el hilo correspondiente, y tendrás una rapida respuesta.
Foroder.jpg
CCS - Funciones

Introducción

Programando en CCS.

Las funciones son los bloques básicos con los que construimos un programa en CCS. Además de la funcion main() que veremos enseguida, un programa CCS tendrá seguramente varias funciones más, conteniendo cada una un bloque de instrucciones que realizan una tarea determinada.

Contenido

Funciones

Las funciones tienen la siguiente forma:

nombre_de_la_funcion() {
  instruccion;
  instruccion;
  .
  .
  instruccion; }

Para evitar que surjan errores o avisos (warnings) al compilar nuestros programas, debemos declarar las funciones antes de utilizarlas.

Prototipos

Existen dos formas de decirle al compilador CCS que tipo de valor devolverá nuestra función. La forma general es la siguiente:

tipo nombre_de_funcion();

donde tipo es cualquiera de los tipos de variables soportados por CCS. Al igual que cualquier instrucción de CCS, la linea debe termina con ; (punto y coma).

El siguiente ejemplo declara la funcion ejemplo() que devuelve como resultado un valor del tipo long:

long ejemplo();

Parámetros

Ademas de determinar el tipo de resultado que devolverá la función, en el prototipo podemos especificar que parametros recibirá, y de que tipo serán. La forma de hacerlo es la siguiente:

tipo nombre_de_funcion(tipo var1, tipo var2, ..., tipo varN);

La diferencia con el caso anterior es que se han incluido dentro de los () una serie de nombres de variables (var1, var2, ..., varN), cada una asociado a un tipo en particular.

Supongamos que queremos crear una función que lleve a cabo la suma de dos de tipo int, que le son pasados como argumentos, y nos devuelva el resultado en formato double. Deberiamos escribir así su prototipo:

double suma(int a, int b);

donde a y b son los valores a sumar. El llamado a la función se puede hacer de la siguiente manera:

int a, b;
double resultado;
a = 10;
b = 250;
resultado = suma (a, b);

resultado contendrá el valor "300".



Return

La forma en que se asigna en la función el valor que esta debe devolver es mediante la instrucción return.

Vemoslo con el ejemplo de la función suma vista mas arriba. La función podría ser como sigue:

double suma(int a, int b){
 double auxiliar;
 auxiliar = (double) (a * b );
 return auxiliar;
}

Otra forma, mas corta, de escribir la misma función es la siguiente:

double suma(int a, int b){
 return (double) a * b; 
}

Void

void significa que la función no devolverá ningún parametro. Supongamos que la función ejemplo() no debe regresar ningún valor luego de ser llamada. Su prototipo debería ser como sigue:

void ejemplo();

Además, podemos usar void para para indicar que la función no recibe parámetros:

void ejemplo2(void);

en el ejemplo, la función ejemplo2() no recibe parametros, ni devuelve ningún valor.

La función main()

Como hemos visto, el lenguaje C permite la utilización de funciones. Pero hay una función especial, llamada main() que obligatoriamente debe estar presente, y es el punto de entrada a todo programa en C que escribamos.

La funcion main() tiene la siguiente forma:

main() {
  instruccion;
  instruccion;
  .
  .
  instruccion; }

donde instruccion; puede ser cualquier instrucción válida del CCS o una llamada a otra función.

Temas relacionados

Puedes encontrar el resto de los temas que componene este tutorial sobre CCS en esta categoría.

Hay toda una colección de ejemplos sobre este tema. Puedes consultarlos para reforzar lo aprendido aquí.

Además, los siguientes artículos de uControl se relacionan con éste, y pueden serte de utilidad:

Autor

Ariel.jpg Datos del Autor
Nombre: Ariel Palazzesi
email: arielpalazzesi@gmail.com
Ver los artículos de este autor. Página con el perfil del autor.


</center>
Cclicence.png

Este contenido se rige por la licencia de Creative Commons "Licencia Creative Commons Atribución-No Comercial-Sin Obras Derivadas 3.0". Para más información, véase la licencia en su forma reducida y completa.

Herramientas personales