Está en la página 1de 24

ELEMENTOS DE PROGRAMACIN DE UN MICROCONTROLADOR

Asignatura: Microcontroladores Profesor: M.C. Jos Luis Gallegos Ramrez Integrantes: Alan Emmanuel Aquino Andrade Luis Enrique Pichardo Torres Ricardo Pacheco Berrones Diego Caldera Rodrguez Matrcula: UP100243 UP100618 UP100235 UP100256
Aguascalientes, Ags. 5 de Julio de 2012

INTRODUCCIN
Cuando deseamos programar un PIC, solamente podremos hacerlo de la mejor manera si antes hemos considerado una serie de factores que determinarn la conducta del sistema a controlar. Para ello debemos considerar, entre otros aspectos, las facilidades y necesidades del hardware, el lenguaje de programacin a utilizar, y las caractersticas especficas del PIC en cuestin.

PROGRAMACIN Y PRUEBAS
Estudio del sistema Para poder programar exitosamente un PIC, primero debemos conocer totalmente el sistema a controlar. As, el primer paso del proceso de programacin consta de estudiar exhaustivamente el sistema.

PROGRAMACIN Y PRUEBAS
Determinacin del PIC a utilizar Ya conocido el sistema, debemos seleccionar un modelo de entre la multitud existente, considerando las caractersticas del chip que mejor se ajusten a las necesidades de nuestro sistema, tales como: Nmero de entradas/salidas Temporizadores Convertidores A/D Comparadores de tensin Soporte de interfaz USB

PROGRAMACIN Y PRUEBAS
Generacin del programa Una vez conocidos los parmetros de operacin del sistema, nos disponemos a escribir el programa a ejecutar por el microcontrolador, ya sea en lenguaje de bajo o alto nivel. Posteriormente se convierte el programa a cdigo mquina y se escribe en el chip.

Es importante dar una estructura organizada a nuestro programa, esto resulta de mucha ayuda para una rpida localizacin de errores o secciones a modificar si se da el caso.

PROGRAMACIN Y PRUEBAS
Simulacin y pruebas

En este punto se disea, simula virtualmente y de preferencia construye un prototipo de prueba que nos ayude a comprobar el correcto funcionamiento del microcontrolador; antes de implementarlo en el sistema real. Tambin tiene como objetivo identificar posibles fallas y no estropear el sistema.

PROGRAMACIN Y PRUEBAS
Implementacin Finalmente, tras haber pulido el funcionamiento del microcontrolador, se puede integrar al sistema destinado y que comience su trabajo.

PASOS DE PROGRAMACIN

Paso 1
Elegir el microcontrolador que vamos a utilizar dependiendo del problema planteado e incluirlo al principio del programa.

Paso 2
Tenemos que elegir las funciones del microcontrolador que vamos a necesitar y agregar dichas funciones(fusibles).

Paso 3
Elegir a que frecuencia trabajar dicho microcontrolador(elegir el reloj).

Paso 4
Elegir las interrupciones si es que habr interrupciones, si no, omitir este paso.

Paso 5
Debemos elegir las libreras que necesitaremos.

Paso 6
Declaramos un void config, para llamar la configuracin de nuestro microcontrolador, que estar al final de nuestro programa.

Paso 7
Aqu es donde declaramos las variables que utilizaremos en nuestro programa.

Paso 8
Aqu es donde esta el void man, o sea la parte principal del programa, el cul ya depende de la necesidad que se necesita solventar y la lgica de cada persona.

Paso 9
Al final, es donde se encuentra nuestra configuracin del microcontrolador (void config), que tambin tiene que llevar el set tris para declarar los puertos como entradas o salidas.

TIPS QUE NOS AYUDARN A PROGRAMAR DE MANERA EFICIENTE


El Datasheet del microcontrolador Las hojas de datos son los documentos ms importantes que debemos acopiar al momento de decidirnos e inclinarnos por un determinado tipo de microcontrolador. El pseudo-cdigo Escribir en un papel todos los pasos que seguir tu programa puede ser una ayuda muy importante mientras vas redondeando la idea final. Organiza y guarda estructuras pre-armadas A medida que vayas utilizando un microcontrolador en particular y comiences a utilizarlo reiteradamente, te resultar cmodo tener a mano una estructura estandarizada de conexiones y bloques de programas.

Aprender la sintaxis de tu lenguaje Un programa en cualquier lenguaje se puede concebir como un string de caracteres escogidos de algn conjunto o alfabeto de caracteres. Las reglas que determinan si un string es un programa vlido o no, constituyen la sintaxis de un lenguaje.
Tu equipo en condiciones En ocasiones un programa suele fallar por cuestiones ajenas a la configuracin, es importante revisar el hardware utilizado, es posible que el problema se encuentre ah.

Watchdog Timer (WDT)


Es un temporizador de bits especficos, puede ser de 16 o 8. Al iniciarse un programa, el watchdog timer est activo y configurado por defecto con un intervalo de reset.

No puede ser deshabilitado a menos que sea en el primer ciclo de reloj despus del RESET o cuando el sistema se encuentra en modo STOP.

Las principales prcticas en cuanto al uso de WDT, son las siguientes: Reiniciar el microprocesador despus de que ocurra una falla o problema de software, o despus de un intervalo de tiempo determinado generado por el programador, en cuyo caso se reinicia el micro o el programa en ejecucin. El reset puede evitarse si se reinicia el WDT por medio de la ejecucin de la instruccin CLRWDT antes del final de su perodo.

Para refrescar WDT siguen tres sencillas reglas, y son las siguientes: 1) Se comenzar a borrar en la rutina principal del programa. 2) A lo largo del programa se borrara el menor nmero de veces posible. 3) Siempre se evitar resetearlo en la rutina de interrupciones (si las hay).

Clculo para obtener el valor mximo de refresco para el WDT Primero tenemos que considerar si es de 8 o 16 bit. Despus consideramos el valor del cristal, en este caso un cristal interno. Fijamos el pre escalar del WDT. Ejemplo: Cristal interno 4Mhz, pre escalar 1:64, 8 bit 4Mhz/4=1Mhz ; 1Mhz/64 = 15625Hz ; 255/15625 = 16,32mseg. El cual es el tiempo mximo estimado para el WDT.

Diferencias entre ensambladores y compiladores


Los ensambladores y los compiladores son dos tipos de programas de computadoras que sirven para el mismo propsito: para convertir code-tocode legibles para humanos de manera que puedan ser entendidos por una computadora.

Ensamblaje Los ensambladores producen cdigo mquina de un lenguaje llamado "ensamblador". Cada comando en este lenguaje, por lo general, corresponde a un nico comando en cdigo mquina.
Lenguajes de alto nivel Los compiladores producen cdigo mquina al interpretar un lenguaje de alto nivel. La mayora de los comandos en lenguajes de alto nivel, tales como C y Java, no se corresponden con ningn comando en cdigo mquina, y el proceso de traduccin de uno al otro puede ser complejo.

Diferencias entre ensambladores y compiladores


Beneficios del ensamblador La relacin uno a uno del ensamblaje con los comandos que el procesador de la computador est poniendo en funcionamiento y el hardware especfico de la mquina asegura que un programa de ensamblaje escrito eficiente superar los cdigos ms complejos producidos al compilar un lenguaje de alto nivel. Es as que el ensamblaje es una buena eleccin cuando el funcionamiento es primordial, al igual que en los motores de grficos, o cuando estn disponibles los recursos de hardware se comparan de menor forma con aquellos de una computadora personal, al igual que en un sistema de control de un horno microondas. Beneficios de la compilacin En la mayora de los casos, los pocos beneficios del funcionamiento del ensamblaje escrito eficiente no compensan su falta de abstraccin de hardware y su dificultad relativa en uso, en comparacin con niveles ms altos de los lenguajes compilados, tales como C++. Es por esta razn que casi todos los softwares estn escritos en un lenguaje de alto nivel compilado.

También podría gustarte