Vous êtes sur la page 1sur 26

Escuela Tcnica de Ingenieros de Telecomunicacin Departamento de Tecnologa Electrnica Universidad de Vigo

Microcontroladores

SISTEMAS ELECTRNICOS DIGITALES


BLOQUE 3 MICROCONTROLADORES (PARTE 3)
DESARROLLO DE SISTEMAS ELECTRNICOS DIGITALES BASADOS EN UN MICROCONTROLADOR HERRAMIENTAS HARDWARE Y SOFTWARE Enrique Mandado Prez Mara Jos Moure Rodrguez

Escuela Tcnica de Ingenieros de Telecomunicacin Departamento de Tecnologa Electrnica Universidad de Vigo

Microcontroladores

DESARROLLO DE SISTEMAS ELECTRNICOS BASADOS EN MICROCONTROLADORES


Los microcontroladores son sistemas digitales complejos que se caracterizan por el hecho de que, en general, antes de realizar un prototipo es conveniente comprobar su funcionamiento de acuerdo con las especificaciones. Esto da lugar a que su proceso de diseo se pueda dividir de forma simplificada en cuatro fases:

Descripcin del sistema


Es la fase en la que se especifica la funcin que debe realizar el sistema. En ella hay que utilizar mtodos que faciliten la documentacin del sistema y la posterior verificacin de su funcionamiento.

Diseo del hardware y del software


Utilizacin de herramientas de hardware y software para desarrollar el sistema

Verificacin del funcionamiento del sistema


Fase en la que se comprueba el correcto funcionamiento del sistema y se optimiza su diseo sin que sea imprescindible proceder a la realizacin de un prototipo.

Implementacin del sistema


Fase en la que se lleva a cabo el tratamiento de la informacin obtenida en la fase de descripcin y se realiza fsicamente el sistema mediante alguno de los tipos de circuitos integrados que los fabricantes de los mismos ponen a disposicin de los diseadores de sistemas electrnicos.

Escuela Tcnica de Ingenieros de Telecomunicacin Departamento de Tecnologa Electrnica Universidad de Vigo


INICIO

Microcontroladores

DESCRIPCIN FUNCIONAL DEL SISTEMA

REALIZACIN DEL ESQUEMA DEL HARDWARE

EDICIN DEL PROGRAMA SIMULACIN DEL PROGRAMA

DESARROLLO DE SISTEMAS ELECTRNICOS BASADOS EN MICROCONTROLADORES

Resultado Correcto? SI IMPLEMENTACIN EN UNA PLACA DE DESARROLLO

NO

GRABACIN DEL PROGRAMA EN EL MICROCONTROLADOR

VERIFICACIN

NO

Resultado Correcto? SI MNIMO HARDWARE

Ordinograma del proceso de diseo e implementacin de un sistema electrnico basado en microcontroladores.


NO

SI IMPLEMENTACIN DEL PROTOTIPO EN CIRCUITO IMPRESO VERIFICACIN

NO

Resultado Correcto? SI FABRICACIN

INSTALACIN EN UNA CAJA FIN

Escuela Tcnica de Ingenieros de Telecomunicacin Departamento de Tecnologa Electrnica Universidad de Vigo

Microcontroladores

DESARROLLO DE SISTEMAS ELECTRNICOS BASADOS EN MICROCONTROLADORES


Sistema o Entorno de desarrollo de un microcontrolador
Conjunto de recursos utilizados para desarrollar el sistema fsico y el programa, transferir ste a la memoria del microcontrolador y verificar su funcionamiento. Est formado por un conjunto de herramientas de hardware y herramientas de software.

Herramientas de hardware
Facilitan la prueba real de los programas y el desarrollo rpido de prototipos en aquellos casos en los que no es imprescindible minimizar la complejidad del hardware. Las principales herramientas hardware son: Placas de prototipos o entrenadores Grabadores o programadores Depuradores en el sistema Emuladores

Herramientas de software
Facilitan el diseo del programa, la verificacin de su funcionamiento y su transferencia a la memoria del microcontrolador. Las principales herramientas de software son: Editores y compiladores Simuladores Grabadores o programadores

Escuela Tcnica de Ingenieros de Telecomunicacin Departamento de Tecnologa Electrnica Universidad de Vigo

Microcontroladores

DESARROLLO DE SISTEMAS ELECTRNICOS BASADOS EN MICROCONTROLADORES Placas de prototipos o entrenadores


Son sistemas electrnicos de los que forma parte el microcontrolador. Pueden tener o no un conjunto de perifricos adecuados para realizar operaciones de entrada/salida. Si no los tienen se le debe poder conectar una placa con perifricos. Un ejemplo de placa de prototipos que no posee perifricos es la placa de la figura. Un ejemplo de placa con perifricos es SiDePIC- USB cuyo esquema de bloques se presenta en la figura de la diapositiva siguiente.

PLACA DE PROTOTIPOS O ENTRENADOR DEL MICROCONTROLADOR CY7C68013 DEL DEPARTAMENTO DE TECNOLOGA ELECTRNICA

Escuela Tcnica de Ingenieros de Telecomunicacin Departamento de Tecnologa Electrnica Universidad de Vigo

Microcontroladores

DESARROLLO DE SISTEMAS ELECTRNICOS BASADOS EN MICROCONTROLADORES SISTEMAS DE DESARROLLO


Conector de expansin Barra de expansin RB7_P RB6_P n m Amplificadores (Drivers) m m Perifricos internos

Comunicacin va USB RB7 RB7_U Interfaz USB (PIC 16C745) RB6_U Circuito de control RB6 MCLR/Vpp

Zcalos para microcontroladores PIC 16F84 y 16F87x

RB4 RB5 2 13VCC 5VCC Puesta a cero

12VCA 15VCC

Fuente de Alimentacin

13VCC 5VCC

5VCC m = n + RB6_P + RB7_P + masa + 5VCC

ESQUEMA DE BLOQUES DEL ENTRENADOR SiDePIC-USB de los microcontroladores PIC.

Escuela Tcnica de Ingenieros de Telecomunicacin Departamento de Tecnologa Electrnica Universidad de Vigo

Microcontroladores

DESARROLLO DE SISTEMAS ELECTRNICOS BASADOS EN MICROCONTROLADORES SISTEMAS DE DESARROLLO

ENTRENADOR SiDePIC-USB de los microcontroladores PIC.

Escuela Tcnica de Ingenieros de Telecomunicacin Departamento de Tecnologa Electrnica Universidad de Vigo

Microcontroladores

DESARROLLO DE SISTEMAS ELECTRNICOS BASADOS EN MICROCONTROLADORES Grabadores o programadores


Son sistemas electrnicos que transfieren el programa a la memoria de instrucciones del microcontrolador. Suelen estar asociados a un programa grabador que se ejecuta en un computador personal Cuando la memoria de instrucciones utilizada es del tipo EPROM, son siempre sistemas independientes que poseen un zcalo en el que se inserta el microcontrolador. Cuando la memoria de instrucciones es de tipo FLASH, el grabador puede ser tambin independiente o estar incorporado en el sistema de desarrollo, como es el caso de la placa del microcontrolador CY7C68013 adjunta o el sistema SiDePIC-USB de la fotografa de la siguiente diapositiva.

PLACA DE PROTOTIPOS O ENTRENADOR DEL MICROCONTROLADOR CY7C68013 QUE TAMBIN ES UN GRABADOR

Escuela Tcnica de Ingenieros de Telecomunicacin Departamento de Tecnologa Electrnica Universidad de Vigo

Microcontroladores

DESARROLLO DE SISTEMAS ELECTRNICOS BASADOS EN MICROCONTROLADORES GRABADORES O PROGRAMADORES

ENTRENADOR SiDePIC-USB de los microcontroladores PIC que tambin es un grabador

Escuela Tcnica de Ingenieros de Telecomunicacin Departamento de Tecnologa Electrnica Universidad de Vigo

Microcontroladores

DESARROLLO DE SISTEMAS ELECTRNICOS BASADOS EN MICROCONTROLADORES GRABADORES O PROGRAMADORES


Conector de expansin Barra de expansin RB7_P RB6_P n m Amplificadores (Drivers) m m Perifricos internos

Comunicacin va USB RB7 RB7_U Interfaz USB (PIC 16C745) RB6_U Circuito de control RB6 MCLR/Vpp

Zcalos para microcontroladores PIC 16F84 y 16F87x

RB4 RB5 2 13VCC 5VCC Puesta a cero

12VCA 15VCC

Fuente de Alimentacin

13VCC 5VCC

5VCC m = n + RB6_P + RB7_P + masa + 5VCC

PLACA DE PROTOTIPOS SiDePIC-USB de los microcontroladores PIC que tambin es un grabador.

Depuradores en el sistema (In-System Debuggers) Escuela Tcnica de Ingenieros de de Telecomunicacin Son sistemas que facilitan la prueba real un sistema digital basado en microcontroladores. Se pueden realizar de dos formas principales: Departamento de Tecnologa Electrnica Microcontroladores Universidad de Vigo

DESARROLLO DE SISTEMAS ELECTRNICOS BASADOS EN MICROCONTROLADORES Depuradores en el sistema (In-System Debuggers)


Son sistemas que facilitan la prueba real del funcionamiento del programa de un sistema digital basado en un microcontrolador. Los dos sistemas electrnicos indicados anteriormente se pueden utilizar como depuradores. Los terminales de entrada/salida del microcontrolador de la placa adjunta se pueden conectar a distintos perifricos. La placa SiDePIC-USB tiene varios perifericos incorporados y adems es expansible. En ambas placas se puede grabar y borrar el programa del microcontrolador innumerables veces y probar de esta forma diferentes programas inmediatamente.

PLACA DESARROLLO DEL MICROCONTROLADOR CY7C68013 QUE TAMBIN ES UN GRABADOR

Escuela Tcnica de Ingenieros de Telecomunicacin Departamento de Tecnologa Electrnica Universidad de Vigo

Microcontroladores

DESARROLLO DE SISTEMAS ELECTRNICOS BASADOS EN MICROCONTROLADORES Editores y compiladores


Los lenguajes de programacin de los microcontroladores ms utilizados son el ensamblador y el C. La programacin en lenguaje ensamblador resulta ardua para el principiante pero permite desarrollar programas muy eficientes, porque proporciona al programador el dominio absoluto del sistema. La programacin en un lenguaje de alto nivel (como por ejemplo C) disminuye el tiempo de desarrollo pero el programa en lenguaje mquina obtenido suele ser menos eficiente que el obtenido a partir del ensamblador. Para el desarrollo del programa del microcontrolador se utilizan programas editores que constituyen herramientas que facilitan la utilizacin de los lenguajes de programacin. Los programas editores suelen ser distribuidos de forma gratuita por el fabricante. Los compiladores son programas que se encargan de traducir el programa escrito en un lenguaje de alto nivel a lenguaje mquina. Las versiones ms potentes suelen ser caras, aunque para las familias de los microcontroladores ms populares se suelen encontrar compiladores gratuitos.

Escuela Tcnica de Ingenieros de Telecomunicacin Departamento de Tecnologa Electrnica Universidad de Vigo

Microcontroladores

DESARROLLO DE SISTEMAS ELECTRNICOS BASADOS EN MICROCONTROLADORES Simuladores


Son programas capaces de ejecutar en un computador personal programas diseados para ser ejecutados en un microcontrolador. Proporcionan informacin sobre la ejecucin del programa y son ideales para depurarlo como paso previo a su introduccin en la memoria del microcontrolador de un modo seguro y poco costoso. Su gran inconveniente es la dificultad para simular la entrada y salida de datos del microcontrolador. Adems, no proporcionan informacin de los problemas que surgen al ejecutar el programa en el prototipo real. La combinacin de un simulador con un un entrenador que posea un microcontrolador con memoria Flash y un circuito de programacin incorporado es una herramienta de diseo de sistemas basados en un microcontrolador de gran eficacia.

Escuela Tcnica de Ingenieros de Telecomunicacin Departamento de Tecnologa Electrnica Universidad de Vigo

Microcontroladores

DESARROLLO DE SISTEMAS ELECTRNICOS BASADOS EN MICROCONTROLADORES RDENES DEL LENGUAJE ENSAMBLADOR ASM51
Las rdenes o pseudoinstrucciones (Directives) de un lenguaje ensamblador especifican las acciones que debe ejecutar el programa ensamblador cuando traduce el programa fuente. ORG valor : actualiza el contador de programa. Smbolo EQU valor: Asocia el smbolo con un valor numrico u otro smbolo ya definido. Smbolo BIT valor : Direccin de bit. Smbolo DATA valor: Direccin de dato en la RAM interna con direccionamiento directo. Smbolo XDATA valor: Direccin de un dato en la RAM externa. Smbolo CODE valor: Direccin del programa. DB valor : genera la combinacin binaria equivalente al valor indicado. DB c: genera la combinacin binaria equivalente al carcterASCII indicado entre comillas. DB cadena: genera la combinacin binaria correspondiente a la cadena indicada. DB c, valor, cadena: genera la combinacin binaria correspondiente a los parmetros separados mediante comas. END : final del archivo.

Escuela Tcnica de Ingenieros de Telecomunicacin Departamento de Tecnologa Electrnica Universidad de Vigo

Microcontroladores

DESARROLLO DE SISTEMAS ELECTRNICOS BASADOS EN MICROCONTROLADORES ESTRUCTURA DEL PROGRAMA EN LENGUAJE ENSAMBLADOR
tabla XDATA 0 valor EQU FFh ORG 0 AJMP inicio ORG 100h Inicio: clr a mov DPTR,#tabla movx a,@DPTR sjmp inicio END ;definicin de etiquetas ;primera instruccin que se ejecuta ; direccin de comienzo del programa ; programa cclico

; fin

Escuela Tcnica de Ingenieros de Telecomunicacin Departamento de Tecnologa Electrnica Universidad de Vigo

Microcontroladores

DESARROLLO DE SISTEMAS ELECTRNICOS BASADOS EN MICROCONTROLADORES PROGRAMACIN DE LOS PUERTOS DE ENTRADA/SALIDA


Los puertos de E/S se pueden direccionar de dos formas:

Completa (byte)
Cada puerto tiene asignada una direccin dentro del conjunto de registros especiales (SFR). Se accede a ellos mediante una instruccin de transferencia de datos. Bit a bit Se puede trabajar con cada bit de los puertos por separado mediante las instrucciones de manejo de bits. Para direccionar un bit la sintaxis es Px.y en la que "x" es el nmero del puerto e "y" el bit seleccionado (0 a 7).

Escuela Tcnica de Ingenieros de Telecomunicacin Departamento de Tecnologa Electrnica Universidad de Vigo

Microcontroladores

DESARROLLO DE SISTEMAS ELECTRNICOS BASADOS EN MICROCONTROLADORES PROGRAMACIN DE LOS PUERTOS DE ENTRADA/SALIDA


Durante la inicializacin del microcontrolador, el contenido de los puertos de E/S semibidireccionales es FFh y los bidireccionales se ponen en el tercer estado. La situacin de los bidireccionales se ha de tener en cuenta cuando se utilice uno de los puertos como salida ya que la salida est en estado alto al menos todo el tiempo de la fase de "RESET" del microcontrolador y no pasa al estado deseado por el usuario hasta que se ejecuta una instruccin de escritura en el registro correspondiente al puerto del que forma parte esa salida. Por el contrario, cuando el terminal de un puerto semibidireccional debe ser utilizado como entrada, este estado inicial es indispensable para una buena recepcin de la informacin externa. Si por el contrario se encuentra en estado bajo, impide los cambios de nivel de la seal externa. Por tanto, para utilizar un terminal de un puerto semibidireccional de entrada, es imprescindible asegurarse de que el bit que le corresponde en el registro del puerto est en el estado 1, tal como es puesto en la inicializacin del microntrolador.

Escuela Tcnica de Ingenieros de Telecomunicacin Departamento de Tecnologa Electrnica Universidad de Vigo

Microcontroladores

DESARROLLO DE SISTEMAS ELECTRNICOS BASADOS EN MICROCONTROLADORES ACOPLAMIENTO DE DIODOS LUMINISCENTES

Los diodos luminiscentes son dispositivos controlados por corriente. Para que se iluminen se pueden conectar a un puerto bidireccional del microcontrolador como indican las figuras:

C
El diodo se ilumina cuando la salida est en el nivel 0 lgico:
+Vcc

El diodo se ilumina cuando la salida est en el nivel 1 lgico

Si la corriente que debe pasar a travs del diodo luminiscente es superior a la mxima que puede proporcionar el microcontrolador hay que utilizar un transistor

RC

RB

Al conectar un diodo a un puerto semibidireccional no hay que poner Una resistencia en serie con el diodo.

Escuela Tcnica de Ingenieros de Telecomunicacin Departamento de Tecnologa Electrnica Universidad de Vigo

Microcontroladores

DESARROLLO DE SISTEMAS ELECTRNICOS BASADOS EN MICROCONTROLADORES

ACOPLAMIENTO DE INTERRUPTORES Y PULSADORES


Para detectar la activacin de un pulsador ste debe generar un 0 lgico en un puerto semibidireccional de entrada del microcontrolador.

+Vcc R

C
Los rebotes que se producen en la seal de entrada se pueden eliminar por: Software: el programa no responde a activaciones sucesivas de la misma entrada hasta que transcurre un tiempo que debe ser superior a la duracin de los rebotes. Hardware: Utilizando un circuito antirrebotes que realice la funcin de un filtro pasabajo .

Escuela Tcnica de Ingenieros de Telecomunicacin Departamento de Tecnologa Electrnica Universidad de Vigo

Microcontroladores

DESARROLLO DE SISTEMAS ELECTRNICOS BASADOS EN MICROCONTROLADORES VISUALIZADORES DE 7 SEGMENTOS

Estn formados por diodos luminiscentes individuales, uno por cada segmento. Existen dos modelos: Ctodo comn, que se debe conectar a masa (GND). nodo comn, que se debe conectar a +Vcc. Es necesaria una resistencia limitadora para cada diodo luminiscente. Se suele utilizar un circuito decodificador del cdigo BCD natural al de 7 segmentos pero la conversin se puede hacer por programa.
Terminal del ctodo

Terminales

chip LED

Escuela Tcnica de Ingenieros de Telecomunicacin Departamento de Tecnologa Electrnica Universidad de Vigo

Microcontroladores

DESARROLLO DE SISTEMAS ELECTRNICOS BASADOS EN MICROCONTROLADORES

ACOPLAMIENTO DE VISUALIZADORES DE 7 SEGMENTOS

Dos tipos de control


Control esttico
Cada segmento se controla de forma independiente.

C
BCD/7seg BCD/7seg

4 4

Control dinmico o multiplexado


Menor complejidad pero mayor consumo para obtener la misma intensidad de luz.

C
BCD/7seg

DESARROLLO DE SISTEMAS ELECTRNICOS BASADOS EN MICROCONTROLADORES ACOPLAMIENTO SERIE DE UN VISUALIZADOR LCD


Los circuitos controladores utilizan un canal de comunicacin en serie con 3 seales: Una seal de datos (DAT) Una seal de reloj (CLK) Una seal de control (LOAD) El dato presente en la seal DAT se almacena en un registro de desplazamiento del controlador en cada flanco de bajada de la seal de reloj CLK. Un flanco de bajada en la seal LOAD hace que el LCD visualice el dato almacenado en el registro de desplazamiento o ejecute una rden (command).

Escuela Tcnica de Ingenieros de Telecomunicacin Departamento de Tecnologa Electrnica Universidad de Vigo

Microcontroladores

Lista de rdenes
100a4a3a2a1a0 1010 1011 1100 1101 1110
Pon el cursor en la posicin a4a3a2a1a0. Posicin inicial 0 Oculta el cursor Muestra el cursor Activa el modo INSERTAR Desactiva el modo INSERTAR Borra el carcter apuntado por el cursor y desplaza los que se encuentran a la derecha Borra toda la pantalla y pone el cursor en la direccin 0

1111

Escuela Tcnica de Ingenieros de Telecomunicacin Departamento de Tecnologa Electrnica Universidad de Vigo

Microcontroladores

DESARROLLO DE SISTEMAS ELECTRNICOS BASADOS EN MICROCONTROLADORES PROGRAMACIN DE MQUINAS DE ESTADOS Definicin de variables ;Definicin de estados
ESTADO0 EQU 0 ESTADO1 EQU 1 ;Imagen de entrada/salida MARCHA BIT 0 PARO BIT 1 Q BIT 3 ; Estado interno ESTADO DATA 40h

E0

Q=0

MARCHA=1

PARO=1 MARCHA=0

E1

Q=1

Escuela Tcnica de Ingenieros de Telecomunicacin Departamento de Tecnologa Electrnica Universidad de Vigo

Microcontroladores

DESARROLLO DE SISTEMAS ELECTRNICOS BASADOS EN MICROCONTROLADORES PROGRAMACIN MQUINAS DE ESTADOS Programa principal
ORG 0 JMP inicio ORG 100h inicio: MOV ESTADO,ESTADO0 ; Condiciones iniciales bucle: CALL ENT_SAL CALL MAQ_EST JMP bucle

Escuela Tcnica de Ingenieros de Telecomunicacin Departamento de Tecnologa Electrnica Universidad de Vigo

Microcontroladores

DESARROLLO DE SISTEMAS ELECTRNICOS BASADOS EN MICROCONTROLADORES PROGRAMACIN DE MQUINAS DE ESTADOS Subrutina de entrada/salida
; Subrutina para actualizar salidas y leer entradas ; MARCHA=P0.0 PARO = P0.1 Q=P3.0 ENT_SAL: MOV C,Q MOV P3.0,C MOV A,P0 MOV C,ACC.0 MOV MARCHA,C MOV C,ACC.1 MOV PARO,C RET

Escuela Tcnica de Ingenieros de Telecomunicacin Departamento de Tecnologa Electrnica Universidad de Vigo

Microcontroladores

MAQ_EST: MOV A, ESTADO CJNE A,#ESTADO0,NESTADO0 CLR Q JNB MARCHA,SAL_MAQ MOV ESTADO,#ESTADO1 JMP SAL_MAQ NESTADO0: CJNE A,#ESTADO1,SAL_MAQ SETB Q MOV C,MARCHA CPL C ANL C,PARO JNC SAL_MAQ MOV ESTADO,#ESTADO0 SAL_MAQ: RET END

DESARROLLO DE SISTEMAS ELECTRNICOS BASADOS EN MICROCONTROLADORES PROGRAMACIN DE MQUINAS DE ESTADOS Subrutina de la mquina de estados

Vous aimerez peut-être aussi