Вы находитесь на странице: 1из 11

DESARROLLO DE SOFTWARE PARA SISTEMAS EMBEBIDOS

UNIDAD 2
FASE 3

Tutor:
OSCAR IVN VALDERRAMA

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA UNAD


ESCUELA DE CIENCIAS BSICAS, TECNOLOGA E INGENIERA
SISTEMAS EMBEBIDOS
OCTUBRE DE 2015

INTRODUCCIN

En la realizacin de la presente actividad, se revisaron conceptos de programacin de


sistemas embebidos utilizando el lenguaje Assembler para lo cual se elaborara un manual
con las instrucciones bsicas de programacin haciendo uso de un compilador que est
incluido en todos los sistemas operativos con Windows (Debugger), tambin se incluirn
en esta fase del trabajo los diferentes ensambladores y macroensambladores utilizados
en el desarrollo de sistemas embebidos. En la segunda fase de este trabajo realizaremos
una prctica de desarrollo de software para sistemas embebidos haciendo uso de la
herramienta de la familia Freescale denominada: CodeWarrior. Y para finalizar el
desarrollo del presente trabajo en la fase tres abordaremos el concepto de programacin
de microcontroladores y microprocesadores en lenguaje C para lo cual igual que en la
primera fase se elaborara un manual con las instrucciones bsicas de programacin.

ACTIVIDADES

Fase 1. Assembler
Realice un pequeo manual de cmo programar microcontroladores y
microprocesadores en Assembler. Describa los diferentes ensambladores y
macroensambladores:
R/. Para la ejecucin del programa en Assembler es necesario seguir los pasos de
diseo del algoritmo, codificacin del mismo, su traduccin a lenguaje mquina, la
prueba del programa y la depuracin. En la etapa de diseo se plantea el
problema a resolver y se propone la mejor solucin, creando diagramas
esquemticos utilizados para el mejor planteamiento de la solucin. La
codificacin del programa consiste en escribir el programa en algn lenguaje de
programacin (en este caso en ensamblador 8086), tomando como base la
solucin propuesta en el paso anterior. La traduccin al lenguaje mquina es la
creacin del programa objeto, esto es, el programa escrito como una secuencia de
ceros y unos que pueda ser interpretado por el procesador. La prueba del
programa consiste en verificar que el programa funcione sin errores, o sea, que
haga lo que tiene que hacer. La ltima etapa es la eliminacin de las fallas
detectadas en el programa durante la fase de prueba. La correccin de una falla
normalmente requiere la repeticin de los pasos comenzando desde el primero o
el segundo. Para crear un programa en ensamblador utilizaremos el debugger,
que se encuentra en cualquier PC con el sistema operativo MS-DOS, lo cual lo
pone al alcance de cualquier usuario que tenga acceso a una mquina con estas
caractersticas. Debug solo puede crear archivos con extensin .EXE, y por las
caractersticas de este tipo de programas no pueden ser mayores de 64 kb,
adems deben comenzar en el desplazamiento, offset, o direccin de memoria
0100Hh dentro del segmento especfico.

Fase 2. Software CodeWarrior


Descargue e instale el software CodeWarrior y realice la prctica planteada en la
leccin 10 de la unidad 2. Desarrollo de software para sistemas embebidos,
capitulo 5. Prcticas bsicas y aplicaciones del mdulo del curso el cual puede
descargar de http://datateca.unad.edu.co/contenidos/208006/208006.zip. Anexe
informe y capturas de pantalla del proceso realizado.

Prctica
Una vez descargado e instalado satisfactoriamente el software Codewarrior y al
cumplir con las caractersticas mnimas del ordenador procedemos a la creacin
de un proyecto.
1. Creacin de un proyecto
Ejecucin del ambiente de desarrollo integrado IDE

Despues de elegir la opcin Create New Project y continuando con las


instrucciones del mdulo procedemos a elegir en la ventana Microcontrollers New
Project el dispositivo que usaremos para la simulacin, en este caso se trata del
MC68HC908JL3 perteneciente a la familia JK/JL; as mismo emplearemos el tipo
de conexin Full Chip Simulation como observamos en la siguiente figura tomada
del software CodeWarrior.

Una vez elegido el dispositivo que emplearemos y el tipo de conexin continuamos


el proceso y aparecer la ventana que nos permitir escoger los parmetros con
los que trabajaremos en este caso ser el lenguaje de programacin
Absoluteassembly, seguidamente en Project name asignamos un nombre a
nuestro proyecto para nuestra actividad ser Proyecto_1 y por ltimo en
Location escogemos la ruta de ubicacin donde quedar el proyecto, aqu
dejamos por defecto la ruta C:\Users\w\Documents\Proyecto_1, como se observa
a continuacin.

Damos click en finalizar y por defecto quedan seleccionados los dems


parmetros de configuracin que nos brinda el software.

Esta es la pantalla que nos presenta el software una vez elegidos los parmetros
de trabajo.

2. Escribiendo un programa
A continuacin ingresamos el cdigo sugerido en la prctica y el cual digitaremos
despus de la etiqueta mainLoop

LOOP0
LOOP1

LOOP2

LDA #$FF
INCA
CMP #3
BNE LOOP1
LDA #$FF
LDHX #$1234
LDHX #$4321
LDHX #0
LDX #$FF
INCX
CPX #4
BNE LOOP2
JMP LOOP0

; A = $FF
;A= A+ 1
; A = 3?
; Salto a LOOP1 si A!=3.
; A = $FF = 255
; H:X = $1234
; H:X = $4321
; H:X = $0000
; X = $FF
;X=X+1
; X = 4?
; Salto a LOOP1 si A!=4.
; Salto a LOOP0 (Se Repite el Ciclo)

3. Compilacin y simulacin del proyecto


Para compilar y simular el proyecto primero debemos guardar el programa,
seguidamente damos click en los botones make y debug respectivamente como
se observa en el siguiente pantallazo.

En la ventana anterior true-Time Simulator & Real-Time Debugger podemos


observar que el cdigo no presenta ningn tipo de alerta por error, adems
observamos diferentes comandos que nos permiten controlar la ejecucin del
cdigo durante la simulacin.

Programacin en C

Realice un pequeo manual


microprocesadores en C.

de

cmo

programar

microcontroladores y

R/.
Estructura bsica de un programa en Lenguaje C, consiste en una o varias
Funciones. Basado en est afirmaciones debe existir un mecanismo que
garantiza que todos los programas inicialicen de una misma forma, por lo tanto
hay una funcin que debemos llamar.
Tambin existen algunas reglas bsicas que deben ser seguidas en relacin a los
conceptos de lenguaje.

Toda funcin de C debe ser iniciada por una llave ( { ) y cerrada por otra
llave ( } ).
Los parntesis y las llaves son elementos obligatorios de una funcin.
Todas las instrucciones deben estar dentro de dos llaves.
Las instrucciones en C siempre encerradas por un punto y coma (;).
Las llaves sirven para separar un bloque de instrucciones.

Sintaxis:
//Numero par o impar Felipe Morales
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
int i;
printf( "INTRODUZCA NUMERO Y LUEGO PRESIONE ENTER: ");
scanf("%d",&i);
if (i%2==0)
{ printf("El numero digitado es par.");
}
else;
{
printf("El numero digitado es impar.");

}
getch();
}
El anterior es un ejemplo de lenguaje C donde determina si numero digitado es
impar o par

Pantallazo de la ejecucin del programa:

Debemos aclarar que el programa en C, no se ejecuta en instrucciones; se ejecuta


por sentencias. Una sentencia es algo as como una mega instruccin, que hace lo
que varias instrucciones del ensamblador.
Salvo casos particulares, donde su uso es opcional, una sentencia debe finalizar
con un punto y coma (;). As que tambin podemos entender que los ( ; ) sirven
para separar las sentencias.

BIBLIOGRAFA

Kamal, R. (2008). Embedded systems 2E. Tata McGraw-Hill Education.

Specification and design of embedded systems. Englewood Cliffs, New Jesey,


USA: PTR Prentice Hall, 1994.

Sistema embebido (26 de agosto de 2015). Recuperado el 27 de agosto de 2015


de: https://es.wikipedia.org/wiki/Sistema_embebido

Galeano, G. (2009). Programacin de sistemas embebidos en C (Vol. 1).


Alfaomega.

Prez, F. E. V., &Areny, R. P. (2007). Microcontroladores: fundamentos y


aplicaciones con PIC (Vol. 1149). Marcombo.

Prez, E. M. (2007). Microcontroladores PIC: sistema integrado para el


autoaprendizaje. Marcombo.

Aguayo, P. (2004). Introduccin al Microcontrolador.

Torres, M. (26 de abril de 2007). Tutorial Microcontroladores


Microcontroladores.
Recuperado
el
07
de
septiembre
http://web.ing.puc.cl/~mtorrest/downloads/pic/tutorial_pic.pdf

PIC:
de:

Villamil, G. (2009). Mdulo de Microprocesadores & Microcontroladores.


Universidad Nacional Abierta y a Distancia UNAD. Recuperado el 07 de
septiembre
de:http://datateca.unad.edu.co/contenidos/309696/ECBTI_MPyMC_V_02/material
_didctico.html

Вам также может понравиться