You are on page 1of 14

Universidad de Colima

Facultad de Telemática

Sistemas Embebidos

Manual de Prácticas Curso 2015

Ing. José Marcos Puente Medina

Consideraciones Generales

Cada una de las prácticas debe de tener un diagrama electrónico de referencia que será creado por cada uno de los equipos según las especificaciones de la práctica que se este evaluando.

El hardware creado para la evaluación de la práctica es por equipo, por lo cual no se pueden entregar prácticas con hardware de un equipo diferente.

El software creado para la práctica es por equipo, no se pueden transferir software entre equipos.

Se debe de crear un diagrama de flujo para indicar la secuencia lógica que debe de seguir el sistema embebido.

Es recomendable crear el diagrama de flujo antes de iniciar la codificación. Esta debe de ser una ayuda en la práctica.

Práctica 1

Uso de los Puertos en Modo Salida

Objetivo El alumno creará un sistema embebido que será un contador de anillo con rotación a la izquierda con un retraso entre cada uno de los estados del contador de 1 segundo. Cada uno de los equipos usara un puerto diferente del microcontrolador para tal finalidad.

Diagrama (s)

Diagrama de Bloques

PIC

Diagrama Electrónico básico

Puerto de Salida
Puerto
de
Salida

s

LED
LED
PIC Diagrama Electrónico básico Puerto de Salida s LED Puntos a revisión 1. Verificación del proceso

Puntos a revisión

1. Verificación del proceso en el diagrama de flujo.

2. Que el sistema embebido despliegue el contador de anillo en el puerto que le corresponde al equipo.

3. Que cumpla con la temporización especificada de 1 segundo entre cada uno de los estados del contador.

5.

Presentación donde se explicarán los puntos más importantes del software y del hardware creado. Además aquí se verificara la coherencia entre el diagrama de flujo y el software creado.

6. Solo para esta práctica se harán dos versiones de software. La primera de ellas en lenguaje ensamblador MPASM y la segunda en ANSI C con el compilador CSS PICC

Tips

El microcontrolador tiene puertos de propósito general, es decir son bidireccionales (entrada-salida), es importante configurarlos de forma adecuada a la necesidad de la práctica.

El microcontrolador tiene multiplexadas múltiples funciones con cada uno de los puertos que tiene a disposición. Verifica en la hoja de datos del microcontrolador como seleccionar solo la función que necesitas.

En ensamblador trabajaras modificando cada uno de los registros de propósito especial (SFR) del microcontrolador (PIC) para lograr que el PIC realice la función que le requieres.

En C hay funciones que son propias del compilador que se encargan de modificar los SFR’s por ti. Averigua que función realiza la acción que requieres. Esto lo puedes hacer buscando en la ayuda del compilador.

Investiga Multiplicaciones por sumas sucesivas o desplazamientos de bits.

El puerto A tiene una consideración especial en uno de sus pines.

Investiga Open Drain Output

Investiga capacítores de acoplo y desacoplo

El oscilador es una parte fundamental del uC, asegúrate de aprender su construcción y no lo olvides verificar en todas tus demás prácticas.

Práctica 2

Uso de los Puertos en Modo Entrada

Objetivo El alumno creara un sistema embebido que realice una suma con los valores presentes en los puertos C y D; donde cada uno de ellos será un sumando. La suma debe de representarse en los puertos A y B. Será una suma solo de valores positivos, donde el valor máximo que se puede representar será el equivalente a la suma de dos variables de 8 bits.

Diagrama (s) Diagrama de Bloques

1 y 0 lógicos

Puerto C Puerto D
Puerto C
Puerto D

Puntos a revisión

PIC

1. Verificación del proceso en el diagrama de flujo.

s

LED
LED
Puerto A
Puerto A
Puerto B
Puerto B

2. Que el sistema embebido despliegue la suma de los diferentes valores que van ingresando al sistema.

3. Que este bien realizado el diagrama electrónico correspondiente.

4. Presentación donde se explicarán los puntos más importantes del software y del hardware creado. Además aquí se verificara la coherencia entre el diagrama de flujo y el software creado.

Tips

Asegúrate de definir los puertos en entrada y salida según se requieren.

Observa el ancho de bits de cada uno de los puertos que estas usando e identifica la forma de lograr que toda la información generada se despliegue de forma correcta. Usa lo aprendido en la práctica anterior.

Es importante identificar los valores que almacenaremos en cada una de las variables que estaremos usando para declararla del tipo necesario. Investiga los diferentes tipos de variables que se pueden asignar en PICC.

Repasa los sistemas de numeración en especial binario, hexadecimal y decimal.

Práctica 3

Manejo de la interrupción por cambio del estado del Puerto B

Objetivo El alumno realizará un sistema embebido con la finalidad de aprender a manejar uno de los recursos más importantes dentro de los Sistemas Embebidos, la Interrupción. En está práctica deberá de hacer que su sistema identifique a través de 4 pines (RB4:RB7), que estarán conectados a la interrupción por cambio de estado (“Interrupt on change”), que operación desea realizar el usuario a través de saber que “push-button” presionó. Y quedando de la siguiente manera:

RB4. SUMA

RB5. RESTA

RB6. MULTIPLICACIÓN

RB7. DIVISIÓN ENTERA

Los operandos de cada una de las operaciones serán como en la práctica 2 siendo Puerto C sumando-sustraendo-multiplicando-divisor. Y Puerto D sumando-minuendo- multiplicador-dividendo, Con la excepción de que en la parte de resultados serán solo 10 bits los que se usarán para representar el resultado y se representarán resultados negativos.

Diagrama (s) Diagrama de Bloques

1 y 0 lógicos

Puerto C Puerto D
Puerto C
Puerto D

Puerto B

Push button/

Arreglo RC

INTERRUPCION PIC
INTERRUPCION
PIC

s

LED
LED
Puerto A
Puerto A
Puerto B
Puerto B

Puntos a revisión

1. Verificación del proceso en el diagrama de flujo.

2. Que el sistema embebido permita al usuario elegir la operación a llevar acabo y que despliegue el resultado de la operación seleccionada.

3. Que este bien realizado el diagrama electrónico correspondiente.

4. Presentación donde se explicarán los puntos más importantes del software y del hardware creado. Además aquí se verificara la coherencia entre el diagrama de flujo y el software creado.

Tips

Investiga el arreglo RC (debouncer o antirebote) para conectar los push buttons.

Investiga Complemento a 2.

Investiga los diferentes tipos de divisiones que se pueden realizar en C.

Investiga el manejo de interrupciones en PICC.

Lee la sección de Interrupciones de la hoja de datos del PIC.

Investiga acerca de la programación por Polling.

Práctica 4

Uso del Timer 0 en modo temporizador como auxiliar en la temporización de

Tareas.

Objetivo El alumno creará un sistema embebido que con la utilización del periférico llamado Timer 0 y su interrupción le servirán como base de tiempo para la temporización de 3 diferentes tareas. Las cuales serán 3 incrementos en 3 diferentes puertos de la siguiente forma:

Puerto B se incrementará cada segundo.

Puerto C se incrementará cada dos segundos.

Puerto D se incrementará cada tres segundos.

El incremento será en pasos de 1 y se reciclará el contador si llegara a su máximo valor.

Diagrama (s) Diagrama de Bloques

INTERRUPCION PIC TIMER 0
INTERRUPCION
PIC
TIMER 0

Puntos a revisión

Puerto B Puerto C Puerto D
Puerto B
Puerto C
Puerto D

Ds

LE
LE

1.

Verificación del proceso en el diagrama de flujo.

2.

Presentación de los cálculos de la frecuencia de desbordamiento de Timer0

3.

Que el sistema embebido evolucione los 3 contadores a la frecuencia convenida y en los puertos especificados.

4.

Que este bien realizado el diagrama electrónico correspondiente.

5.

Presentación donde se explicarán los puntos más importantes del software y del hardware creado. Además aquí se verificara la coherencia entre el diagrama de flujo, el software creado y los cálculos especificados.

Tips

Crea una base de tiempo que sea múltiplo de las 3 frecuencias necesarias.

Identifica la frecuencia a la cual Timer 0 estará generando la interrupción

Lee la sección de Timer 0 en la hoja de datos del PIC.

Usar TMR0 en carrera libre

Práctica 5

Uso del Convertidor Análogo Digital (ADC)

Objetivo El alumno creara un sistema embebido que registrara información de un sensor analógico de temperatura LM35 a través de su ADC usando uno de sus canales. Una vez obtenida la información se procesará en el software para mostrarse a través de 3 displays de 7 segmentos en el formato de decena, unidad y decimal. La temperatura se actualizara a una frecuencia de 3 Hz. A partir de esta práctica y todas las subsecuentes, las temporizaciones o especificaciones de tiempo de cualquier tipo no deben de hacerse con delays, sino con interrupciones.

Diagrama (s) Diagrama de Bloques

sino con interrupciones. Diagrama (s) Diagrama de Bloques LM35 Puntos a revisión PIC ADC 1. Verificación

LM35

Puntos a revisión

PIC ADC
PIC
ADC
(s) Diagrama de Bloques LM35 Puntos a revisión PIC ADC 1. Verificación del proceso en el

1. Verificación del proceso en el diagrama de flujo.

DISPLAYS 7

Segmentoss

DECEN

A

DECEN A UNIDA D DECIMA L

UNIDA

D

DECEN A UNIDA D DECIMA L

DECIMA

L

2. Que el sistema embebido muestre los dígitos de forma correcta e interprete a salida del sensor de forma correcta. Esta verificación se hará con un multímetro.

3. Que este bien realizado el diagrama electrónico correspondiente.

4. Presentación donde se explicarán los puntos más importantes del software y del hardware creado. Además aquí se verificara la coherencia entre el diagrama de flujo y el software creado.

Tips

Usa tus conocimientos adquiridos en las prácticas previas para generar la Temporización necesaria.

Utiliza una tabla para codificar los códigos BCD necesarios.

Lee la sección del ADC del PIC.

Investiga acerca del lsb en la conversión Análoga Digital y su utilidad en la obtención del valor que arroja el sensor.

Investiga que es un ADC.

Práctica 6

Usar la interfaz serial para comunicarse con la computadora.

Objetivo Que el alumno cree un sistema embebido donde a través de configurar el módulo

USART generara una comunicación bidireccional con la computadora, donde se mostrara las magnitudes leídas de los sensores. Se debe de adaptar eléctricamente la señal para poder comunicarse con la computadora. Se debe de generar una rutina que usando interrupciones controle un menú y configure parámetros de aplicación, como:

-OFFSET de sensores en ± 2 unidades -Cadencia de Actualización: intervalos de 1 segundo hasta 10 segundos máximo. -Versión de Firmware. -Resolución de los sensores.

El vector a usar debe de ser circular.

Diagrama (s)

LM35

LM35 BOB- 08688

BOB-

08688

debe de ser circular. Diagrama (s) LM35 BOB- 08688 Puntos a revisión UART PIC ADC MAX232

Puntos a revisión

UART PIC ADC
UART
PIC
ADC
MAX232
MAX232

PC

1.

Verificación del proceso en el diagrama de flujo.

2.

Creación de un documento digital donde se muestre el protocolo de comunicación elegido. Con formatos de instrucciones y tramas. Y ejemplos de cada uno de ellos

3.

Que el sistema embebido realice la comunicación con la computadora de forma correcta.

4.

Que este bien realizado el diagrama electrónico correspondiente.

5.

Presentación donde se explicarán los puntos más importantes del software y del hardware creado. Además aquí se verificara la coherencia entre el diagrama de flujo y el software creado.

Tips

Verifica la hoja de datos del circuito integrado MAX232

Verifica la disposición de los pines del conector DB9 y el protocolo RS-

232

Verificar el funcionamiento de la UART

Investiga #use RS232.

Práctica 7

Uso del canal de comunicación I2C

Objetivo Configurar y usar el canal de comunicación serial I2C para comunicarse con el RTC DS1307.

Deberán de Mostrar la fecha y hora, y actualizarla en la interfaz serial. Además de que al quitarle el voltaje de alimentación principal y reconectarla, deberá de continuar con la fecha actual.

Se usara la interfaz serial para configurar la fecha y hora del reloj.

Diagrama (s)

DS1307

configurar la fecha y hora del reloj. Diagrama (s) DS1307 Puntos a revisión UART PIC I2C

Puntos a revisión

UART PIC I2C
UART
PIC
I2C
MAX232
MAX232

PC

1.

Verificación del proceso en el diagrama de flujo.

2.

Creación de un documento digital donde se muestre el protocolo de comunicación elegido. Con formatos de instrucciones y tramas. Y ejemplos de cada uno de ellos

3.

Que el sistema embebido muestre la actualización de la hora cada segundo, y que al momento de retirar la alimentación principal no pierda los valores y se mantenga corriendo el reloj.

4.

Que este bien realizado el diagrama electrónico correspondiente.

5.

Presentación donde se explicarán los puntos más importantes del software y del hardware creado. Además aquí se verificara la coherencia entre el diagrama de flujo y el software creado.

Tips

Investiga que es I2C, sus roles principales, su modo de arbitraje y las velocidades de trabajo que tiene.

Investiga #use I2C

Práctica 8

Uso del módulo de Captura/ Comparación/ PWM (CCP)

Objetivo El alumno creará un sistema embebido que hará uso del modulo CCP para crear una onda de 1 KHz . La cual variara su ciclo de trabajo entre un 10% y un 90% en respuesta a un potenciómetro.

El resultado de esta práctica se visualizara a través de un Osciloscopio.

Diagrama (s)

Potenció

metro

Puntos a revisión

CCP PIC ADC
CCP
PIC
ADC

1. Verificación del proceso en el diagrama de flujo.

Osciloscopio

2. Que el sistema embebido genere la onda conforme se requiere y el ciclo de trabajo se modifique según se gira el potenciómetro.

3. Que este bien realizado el diagrama electrónico correspondiente.

4. Presentación donde se explicarán los puntos más importantes del software y del hardware creado. Además aquí se verificara la coherencia entre el diagrama de flujo y el software creado.

Tips

Investiga CCP en la hoja datos del PIC y del libro

Investiga ¿Qué es una modulación? Y ¿Para qué sirve?

Investiga acerca de las partes de una Onda

Investiga acerca de PWM

Práctica 9

Visualización de Datos a través de 4 displays de 7 segmentos

Objetivo Crear un sistema embebido donde el alumno a través de usar el sensor de temperatura digital mostrará la temperatura leída a través de 4 displays de 7 segmentos multiplexados. El punto decimal será flotante de tal forma que permita mostrar la temperatura cuando sea mayor o igual a 100 con un decimal. Y cuando sea menor a 100 mostrará la temperatura con dos decimales. La frecuencia de actualización de la temperatura será de 3 Hz.

Diagrama (s)

RHT03

de la temperatura será de 3 Hz. Diagrama (s) RHT03 Puntos a revisión PIC 1. Verificación

Puntos a revisión

PIC

será de 3 Hz. Diagrama (s) RHT03 Puntos a revisión PIC 1. Verificación del proceso en
será de 3 Hz. Diagrama (s) RHT03 Puntos a revisión PIC 1. Verificación del proceso en

1. Verificación del proceso en el diagrama de flujo.

2. Que el sistema embebido muestre la temperatura de forma correcta en los displays.

3. Que este bien realizado el diagrama electrónico correspondiente.

4. Presentación donde se explicarán los puntos más importantes del software y del hardware creado. Además aquí se verificara la coherencia entre el diagrama de flujo y el software creado.

Tips

Usa tus conocimientos adquiridos en prácticas anteriores.

Investiga el efecto de retención retiniana y en que nos beneficia en la multiplexación.

Investiga acerca de transistores (tipos, características, usos, arreglos, etc.)

Práctica 10

Visualización de Datos a través de una pantalla LCD

Objetivo Crear un sistema embebido que visualice la información de los sensores analógico y digital a través de la pantalla LCD. El alumno hará uso de la librería llamada LCD.c que ya viene incluida en el compilador. La cadencia de refrescado de la información será de 3 Hz por sensor.

Diagrama (s)

RHT03

LM35

será de 3 Hz por sensor. Diagrama (s) RHT03 LM35 Puntos a revisión PIC LCD 1.

Puntos a revisión

PIC

por sensor. Diagrama (s) RHT03 LM35 Puntos a revisión PIC LCD 1. Verificación del proceso en

LCD

1. Verificación del proceso en el diagrama de flujo.

2. Que el sistema embebido muestre la temperatura de forma correcta en la pantalla LCD.

3. Que este bien realizado el diagrama electrónico correspondiente.

4. Presentación donde se explicarán los puntos más importantes del software y del hardware creado. Además aquí se verificara la coherencia entre el diagrama de flujo y el software creado.

Tips

Usa la librería ya incluida y busca documentación en línea.