8 desarrollo del sistema físico -...

40
Diseño Integrado Universidad de Sevilla Pág. 71 8 Desarrollo del Sistema Físico 8.1 Diseño de la Placa del Detector de Movimiento. Se exponen a continuación de forma detallada todas las partes en las que dividimos el diseño del Detector de Movimiento, exponiendo los esquemáticos 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 conclusión que utilizaríamos un microcontrolador PIC de Microchip. Para seleccionar el modelo exacto que resulte más conveniente a la aplicación se deberán tener las siguientes características: 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 información. Debe disponer de un conversor A/D. La memoria de programa debe ser Flash. Un componente opcional sería una memoria ROM de datos donde se podrían guardar todos los datos adquiridos a través de los sensores para ser enviados mas tarde al ordenador. También será necesario analizar los requisitos de la aplicación que pretendemos desarrollar, teniendo en cuenta aspectos tales como: Procesamiento de datos: puede ser necesario que el microcontrolador realice cálculos críticos en un tiempo limitado. En ese caso debemos asegurarnos de seleccionar un dispositivo suficientemente rápido para ello. Por otro lado, habrá que tener en cuenta la precisión 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 señales a controlar. Una vez realizado este análisis puede ser necesario añadir periféricos externos o cambiar a otro microcontrolador más adecuado a ese sistema.

Upload: dinhdan

Post on 27-Sep-2018

219 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 8 Desarrollo del Sistema Físico - bibing.us.esbibing.us.es/proyectos/abreproy/11638/fichero/Capitulo+8.pdf · 6 La salida de 3.3V que presenta el PIC viene como consecuencia del

DDiisseeññoo IInntteeggrraaddoo

Universidad de Sevilla Pág. 71

88 DDeessaarrrroolllloo ddeell SSiisstteemmaa FFííssiiccoo

8.1 Diseño de la Placa del Detector de Movimiento.

Se exponen a continuación de forma detallada todas las partes en las que

dividimos el diseño del Detector de Movimiento, exponiendo los esquemáticos 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 conclusión que utilizaríamos un microcontrolador PIC de Microchip. Para seleccionar el modelo exacto que resulte más conveniente a la aplicación se deberán tener las siguientes características:

• 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 información. • Debe disponer de un conversor A/D. • La memoria de programa debe ser Flash. • Un componente opcional sería una memoria ROM de datos donde se podrían

guardar todos los datos adquiridos a través de los sensores para ser enviados mas tarde al ordenador. También será necesario analizar los requisitos de la aplicación que

pretendemos desarrollar, teniendo en cuenta aspectos tales como:

• Procesamiento de datos : puede ser necesario que el microcontrolador realice cálculos críticos en un tiempo limitado. En ese caso debemos asegurarnos de seleccionar un dispositivo suficientemente rápido para ello. Por otro lado, habrá que tener en cuenta la precisión 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 señales a controlar. Una vez realizado este análisis puede ser necesario añadir periféricos externos o cambiar a otro microcontrolador más adecuado a ese sistema.

Page 2: 8 Desarrollo del Sistema Físico - bibing.us.esbibing.us.es/proyectos/abreproy/11638/fichero/Capitulo+8.pdf · 6 La salida de 3.3V que presenta el PIC viene como consecuencia del

CAPITULO 8

DDiisseeññoo Desarrollo Físico IInntteeggrraaddoo

Pág. 72 Universidad de Sevilla

• Consumo : algunos productos que incorporan microcontroladores están

alimentados con baterías. Lo más conveniente en un caso como éste puede ser que el microcontrolador esté en estado de bajo consumo pero que despierte ante la activación de una señal (una interrupción) y ejecute el programa adecuado para procesarla.

• Memoria : en cuanto a la cantidad de memoria necesaria se debe hacer una estimación de cuánta memoria volátil y no volátil es necesaria y si es conveniente disponer de memoria no volátil modificable.

• Ancho de palabra : el criterio de diseño debe ser seleccionar el microcontrolador de menor ancho de palabra que satisfaga los requerimientos de la aplicación. Usar un microcontrolador de 4 bits supondrá una reducción en los costes importante, mientras que uno de 8 bits puede ser el más 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.

• Diseño de la placa : la selección de un microcontrolador concreto condicionará el diseño 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, interrupción, masivas e isócronas. Además tiene un módulo 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 eléctricamente. La operación de borrado y programación es muy sencilla y se puede grabar y borrar tantas veces como se quiera.

Fig. 38 PIC18F2550

Las características principales del dispositivo se resumen en la siguiente tabla.

PARÁMETROS PIC18F2550 Tensión de Alimentación 5V Corriente máxima de entrada 250mA Corriente máxima de salida por todos los pines

200mA

Corriente máxima de entrada en un pin I/O 25mA Corriente máxima de salida en un pin I/O 25mA Temperatura de almacenamiento -65ºC<T<+150ºC 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 Características del PIC 18F2550

Page 3: 8 Desarrollo del Sistema Físico - bibing.us.esbibing.us.es/proyectos/abreproy/11638/fichero/Capitulo+8.pdf · 6 La salida de 3.3V que presenta el PIC viene como consecuencia del

CAPITULO 8

Desarrollo Físico DDiisseeññoo IInntteeggrraaddoo

Universidad de Sevilla Pág. 73

El encapsulado en el que encontramos el dispositivo es un encapsulado DIP. Este tipo de encapsulado es el más empleado en montaje por taladro pasante en placa. En nuestro caso se trata de un chip en plástico (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 estándar 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 más 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 diseño, así como la funcionalidad que tienen para el correcto funcionamiento del diseño.

Page 4: 8 Desarrollo del Sistema Físico - bibing.us.esbibing.us.es/proyectos/abreproy/11638/fichero/Capitulo+8.pdf · 6 La salida de 3.3V que presenta el PIC viene como consecuencia del

CAPITULO 8

DDiisseeññoo Desarrollo Físico IInntteeggrraaddoo

Pág. 74 Universidad de Sevilla

Fig. 41 Funcionalidad de los pines del PIC 18F2550

Page 5: 8 Desarrollo del Sistema Físico - bibing.us.esbibing.us.es/proyectos/abreproy/11638/fichero/Capitulo+8.pdf · 6 La salida de 3.3V que presenta el PIC viene como consecuencia del

CAPITULO 8

Desarrollo Físico DDiisseeññoo IInntteeggrraaddoo

Universidad de Sevilla Pág. 75

Las entradas y salidas del PIC se conectan según su funcionalidad siguiendo las indicaciones de la hoja de características del dispositivo y las necesidades de diseño de la aplicación.

En la Fig. 42 Entradas/Salidas

del PIC podemos ver que cada uno de los pines utilizados lleva una etiqueta que identificará la conexión de ese pin con el resto de elementos que forman el diseño de la placa.

Fig. 42 Entradas/Salidas del PIC

8.1.2 Alimentación

Colocamos dos bornes que constituirán el punto de conexión de la placa con la fuente de alimentación. Físicamente 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 tensión de alimentación.

Fig. 43 Alimentación

Los microprocesadores ofertados por Microchip poseen todos una alimentación 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 acelerómetro cuyo rango de tensión de alimentación admite los 5V, quedando la placa alimentada con una única línea.

La salida de los bornes de la alimentación 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 diseño consta de una comunicación por puerto USB, la

alimentación 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 alimentación estamos usando sin necesidad de realizar ningún ajuste sobre la placa.

Page 6: 8 Desarrollo del Sistema Físico - bibing.us.esbibing.us.es/proyectos/abreproy/11638/fichero/Capitulo+8.pdf · 6 La salida de 3.3V que presenta el PIC viene como consecuencia del

CAPITULO 8

DDiisseeññoo Desarrollo Físico IInntteeggrraaddoo

Pág. 76 Universidad de Sevilla

8.1.3 Reset

Cuando se suministra una tensión de alimentación al microcontrolador, este ejecuta automáticamente un RESET, de forma que todos los registros se modifican adquiriendo la configuración que presentan por defecto en sus estados lógicos originales. Sin embargo los microcontroladores dispones de un pin destinado específicamente para ejecutar un RESET en el caso de producirse un fallo o cuando sea necesario aplicarle un RESET para la inicialización 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 señal de reset se aplica al pin MCLR. Esta entrada está negada, por lo cual

tendremos que conectarlo a la alimentación positiva VCC si queremos que nuestro PIC funcione. Esta entrada puede ser activada de manera externa y por el propio PIC si se produce:

- Conexión de la alimentación - Caída de tensión de alimentación 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 señal de reset en nuestro diseño colocamos a nivel alto la patilla /MCLR a través 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 básicas para

realizar este circuito son:

• Es recomendable que R6< 40 K. • Se recomienda que R8 < 1 K

Fig. 44 Reset Manual

Page 7: 8 Desarrollo del Sistema Físico - bibing.us.esbibing.us.es/proyectos/abreproy/11638/fichero/Capitulo+8.pdf · 6 La salida de 3.3V que presenta el PIC viene como consecuencia del

CAPITULO 8

Desarrollo Físico DDiisseeññoo IInntteeggrraaddoo

Universidad de Sevilla Pág. 77

Fig. 45 Reset Automático

Existe también la opción de conectar un

reset automático como el de la Fig. 45. En este caso, si el voltaje suministrado al microcontrolador se ubica entre 1.2V y 1.7V automáticamente 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 rápidamente cuando el voltaje baja de su nivel normal.

En nuestro diseño nos quedamos con la opción del reset manual de la Fig. 44. Conectando las líneas a Tierra, Alimentación 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 alimentación del dispositivo integrado.

Se coloca en paralelo, lo más

próximo que podamos al integrado entre alimentación y tierra.

Fig. 46 Condensadores de desacoplo.

En nuestro diseño es necesario colocar dos condensadores de desacoplo, ya

que además de tener la tensión de alimentación necesaria en cada diseño, el PIC18F2550 presenta una salida de tensión a 3.3V por el pin 14 del dispositivo6. Colocaremos este pin a tierra a través de un condensador de desacoplo para dejar fijada dicha tensión y que no presente problemas en las entradas y salidas cercanas.

6 La salida de 3.3V que presenta el PIC viene como consecuencia del módulo de comunicación USB. Para más detalles ver el apartado 8.1.7 de este mismo documento en el que se detalla la comunicación USB.

Page 8: 8 Desarrollo del Sistema Físico - bibing.us.esbibing.us.es/proyectos/abreproy/11638/fichero/Capitulo+8.pdf · 6 La salida de 3.3V que presenta el PIC viene como consecuencia del

CAPITULO 8

DDiisseeññoo Desarrollo Físico IInntteeggrraaddoo

Pág. 78 Universidad de Sevilla

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 múltiples 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 módulo USB que hemos

elegido para las comunicaciones están muy relacionados. En los microcontroladores PIC anteriores a la familia 18F2455/2550/4455/4550, todos los módulos 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 módulo USB, de manera que el módulo sólo puede tomar la señal de reloj del oscilador primario, mientras que el resto de micro puede utilizar cualquier otra fuente.

Page 9: 8 Desarrollo del Sistema Físico - bibing.us.esbibing.us.es/proyectos/abreproy/11638/fichero/Capitulo+8.pdf · 6 La salida de 3.3V que presenta el PIC viene como consecuencia del

CAPITULO 8

Desarrollo Físico DDiisseeññoo IInntteeggrraaddoo

Universidad de Sevilla Pág. 79

Dependiendo de si utilizamos USB de baja velocidad o de velocidad completa, la señal de reloj del módulo USB deberá ser de 6MHz o de 48MHz respectivamente. Como utilizaremos un dispositivo del alta velocidad será se 48MHz.

En nuestro diseño utilizaremos un cristal de 4 Mhz, en la configuración que nos indican en la hoja de características 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 serán entradas del PIC sobre los pines 9,

OSC1 y 10, OSC2, preparadas para recibir las frecuencias del cristal y tratar la información. Para conocer los valores de los condensadores debemos acudir a la hoja de características del PIC18F2550, comprobando la frecuencia del cristal, comprobamos que serán de 27pF.

Fig. 49 Selección capacidad del condensador

Ambos circuitos, condensadores de desacoplo y cristal, deben estar próximos

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, alimentación, circuito de reset y condensadores de desacoplo. Pasamos a detallar el diseño de los periféricos de entrada y salida necesarios para nuestra aplicación.

Page 10: 8 Desarrollo del Sistema Físico - bibing.us.esbibing.us.es/proyectos/abreproy/11638/fichero/Capitulo+8.pdf · 6 La salida de 3.3V que presenta el PIC viene como consecuencia del

CAPITULO 8

DDiisseeññoo Desarrollo Físico IInntteeggrraaddoo

Pág. 80 Universidad de Sevilla

8.1.6 Pulsadores y LEDs

Elementos incluidos para la depuración de la aplicación que pretendemos diseñar. Serán de mucha utilidad para comunicarnos con el PIC. En nuestro diseño, tanto los interruptores como los LEDs están conectados para ser activos por nivel alto. Esto tendremos que tenerlo presente a la hora de programarlos en el diseño de la aplicación.

Los pulsadores están 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 están conectados a las salidas digitales del puerto B

correspondientes a los pines del dispositivo 26;27 y 28.

Fig. 50 Botones para el control

Fig. 51 LEDs para la depuración del código

de la placa

Page 11: 8 Desarrollo del Sistema Físico - bibing.us.esbibing.us.es/proyectos/abreproy/11638/fichero/Capitulo+8.pdf · 6 La salida de 3.3V que presenta el PIC viene como consecuencia del

CAPITULO 8

Desarrollo Físico DDiisseeññoo IInntteeggrraaddoo

Universidad de Sevilla Pág. 81

8.1.7 USB

Para la comunicación del microcontrolador con el PC es necesario un medio de conexión. La elección del PIC18F2550 se realizó pensando en la realización de esta conexión y nos decantamos por el PIC18F2550 por permitir conectarse al ordenador a través de una conexión USB (Universal Serial Bus).

El PIC 18F2550 soporta una comunicación con un puerto USB 2.0, a

velocidades por tanto de 480Mbits. Para construir la señal de salida es necesario generar una potencia de salida a 3.3V que iremos doblando con codificación NRZI( No retorno a cero invertido). Esta tensión se ofrece como salida del dispositivo por le pin 14 VUSB, que colocaremos a tierra con un condensador de desacoplo.

Pin Nombre Color del Cable Descripción 1 VCC Rojo +5V 2 D− Blanco Data − 3 D+ Verde Data + 4 GND Negro Tierra

Fig. 52 Conexión con el USB Las líneas de alimentación (Vbus y GND) evitan la necesidad de usar fuentes de

alimentación externas. Tienen una tensión de 5V y la corriente se limita a una tensión de 3 a 5 amperios por razones de seguridad, siendo el consumo y la configuración eléctrica totalmente transparente al usuario.

El diseño 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 Acelerómetros [9]

El acelerómetro elegido es el modelo LIS2L02AS4 de la marca STMicroelectronic. Es un acelerómetro lineal de bajo consumo, capaz de medir la aceleración que se produce en dos ejes, ofreciendo una salida analógica de la medida obtenida. Posee un amplio rango de medida ofreciendo además 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 aceleración medido.

Resumimos las características más importantes del acelerómetro:

Fig. 53 Características del Acelerómetro ST LIS2L02AS4

Page 12: 8 Desarrollo del Sistema Físico - bibing.us.esbibing.us.es/proyectos/abreproy/11638/fichero/Capitulo+8.pdf · 6 La salida de 3.3V que presenta el PIC viene como consecuencia del

CAPITULO 8

DDiisseeññoo Desarrollo Físico IInntteeggrraaddoo

Pág. 82 Universidad de Sevilla

Es un producto muy utilizado para muy diversas aplicaciones:

• Terminales móviles • Entradas de dispositivos para juegos de Realidad virtual • Detección de Caída • Sistemas Antirrobo • Robótica

El acelerómetro incorpora un sensor MEMS de eje dual y un circuito de interfaz CMOS que ofrece dos salidas analógicas simultáneas en tiempo real: una para direcciones de lado a lado (laterales) y otra para movimientos hacia adelante y atrás (longitudinales).

El LIS2L02AS4 dota de valores de aceleración con un nivel muy bajo de ruido y

mínimo consumo de potencia. Este acelerómetro se aloja en un encapsulado plástico de 2.4 x 10.3 x 15.4 mm, con un diseño robusto y compacto ofreciendo una alta resistencia al choque. Posee un rango de salida full-scale de ±6.0g. La función ‘auto-test’ permite al usuario verificar los componentes mecánicos y eléctricos del acelerómetro. Además, este modelo usa la tecnología sin plomo ECOPACK® de ST para cumplir con la directiva RoHS (Restriction of Hazardous Substances) de la Unión Europea.

El LIS2L02AS4 posee el siguiente esquema

de conexión, muchos de los pines que presenta el dispositivo no se conectarán en la aplicación ya que son patas no conectadas o reservadas. Describimos la funcionalidad de los pines que intervienen en el diseño y colocamos el esquemático de conexionado que encontramos en la hoja de características.

Fig. 54 Pines del Acelerómetro LIS2L02AS4

En el esquemático se han colocado dos condensadores de desacoplo entre

tierra y Alimentación que aconsejan se sitúen cerca del integrado en el rutado de la palca y un jumper que permita el cambio del acelerómetro en modo prueba ST o en modo de funcionamiento normal.

Page 13: 8 Desarrollo del Sistema Físico - bibing.us.esbibing.us.es/proyectos/abreproy/11638/fichero/Capitulo+8.pdf · 6 La salida de 3.3V que presenta el PIC viene como consecuencia del

CAPITULO 8

Desarrollo Físico DDiisseeññoo IInntteeggrraaddoo

Universidad de Sevilla Pág. 83

Fig. 55 Acelerómetro de la placa x_y

Fig. 56 Acelerómetro placa z

La colocación de los acelerómetros determinará la información que

obtendremos de cada una de las señales de salida. Tratamos de obtener tres señales que permitan describir el movimiento al que se ve sometido nuestro sensor. Como nuestro acelerómetro dispone únicamente de dos salidas, es necesario realizar un montaje físico con el que consigamos medir la aceleración en el eje z con un nuevo acelerómetro. Para ello se utilizan los dos acelerómetros mostrados en los esquemáticos de la Fig. 55 y Fig. 56.

Colocaremos el acelerómetro de la Fig. 55 en la misma placa de montaje sobre

la que irá el PIC y el resto de componentes necesarios para la aplicación, de esa forma tendremos las salidas de las aceleraciones en los ejes x-y, que serán dos de las entradas analógicas del PIC. Para la aceleración sobre el eje z montaremos en una nueva placa el acelerómetro de la Fig. 56, para el que sólo 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 colocación Placas para medir las tres dimensiones de la aceleración

Page 14: 8 Desarrollo del Sistema Físico - bibing.us.esbibing.us.es/proyectos/abreproy/11638/fichero/Capitulo+8.pdf · 6 La salida de 3.3V que presenta el PIC viene como consecuencia del

CAPITULO 8

DDiisseeññoo Desarrollo Físico IInntteeggrraaddoo

Pág. 84 Universidad de Sevilla

Las salidas de los acelerómetros se conectará a entradas analógicas del PIC18F2550, en concreto a los pines 2, 3 y 4. Las entradas analógicas sobre las que debemos leer la aceleración serán.

Pin Entrada en PIC Medida Aceleración eje 2 Z 3 Y 4 X

Fig. 58 Correspondencia Entrada PIC y medida realizada El encapsulado del acelerómetro es de tipo SO, encapsulado Circuito integrado

de pequeño contorno. Son los más populares en los circuitos de lógica combinacional, tanto en TTL como en CMOS. La terminación 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 acelerómetro LIS2L02AS4

Page 15: 8 Desarrollo del Sistema Físico - bibing.us.esbibing.us.es/proyectos/abreproy/11638/fichero/Capitulo+8.pdf · 6 La salida de 3.3V que presenta el PIC viene como consecuencia del

CAPITULO 8

Desarrollo Físico DDiisseeññoo IInntteeggrraaddoo

Universidad de Sevilla Pág. 85

8.1.9 Resultado final

Reuniendo todos los componentes en un mismo esquemático, comenzamos con la realización del rutado de la placa, para lo cual debemos conocer todos los elementos utilizados y sus huellas para poder realizar la impresión del mismo.

En nuestro caso, el esquema general es el que se muestra a continuación:

Fig. 60 Esquemático completo del diseño En este esquemático no se presenta el acelerómetro z ya que no pertenece a

la misma placa física, aunque pertenezca al diseño del sistema. Una vez diseñadas todas las partes funcionales necesarias en el diseño,

podemos comprobar el resultado final, establecer la lista de elementos necesarios para la creación del PCB y comenzar con el rutado de la placa.

Page 16: 8 Desarrollo del Sistema Físico - bibing.us.esbibing.us.es/proyectos/abreproy/11638/fichero/Capitulo+8.pdf · 6 La salida de 3.3V que presenta el PIC viene como consecuencia del

CAPITULO 8

DDiisseeññoo Desarrollo Físico IInntteeggrraaddoo

Pág. 86 Universidad de Sevilla

Los elementos necesarios para el diseño:

Cantidad Elemento

2 Acelerómetro LIS2L02AS4

1 Borna Alimentación

2 Condensador 27pF

2 Condensador 470nF

2 Condensador electrolítico 10uF

2 Condensador 100nF

1 Conector Hembra USB soldar placa

1 Cristal 4MHz

3 Jumper

3 LED rojo

1 PIC18F2550

12 Pines verdes

4 Pulsador

1 Resistencia 100Ω

4 Resistencia 10kΩ

5 Resistencia 330Ω

1 Zócalo 28pines

1 Placa Positiva

Fig. 61 Componentes del diseño El resultado final del rutado de las placas: El tamaño de las placas resultantes es de 10x8 cm la placa base de control del

proceso de Detección de Movimiento y 5x5.5 cm la placa con el acelerómetro en el eje z. Tanto la colocación de los componentes como el rutado de las pistas se realizarán de forma que se consigan los siguientes objetivos:

• Minimizar la longitud de las pistas • Minimizar el número de pistas a usar • Minimizar el número de cruces entre pistas • Facilitar el soldado de los componenetes • Facilitar el acceso a los interruptores, bornas y conector USB

El elemento central de diseño es el microcontrolador, el emplazamiento del

resto de los componentes dependerá de él, según la funcionalidad de sus pines y la lógica que empleemos.

Para la implementación 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 acelerómetro, que posee un encapsulado superficial SO en el que los pines se encuentran más próximos entre ellos.

Page 17: 8 Desarrollo del Sistema Físico - bibing.us.esbibing.us.es/proyectos/abreproy/11638/fichero/Capitulo+8.pdf · 6 La salida de 3.3V que presenta el PIC viene como consecuencia del

CAPITULO 8

Desarrollo Físico DDiisseeññoo IInntteeggrraaddoo

Universidad de Sevilla Pág. 87

Definimos de forma esquemática las principales reglas de diseño, separaciones

y márgenes que se tienen en cuenta en la fabricación del PCB.

PARÁMETRO Valor

Diámetro del Taladro 0,8mm Margen Mínimo de la Máscara contra la Pared 0,2mm Anchura mínima del conductor 0,25mm Espacio mínimo entre conductores 0,2mm Distancia mínima del conductor al borde del circuito 0,3mm

Fig. 62 Resultado del rutado de la placa

Page 18: 8 Desarrollo del Sistema Físico - bibing.us.esbibing.us.es/proyectos/abreproy/11638/fichero/Capitulo+8.pdf · 6 La salida de 3.3V que presenta el PIC viene como consecuencia del

CAPITULO 8

DDiisseeññoo Desarrollo Físico IInntteeggrraaddoo

Pág. 88 Universidad de Sevilla

Fig. 63 Resultado del rutado de la placa z

Fig. 64 Fotografía del resultado final de las placas.

Page 19: 8 Desarrollo del Sistema Físico - bibing.us.esbibing.us.es/proyectos/abreproy/11638/fichero/Capitulo+8.pdf · 6 La salida de 3.3V que presenta el PIC viene como consecuencia del

CAPITULO 8

Desarrollo Físico DDiisseeññoo IInntteeggrraaddoo

Universidad de Sevilla Pág. 89

8.2 Diseño del firmware

Firmware es un bloque de instrucciones, que establece la lógica de más bajo nivel que controla los circuitos electrónicos de un dispositivo. Al estar integrado en la electrónica del dispositivo es en parte hardware; pero también puede ser considerado software, ya que proporciona lógica y se dispone en algún tipo de lenguaje de programación. Funcionalmente, es el intermediario entre las órdenes externas que recibe el dispositivo y su electrónica, ya que es el encargado de controlar a ésta última para ejecutar correctamente las órdenes externas.

8.2.1 Configuración básica de los pines del PIC18F2550

Los pines que se utilicen como entradas analógicas deben ser configurados como tales en los correspondientes registros TRIS, PORT y LAT.

TRIS: Para la configuración de las patitas como entradas o salidas. PORT: Para almacenar los niveles lógicos de las patitas. LAT: Para inhibir la salida de los niveles. La configuración de las puertas se realiza colocando a ‘0’ para la configuración

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 construcción del la placa debemos configurar los pines de los

puertos A y B, que son los que atizamos en nuestro diseño.

8.2.1.1 PUERTO A Esta puerta tiene 7 líneas. Todos ellas pueden ser Entrada/Salida digital,

configurando el registro ADCON1 de manera adecuada. Además, cinco de ellas pueden ser entradas del conversor analógico/digital.

En nuestro diseño se utilizarán3 líneas del puerto como entradas analógicas

del conversor analógico/digital, son las líneas AN0, AN1 y AN2, que se corresponden con los pines 2,3 y 4 del PIC18F2550. Para la configuración 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 líneas con resistencia de pull-up internas que se pueden

habilitar con el bit RB-PU#. Todas ellas pueden ser entradas/salidas digital. En el diseño se utilizarán las líneas RB1, RB2 y RB3, pines 22, 23 y 24, como

entradas digitales de la señal que introduzcamos por los pulsadores, mientras que las líneas RB5, RB6 y RB7, correspondientes a los pines 26, 27 y 28 serán salidas digitales a los Led’s de control de la placa.

Page 20: 8 Desarrollo del Sistema Físico - bibing.us.esbibing.us.es/proyectos/abreproy/11638/fichero/Capitulo+8.pdf · 6 La salida de 3.3V que presenta el PIC viene como consecuencia del

CAPITULO 8

DDiisseeññoo Desarrollo Físico IInntteeggrraaddoo

Pág. 90 Universidad de Sevilla

8.2.2 Registros del oscilador

El funcionamiento del oscilador en el PIC18F2550 se controla a través de los registros de configuración CONFIG1L y CONFIG1H y con dos registros de control OSCCON y OSCTUNE.

A continuación se muestra el módulo 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 módulo USB de 48MHz, necesaria para una comunicación con USB a velocidad completa.

Fig. 65 Módulo del Oscilador

Page 21: 8 Desarrollo del Sistema Físico - bibing.us.esbibing.us.es/proyectos/abreproy/11638/fichero/Capitulo+8.pdf · 6 La salida de 3.3V que presenta el PIC viene como consecuencia del

CAPITULO 8

Desarrollo Físico DDiisseeññoo IInntteeggrraaddoo

Universidad de Sevilla Pág. 91

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 comunicación USB, lo que evitará problemas con los tiempos de espera del procesado de la señal.

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 módulo USB como para el resto del microcontrolador. Los datos con los que partimos para realizar la configuración:

Cristal de 4MHz USB 2.0 (alta velocidad): necesita una frecuencia de funcionamiento de

48MHz Los registros de configuración, CONFIG1L y CONFIG1H, permiten seleccionar

el modo de funcionamiento del oscilador y las opciones de pre y post-escalado.

• CONFIG1L

Fig. 66 Registro CONFIG1L

Page 22: 8 Desarrollo del Sistema Físico - bibing.us.esbibing.us.es/proyectos/abreproy/11638/fichero/Capitulo+8.pdf · 6 La salida de 3.3V que presenta el PIC viene como consecuencia del

CAPITULO 8

DDiisseeññoo Desarrollo Físico IInntteeggrraaddoo

Pág. 92 Universidad de Sevilla

• CONFIG1H

Fig. 67 Registro CONFIG1H

En este registro se ha deshabilitado con la opción IESO bit a 0 el intercambio

entre oscilador interno y externo, lo cual simplificará posteriormente la configuración de los registros de control. También hemos desactivado la opción de monitorización 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 configuración de los registros de control es más sencilla, ya que en ambos

registros se especifican funcionamientos del oscilador interno que en nuestra aplicación no se implementará.

El registro OSCCON controla varios aspectos de la operación 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.

Page 23: 8 Desarrollo del Sistema Físico - bibing.us.esbibing.us.es/proyectos/abreproy/11638/fichero/Capitulo+8.pdf · 6 La salida de 3.3V que presenta el PIC viene como consecuencia del

CAPITULO 8

Desarrollo Físico DDiisseeññoo IInntteeggrraaddoo

Universidad de Sevilla Pág. 93

• OSCCON

Fig. 68 Registro OSCCON

El registro OSCTUNE se utiliza para calibrar y ajustar la frecuencia del

oscilador interno. Como en el diseño elegido utilizamos el oscilador primario como fuente de reloj, este valor de registro no nos interesa.

Page 24: 8 Desarrollo del Sistema Físico - bibing.us.esbibing.us.es/proyectos/abreproy/11638/fichero/Capitulo+8.pdf · 6 La salida de 3.3V que presenta el PIC viene como consecuencia del

CAPITULO 8

DDiisseeññoo Desarrollo Físico IInntteeggrraaddoo

Pág. 94 Universidad de Sevilla

8.2.3 Registros del convertidor A/D

El módulo conversor A/D tiene una resolución de 10bits con 10 canales para los dispositivos de 28 pines como es el caso del PIC18F2550.

A través del canal de entrada seleccionado, se aplica la señal analógica 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 técnica de aproximaciones sucesivas, técnica utilizada en los casos en los que se requiere una alta velocidad de conversión.

Esta técnica consiste en realizar sucesivas comparaciones de forma

ascendente o descendente, hasta encontrar un valor digital que iguale la tensión entregada por el conversor D/A y la tensión de entrada.

Fig. 69 Estructura del conexionado del conversor A/D.

Este módulo presenta cinco registros de configuración y control:

• ADRESH: Parte alta del resultado de la conversión A/D • ADRESL: Parte baja del resultado de la conversión A/D • ADCON0: Controla el funcionamiento del módulo A/D • ADCON1: Configura la función de los pines de los puertos. • ADCON2: Configura el reloj del conversor A/D, el tiempo de

adquisición y el formato del resultado de la conversión.

Page 25: 8 Desarrollo del Sistema Físico - bibing.us.esbibing.us.es/proyectos/abreproy/11638/fichero/Capitulo+8.pdf · 6 La salida de 3.3V que presenta el PIC viene como consecuencia del

CAPITULO 8

Desarrollo Físico DDiisseeññoo IInntteeggrraaddoo

Universidad de Sevilla Pág. 95

El registro ADCON0 controla la operación del conversor A/D, mientras que el ADCON! Sirve para configurar las patitas de la puerta A como entradas analógicas o E/S digitales. El registro ADCON2 configura la fuente de reloj A/D y la justificación del resultado.

En la pareja de registros ADRESH:ADRESL se deposita el resultado de la

conversión, que al estar compuesta por 10 bits, sólo son significativos 10 de los 16 bits de esta pareja.

• ADCN0

Fig. 70 Registro ADCON0

La resolución de la conversión depende de Vref=(Vref+)-(Vref-), de forma que:

bitmV

bit

VsVGNDVVref

VrefVrefVrefsolución DD 8.4

1024

5Re5

10241024

)()(Re ==⇒=−=⇒=−−+=

Page 26: 8 Desarrollo del Sistema Físico - bibing.us.esbibing.us.es/proyectos/abreproy/11638/fichero/Capitulo+8.pdf · 6 La salida de 3.3V que presenta el PIC viene como consecuencia del

CAPITULO 8

DDiisseeññoo Desarrollo Físico IInntteeggrraaddoo

Pág. 96 Universidad de Sevilla

Vref+ y Vref- determinan los límites máximo y mínimo de la tensión analógica que se puede convertir. En el caso de Vref+=5V y Vref-=0V, caso que encontramos en nuestro diseño, la resolución calculada es de 4.8mV/bit . Por tanto, a la entrada analógica de 0V le corresponderá una salida digital 00 0000 0000 y para la de 5V será 11 1111 1111. El Vref mínimo es de 2V.

• ADCON1

Vref+ y Vref- pueden ser internas (VDD y GND) o externas a través de los pines 4

y 5 del dispositivo: RA2->Vref- y RA3->Vref+. Nosotros utilizaremos VDD y GND como referencia.

Fig. 71 Registro ADCON1

Page 27: 8 Desarrollo del Sistema Físico - bibing.us.esbibing.us.es/proyectos/abreproy/11638/fichero/Capitulo+8.pdf · 6 La salida de 3.3V que presenta el PIC viene como consecuencia del

CAPITULO 8

Desarrollo Físico DDiisseeññoo IInntteeggrraaddoo

Universidad de Sevilla Pág. 97

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

Fig. 72 Secuencia de Conversión A/D

El tiempo de adquisición puede ser programado para que el micro lo tenga en

cuanta durante el proceso de conversión de manera automática. Los bits ACQT2:ACQT0 del registro ADCON2<5:3> proporcionan un rango desde 2 hasta 20 vecesTAD (Periodo de conversión por bit). De esta forma después de seleccionar el canal no hay que esperar el periodo de adquisición por programa hasta poder activar el bit de inicio de la conversión GO/·DONE. El micro automáticamente espera el tiempo de adquisición programado en ACQT2:ACQT0. Si la configuración de estos registros se hace a 000, la espera seguirá realizándose de forma manual, cuando el bit GO/#DONE se activa, el módulo supone que ya ha pasado el tiempo de adquisición de datos y comienza la conversión inmediatamente.

En nuestro coso se programará un tiempo de adquisición automático que

simplificará el código del microcontrolador. La conversión comienza justo después de completarse el tiempo de

adquisición. Para que la conversión se realice de forma correcta es necesario que pasen al menos 11TAD, siendo TAD el tiempo necesario para completar la conversión analógico-digital de un bit.

Existen 7 formas posibles de seleccionar el reloj del conversor para TAD, a

través de los bits ADCS2:ADCS0 del registro, bien utilizando la señal 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 módulo de conversión, el oscilador RC que funciona a 1MHz.

Page 28: 8 Desarrollo del Sistema Físico - bibing.us.esbibing.us.es/proyectos/abreproy/11638/fichero/Capitulo+8.pdf · 6 La salida de 3.3V que presenta el PIC viene como consecuencia del

CAPITULO 8

DDiisseeññoo Desarrollo Físico IInntteeggrraaddoo

Pág. 98 Universidad de Sevilla

TAD debe elegirse para que tenga un valor entre 0,7µs y 2,5µs, valores obtenidos de las especificaciones del PIC18F2550. Además, para una correcta conversión analógico-digital, el reloj analógico-digital de conversión (TAD) debe ser lo más corto como sea posible, pero mayor que el mínimo TAD permitido por el dispositivo; 0,7µs.

La muestra el resultado del valor del TAD sabiendo la frecuencia de trabajo del

dispositivo y la fuente de reloj analógico-digital seleccionada.

Fig. 73 TAD frente a la frecuencia de operación del dispositivo.

La elección del reloj del oscilador como FOSC/4 que se ha realizado en el diseño

del sistema se debe a las características del mismo. La frecuencia de variación de la velocidad del acelerómetro que se va a medir con nuestra aplicación puede llegar a ser como mucho la variación 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 características del PIC18F2550, podemos diseñar el tiempo de adquisición.

Fig. 74 Modelo entrada analógica del PIC18F2550

Page 29: 8 Desarrollo del Sistema Físico - bibing.us.esbibing.us.es/proyectos/abreproy/11638/fichero/Capitulo+8.pdf · 6 La salida de 3.3V que presenta el PIC viene como consecuencia del

CAPITULO 8

Desarrollo Físico DDiisseeññoo IInntteeggrraaddoo

Universidad de Sevilla Pág. 99

Se define el tiempo de adquisición de datos como TACQ=TAMP+Tc+TCOFF (Tiempo de amplificación + Tiempo de carga del condensador + Coeficiente de Temperatura) Para el caso que nos ocupa y clores, comprobamos (especificaciones dada en la hoja de catálogo):

TAMP=2µs TC=-CHOLD(RIC+Rss+Rs)Ln(1/2048)=-25p(1K+2k+0)Ln(1/2048)=0,57µs TCOEFF=(85ºC-25ºC)0.02µs/ºC=1.2µs Resultando: TACQ=0.2µs+0.57µs+1.2µs=1.97µs. Como la frecuencia del

oscilador elegida es de 4MHz, el tiempo será TAD=4TOSC=1µs, con lo que podremos configurar de manera automática el tiempo de adquisición para que TACQ=2TAD, simplificando la codificación de la aplicación en el micro.

El resultado de la línea de tiempo necesaria para la conversión es el siguiente:

Fig. 75 Conversión A/D con tiempo de Adquisición automático.

El bit de más peso del registro ADCON2 , el bit 7, ADFM selecciona el formato

del resultado de la conversión. Si vale1, el resultado está justificado en el registro ADRESH, que tiene sus 6 bits de más peso a 0; mientras que si vale 0 la justificación se realiza sobre el registro ADRESL, que tiene sus bits de menos peso a 0.

Fig. 76 Alineamiento del resultado digital

Page 30: 8 Desarrollo del Sistema Físico - bibing.us.esbibing.us.es/proyectos/abreproy/11638/fichero/Capitulo+8.pdf · 6 La salida de 3.3V que presenta el PIC viene como consecuencia del

CAPITULO 8

DDiisseeññoo Desarrollo Físico IInntteeggrraaddoo

Pág. 100 Universidad de Sevilla

• ADCON2

Fig. 77 Registro ADCON2

8.2.3.1 Configuración del Conversor A/D A continuación se muestran los pasos necesarios a la hora de realizar una

conversión A/D.

1. Configurar el modulo C A/D • Configurar las patitas que actuarán como entradas analógicas, las que

trabajan como E/S digitales y las usadas para la Tensión de referencia (registro ADCON1).

• Seleccionar reloj de conversión (registro ADCON2) • Seleccionar el tiempo de adquisición de dato (ADCON2) • Seleccionar el canal de entrada (registro ADCON0) • Activar el módulo A/D (registro ADCON0)

2. Activar , si se desea, la interrupción escribiendo sobre PIE1 y PIR1 • Borrar el señalizador ADIF • Poner a 1 el bit ADIE • Poner a 1 los bits habilitadores GIE.

Page 31: 8 Desarrollo del Sistema Físico - bibing.us.esbibing.us.es/proyectos/abreproy/11638/fichero/Capitulo+8.pdf · 6 La salida de 3.3V que presenta el PIC viene como consecuencia del

CAPITULO 8

Desarrollo Físico DDiisseeññoo IInntteeggrraaddoo

Universidad de Sevilla Pág. 101

3. Tiempo de espera para que transcurra el tiempo de adquisición (si es

requerido). 4. Inicio de la conversión.

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

5. Tiempo de espera para completar la conversión A/D que puede detectarse: • Exploración del bit GO/DONE#, que al completarse la conversión pasa

a valer 0 • Esperando a que se produzca la interrupción, si se ha programado, al

finalizar la conversión. • Aunque no se permita interrupción, el señalizador ADIF se pondrá a 1

al finalizar la conversión

6. Leer el resultado en los 10 bits válidos y borrar el flan ADIF. 7. Para una nueva conversión regresar al paso 1º o al 2º

El tiempo de conversión por bit esta definido por TAD. Se exige esperar un

tiempo mínimo de 2TAD para reiniciar una nueva conversión.

8.2.4 Registros del módulo USB

Para nuestra aplicación configuraremos un conexión USB de alta velocidad 2.0 pese a que no sería necesario tanta velocidad para la transmisión de la aplicación, el realizarlo a velocidad completa no encarece el sistema y permite tener un soporte ya diseñado para futuras aplicaciones que requieran una velocidad de transferencia mayor.

El PIC18F2550 contiene un mecanismo de comunicación serie compatible con

USB, llamado SIE (Serial Interface Engine) que permite el control de la comunicación entre el host USB y el PIC.

El control y la configuración del módulo USB se lleva a cabo a través de 22

registros de estado y de control. Estos son:

• Registro de Control USB (UCON). • Registro de configuración USB (UCFG). • Registro de estado de transferencia USB (USTAT). Lectura • Registro de dirección de dispositivo USB (UADDR). • Registros de número de frame (UFRMH:UFRML). • Registros (del 0 al 15) de habilitación de puntos finales (UEPn).

Page 32: 8 Desarrollo del Sistema Físico - bibing.us.esbibing.us.es/proyectos/abreproy/11638/fichero/Capitulo+8.pdf · 6 La salida de 3.3V que presenta el PIC viene como consecuencia del

CAPITULO 8

DDiisseeññoo Desarrollo Físico IInntteeggrraaddoo

Pág. 102 Universidad de Sevilla

Vemos la configuración interna para el funcionamiento del módulo USB en la Fig. 78. Comprobamos que el módulo USB dispone de un regulador interno de 3.3V para suministrar tensión 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 alimentación de 5 V, el transductor debe alimentarse de una fuente distinta (Vusb).

El regulador se controla a través del bit VREGEN del registro de configuración

CONFIG2L. Cuando está habilitado (VREGEN = 1), el voltaje es visible en el pin Vusb. Si el regulador está deshabilitado, una tensión de 3,3 V debe ser suministrada externamente a través de Vusb. Hay que tener en cuenta que las resistencias de pullup internas únicamente pueden utilizarse si el transductor interno está activo.

Fig. 78 Módulo USB

Como puede comprobarse en la figura, se ha optado por la utilización 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 número de componentes necesarios en el dispositivo sea el menor posible, lo cual repercute tanto en el tamaño como en el coste del dispositivo.

Page 33: 8 Desarrollo del Sistema Físico - bibing.us.esbibing.us.es/proyectos/abreproy/11638/fichero/Capitulo+8.pdf · 6 La salida de 3.3V que presenta el PIC viene como consecuencia del

CAPITULO 8

Desarrollo Físico DDiisseeññoo IInntteeggrraaddoo

Universidad de Sevilla Pág. 103

El bit de PKTDIS (UCON <4>) es una bandera que indica que el SIE ha

inutilizado para la transmisión y recepción de paquetes. Este bit es activado por el SIE cada vez que se recibe una señal de SISTEMA para permitir al tratamiento de la misma. Este bit no puede ser activado por el microcontrolador, sólo podemos limpiarlo; lo permitirá al SIE para seguir la transmisión y/o la recepción.

• UCON

Fig. 79 Registro UCON

La configuración del transductor y los pull-ups, asi como la velocidad de

dispositivo se debe llevar a cabo antes de habilitar el módulo y no puede ser cambiada mientras este se encuentre habilitado. El registro que se encarga de realizar esta configuración es el UCFG.

• UCFG Antes de comenzar la comunicación con el USB debemos configurar el

hardware asociado al módulo de comunicación, utilicemos el hardware interno y/o externo al microcontrolador. La mayor parte de la configuración se realiza con el registro de UCFG, a excepción del regulador de tensión de 3.3V que deberemos configurarlo en el registro de configuración CONFIG2L.

Page 34: 8 Desarrollo del Sistema Físico - bibing.us.esbibing.us.es/proyectos/abreproy/11638/fichero/Capitulo+8.pdf · 6 La salida de 3.3V que presenta el PIC viene como consecuencia del

CAPITULO 8

DDiisseeññoo Desarrollo Físico IInntteeggrraaddoo

Pág. 104 Universidad de Sevilla

El registro de UFCG contiene la mayor parte de los bits que controlan el comportamiento de nivel de sistema del módulo USB. Estos incluyen:

⇒ Velocidad de Bus (velocidad completa o baja velocidad) ⇒ Habilitación de las resistencias pull-up del microcontrolador ⇒ Habilitación del Transductor del microcontrolador ⇒ Permiten Uso de Buffer Ping-pong·

Fig. 80 Registro UCFG

El registro UCFG también contiene dos bits que permiten el manejo del modo

de testeo del la función del microcontrolador, ayudando en las puebas de manejo de la aplicación, para la eliminación de fallos y certificaciones del uso del USB, son bits de salida de control que permiten la supervisión del estado del buffer en cada momento.

El USB OE proporciona información en cuanto a si el SIE escucha al Bus o

participa activamente en la comunicación con el host. Esto bit estará habilitado por defecto cuando se usa un transductor externo. El bit de supervisión USB OE es útil para la eliminación de fallos de sistema inicial.

Page 35: 8 Desarrollo del Sistema Físico - bibing.us.esbibing.us.es/proyectos/abreproy/11638/fichero/Capitulo+8.pdf · 6 La salida de 3.3V que presenta el PIC viene como consecuencia del

CAPITULO 8

Desarrollo Físico DDiisseeññoo IInntteeggrraaddoo

Universidad de Sevilla Pág. 105

Podemos generar un diagrama de ojo activando la opción de testeo UTEYE. La salida del diagrama de ojo permitirá observar si las señales que se generan a través del USB están afectadas por el ruido debido a la proximidad de componentes.

En nuestro diseño ambos modos permanecerán desactivados.

• UEPn Los registros de configuración de puntos finales cambiarán de valor según la

tecnología de transmisión que empleemos en la comunicación con el dispositivo USB, se configuraran en el software mediante los ficheros de cabecera.

Un ejemplo de configuración de estos registros, podríamos verlo con una

comunicación para el envío de datos al PC por interrupción. 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 interrupción de

entrada

Fig. 81 Registros UEPn

Page 36: 8 Desarrollo del Sistema Físico - bibing.us.esbibing.us.es/proyectos/abreproy/11638/fichero/Capitulo+8.pdf · 6 La salida de 3.3V que presenta el PIC viene como consecuencia del

CAPITULO 8

DDiisseeññoo Desarrollo Físico IInntteeggrraaddoo

Pág. 106 Universidad de Sevilla

• USTAT (Registro de Estado; Sólo permite lectura) El registro de Estado del USB indica el estado de transacción dentro del SIE.

Cuando el SIE emite una interrupción de transferencia de USB completa, debemos leer el registro USTAT para determinar el estado de la transferencia. USTAT contiene el número de punto final de la transferencia.

8.2.5 Registros de configuración

Los PIC18F2550 incluyen varias características especiales pensadas para maximizar las prestaciones y minimizar el coste eliminando componentes externos. Además permiten ahorrar energía y proteger el código frente a copia.

Estos elementos son:

⇒ Varias fuentes de oscilador diferentes. ⇒ Diversos tipos de RESET. ⇒ Varias fuentes de interrupción, con dos niveles de prioridad. ⇒ Temporizador Watchdog. ⇒ Varios modos de bajo consumo. ⇒ Monitor de fallo de reloj. ⇒ Star-up de dos velocidades. ⇒ Protección del código. ⇒ Posiciones de localización ID. ⇒ Circuitería de programación serie en circuito.

Los registros de configuración permiten controlar estas características

especiales del microcontrolador. Estos registros están mapeados a partir de la dirección de memoria de programa 300000h, la cual se encuentra más allá de la direcciones de memoria de programa disponibles para el usuario, de hecho se encuentra en la zona de memoria reservada para la configuración del sistema.

Fig. 82 Registros de configuración del PIC18F2550

Page 37: 8 Desarrollo del Sistema Físico - bibing.us.esbibing.us.es/proyectos/abreproy/11638/fichero/Capitulo+8.pdf · 6 La salida de 3.3V que presenta el PIC viene como consecuencia del

CAPITULO 8

Desarrollo Físico DDiisseeññoo IInntteeggrraaddoo

Universidad de Sevilla Pág. 107

Se han producido cambios en los bits de configuración del oscilador de entrada

CONFIG1, además de los siguientes bits que afectan a otras características del dispositivo.

8.3 Adaptación de la placa del programador.

Para la comunicación 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 características del PIC16F690, que posee únicamente 20 pines.

La conexión de la placa con el PIC 16F690 a través del puerto de

comunicación ICSP, presenta las siguientes conexiones con los pines marcados en el dibujo del patillaje del microprocesador:

Page 38: 8 Desarrollo del Sistema Físico - bibing.us.esbibing.us.es/proyectos/abreproy/11638/fichero/Capitulo+8.pdf · 6 La salida de 3.3V que presenta el PIC viene como consecuencia del

CAPITULO 8

DDiisseeññoo Desarrollo Físico IInntteeggrraaddoo

Pág. 108 Universidad de Sevilla

Fig. 83 Esquemático comunicación con PIC16F690

La conexión de la placa con el PIC 18F2550, cambia completamente ya que la

funcionalidad de los pines del 18F2550 no se corresponde en ubicación con el integrado 16F690.

Fig. 84 Esquemático comunicación con PIC18F2550

Page 39: 8 Desarrollo del Sistema Físico - bibing.us.esbibing.us.es/proyectos/abreproy/11638/fichero/Capitulo+8.pdf · 6 La salida de 3.3V que presenta el PIC viene como consecuencia del

CAPITULO 8

Desarrollo Físico DDiisseeññoo IInntteeggrraaddoo

Universidad de Sevilla Pág. 109

Una vez se tienen claro los pines del PIC18F2550 implicados en la comunicación con el puerto USB para el funcionamiento del programador y la relación 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.

Page 40: 8 Desarrollo del Sistema Físico - bibing.us.esbibing.us.es/proyectos/abreproy/11638/fichero/Capitulo+8.pdf · 6 La salida de 3.3V que presenta el PIC viene como consecuencia del

CAPITULO 8

DDiisseeññoo Desarrollo Físico IInntteeggrraaddoo

Pág. 110 Universidad de Sevilla