Sunteți pe pagina 1din 40

Diseo Integrado

8 Desarrollo del Sistema Fsico


8.1 Diseo de la Placa del Detector de Movimiento.

Se exponen a continuacin de forma detallada todas las partes en las que dividimos el diseo del Detector de Movimiento, exponiendo los esquemticos de cada una de las partes y definiendo los elementos que se han elegido en cada caso.
8.1.1

PIC18F2550

[8]

Para determinar el cual es el micro que mejor se adapta a las necesidades del proyecto se ha realizado previamente, en el apartado 2.3, un estudio de los dispositivos y fabricantes existentes en el mercado. Teniendo en cuenta los datos de este estudio llegamos a la conclusin que utilizaramos un microcontrolador PIC de Microchip. Para seleccionar el modelo exacto que resulte ms conveniente a la aplicacin se debern tener las siguientes caractersticas: Debe disponer de un puerto de comunicaciones USB. La longitud de palabra ser de 8 bits ya que no hemos de manejar gran cantidad de informacin. Debe disponer de un conversor A/D. La memoria de programa debe ser Flash. Un componente opcional sera una memoria ROM de datos donde se podran guardar todos los datos adquiridos a travs de los sensores para ser enviados mas tarde al ordenador.

Tambin ser necesario analizar los requisitos de la aplicacin que pretendemos desarrollar, teniendo en cuenta aspectos tales como: Procesamiento de datos: puede ser necesario que el microcontrolador realice clculos crticos en un tiempo limitado. En ese caso debemos asegurarnos de seleccionar un dispositivo suficientemente rpido para ello. Por otro lado, habr que tener en cuenta la precisin de los datos a manejar: si no es suficiente con un microcontrolador de 8 bits, puede ser necesario acudir a microcontroladores de 16 o 32 bits, o incluso a hardware de coma flotante. Entrada/Salida: para determinar las necesidades de Entrada/Salida del sistema es conveniente conocer el diagrama de bloques del mismo, de tal forma, que sea sencillo identificar la cantidad y tipo de seales a controlar. Una vez realizado este anlisis puede ser necesario aadir perifricos externos o cambiar a otro microcontrolador ms adecuado a ese sistema.

Universidad de Sevilla

Pg. 71

CAPITULO 8

Diseo Integrado

Desarrollo Fsico

Consumo: algunos productos que incorporan microcontroladores estn alimentados con bateras. Lo ms conveniente en un caso como ste puede ser que el microcontrolador est en estado de bajo consumo pero que despierte ante la activacin de una seal (una interrupcin) y ejecute el programa adecuado para procesarla. Memoria: en cuanto a la cantidad de memoria necesaria se debe hacer una estimacin de cunta memoria voltil y no voltil es necesaria y si es conveniente disponer de memoria no voltil modificable. Ancho de palabra: el criterio de diseo debe ser seleccionar el microcontrolador de menor ancho de palabra que satisfaga los requerimientos de la aplicacin. Usar un microcontrolador de 4 bits supondr una reduccin en los costes importante, mientras que uno de 8 bits puede ser el ms adecuado si el ancho de los datos es de un byte. Los microcontroladores de 16 y 32 bits, debido a su elevado coste, deben reservarse para aplicaciones que requieran altas prestaciones. Diseo de la placa: la seleccin de un microcontrolador concreto condicionar el diseo de la placa. Deber tenerse en cuenta el encapsulado del mismo. Considerando todo lo anterior, se ha optado por el PIC18F2550 ya que dispone de un puerto USB que puede funcionar tanto a baja velocidad (1,5 Mbps) como a velocidad completa (12 Mbps) y soporta transferencias de control, interrupcin, masivas e iscronas. Adems tiene un mdulo conversor A/D con 10 canales de entrada y una memoria de datos EEPROM (Electrical Erasable Programmable Read Only Memory) de 256 bytes. Se trata de una memoria de lectura, programada y borrada elctricamente. La operacin de borrado y programacin es muy sencilla y se puede grabar y borrar tantas veces como se quiera.

Fig. 38 PIC18F2550

Las caractersticas principales del dispositivo se resumen en la siguiente tabla.

PARMETROS

PIC18F2550

Tensin de Alimentacin 5V Corriente mxima de entrada 250mA Corriente mxima de salida por todos los 200mA pines Corriente mxima de entrada en un pin I/O 25mA Corriente mxima de salida en un pin I/O 25mA Temperatura de almacenamiento -65C<T<+150C Potencia disipada total 1.0 W Memoria FLASH 32kbytes Memoria SRAM 2048bytes Memoria EEPROM 256bytes Dimensiones 10.34 x 17.87 x 2.50 mm Tipo de encapsulado PDIP Fig. 39 Caractersticas del PIC 18F2550

Pg. 72

Universidad de Sevilla

CAPITULO 8 Desarrollo Fsico

Diseo Integrado

El encapsulado en el que encontramos el dispositivo es un encapsulado DIP. Este tipo de encapsulado es el ms empleado en montaje por taladro pasante en placa. En nuestro caso se trata de un chip en plstico (negro), con las siguientes dimensiones:

Fig. 40 Detalle del encapsulado del PIC18F2550

Un dato importante en todos los componentes es la distancia entre patillas que poseen, en los sistemas integrados es de vital importancia este dato, as en este tipo el estndar se establece en 0,1 pulgadas (2,54mm). Se suelen fabricar a partir de 4, 6, 8, 14, 16, 22, 24, 28, 32, 40, 48, 64 patillas, estos son los que ms se utilizan. La funcionalidad de los pines del PIC18F2550 puede verse en la siguiente tabla, donde se ha marcad los pines que intervienen en nuestro diseo, as como la funcionalidad que tienen para el correcto funcionamiento del diseo.

Universidad de Sevilla

Pg. 73

CAPITULO 8

Diseo Integrado

Desarrollo Fsico

Fig. 41 Funcionalidad de los pines del PIC 18F2550

Pg. 74

Universidad de Sevilla

CAPITULO 8 Desarrollo Fsico

Diseo Integrado

Las entradas y salidas del PIC se conectan segn su funcionalidad siguiendo las indicaciones de la hoja de caractersticas del dispositivo y las necesidades de diseo de la aplicacin. En la Fig. 42 Entradas/Salidas del PIC podemos ver que cada uno de los pines utilizados lleva una etiqueta que identificar la conexin de ese pin con el resto de elementos que forman el diseo de la placa.

Fig. 42 Entradas/Salidas del PIC

8.1.2 Alimentacin
Colocamos dos bornes que constituirn el punto de conexin de la placa con la fuente de alimentacin. Fsicamente se trata de una simple regleta que por un lado podemos soldar a la placa de circuito impreso y por el otro conectamos a los cables conductores de la tensin de alimentacin. Los microprocesadores ofertados por Microchip poseen todos una alimentacin de 5V. A la hora de elegir el resto de componentes para el desarrollo del sistema se tuvo esto muy presente para no tener que colocar dos alimentaciones distintas sobre la misma placa. Finalmente se eligi un acelermetro cuyo rango de tensin de alimentacin admite los 5V, quedando la placa alimentada con una nica lnea. Fig. 43 Alimentacin

La salida de los bornes de la alimentacin se conectan a las entradas del PIC 20 para VDD y los pines 9 y 19 para VSS. Colocaremos etiquetas con las conexiones a VDD y VSS de aqu en adelante. Como nuestro diseo consta de una comunicacin por puerto USB, la alimentacin por parte de la fuente ser opcional para cuando no tengamos el dispositivo conectado al ordenador, colocaremos un jumper que permita seleccionar que fuente de alimentacin estamos usando sin necesidad de realizar ningn ajuste sobre la placa.

Universidad de Sevilla

Pg. 75

CAPITULO 8

Diseo Integrado

Desarrollo Fsico

8.1.3 Reset
Cuando se suministra una tensin de alimentacin al microcontrolador, este ejecuta automticamente un RESET, de forma que todos los registros se modifican adquiriendo la configuracin que presentan por defecto en sus estados lgicos originales. Sin embargo los microcontroladores dispones de un pin destinado especficamente para ejecutar un RESET en el caso de producirse un fallo o cuando sea necesario aplicarle un RESET para la inicializacin del microcontrolador. Cuando se ejecuta un RESET, se producen dos acciones importantes: El contador de programa se vuelve a colocar en el principio del programa. Los registros modificados vuelven a su estado normal. La seal de reset se aplica al pin MCLR . Esta entrada est negada, por lo cual tendremos que conectarlo a la alimentacin positiva VCC si queremos que nuestro PIC funcione. Esta entrada puede ser activada de manera externa y por el propio PIC si se produce: - Conexin de la alimentacin - Cada de tensin de alimentacin de el PIC por debajo de los 2.2 V - Desbordamiento de WDT (contador que funciona con los impulsos de su propio oscilador). Para general la seal de reset en nuestro diseo colocamos a nivel alto la patilla /MCLR a travs de dos resistencias y colocamos un pulsador a tierra, de forma que cuando el pulsador es accionado, la entrada se pone a nivel bajo y el circuito se resetea.

Algunas reglas bsicas para realizar este circuito son: Es recomendable que R6< 40 K. Se recomienda que R8 < 1 K

Fig. 44 Reset Manual

Pg. 76

Universidad de Sevilla

CAPITULO 8 Desarrollo Fsico

Diseo Integrado

Fig. 45 Reset Automtico

Existe tambin la opcin de conectar un reset automtico como el de la Fig. 45. En este caso, si el voltaje suministrado al microcontrolador se ubica entre 1.2V y 1.7V automticamente se ejecuta un Reset. Este rango de voltaje asegura que el microcontrolador se reinicie antes de cometer errores en cualquier proceso. En el caso de que el voltaje siga por debajo del rango especificado, el microcontrolador no arranca de nuevo hasta que se estabilicen los voltajes en su rango normal. El diodo D1 es utilizado para descargar el condensador rpidamente cuando el voltaje baja de su nivel normal.

En nuestro diseo nos quedamos con la opcin del reset manual de la Fig. 44. Conectando las lneas a Tierra, Alimentacin y la Etiqueta MLRC que se conectar con la entrada del PIC que se corresponde con la pata 1 del dispositivo.

8.1.4 Condensadores de desacoplo


El condensador de desacoplo se utiliza para dar una mayor estabilidad a la hora de alimentar el PIC, ya que evitan que existan oscilaciones en la entrada de alimentacin del dispositivo integrado.

Se coloca en paralelo, lo ms prximo que podamos al integrado entre alimentacin y tierra.

Fig. 46 Condensadores de desacoplo.

En nuestro diseo es necesario colocar dos condensadores de desacoplo, ya que adems de tener la tensin de alimentacin necesaria en cada diseo, el PIC18F2550 presenta una salida de tensin a 3.3V por el pin 14 del dispositivo6. Colocaremos este pin a tierra a travs de un condensador de desacoplo para dejar fijada dicha tensin y que no presente problemas en las entradas y salidas cercanas.

La salida de 3.3V que presenta el PIC viene como consecuencia del mdulo de comunicacin USB. Para ms detalles ver el apartado 8.1.7 de este mismo documento en el que se detalla la comunicacin USB.

Universidad de Sevilla

Pg. 77

CAPITULO 8

Diseo Integrado

Desarrollo Fsico

8.1.5 Cristal del Oscilador


Es un elemento indispensable para el correcto funcionamiento de un microcontrolador, ya que se encarga de generar la base de tiempo que necesita el microcontrolador para ejecutar el programa, es decir, el cristal es el encargado de proporcionar la frecuencia de reloj al PIC. Respecto al oscilador, el PIC18F2550 incorpora mltiples fuentes de reloj que se pueden dividir en tres tipos: Osciladores primarios: Son cristales externos. Osciladores Secundarios: Son las fuentes externas conectadas al Timer 1. Bloque del Oscilador Interno: Fuente de reloj para los modos de bajo consumo.

Estas tres fuentes hacen que el oscilador disponga de doce modos distintos de funcionamiento:

Fig. 47 Modos de funcionamiento del oscilador para PIC18F2550

Los modos de funcionamiento del oscilador y el mdulo USB que hemos elegido para las comunicaciones estn muy relacionados. En los microcontroladores PIC anteriores a la familia 18F2455/2550/4455/4550, todos los mdulos del microcontrolador, incluidos los puertos de comunicaciones, utilizaban la misma fuente de reloj; pero en los microcontroladores de esta familia, el oscilador primario forma parte del mdulo USB, de manera que el mdulo slo puede tomar la seal de reloj del oscilador primario, mientras que el resto de micro puede utilizar cualquier otra fuente.

Pg. 78

Universidad de Sevilla

CAPITULO 8 Desarrollo Fsico

Diseo Integrado

Dependiendo de si utilizamos USB de baja velocidad o de velocidad completa, la seal de reloj del mdulo USB deber ser de 6MHz o de 48MHz respectivamente. Como utilizaremos un dispositivo del alta velocidad ser se 48MHz. En nuestro diseo utilizaremos un cristal de 4 Mhz, en la configuracin que nos indican en la hoja de caractersticas del microcontrolador que hemos elegido, el PIC18F2550, es decir, con dos condensadores encargados de estabilizar la frecuencia de salida del cristal, conectados a cada una de las patas de salida del crista y a tierra, tal y como muestra la Fig. 48.

Fig. 48 Cristal Osciloscopio

Las salidas del cristal de cuarzo sern entradas del PIC sobre los pines 9, OSC1 y 10, OSC2, preparadas para recibir las frecuencias del cristal y tratar la informacin. Para conocer los valores de los condensadores debemos acudir a la hoja de caractersticas del PIC18F2550, comprobando la frecuencia del cristal, comprobamos que sern de 27pF.

Fig. 49 Seleccin capacidad del condensador

Ambos circuitos, condensadores de desacoplo y cristal, deben estar prximos al PIC, es una de las ideas que debemos tener claras a la hora de empezar con el Layout. Hasta ahora se han comentado los elementos auxiliares que siempre necesita todo microcontrolador, cristal, alimentacin, circuito de reset y condensadores de desacoplo. Pasamos a detallar el diseo de los perifricos de entrada y salida necesarios para nuestra aplicacin.

Universidad de Sevilla

Pg. 79

CAPITULO 8

Diseo Integrado

Desarrollo Fsico

8.1.6 Pulsadores y LEDs


Elementos incluidos para la depuracin de la aplicacin que pretendemos disear. Sern de mucha utilidad para comunicarnos con el PIC. En nuestro diseo, tanto los interruptores como los LEDs estn conectados para ser activos por nivel alto. Esto tendremos que tenerlo presente a la hora de programarlos en el diseo de la aplicacin. Los pulsadores estn conectados a las entradas digitales que presenta el PIC 18F2550 en los pines 2;3 y 13, correspondiente con entradas /salidas digitales del Puerto A que deberemos configurar en nuestro sistema. Los LEDs estn conectados a las salidas correspondientes a los pines del dispositivo 26;27 y 28. digitales del puerto B

Fig. 51 LEDs para la depuracin del cdigo de la placa

Fig. 50 Botones para el control

Pg. 80

Universidad de Sevilla

CAPITULO 8 Desarrollo Fsico

Diseo Integrado

8.1.7 USB
Para la comunicacin del microcontrolador con el PC es necesario un medio de conexin. La eleccin del PIC18F2550 se realiz pensando en la realizacin de esta conexin y nos decantamos por el PIC18F2550 por permitir conectarse al ordenador a travs de una conexin USB (Universal Serial Bus). El PIC 18F2550 soporta una comunicacin con un puerto USB 2.0, a velocidades por tanto de 480Mbits. Para construir la seal de salida es necesario generar una potencia de salida a 3.3V que iremos doblando con codificacin NRZI( No retorno a cero invertido). Esta tensin se ofrece como salida del dispositivo por le pin 14 VUSB, que colocaremos a tierra con un condensador de desacoplo. Pin 1 2 3 4 Nombre Color del Cable VCC D D+ GND Rojo Blanco Verde Negro Descripcin +5V Data Data + Tierra

Fig. 52 Conexin con el USB

Las lneas de alimentacin (Vbus y GND) evitan la necesidad de usar fuentes de alimentacin externas. Tienen una tensin de 5V y la corriente se limita a una tensin de 3 a 5 amperios por razones de seguridad, siendo el consumo y la configuracin elctrica totalmente transparente al usuario. El diseo de nuestra placa lleva incorporado un conector hembra de tipo B, ya que son los nicos que actualmente existen para soldarlos en la placa.

8.1.8 Acelermetros

[9]

El acelermetro elegido es el modelo LIS2L02AS4 de la marca STMicroelectronic. Es un acelermetro lineal de bajo consumo, capaz de medir la aceleracin que se produce en dos ejes, ofreciendo una salida analgica de la medida obtenida. Posee un amplio rango de medida ofreciendo adems la posibilidad de seleccionar el rango con el que se pretende trabajar, de forma que se obtendr una mejora de la sensibilidad cuanto menor sea el rango de aceleracin medido. Resumimos las caractersticas ms importantes del acelermetro:

Fig. 53 Caractersticas del Acelermetro ST LIS2L02AS4

Universidad de Sevilla

Pg. 81

CAPITULO 8

Diseo Integrado

Desarrollo Fsico

Es un producto muy utilizado para muy diversas aplicaciones: Terminales mviles Entradas de dispositivos para juegos de Realidad virtual Deteccin de Cada Sistemas Antirrobo Robtica

El acelermetro incorpora un sensor MEMS de eje dual y un circuito de interfaz CMOS que ofrece dos salidas analgicas simultneas en tiempo real: una para direcciones de lado a lado (laterales) y otra para movimientos hacia adelante y atrs (longitudinales). El LIS2L02AS4 dota de valores de aceleracin con un nivel muy bajo de ruido y mnimo consumo de potencia. Este acelermetro se aloja en un encapsulado plstico de 2.4 x 10.3 x 15.4 mm, con un diseo robusto y compacto ofreciendo una alta resistencia al choque. Posee un rango de salida full-scale de 6.0g. La funcin autotest permite al usuario verificar los componentes mecnicos y elctricos del acelermetro. Adems, este modelo usa la tecnologa sin plomo ECOPACK de ST para cumplir con la directiva RoHS (Restriction of Hazardous Substances) de la Unin Europea.

El LIS2L02AS4 posee el siguiente esquema de conexin, muchos de los pines que presenta el dispositivo no se conectarn en la aplicacin ya que son patas no conectadas o reservadas. Describimos la funcionalidad de los pines que intervienen en el diseo y colocamos el esquemtico de conexionado que encontramos en la hoja de caractersticas.

Fig. 54 Pines del Acelermetro LIS2L02AS4

En el esquemtico se han colocado dos condensadores de desacoplo entre tierra y Alimentacin que aconsejan se siten cerca del integrado en el rutado de la palca y un jumper que permita el cambio del acelermetro en modo prueba ST o en modo de funcionamiento normal.

Pg. 82

Universidad de Sevilla

CAPITULO 8 Desarrollo Fsico

Diseo Integrado

Fig. 56 Acelermetro placa z Fig. 55 Acelermetro de la placa x_y

La colocacin de los acelermetros determinar la informacin que obtendremos de cada una de las seales de salida. Tratamos de obtener tres seales que permitan describir el movimiento al que se ve sometido nuestro sensor. Como nuestro acelermetro dispone nicamente de dos salidas, es necesario realizar un montaje fsico con el que consigamos medir la aceleracin en el eje z con un nuevo acelermetro. Para ello se utilizan los dos acelermetros mostrados en los esquemticos de la Fig. 55 y Fig. 56. Colocaremos el acelermetro de la Fig. 55 en la misma placa de montaje sobre la que ir el PIC y el resto de componentes necesarios para la aplicacin, de esa forma tendremos las salidas de las aceleraciones en los ejes x-y, que sern dos de las entradas analgicas del PIC. Para la aceleracin sobre el eje z montaremos en una nueva placa el acelermetro de la Fig. 56, para el que slo necesitaremos una salida, la medida del eje z. Esta placa la colocaremos en vertical sobre la placa principal del sistema, formando un ngulo de 90, consiguiendo as la tercera entrada necesaria para describir el movimiento.

Fig. 57 Detalle colocacin Placas para medir las tres dimensiones de la aceleracin

Universidad de Sevilla

Pg. 83

CAPITULO 8

Diseo Integrado

Desarrollo Fsico

Las salidas de los acelermetros se conectar a entradas analgicas del PIC18F2550, en concreto a los pines 2, 3 y 4. Las entradas analgicas sobre las que debemos leer la aceleracin sern. Pin Entrada en PIC Medida Aceleracin eje 2 Z 3 Y 4 X Fig. 58 Correspondencia Entrada PIC y medida realizada El encapsulado del acelermetro es de tipo SO, encapsulado Circuito integrado de pequeo contorno. Son los ms populares en los circuitos de lgica combinacional, tanto en TTL como en CMOS. La terminacin de las patillas es en forma de ala de gaviota, por lo que se sueldan directamente sobre las pistas de la placa de circuito impreso, en un rea denominada footprint. La distancia entre patillas es de 1,27mm (0,05").

Fig. 59 Detalle del encapsulado del acelermetro LIS2L02AS4

Pg. 84

Universidad de Sevilla

CAPITULO 8 Desarrollo Fsico

Diseo Integrado

8.1.9 Resultado final


Reuniendo todos los componentes en un mismo esquemtico, comenzamos con la realizacin del rutado de la placa, para lo cual debemos conocer todos los elementos utilizados y sus huellas para poder realizar la impresin del mismo. En nuestro caso, el esquema general es el que se muestra a continuacin:

Fig. 60 Esquemtico completo del diseo

En este esquemtico no se presenta el acelermetro z ya que no pertenece a la misma placa fsica, aunque pertenezca al diseo del sistema. Una vez diseadas todas las partes funcionales necesarias en el diseo, podemos comprobar el resultado final, establecer la lista de elementos necesarios para la creacin del PCB y comenzar con el rutado de la placa.

Universidad de Sevilla

Pg. 85

CAPITULO 8

Diseo Integrado

Desarrollo Fsico

Los elementos necesarios para el diseo:


Cantidad 2 1 2 2 2 2 1 1 3 3 1 12 4 1 4 5 1 1 Elemento Acelermetro LIS2L02AS4 Borna Alimentacin Condensador 27pF Condensador 470nF Condensador electroltico 10uF Condensador 100nF Conector Hembra USB soldar placa Cristal 4MHz Jumper LED rojo PIC18F2550 Pines verdes Pulsador Resistencia 100 Resistencia 10k Resistencia 330 Zcalo 28pines Placa Positiva Fig. 61 Componentes del diseo

El resultado final del rutado de las placas: El tamao de las placas resultantes es de 10x8 cm la placa base de control del proceso de Deteccin de Movimiento y 5x5.5 cm la placa con el acelermetro en el eje z. Tanto la colocacin de los componentes como el rutado de las pistas se realizarn de forma que se consigan los siguientes objetivos: Minimizar la longitud de las pistas Minimizar el nmero de pistas a usar Minimizar el nmero de cruces entre pistas Facilitar el soldado de los componenetes Facilitar el acceso a los interruptores, bornas y conector USB

El elemento central de diseo es el microcontrolador, el emplazamiento del resto de los componentes depender de l, segn la funcionalidad de sus pines y la lgica que empleemos. Para la implementacin del circuito se utiliz una placa positiva de una cara, trazando las pistas por el Bottom. La anchura de las pistas es de 40mm en el caso de elementos con encapsulado pasante o DIP, y 20mm para el acelermetro, que posee un encapsulado superficial SO en el que los pines se encuentran ms prximos entre ellos.

Pg. 86

Universidad de Sevilla

CAPITULO 8 Desarrollo Fsico

Diseo Integrado

Definimos de forma esquemtica las principales reglas de diseo, separaciones y mrgenes que se tienen en cuenta en la fabricacin del PCB.
PARMETRO Dimetro del Taladro Margen Mnimo de la Mscara contra la Pared Anchura mnima del conductor Espacio mnimo entre conductores Distancia mnima del conductor al borde del circuito Valor 0,8mm 0,2mm 0,25mm 0,2mm 0,3mm

Fig. 62 Resultado del rutado de la placa

Universidad de Sevilla

Pg. 87

CAPITULO 8

Diseo Integrado

Desarrollo Fsico

Fig. 63 Resultado del rutado de la placa z

Fig. 64 Fotografa del resultado final de las placas.

Pg. 88

Universidad de Sevilla

CAPITULO 8 Desarrollo Fsico

Diseo Integrado

8.2 Diseo del firmware


Firmware es un bloque de instrucciones, que establece la lgica de ms bajo nivel que controla los circuitos electrnicos de un dispositivo. Al estar integrado en la electrnica del dispositivo es en parte hardware; pero tambin puede ser considerado software, ya que proporciona lgica y se dispone en algn tipo de lenguaje de programacin. Funcionalmente, es el intermediario entre las rdenes externas que recibe el dispositivo y su electrnica, ya que es el encargado de controlar a sta ltima para ejecutar correctamente las rdenes externas.

8.2.1 Configuracin bsica de los pines del PIC18F2550


Los pines que se utilicen como entradas analgicas deben ser configurados como tales en los correspondientes registros TRIS, PORT y LAT. TRIS: Para la configuracin de las patitas como entradas o salidas. PORT: Para almacenar los niveles lgicos de las patitas. LAT: Para inhibir la salida de los niveles. La configuracin de las puertas se realiza colocando a 0 para la configuracin como salida, y 1 para configurarlo como entrada en el registro TRIS correspondiente al puerto. Si es entrada, el valor correspondiente a esta patita pasar a almacenarse en el registro PORT, mientras que si lo encontramos como salida el valor del registro pasar a encontrarse en la patita. Siguiendo la construccin del la placa debemos configurar los pines de los puertos A y B, que son los que atizamos en nuestro diseo.

8.2.1.1 PUERTO A
Esta puerta tiene 7 lneas. Todos ellas pueden ser Entrada/Salida digital, configurando el registro ADCON1 de manera adecuada. Adems, cinco de ellas pueden ser entradas del conversor analgico/digital. En nuestro diseo se utilizarn3 lneas del puerto como entradas analgicas del conversor analgico/digital, son las lneas AN0, AN1 y AN2, que se corresponden con los pines 2,3 y 4 del PIC18F2550. Para la configuracin debemos usar el registro ADCON1 que se explicar en el apartado 8.2.3 del documento.

8.2.1.2 PUERTO B
Esta puerta tiene 8 lneas con resistencia de pull-up internas que se pueden habilitar con el bit RB-PU#. Todas ellas pueden ser entradas/salidas digital. En el diseo se utilizarn las lneas RB1, RB2 y RB3, pines 22, 23 y 24, como entradas digitales de la seal que introduzcamos por los pulsadores, mientras que las lneas RB5, RB6 y RB7, correspondientes a los pines 26, 27 y 28 sern salidas digitales a los Leds de control de la placa.

Universidad de Sevilla

Pg. 89

CAPITULO 8

Diseo Integrado

Desarrollo Fsico

8.2.2 Registros del oscilador


El funcionamiento del oscilador en el PIC18F2550 se controla a travs de los registros de configuracin CONFIG1L y CONFIG1H y con dos registros de control OSCCON y OSCTUNE. A continuacin se muestra el mdulo del oscilador indicando la fuente utilizada (oscilador primario) y los valores que toman los distintos bits de estos registros para conseguir a partir de un cristal de 4MHz una velocidad en el mdulo USB de 48MHz, necesaria para una comunicacin con USB a velocidad completa.

Fig. 65 Mdulo del Oscilador

Pg. 90

Universidad de Sevilla

CAPITULO 8 Desarrollo Fsico

Diseo Integrado

El reloj del micro se configurar para que funcione a una velocidad de 48MHz, teniendo por tanto la misma velocidad que se va a utilizar en la comunicacin USB, lo que evitar problemas con los tiempos de espera del procesado de la seal. Para configurar los registros del oscilador recordamos que lo que se pretende es utilizar el oscilador primario en modo HSPLL (Cristal de alta velocidad con PLL activado) como reloj tanto para el mdulo USB como para el resto del microcontrolador. Los datos con los que partimos para realizar la configuracin: Cristal de 4MHz USB 2.0 (alta velocidad): necesita una frecuencia de funcionamiento de 48MHz Los registros de configuracin, CONFIG1L y CONFIG1H, permiten seleccionar el modo de funcionamiento del oscilador y las opciones de pre y post-escalado. CONFIG1L

Fig. 66 Registro CONFIG1L

Universidad de Sevilla

Pg. 91

CAPITULO 8

Diseo Integrado

Desarrollo Fsico

CONFIG1H

Fig. 67 Registro CONFIG1H

En este registro se ha deshabilitado con la opcin IESO bit a 0 el intercambio entre oscilador interno y externo, lo cual simplificar posteriormente la configuracin de los registros de control. Tambin hemos desactivado la opcin de monitorizacin de fallos en el reloj, ya que no vamos a implementar esta posibilidad y se ha seleccionado el modo de funcionamiento que nos interesa, HSPPL.

La configuracin de los registros de control es ms sencilla, ya que en ambos registros se especifican funcionamientos del oscilador interno que en nuestra aplicacin no se implementar. El registro OSCCON controla varios aspectos de la operacin de reloj, entre ellos el que mas nos interesa es el que permite seleccionar la fuente de reloj que se utilizar en el sistema, lo que se corresponde con los bits SCS1:SCS0 del registro.

Pg. 92

Universidad de Sevilla

CAPITULO 8 Desarrollo Fsico

Diseo Integrado

OSCCON

Fig. 68 Registro OSCCON

El registro OSCTUNE se utiliza para calibrar y ajustar la frecuencia del oscilador interno. Como en el diseo elegido utilizamos el oscilador primario como fuente de reloj, este valor de registro no nos interesa.

Universidad de Sevilla

Pg. 93

CAPITULO 8

Diseo Integrado

Desarrollo Fsico

8.2.3 Registros del convertidor A/D


El mdulo conversor A/D tiene una resolucin de 10bits con 10 canales para los dispositivos de 28 pines como es el caso del PIC18F2550. A travs del canal de entrada seleccionado, se aplica la seal analgica a un condensador de captura y mantenimiento (sample and hold) y luego se introduce al conversor, el cual proporciona un resultado digital de 10 bit de longitud usando la tcnica de aproximaciones sucesivas, tcnica utilizada en los casos en los que se requiere una alta velocidad de conversin. Esta tcnica consiste en realizar sucesivas comparaciones de forma ascendente o descendente, hasta encontrar un valor digital que iguale la tensin entregada por el conversor D/A y la tensin de entrada.

Fig. 69 Estructura del conexionado del conversor A/D. Este mdulo presenta cinco registros de configuracin y control: ADRESH: Parte alta del resultado de la conversin A/D ADRESL: Parte baja del resultado de la conversin A/D ADCON0: Controla el funcionamiento del mdulo A/D ADCON1: Configura la funcin de los pines de los puertos. ADCON2: Configura el reloj del conversor A/D, el tiempo de adquisicin y el formato del resultado de la conversin.

Pg. 94

Universidad de Sevilla

CAPITULO 8 Desarrollo Fsico

Diseo Integrado

El registro ADCON0 controla la operacin del conversor A/D, mientras que el ADCON! Sirve para configurar las patitas de la puerta A como entradas analgicas o E/S digitales. El registro ADCON2 configura la fuente de reloj A/D y la justificacin del resultado. En la pareja de registros ADRESH:ADRESL se deposita el resultado de la conversin, que al estar compuesta por 10 bits, slo son significativos 10 de los 16 bits de esta pareja. ADCN0

Fig. 70 Registro ADCON0

La resolucin de la conversin depende de Vref=(Vref+)-(Vref-), de forma que:


Re solucin = (Vref + ) (Vref ) Vref 5V = Vref = VDD GND = 5V Re s = = 4.8 mV bit 1024 1024 1024bit

Universidad de Sevilla

Pg. 95

CAPITULO 8

Diseo Integrado

Desarrollo Fsico

Vref+ y Vref- determinan los lmites mximo y mnimo de la tensin analgica que se puede convertir. En el caso de Vref+=5V y Vref-=0V, caso que encontramos en nuestro diseo, la resolucin calculada es de 4.8mV/bit . Por tanto, a la entrada analgica de 0V le corresponder una salida digital 00 0000 0000 y para la de 5V ser 11 1111 1111. El Vref mnimo es de 2V.

ADCON1

Vref+ y Vref- pueden ser internas (VDD y GND) o externas a travs de los pines 4 y 5 del dispositivo: RA2->Vref- y RA3->Vref+. Nosotros utilizaremos VDD y GND como referencia.

Fig. 71 Registro ADCON1

Pg. 96

Universidad de Sevilla

CAPITULO 8 Desarrollo Fsico

Diseo Integrado

El tiempo para convertir un dato esta formado por dos periodos: Tiempo de Adquisicin y Tiempo de Conversin. Para cada uno de los periodos se establecen determinadas tareas, como podemos comprobar en la Fig. 72

Fig. 72 Secuencia de Conversin A/D

El tiempo de adquisicin puede ser programado para que el micro lo tenga en cuanta durante el proceso de conversin de manera automtica. Los bits ACQT2:ACQT0 del registro ADCON2<5:3> proporcionan un rango desde 2 hasta 20 vecesTAD (Periodo de conversin por bit). De esta forma despus de seleccionar el canal no hay que esperar el periodo de adquisicin por programa hasta poder activar el bit de inicio de la conversin GO/DONE. El micro automticamente espera el tiempo de adquisicin programado en ACQT2:ACQT0. Si la configuracin de estos registros se hace a 000, la espera seguir realizndose de forma manual, cuando el bit GO/#DONE se activa, el mdulo supone que ya ha pasado el tiempo de adquisicin de datos y comienza la conversin inmediatamente. En nuestro coso se programar un tiempo de adquisicin automtico que simplificar el cdigo del microcontrolador. La conversin comienza justo despus de completarse el tiempo de adquisicin. Para que la conversin se realice de forma correcta es necesario que pasen al menos 11TAD, siendo TAD el tiempo necesario para completar la conversin analgico-digital de un bit. Existen 7 formas posibles de seleccionar el reloj del conversor para TAD, a travs de los bits ADCS2:ADCS0 del registro, bien utilizando la seal de reloj del oscilador del micro, previamente escalado con los valores 2, 4, 8, 16, 32 64 veces TOSC, o configurando un oscilador interno propio del mdulo de conversin, el oscilador RC que funciona a 1MHz.

Universidad de Sevilla

Pg. 97

CAPITULO 8

Diseo Integrado

Desarrollo Fsico

TAD debe elegirse para que tenga un valor entre 0,7s y 2,5s, valores obtenidos de las especificaciones del PIC18F2550. Adems, para una correcta conversin analgico-digital, el reloj analgico-digital de conversin (TAD) debe ser lo ms corto como sea posible, pero mayor que el mnimo TAD permitido por el dispositivo; 0,7s. La muestra el resultado del valor del TAD sabiendo la frecuencia de trabajo del dispositivo y la fuente de reloj analgico-digital seleccionada.

Fig. 73 TAD frente a la frecuencia de operacin del dispositivo.

La eleccin del reloj del oscilador como FOSC/4 que se ha realizado en el diseo del sistema se debe a las caractersticas del mismo. La frecuencia de variacin de la velocidad del acelermetro que se va a medir con nuestra aplicacin puede llegar a ser como mucho la variacin el movimiento continuo del balanceo de un brazo, por ejemplo, lo cual nunca supondr velocidades mayores a 5MHz. Conociendo el reloj del oscilador, el modelo de entrada que presenta el convertidor, mostrado en la Fig. 74 y con los datos que se especifican en la hoja de caractersticas del PIC18F2550, podemos disear el tiempo de adquisicin.

Fig. 74 Modelo entrada analgica del PIC18F2550

Pg. 98

Universidad de Sevilla

CAPITULO 8 Desarrollo Fsico

Diseo Integrado

Se define el tiempo de adquisicin de datos como TACQ=TAMP+Tc+TCOFF (Tiempo de amplificacin + Tiempo de carga del condensador + Coeficiente de Temperatura) Para el caso que nos ocupa y clores, comprobamos (especificaciones dada en la hoja de catlogo): TAMP=2s TC=-CHOLD(RIC+Rss+Rs)Ln(1/2048)=-25p(1K+2k+0)Ln(1/2048)=0,57s TCOEFF=(85C-25C)0.02s/C=1.2s Resultando: TACQ=0.2s+0.57s+1.2s=1.97s. Como la frecuencia del oscilador elegida es de 4MHz, el tiempo ser TAD=4TOSC=1s, con lo que podremos configurar de manera automtica el tiempo de adquisicin para que TACQ=2TAD, simplificando la codificacin de la aplicacin en el micro. El resultado de la lnea de tiempo necesaria para la conversin es el siguiente:

Fig. 75 Conversin A/D con tiempo de Adquisicin automtico.

El bit de ms peso del registro ADCON2 , el bit 7, ADFM selecciona el formato del resultado de la conversin. Si vale1, el resultado est justificado en el registro ADRESH, que tiene sus 6 bits de ms peso a 0; mientras que si vale 0 la justificacin se realiza sobre el registro ADRESL, que tiene sus bits de menos peso a 0.

Fig. 76 Alineamiento del resultado digital

Universidad de Sevilla

Pg. 99

CAPITULO 8

Diseo Integrado

Desarrollo Fsico

ADCON2

Fig. 77 Registro ADCON2

8.2.3.1 Configuracin del Conversor A/D


A continuacin se muestran los pasos necesarios a la hora de realizar una conversin A/D.

1. Configurar el modulo C A/D


Configurar las patitas que actuarn como entradas analgicas, las que trabajan como E/S digitales y las usadas para la Tensin de referencia (registro ADCON1). Seleccionar reloj de conversin (registro ADCON2) Seleccionar el tiempo de adquisicin de dato (ADCON2) Seleccionar el canal de entrada (registro ADCON0) Activar el mdulo A/D (registro ADCON0)

2. Activar , si se desea, la interrupcin escribiendo sobre PIE1 y PIR1


Borrar el sealizador ADIF Poner a 1 el bit ADIE Poner a 1 los bits habilitadores GIE.

Pg. 100

Universidad de Sevilla

CAPITULO 8 Desarrollo Fsico

Diseo Integrado

3. Tiempo de espera para que transcurra el tiempo de adquisicin (si es


requerido).

4. Inicio de la conversin.

Poner a 1 el bit GO/DONE# (registro ADCON0)

5. Tiempo de espera para completar la conversin A/D que puede detectarse:


Exploracin del bit GO/DONE#, que al completarse la conversin pasa a valer 0 Esperando a que se produzca la interrupcin, si se ha programado, al finalizar la conversin. Aunque no se permita interrupcin, el sealizador ADIF se pondr a 1 al finalizar la conversin

6. Leer el resultado en los 10 bits vlidos y borrar el flan ADIF. 7. Para una nueva conversin regresar al paso 1 o al 2
El tiempo de conversin por bit esta definido por TAD. Se exige esperar un tiempo mnimo de 2TAD para reiniciar una nueva conversin.

8.2.4 Registros del mdulo USB


Para nuestra aplicacin configuraremos un conexin USB de alta velocidad 2.0 pese a que no sera necesario tanta velocidad para la transmisin de la aplicacin, el realizarlo a velocidad completa no encarece el sistema y permite tener un soporte ya diseado para futuras aplicaciones que requieran una velocidad de transferencia mayor. El PIC18F2550 contiene un mecanismo de comunicacin serie compatible con USB, llamado SIE (Serial Interface Engine) que permite el control de la comunicacin entre el host USB y el PIC. El control y la configuracin del mdulo USB se lleva a cabo a travs de 22 registros de estado y de control. Estos son:

Registro de Control USB (UCON). Registro de configuracin USB (UCFG). Registro de estado de transferencia USB (USTAT). Lectura Registro de direccin de dispositivo USB (UADDR). Registros de nmero de frame (UFRMH:UFRML). Registros (del 0 al 15) de habilitacin de puntos finales (UEPn).

Universidad de Sevilla

Pg. 101

CAPITULO 8

Diseo Integrado

Desarrollo Fsico

Vemos la configuracin interna para el funcionamiento del mdulo USB en la Fig. 78. Comprobamos que el mdulo USB dispone de un regulador interno de 3.3V para suministrar tensin al transductor interno. Esto se debe a que USB utiliza 3,3 V para las comunicaciones, por lo tanto, mientras el resto del micro puede utilizar una alimentacin de 5 V, el transductor debe alimentarse de una fuente distinta (Vusb). El regulador se controla a travs del bit VREGEN del registro de configuracin CONFIG2L. Cuando est habilitado (VREGEN = 1), el voltaje es visible en el pin Vusb. Si el regulador est deshabilitado, una tensin de 3,3 V debe ser suministrada externamente a travs de Vusb. Hay que tener en cuenta que las resistencias de pullup internas nicamente pueden utilizarse si el transductor interno est activo.

Fig. 78 Mdulo USB

Como puede comprobarse en la figura, se ha optado por la utilizacin de todos los elementos internos de los que dispone el microcontrolador, el regulador, el transductor y los pull-ups, de esta manera conseguimos que el nmero de componentes necesarios en el dispositivo sea el menor posible, lo cual repercute tanto en el tamao como en el coste del dispositivo.

Pg. 102

Universidad de Sevilla

CAPITULO 8 Desarrollo Fsico

Diseo Integrado

El bit de PKTDIS (UCON <4>) es una bandera que indica que el SIE ha inutilizado para la transmisin y recepcin de paquetes. Este bit es activado por el SIE cada vez que se recibe una seal de SISTEMA para permitir al tratamiento de la misma. Este bit no puede ser activado por el microcontrolador, slo podemos limpiarlo; lo permitir al SIE para seguir la transmisin y/o la recepcin.

UCON

Fig. 79 Registro UCON

La configuracin del transductor y los pull-ups, asi como la velocidad de dispositivo se debe llevar a cabo antes de habilitar el mdulo y no puede ser cambiada mientras este se encuentre habilitado. El registro que se encarga de realizar esta configuracin es el UCFG.

UCFG

Antes de comenzar la comunicacin con el USB debemos configurar el hardware asociado al mdulo de comunicacin, utilicemos el hardware interno y/o externo al microcontrolador. La mayor parte de la configuracin se realiza con el registro de UCFG, a excepcin del regulador de tensin de 3.3V que deberemos configurarlo en el registro de configuracin CONFIG2L.

Universidad de Sevilla

Pg. 103

CAPITULO 8

Diseo Integrado

Desarrollo Fsico

El registro de UFCG contiene la mayor parte de los bits que controlan el comportamiento de nivel de sistema del mdulo USB. Estos incluyen: Velocidad de Bus (velocidad completa o baja velocidad) Habilitacin de las resistencias pull-up del microcontrolador Habilitacin del Transductor del microcontrolador Permiten Uso de Buffer Ping-pong

Fig. 80 Registro UCFG El registro UCFG tambin contiene dos bits que permiten el manejo del modo de testeo del la funcin del microcontrolador, ayudando en las puebas de manejo de la aplicacin, para la eliminacin de fallos y certificaciones del uso del USB, son bits de salida de control que permiten la supervisin del estado del buffer en cada momento. El USB OE proporciona informacin en cuanto a si el SIE escucha al Bus o participa activamente en la comunicacin con el host. Esto bit estar habilitado por defecto cuando se usa un transductor externo. El bit de supervisin USB OE es til para la eliminacin de fallos de sistema inicial.

Pg. 104

Universidad de Sevilla

CAPITULO 8 Desarrollo Fsico

Diseo Integrado

Podemos generar un diagrama de ojo activando la opcin de testeo UTEYE. La salida del diagrama de ojo permitir observar si las seales que se generan a travs del USB estn afectadas por el ruido debido a la proximidad de componentes. En nuestro diseo ambos modos permanecern desactivados.

UEPn

Los registros de configuracin de puntos finales cambiarn de valor segn la tecnologa de transmisin que empleemos en la comunicacin con el dispositivo USB, se configuraran en el software mediante los ficheros de cabecera. Un ejemplo de configuracin de estos registros, podramos verlo con una comunicacin para el envo de datos al PC por interrupcin. En este caso debemos configurar los registros de manera que UEP0=0001 0110 Punto Final 0 para soportar transferencias de control. UEP1=0001 0010 Punto Final 1 para soportar transferencias de interrupcin de entrada

Fig. 81 Registros UEPn

Universidad de Sevilla

Pg. 105

CAPITULO 8

Diseo Integrado

Desarrollo Fsico

USTAT (Registro de Estado; Slo permite lectura)

El registro de Estado del USB indica el estado de transaccin dentro del SIE. Cuando el SIE emite una interrupcin de transferencia de USB completa, debemos leer el registro USTAT para determinar el estado de la transferencia. USTAT contiene el nmero de punto final de la transferencia.

8.2.5 Registros de configuracin


Los PIC18F2550 incluyen varias caractersticas especiales pensadas para maximizar las prestaciones y minimizar el coste eliminando componentes externos. Adems permiten ahorrar energa y proteger el cdigo frente a copia. Estos elementos son: Varias fuentes de oscilador diferentes. Diversos tipos de RESET. Varias fuentes de interrupcin, con dos niveles de prioridad. Temporizador Watchdog. Varios modos de bajo consumo. Monitor de fallo de reloj. Star-up de dos velocidades. Proteccin del cdigo. Posiciones de localizacin ID. Circuitera de programacin serie en circuito.

Los registros de configuracin permiten controlar estas caractersticas especiales del microcontrolador. Estos registros estn mapeados a partir de la direccin de memoria de programa 300000h, la cual se encuentra ms all de la direcciones de memoria de programa disponibles para el usuario, de hecho se encuentra en la zona de memoria reservada para la configuracin del sistema.

Fig. 82 Registros de configuracin del PIC18F2550

Pg. 106

Universidad de Sevilla

CAPITULO 8 Desarrollo Fsico

Diseo Integrado

Se han producido cambios en los bits de configuracin del oscilador de entrada CONFIG1, adems de los siguientes bits que afectan a otras caractersticas del dispositivo.

8.3 Adaptacin de la placa del programador.


Para la comunicacin con el PIC18F2550 debemos crear una placa sobre la que podamos colocar nuestro PIC de 28 pines, ya que la placa que se proporciona junto con el programador esta adaptada a las caractersticas del PIC16F690, que posee nicamente 20 pines. La conexin de la placa con el PIC 16F690 a travs del puerto de comunicacin ICSP, presenta las siguientes conexiones con los pines marcados en el dibujo del patillaje del microprocesador:

Universidad de Sevilla

Pg. 107

CAPITULO 8

Diseo Integrado

Desarrollo Fsico

Fig. 83 Esquemtico comunicacin con PIC16F690

La conexin de la placa con el PIC 18F2550, cambia completamente ya que la funcionalidad de los pines del 18F2550 no se corresponde en ubicacin con el integrado 16F690.

Fig. 84 Esquemtico comunicacin con PIC18F2550

Pg. 108

Universidad de Sevilla

CAPITULO 8 Desarrollo Fsico

Diseo Integrado

Una vez se tienen claro los pines del PIC18F2550 implicados en la comunicacin con el puerto USB para el funcionamiento del programador y la relacin entre estos y los puertos del conector del programador, construimos el circuito necesario siguiendo los pasos que se detallan en el Apartado 3 de este mismo documento.

Universidad de Sevilla

Pg. 109

CAPITULO 8

Diseo Integrado

Desarrollo Fsico

Pg. 110

Universidad de Sevilla

S-ar putea să vă placă și