Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad

manual de practicas ejercicio 1, Guías, Proyectos, Investigaciones de Arquitectura de ordenadores

guia ejercicio 1 arquitectua de comp

Tipo: Guías, Proyectos, Investigaciones

2021/2022

Subido el 21/06/2023

adler-alonso-juarez-mendez
adler-alonso-juarez-mendez 🇲🇽

2 documentos

1 / 7

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
1INGENIERIA EN SISTEMAS COMPUTACIONALES Arquitectura de computadoras
Ejercicio 1: Encender y apagar un led
Introducción
Este será el ejercicio inicial el clásico “Hola mundo” en programación de PIC´s.
La aparentemente simple tarea de hacer que un LED conectado a uno de los pines de salida del PIC se ilumine
(todavía sin pensar hacer que parpadee o realice otra labor) requiere lo siguiente:
Ser capaz de usar un entorno de desarrollo (o un editor de código) para pasar de simple texto a
código compilado.
Configurar correctamente el PIC.
Escribir código que realice la tarea (en este caso colocar el pin correcto en “alto” o “bajo”.
Tener un circuito funcional en un simulador o en un protoboard.
Utilizar correctamente un programador para “cargar” el programa en el dispositivo
Si pueden hacer que un LED se encienda, entonces saben que tienen un conocimiento de desarrollo,
programación y prototipado, así como han entendido lo suficiente la arquitectura e instrucciones del PIC.
Esto es una base firme para que puedan trabajar
Un poco de teoría:
Como sabemos una computadora ejecuta código carga el código de la memoria no volátil, como un disco duro, y
ejecutando en la memoria volátil que llamamos RAM.
Instrucciones + datos = resultados
Con microcontroladores PIC es el mismo. Cuando un PIC se inicia, la unidad de aritmética lógica comienza un
contador especial llamado un programa contador a 0 y secuencialmente se ejecuta una instrucción tras otra,
incrementar el contador de programa cada vez que se ejecuta una instrucción.
En los dispositivos PIC de 16F887, existen tres tipos de memoria: memoria de datos, memoria de programa y
memoria EEPROM. En esta práctica aprenderemos cómo acceder y utilizar la memoria de datos.
Para utilizar la memoria de programa sólo debe conocer la localización hexadecimal de esa memoria. Ser un
microcontrolador de 8 bits, el PIC tiene que utilizar un truco especial llamado paginación para ampliar su rango
de memoria direccionable últimos 256 bytes.
pf3
pf4
pf5

Vista previa parcial del texto

¡Descarga manual de practicas ejercicio 1 y más Guías, Proyectos, Investigaciones en PDF de Arquitectura de ordenadores solo en Docsity!

INGENIERIA EN SISTEMAS COMPUTACIONALES Arquitectura de computadoras

Ejercicio 1: Encender y apagar un led

Introducción

Este será el ejercicio inicial el clásico “Hola mundo” en programación de PIC´s. La aparentemente simple tarea de hacer que un LED conectado a uno de los pines de salida del PIC se ilumine (todavía sin pensar hacer que parpadee o realice otra labor) requiere lo siguiente:  Ser capaz de usar un entorno de desarrollo (o un editor de código) para pasar de simple texto a código compilado.  Configurar correctamente el PIC.  Escribir código que realice la tarea (en este caso colocar el pin correcto en “alto” o “bajo”.  Tener un circuito funcional en un simulador o en un protoboard.  Utilizar correctamente un programador para “cargar” el programa en el dispositivo Si pueden hacer que un LED se encienda, entonces saben que tienen un conocimiento de desarrollo, programación y prototipado, así como han entendido lo suficiente la arquitectura e instrucciones del PIC. Esto es una base firme para que puedan trabajar

Un poco de teoría:

Como sabemos una computadora ejecuta código carga el código de la memoria no volátil, como un disco duro, y ejecutando en la memoria volátil que llamamos RAM. Instrucciones + datos = resultados Con microcontroladores PIC es el mismo. Cuando un PIC se inicia, la unidad de aritmética lógica comienza un contador especial llamado un programa contador a 0 y secuencialmente se ejecuta una instrucción tras otra, incrementar el contador de programa cada vez que se ejecuta una instrucción. En los dispositivos PIC de 16F887, existen tres tipos de memoria: memoria de datos, memoria de programa y memoria EEPROM. En esta práctica aprenderemos cómo acceder y utilizar la memoria de datos. Para utilizar la memoria de programa sólo debe conocer la localización hexadecimal de esa memoria. Ser un microcontrolador de 8 bits, el PIC tiene que utilizar un truco especial llamado paginación para ampliar su rango de memoria direccionable últimos 256 bytes.

INGENIERIA EN SISTEMAS COMPUTACIONALES Arquitectura de computadoras Los dispositivos de 16F887 tienen su memoria de datos dividida en 4 bancos de 128 bytes cada uno. Cada banco se accede mediante el movimiento de un número a un registro llamado el Banco seleccione Registro (BSR). Para acceder al contenido de un registro particular, salvo registros especiales no bancarizados que se puede acceder desde cualquier banco, tienes que estar en el Banco de dicho registro.

INGENIERIA EN SISTEMAS COMPUTACIONALES Arquitectura de computadoras Estos son los registros de selección analógicas (los registros Ansel), y los registros tri-estado (Registros TRIS). Una salida tri-estado puede ser un 1, un 0 o una alta impedancia. El estado de alta impedancia se utiliza cuando el pin en cuestión va a ser una entrada, los otros 2 casos para salidas. Es importante recordar que no todos los pines cuentan con el registro Ansel, pero todos cuentan con un registro TRIS Debido a que ninguno de los pines será una entrada analógica y que solo necesitaremos una salida para el LED, podemos poner todos los pines del puerto a utilizar como salida, utilizando clrf para poner en cero el registro TRISC, en el caso del puerto C, este no cuenta con un registro Ansel. Los únicos puertos con registro Ansel en el PIC16F887 son el puerto A y B (para más información revisen la hoja de características del microcontrolador)

Temporización

Para mantener lo mas simple posible el programa procederemos a usar una temporización por software. Manteniendo en mente la simplicidad usaremos una calculadora online para generar esto a nuestra conveniencia. Para añadir esto a nuestro código simplemente copiamos tanto la rutina como la declaración de variables, para las variables es recomendable usar cblock tal y como se ha mencionado anteriormente. Con estas bases preparadas nos resultará mucho más fácil el comenzar a escribir el código, pero si aún tenemos alguna pequeña duda utilizar un diagrama de flujo nos dará una mejor idea de cómo deberá ser la estructura que debemos seguir en nuestro programa.

INGENIERIA EN SISTEMAS COMPUTACIONALES Arquitectura de computadoras Con los comentarios puestos y el diagrama de flujo al lado resulta LIST p=16F887 ;tell assembler what chip we are using #include<P16F887.INC> __CONFIG _CONFIG1, _INTOSCIO & _WDT_OFF & _PWRTE_ON & _MCLRE_ON & _CP_OFF & _CPD_OFF & _BOR_OFF & _IESO_ON & _FCMEN_ON & _LVP_OFF __CONFIG _CONFIG2, _BOR40V & _WRT_OFF CBLOCK h'20' DCounter DCounter DCounter ENDC BANKSEL TRISC ;cambiamos al banco 1 para configurar puertos como entrada y salida CLRF TRISC ;ponemos todo el puerto en 0 o lo ponemos como salidas BANKSEL PORTC ; pasamos al banco 0 para leer/ escribir datos INICIO BSF PORTC,1;PONEMOS UN 1 EN EL PIN 1 DEL PUERTO C CALL DELAY;ESPERAMOS .5s BCF PORTC,1;PONEMOS UN 0 EN EL PUERTO CALL DELAY;esperamos .5s GOTO INICIO ;subrrutina de retardo por software de 0.5s DELAY MOVLW 0X MOVWF DCounter MOVLW 0X8a MOVWF DCounter MOVLW 0X MOVWF DCounter LOOP DECFSZ DCounter1, 1 GOTO LOOP DECFSZ DCounter2, 1 GOTO LOOP DECFSZ DCounter3, 1 GOTO LOOP NOP RETURN ;fin de la rutina de retraso END ;todo debe tener un fin no?

INGENIERIA EN SISTEMAS COMPUTACIONALES Arquitectura de computadoras cómo les comenté en clase, realicen la modificación, compilen, simulen, hagan su reporte explicando que los pasos que siguieron, que hicieron y por qué lo hicieron, compilen, simulen y escriban una conclusión.