Practica 2
Practica 2
Practica 2
Microprocesadores y
Microcontroladores
Práctica 2
Conocimiento de la plataforma
de desarrollo
Objetivos de aprendizaje
Aprender el manejo del software y Tarjeta de Desarrollo empleados en el
laboratorio.
Material y equipo
Computadora y tarjeta de desarrollo.
Trabajo previo
Estudiar el manual Tiva™ C Series Development and Evaluation Kits for Code Composer
Studio™ (spmu352.pdf)
Desarrollo
Conclusiones
Bibliografía
Manual de Prácticas
Microprocesadores y
Microcontroladores
Desarrollo:
1 Abrir el "Code Composer Studio" del icono del escritorio
2 Seleccionar el espacio de trabajo para los proyectos (se sugiere el de
fault)
3 Seleccionar en la barra superior File-New-CCS Projet
4 En New CCS Projet seleccionar Tarjeta-Tiva C series-
TM4C1294NCPDT
5 En la misma ventana, conexión: Stellaris in- circuit debug interface
6 En la misma ventana, Proyect Name: P2TIVA o el que ustedes elijan
7 En la misma ventana, seleccionar: Empty Proyect (whit main.c)
8 En la misma ventana Finish
9 En el nuevo ambiente, del menú de P2TIVA, eliminar "main.c"
10 En esa misma ventana, barra superior seleccionar: File-New-Source
File
11Escribir en la ventana: Source folder: P2TIVA, Source file:
P2TIVA.asm- Finish
12 Escribir el siguiente programa:
En este ejemplo sencillo, lo que está en negrilla es la estructura básica, el
marco, siempre se escribe,
Lo que no está en negrilla es "nuestro cerebro", es decir el algoritmo para
cumplir con lo que pide el enunciado,
Todos los pasos anteriores se deben seguir para cada práctica, hasta el
paso 12 en donde va a variar el programa de acuerdo con el enunciado
que se nos pida.
El programa es para que se familiaricen con el uso y manejo de Code
Composer Studio, Practiquemos y verifiquemos los modos de
direccionamiento
Manual de Prácticas
Microprocesadores y
Microcontroladores
.global main;
.data; Declara área de datos (RAM)
.text; Declara área de programa (EEPROM)
main
MOVW R3, #0X0008 ;Declara apuntador en R3
MOVT R3, #0X2000 ;R3=0x20000008
MOVW R2, #0X000C ;Declara apuntador en R2
MOVT R2, #0X2000 ;R2=0x2000000C
MOV R4, #0XFA05
STR R4, [R3] ; almacena dicho valor en localidad que apunta R3
LDR R1, [R3] ; carga dicho valor en el registro R1
ADD R0, R1, #0X05FA; ;R1 = FA05 + 05FA = FFFF y se coloca en RO
STR R0, [R2], #0X04 ; almacena FFFF.en la dirección que apunta R2 y lo Post
incrementa en cuatro, es decir, ahora R2 = 0X20000010
SUB R4, #0X05FA ; R4 = FA05-05FA = F40B
STR R4, [R2]; almacena el resultado en la dirección 0X20000010
stop b stop ;salto infinito a stop
.end ;fin de la ejecución
13 Ensamblar el programa con el icono "Build debug for proyect" (martillo) de la barra de
herramientas, verificar errores de sintaxis o construcción, si sólo quedan "warnings" está bien
14 Cargar el programa a la tarjeta con el icono "Debug" (escarabajo) de la barra de
herramientas.
15 Desplegar las áreas de interés, fundamentalmente registros y localidades de memoria.
Para las localidades de memoria, en el File de la barra de herramientas especificar
"Memory Browser", especificar la localidad de interés inicial en hexadecimal y borrar
una cantidad de celdas contiguas para ver los resultados (botón derecho en el área, Fill
memory, especificar la dirección y dar un valor de cero al número de celdas que consideren
necesarias)
16 Correr el programa paso a paso con el icono de la barra de herramientas "Assembly
Step into" (normalmente del lado derecho y en amarillo)
17 comprueba los resultados paso a paso en los registros y localidades de memoria
correspondientes.
Los pasos 13 al 17 siempre se deben considerar, ya que son fundamentales para
ensamblar el programa, bajarlo a la tarjeta ejecutarlo y ver los resultados y comprobar
Manual de Prácticas
Microprocesadores y
Microcontroladores
si cumplen con lo esperado o lo pedido en el enunciado
Cuestionario
1 Explicar que es un apuntador
Un Apuntador es una variable que contiene una dirección de memoria, la
cual corresponderá a un dato o a una variable que contiene el dato. Cada
variable que se utiliza en una aplicación ocupa una o varias posiciones de
memoria. Estas posiciones de memoria se accesan por medio de una
dirección.
2 explicar como funciona el post incremento en un apuntador
El incremento de un puntero hace que la dirección aumente en un valor
que corresponde al tamaño del tipo de dato. Si el tipo de dato es byte,
entonces la nueva dirección sería 0 + 1 = 1
Conclusiones:
Mi conclusión de esta practica es que ya se como se trabaja en la
plataforma de ccs y por supuesto como hacer un programa, el cual
trabaja en base de registros y lenguaje ensamblador, vistos en clase de
teoría, en donde vimos instrucciones y operaciones fáciles para que de
Manual de Prácticas
Microprocesadores y
Microcontroladores