160819944 Introduccion Xc8

Páginas: 15 (3508 palabras) Publicado: 7 de marzo de 2015
Introducción
Hola, hoy empiezo este mini curso de programación de microcontroladores PIC en lenguaje C desde 0. La idea es
aprender paso a paso, realizar algunos proyectos simples y sumar conocimientos.
Voy a trabajar sobre el sistema operativo Ubuntu, con software libre o gratuito. Para todos aquellos que utilizan Windows
no van a tener inconvenientes porque los paquetes de software sonmultiplataforma. Voy a utilizar como entorno de
desarrollo MPLAB X en conjunto con el compilador XC8. No me voy a detener en la instalación y configuración del IDE
y del compilador ya que existen muchos tutoriales sobre esto (por ejemplo).
El curso lo voy realizando sobre la marcha, en parte leyendo libros, en parte dudas consultadas a los expertos en el foro y
en parte en experiencias propias. Por estemotivo lo verán formarse "online" y a medida que el tiempo me lo permita ire
sumando contenido. Les recomiendo que lean el tutorial sobre XC8 que escribió Suky que es un buen punto de partida y el
"Tutorial MPLAB C18 Desde Cero". También es de mucha utilidad tener a mano los ejemplos de Microchip para
consulta: Microchip Code Examples (12F & 16F).
Para realizar los primeros ensayos voy a utilizarel microcontrolador PIC16F648A (compatible con el PIC16F627 y
PIC16F628). Dejo abierto el post para que realicen comentarios, dudas, aportes y criticas. Y uno más para ir colgando
librerías o código útil.
Indice:
1.1. Estructura de un programa en C
1.2. ¡Hola Mundo! en C (o como hacer destellar un LED)
1.3. Leer un pulsador
1.4. Utilizando PWM
1.5. Uso de funciones
1.6. Varibles y tipos de datos1.7. Usando una interrupción por timer0
1.8. Ejemplo de uso PIC18F4550, delays y USART
lmtreser:
1.1. Estructura de un programa en C
C es el lenguaje de programación que utilizaremos. Un programa C está compuesto por una o varias funciones, dentro de
las cuales tendremos una o más instrucciones. Existe una función llamada "main" donde tendremos nuestro código
principal.
Comentarios: Los comentariosson de mucha utilidad para entender lo que escribimos. Para realizar un comentario
anteponemos en la línea de código "//" y el compilador la ignorará. También podemos comentar bloques de código
utilizando "/*" para abrir y "*/" para cerrar.
Includes: utilizando "#include" incluimos en nuestro programa archivos de funciones o librerías que nos permitirán
utilizar características especiales.Ejemplo:
Código:
/*
* File: main.c
* Author: lucas
* Created on 1 de abril de 2013, 22:20
*
* ESTO ES UN BLOQUE DE COMENTARIOS
*/
#include // Incluimos la librería XC8
// ESTO ES UN COMENTARIO DE UNA LINEA
// Función principal

void main ()
{
OSCCONbits.IRCF = 0b110; // Instrucción
}
IMPORTANTE:
* Todas las instrucciones deben terminar si o si en ";".
* Los bloques de instrucciones empiezan con"{" y terminan con "}".
* C es case sensitive, es decir que distingue minúsculas de mayúsculas.
lmtreser:
1.2. ¡Hola mundo! en C (o como hacer destellar un LED)
Hacer destellar un LED es muy sencillo. Tanto como crear un bucle infinito, escribir en un pin, generar una demora y
volver a escribir. El ejemplito:
Código:
/*
* File: main.c
* Author: lucas
* Created on 1 de abril de 2013, 22:20
*Microcontrolador: PIC16F648A
*
* ¡Hola Mundo! en C (o como hacer destellar un LED)
*/
#include
#include
#include // Librería XC8
#define _XTAL_FREQ 4000000 // Indicamos a que frecuencia de reloj esta funcionando el micro
// PIC16F648A Configuration Bit Settings
#pragma config FOSC = INTOSCIO // Oscillator Selection bits (INTOSC oscillator: I/O function on
RA6/OSC2/CLKOUT pin,I/O function on RA7/OSC1/CLKIN)
#pragma config WDTE = OFF
// Watchdog Timer Enable bit (WDT disabled)
#pragma config PWRTE = OFF
// Power-up Timer Enable bit (PWRT disabled)
#pragma config MCLRE = OFF
// RA5/MCLR/VPP Pin Function Select bit (RA5/MCLR/VPP pin function is digital
input, MCLR internally tied to VDD)
#pragma config BOREN = ON
// Brown-out Detect Enable bit (BOD enabled)
#pragma...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • xc8 programer
  • Introducción
  • Introduccion
  • Introduccion
  • Introduccion
  • Introduccion
  • Introduccion
  • Introduccion

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS