135
Proyecto Final de carrera Diseño de un Generador RF en Banda L MEMORIA Titulación: Ingeniería Técnica Industrial en Electrónica Industrial AUTOR: Jose A. García-Uceda Calvo. DIRECTOR: Antonio Ramón Lázaro. Julio / 2006.

Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

Embed Size (px)

Citation preview

Page 1: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

Proyecto Final de carrera

Diseño de un Generador RF en Banda L

MEMORIA

Titulación: Ingeniería Técnica Industrial en Electrónica Industrial

AUTOR: Jose A. García-Uceda Calvo. DIRECTOR: Antonio Ramón Lázaro.

Julio / 2006.

Page 2: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

1

ÍNDICE

Page 3: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

2

ÍNDICE

1 Memoria Descriptiva........................................................................ 5

1.1 Objeto del Proyecto ....................................................................................... 5

1.2 Posibles Soluciones y Solución Adoptada .................................................... 5

1.3 Descripción General del Equipo.................................................................... 7

1.4 Descripción General de la Solución Adoptada............................................ 10

1.4.1 Módulo 1, Sintetizador. ....................................................................... 10

1.4.2 Módulo 2, Programación mediante Microcontrolador. ....................... 25

1.4.3 Módulo 3, Vco..................................................................................... 33

1.5 Resultados y conclusiones ........................................................................... 34

1.5.1 Resultados............................................................................................ 34

1.5.2 Conclusiones........................................................................................ 38

2 Memoria de Cálculo ........................................................................ 40

2.1 Programa UMA v1.0 ................................................................................... 40

2.1.1 Algoritmo de programación por puerto paralelo ................................. 41

2.1.2 Algoritmo de programación por puerto serie ...................................... 44

2.2 Programa de gestión del Micro................................................................... 57

2.2.1 Recepción de los datos. ....................................................................... 57

2.2.2 Algoritmo de programación................................................................. 58

2.2.3 Rutinas auxiliares ................................................................................ 59

2.2.4 Función Main....................................................................................... 60

3 Planos................................................................................................ 64

3.1 Placa del circuito impreso 1......................................................................... 64

3.1.1 Situación de los componentes en placa 1 ............................................ 64

3.1.2 Mascara de cara soldadura, placa 1 ( Bottom ).................................... 65

3.2 Placa del circuito impreso 2......................................................................... 66

3.2.1 Situación de los componentes en placa 2 ............................................ 66

3.2.2 Mascara de cara soldadura placa 2 ( Top ) .......................................... 67

3.2.3 Mascara de cara soldadura placa 2 ( Bottom )..................................... 68

3.3 Placa del circuito impreso 3......................................................................... 69

3.3.1 Situación de los componentes en placa 3 ............................................ 69

3.3.2 Mascara de cara soldadura placa 3 ( Top ) .......................................... 70

3.3.3 Mascara de cara soldadura placa 3 ( Bottom )..................................... 71

Page 4: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

3

3.4 Placa del circuito impreso 4......................................................................... 72

3.4.1 Situación de los componentes en placa 4 ............................................ 72

3.4.2 Mascara de cara soldadura placa 4 ( Top ) .......................................... 73

3.4.3 Mascara de cara soldadura placa 4 ( Bottom )..................................... 74

3.5 Placa del circuito impreso 5......................................................................... 75

3.5.1 Situación de los componentes en placa 5 ............................................ 75

3.5.2 Mascara de cara soldadura placa 5 ( Top ) .......................................... 76

3.5.3 Mascara de cara soldadura placa 5 ( Bottom )..................................... 77

4 Presupuesto ...................................................................................... 79

4.1 Mediciones .................................................................................................. 79

4.2 Cuadro de precios ........................................................................................ 83

4.3 Aplicación de precios .................................................................................. 87

4.4 Resumen del presupuesto del prototipo....................................................... 92

5 Bibliografía....................................................................................... 94

5.1 Libros y Manuales consultados .................................................................. 94

5.2 Páginas Web consultadas............................................................................. 95

6 Anexos............................................................................................... 97

6.1 Manual de usuario ....................................................................................... 97

6.2 Código fuente para el PIC16F876A .......................................................... 102

6.3 Código fuente del programa UMA v1.0................................................... 108

6.4 UMA1021M DataSheet............................................................................. 135

Page 5: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

4

MEMORIA DESCRIPTIVA

Page 6: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

5

1 Memoria Descriptiva

1.1 Objeto del Proyecto

Este proyecto tiene como objetivo realizar un Generador de RF en Banda L. El proyecto servirá como herramienta docente para el laboratorio de comunicaciones en el que los alumnos de esta asignatura podrán experimentar con el generador.

El proyecto en sí, consiste en diseñar un sintetizador de frecuencias de RF basado en un PLL (Phase Lock Loop) que sea capaz de sintetizar una serie de frecuencias para su posterior estudio. El PLL será controlado en todo momento por un programa de gestión a través de un PC o a través de un Microcontrolador. El programa de gestión se realizará en un lenguaje visual para que el alumno se encuentre con un entorno amigable.

1.2 Posibles Soluciones y Solución Adoptada

Para buscar una solución al problema planteado es necesario tener claro el concepto de PLL, por eso se va a dar una pequeña explicación a modo de apunte.

Figura 1. Diagrama de bloques de un PLL, configuración típica.

El objetivo del PLL es transmitir la pureza espectral y estabilidad de una señal de referencia de un oscilador fijo (en nuestro caso, un oscilador de cristal de cuarzo) a un oscilador controlado por tensión (VCO), para poder sintetizar un determinado número de frecuencias de salida, por ejemplo: Para un rango de frecuencias de entre 1300 y 2000 MHz. Dicho margen depende del VCO seleccionado.

La frecuencia de salida se determina con el valor de los divisores de la señal de referencia y de los prescalers de entrada.

El comparador de fase (y frecuencia) da una señal de error proporcional a la diferencia de fase entre la señal dividida procedente de la referencia, y la salida dividida de los prescalers de entrada (ver figura 1). La frecuencia de esta señal de comparación se denomina frecuencia de comparación:

Page 7: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

6

M

FrefFcomp = [1]

Cuando el PLL está enganchado (o en estado de locking) la frecuencia de salida vale:

=∗=

M

NFcompNFout Fref [2]

La señal de salida del comparador de fase se filtra con un filtro pasa bajos denominado filtro de lazo, la salida del cual modifica la tensión de control de VCO y por tanto la frecuencia del VCO. El objetivo de este filtro es solo dejar pasar variaciones lentas de la señal de error, por tanto, idealmente, cuando las frecuencias de las dos señales de entrada al comparador de fase son idénticas, la salida del comparador es nula, y la tensión de control del VCO se mantiene constante.

Si por cualquier razón, por ejemplo cuando se conecta la alimentación, las frecuencias de las dos señales no son iguales, la señal de salida del comparador no es cero, y el filtro de lazo actúa intentando reducir la señal de salida del comparador y por tanto intentado igualar las frecuencias, hasta llegar al estado de locking o PLL enganchado. Bajo estas condiciones la señal de salida sigue las variaciones de la señal de referencia. Esta propiedad se utiliza en moduladores de frecuencia, FM.

Los PLL’s modernos utilizan detectores de fase denominados charge pump, que bombean pulsos de corriente de duración proporcional al error de fase, de manera, que el filtro de lazo integra estos pulsos y los convierte en una señal de control para el VCO.

Normalmente se utilizan filtros pasivos para realizar el filtro de lazo.

La amplitud de los pulsos de corriente se puede programar, de manera que puedan modificar por configuración del ancho del filtro del lazo. Normalmente, disponemos de dos bombas una normal y otra llamada FAST. Esta segunda bomba, en determinadas aplicaciones se utiliza con un filtro de lazo adicional que sólo actúa durante la adquisición de frecuencias (por ejemplo cuando se cambia de canal en un móvil), ya que aumenta la corriente, el ancho de lazo aumenta, y el tiempo de adquisición disminuye, una vez enganchado a la nueva frecuencia se desactiva, utilizando solo la bomba normal. En otras ocasiones, se conecta en paralelo con la normal, para dar más flexibilidad cuando se selecciona al ancho de banda del lazo.

Los PLL`s modernos, como el UMA1021, disponen de un indicador de lock rápido, de manera que se puede utilizar para indicar a un microprocesador si el PLL está enganchado.

Teniendo claro el concepto de PLL y los bloques que lo componen, nos vemos capaces de dar una solución al problema propuesto.

Hoy en día el mercado ofrece cantidad de productos similares con prestaciones muy

Page 8: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

7

parecidas y a veces resulta difícil declinarnos por un dispositivo u otro. Nosotros nos hemos fijado en un sintetizador de frecuencias denominado UMA1021M BICMOS de la casa Phillips (UMA1021M Data Sheet. Low-voltage frequency synthesizer for radio telephones. Philips

Semiconductors. 1999), el datasheet de este sintetizador lo podemos encontrar en el apartado 6 de esta memoria, Anexos. Este sintetizador esta formado por dos divisores de frecuencia (uno para la referencia y otro para la frecuencia de entrada), un comparador de fase, 1 bomba charge-pump, otra Fast y un módulo que nos permite la programación de este sintetizador.

Una vez elegido el sintetizador nos queda por definir el oscilador que vamos a utilizar para la frecuencia de referencia y el VCO que vamos a utilizar para corregir el error de fase.

Para la referencia utilizaremos un cristal de cuarzo de unos 12 MHz, el cristal elegido pertenece a la casa AEL (9710 Series Oscilador). En cuanto al VCO elegido pertenece a la casa Mini-Circuits y es el modelo POS2000 capaz de trabajar con frecuencias de entre 1260 MHz (para V=0V) y 2000 MHz (para V=15V). Dado que utilizaremos alimentación de 5V, el margen de sintonía se reducirá hasta unos 1450 MHz, dado que la tensión de control no puede superar la alimentación.

Una vez determinados los componentes esenciales para la realización del PLL, sólo nos queda especificar como vamos a programar el sintetizador.

Para programar el sintetizador, podemos utilizar el puerto paralelo del PC. A través de este puerto se puede diseñar un programa en lenguaje C++ capaz de llevar acabo esa gestión. Del puerto paralelo deben salir 3 líneas que vayan conectadas directamente al bus del sintetizador sin necesidad de ningún dispositivo adicional.

Como alternativa también programaremos el sintetizador por medio de un microcontrolador también controlado por el mismo programa de gestión antes comentado. El microcontrolador recibirá consignas a través del puerto serie del PC. El micro será capaz de reconocer una serie de consignas provenientes del software de gestión y de esa forma podrá programar el sintetizador.

1.3 Descripción General del Equipo

El equipo esta formado por una serie de bloques conectados entre sí, y a su vez estos se dividen en subbloques dando forma y sentido al proyecto. Podríamos decir que el equipo se divide en 3 módulos principales:

Módulo 1, Sintetizador:

• Sintetizador UMA1021M. • Alimentación del circuito. • Filtro de 4º Orden. • Bus 3-wire. • Frecuencia de referencia.

Page 9: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

8

Módulo 2, Programación mediante Microcontrolador:

• Microcontrolador PIC16F876A • Alimentación del circuito. • Oscilador XT. • Circuito Mclr. • Circuito MAX232. • Bus 3-wire.

Módulo 3, Vco

• Vco POS-2000

El equipo está diseñado para ser utilizado por usuarios del laboratorio de

comunicaciones. Dichos usuarios deberán conectar los diferentes módulos para su posterior utilización dependiendo del tipo de programación elegida para programar el sintetizador, siempre y cuando se utilicen los módulos por separado ya que se han hecho diferentes diseños PCB, todos ellos igual de válidos. En el caso de elegir que la programación sea de forma serial, se deberán conectar todos los módulos, mientras que para una programación vía puerto paralelo se podrá prescindir del módulo 2, o sea, el módulo que lleva el microcontrolador Pic, siempre y cuando se hallan decidido utilizar las tres placas por separado (para mas información sobre los diseños ir a apartado 3, planos).

Page 10: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

9

Figura 2. Diagrama de bloques.

PC

MICRO

PIC16F876A

SINTETIZADOR

UMA1021M

VCO

POS-2000

Page 11: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

10

1.4 Descripción General de la Solución Adoptada

1.4.1 Módulo 1, Sintetizador.

1.4.1.1 Sintetizador UMA1021M

El sintetizador elegido para realizar este proyecto es el UMA1021M BICMOS de la casa Phillips. El UMA1021M integra un prescaler, un comparador de fase y divisores programables de frecuencia que sirven para implementar un PLL o lazo de amarre de fase.

Figura 3. Composición y estructura del sintetizador.

Page 12: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

11

Características del sintetizador:

Tabla 1. Parámetros significativos del sintetizador.

El Main divider o divisor principal funciona con niveles de señal de entre 50 y 225mV (rms) y frecuencias que van de 300 MHz a 2,2 GHz. Este divisor esta formado por un prescaler completamente programable seguido de un contador. Los valores que pueden ser cargados en el divisor van desde el 512 al 131071 ambos incluidos.

El Referente divider o divisor de referencia funciona con niveles de señal de entre 50 y 500mV (rms) y frecuencias que van de 3 a 35 MHz. Los valores que pueden ser cargados en el divisor van desde el 8 al 2047 ambos incluidos.

El Comparador de fase funciona a base de ir recibiendo y comparando las dos señales provenientes de los divisores. Tras la comparación se generan pulsos proporcionales al error de fase entre las dos señales mediante el módulo Charge-pump, pudiendo elegir el modo rápido o normal. Estos pulsos son múltiplos de la corriente Iset que previamente el diseñador configura mediante una resistencia Rset en el pin 19 del sintetizador. El comparador dispone de una bandera que se levanta cada vez que el sintetizador se engancha o está en estado de Lock. Esta indicación de enganche se hace a través del pin 20 del sintetizador.

La Interfaz serial que lleva integrada el sintetizador sirve para programar tanto los divisores de la frecuencia como el charge-pump, la configuración de Iset…Esta interfaz se conecta a un bus 3-wire.

El sintetizador dispone de tres pines para la alimentación del mismo: Vcc, Vdd1 y Vdd2. Así mismo también viene previsto de diferentes pines para las masa: Vss1, Vss2, Vss3 y GND.

El generador de pulsos Charge pump dispone de su propia alimentación y masa, que son Vcc y Gnd. El resto del sintetizador se alimenta con las otras señales.

El rango en el que se puede alimentar al sintetizador va desde 2.7 V para una tensión mínima y 5.5 V para la máxima. Esto sirve tanto para alimentación del charge pump como para el resto del integrado. El fabricante nos recomienda que si utilizamos tensiones diferentes, cumplamos el siguiente criterio: Vdd>=Vcc. También nos recomienda que

Page 13: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

12

cortocircuitemos las masas para que el integrado no sufra ningún tipo de daño. De otra forma se nos sugiere que a la entrada de los 3 pines de alimentación incluyamos un par de capacidades para estabilizar la entrada.

Tabla 2. Parámetros significativos del sintetizador.

Siguiendo las recomendaciones del fabricante y los parámetros indicados en la tabla, el circuito queda alimentado a 5V, aplicando el siguiente criterio: VDD1=VDD2=VCC. También aplicamos a la entrada de cada alimentación un pequeño filtro.

VCC

100pF

100pF100nF

12

FAST

VDD2

CP

CPF

RFI

VSS3

PON

POL

VSS2

ISET

LOCK

VSS1

GND

VCC

VDD1

XTALB

XTALA

CLK

DATA

E_NOT

VCC

12

100nF 100pF

VCC

100nF

12

Figura 4. Alimentación del sintetizador.

Page 14: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

13

La corriente Iset se fija con un resistencia conectada a la patilla Iset. En dicho terminal existe una referencia de tensión estable de 1.2 V, por tanto:

Tabla 3. Parámetros significativos del sintetizador.

RsetIset

2,1= [3]

Para una corriente =Iset uA200 , 65kRset =

5k6

FAST

VDD2

CP

CPF

RFI

VSS3

PON

POL

VSS2

ISET

LOCK

VSS1

GND

VCC

VDD1

XTALB

XTALA

CLK

DATA

E_NOT

Figura 5. Resistencia de configuración Rset.

Page 15: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

14

En el pin 1 nos encontramos con el modo Fast que sirve para activar el modo rápido del módulo charge pump.

Tabla 4. Parámetros significativos del sintetizador.

Para limitar la corriente ponemos una resistencia de entrada de unos 100k. El

fabricante nos recomienda que como mínimo pase una corriente de 400uA. Con esta configuración le llega una corriente de unos 500uA. El circuito queda configurado de la siguiente forma:

VCC

100k

FAST

CP

CPF

RFI

VSS3

VDD2

PON

POL

VSS2

LOCK

VSS1

GND

VCC

ISET

VDD1

XTALB

XTALA

DATA

E_NOT

CLK

Figura 6. Configuración del pin1, Fast.

Page 16: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

15

El pin 6 como podemos ver, se usa para la recepción de la frecuencia de entrada RFI

Tabla 5. Parámetros significativos del sintetizador.

En el circuito aplicado a la entrada RFI podemos apreciar 1 condensador de desacoplo para evitar la componente continua de la señal y una resistencia conectada a masa que nos marca la impedancia de entrada. El otro condensador sirve para lo mismo, desacopla la señal de continua.

FAST

VDD2

CP

CPF

RFI

VSS3

PON

POL

VSS2

ISET

LOCK

VSS1

GND

VCC

VDD1

XTALB

XTALA

CLK

DATA

E_NOT

RFI

OUT VCO

1818

56

56pF

18

56pF

Figura 7. Configuración del pin 6, RFI.

Page 17: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

16

La patilla POL sirve para indicarle a la patilla PON como se va a activar, con un “1” o con un “0”. Nosotros hemos decidido que se active mediante un “1” con lo cual POL va a ir conectado a Vcc. Se le pone una resistencia de 100k para limitar la corriente.

Tabla 6. Parámetros significativos del sintetizador.

FAST

VDD2

CP

CPF

VSS2

RFI

VSS3

PON

POL

ISET

LOCK

VSS1

XTALA

GND

VCC

VDD1

XTALB

CLK

DATA

E_NOT

VCC

1nF

1nF

100

100

Figura 8. Configuración de los pines 8 y 9, POL y PON.

El pin 20 sirve para indicarnos si el PLL se ha enganchado. El sintetizador nos indica el estado de “lock” o enganche mediante un cambio de voltaje en esta patilla. Cuando no esta enganchado mantiene el voltaje que le aplicamos nosotros, 5 voltios. Cuando se engancha pasa a 0 voltios. Se le aplica una resistencia para limitar la corriente con un valor de 100k. El fabricante nos recomienda que como mínimo pase una corriente de 400uA. Con esta configuración le llega una corriente de unos 500uA.

Page 18: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

17

Tabla 7. Parámetros significativos del sintetizador.

100k

FAST

CP

CPF

RFI

VSS3

VDD2

PON

POL

VSS2

LOCK

VSS1

GND

VCC

ISET

VDD1

XTALB

XTALA

DATA

E_NOT

CLK

VCC

Figura 9. Configuración del pin 20, Lock.

1.4.1.2 Alimentación del circuito

El sistema de alimentación de nuestro circuito gira en torno al regulador de tensión LM7805. La utilización de este tipo de regulador supone una serie de ventajas, como son:

• Protección contra cortocircuitos • Protección contra sobrecargas • Regulación de línea del orden de 3 mV. • Regulación de carga del orden de 10 mV. • Corriente de reposo máxima de 8 mA. • Resistencia de salida de 8 mA. Como se puede apreciar en la figura se trata de un dispositivo de tres terminales. Uno

es el de entrada de la tensión no regulada, otro es el de salida y el tercero es un terminal común a la entrada y a la salida que suele estar conectado a tierra. Nuestro regulador se encargará de estabilizar la tensión a su salida a un valor de 5 V. Para ello la tensión de entrada debe estar comprendida entre los 7 y los 20 V.

Page 19: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

18

Por lo que respecta al resto del circuito, los dos condensadores implementan polos dominantes necesarios para estabilizar el regulador, dado que en base es un circuito realimentado.

100nF

100nF

LM7805

GND

OUTIN

Figura 10. Alimentación del circuito.

1.4.1.3 Filtro de 4º Orden

Para obtener un funcionamiento óptimo del sintetizador es muy importante hacer un buen diseño del filtro. Generalmente se utilizan filtros pasivos cuando se utilizan bombas de carga o “Charge Pump” aunque si se desea también se pueden utilizar filtros activos.

Los filtros pasivos tienen la ventaja que son de bajo coste, están formados de pocos componentes y son mas inmunes al ruido.

Tabla 8. Parámetros significativos del sintetizador.

Normalmente con un filtro de tercer orden bastaría y sería suficiente (para según que aplicaciones), pero si se quieren eliminar los espurios producidos por la frecuencia de comparación es conveniente introducir otra red RC al filtro, pasando a ser de 4 orden. El cálculo del filtro se ha calculado como sigue:

Page 20: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

19

• Datos para el diseño del filtro

- MHzFvco 1400=

- KHzFpc 200=

- sTs µ600=

- VMHzKVCO /30=

- Ω== 65,2,1

kRsetRset

Iset con lo cual AIset µ200=

- cyclemAIsetIcp /6,316 =∗= para el caso máximo

- HzsTs

Fn 4170600

5,25,2===

µ [4]

-Main divider ratio N: 7000200

1400===

KHz

MHz

Fpc

FvcoN [5]

Teniendo esto podemos empezar con el cálculo del filtro. Primero haremos el cálculo de un filtro de tercer orden y posteriormente le aplicaremos una nueva red RC para que se convierta en uno de cuarto orden:

Main capacitor

NWn

IcpKvcoC

∗=

22 [6]

nFWn

mAMHzC 20

7000

6,33022 =

∗=

Damping resistor

2

2 2CIcpKvco

NR

∗∗∗∗= ζ [7]

Ω=∗∗

∗∗= 63206,330

70009,022 k

nFmAMHzR

Page 21: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

20

Filter capacitor

1015

21

2 CC

C≤≤ [8]

nFC 21 =

La red RC adicional sería la siguiente:

23 2 RR ∗≥ [9]

Ω=Ω∗= 276323 kkR

3

223 20 R

CRC

∗≤ [10]

pFk

nFkC 500

2720

20633 =

Ω∗

∗Ω=

Figura 11. Filtro pasivo de 3 orden, Filtro pasivo de 4 orden.

Page 22: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

21

Aplicando los parámetros hallados anteriormente el filtro de lazo queda de la siguiente forma:

R2 3K6

C2 20nF

CPF

FAST

VDD2

CP

RFI

VSS3

POL

VSS2

VSS1

PON

ISET

LOCK

GND

VCC

XTALB

XTALA

E_NOT

VDD1

CLK

DATA

C3 500pF

C1 2nF

R3 7K2

VCO IN

Figura 12. Implementación del filtro en el diseño.

1.4.1.4 Bus 3-wire

El sintetizador necesita ser programado para comenzar a trabajar. Este dispositivo se programa a través del bus 3-wire que lleva incorporado (pines 11, 12 y 13). Este protocolo utiliza 3 señales: una de sincronización Clk, una de habilitación Enot y una tercera Data que es por donde se transmiten los datos en forma de tramas. A cada linia del bus se le ha aplicado un filtro para evitar interferencias.

Tabla 9. Parámetros significativos del sintetizador.

Page 23: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

22

12 12

33pF 33pF 33pF

FAST

VDD2

CP

CPF

RFI

VSS3

PON

POL

VSS2

ISET

LOCK

VSS1

GND

VCC

VDD1

XTALB

XTALA

CLK

DATA

E_NOT

CLK DATA E_NOT

12

Figura 13. Bus 3-wire.

Figura 14. Tren de pulsos del Bus 3-wire.

Page 24: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

23

1.4.1.5 Frecuencia de Referencia

La frecuencia de referencia que utiliza nuestro sintetizador la produce el dispositivo AEL (9710 Series Oscilador) de 12 MHz. Las características principales se muestran en el siguiente cuadro:

Tabla 10. Parámetros significativos del sintetizador.

Page 25: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

24

Características de la frecuencia de referencia del sintetizador:

Tabla 11. Parámetros significativos del sintetizador.

POL

VSS2

RFI

VSS3

VDD2

CP

CPF

FAST

XTALB

XTALA

GND

VCC

ISET

LOCK

VSS1

PON

CLK

DATA

E_NOT

VDD1

12 Mhz

10k1nF

OUT VCC

GND NC

VCC

Figura 15. Implementación del Oscilador de referencia en el sintetizador.

Page 26: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

25

1.4.2 Módulo 2, Programación mediante Microcontrolador.

Figura 16. Módulo 2.

1.4.2.1 Microcontrolador PIC16F876A

El elemento que controla todo el módulo 2 es un microcontrolador PIC16F876A. Este integrado de la familia microchip es un µC de ocho bits que cuenta con una memoria de programa tipo FLASH (8 k x 14 word, word de 14 bits) y una de datos RAM de 368 bytes, ambas internas, así como también una memoria EEPROM de datos interna de 256 bytes. Puede tener hasta 14 fuentes de interrupción, de las cuáles sólo vamos a destacar una: la que acontece cuando se recibe una trama vía serie. También cuenta con tres puertos de entrada/salida: el puerto A, de 6 bits, los puertos B y C, de 8 bits.

Page 27: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

26

Figura 17. Microcontrolador PIC16F87x.

Los pines de los puertos pueden ser programados como pines de entrada y salida

respectivamente, cada uno independiente de los demás. La configuración de los pines que hemos utilizado para nuestra aplicación es la siguiente: El puerto A al no utilizarlo nos es indiferente a la hora de programarlo, mientras que el puerto B, en concreto los pines RB7, RB6 y RB5 se han programado como salidas ya que serán los elegidos para configurar el bus 3-wire para este módulo. Respecto al puerto C utilizado para la transmisión/recepción de datos se comenta en el siguiente punto.

Los microcontroladores PIC16F87x contienen un módulo de comunicaciones serie de tipo síncrono y asíncrono: éste es el módulo USART (Universal Synchronous Asynchronous Receiver Transmitter ). El USART puede funcionar como un sistema de comunicación bidireccional asíncrono, adaptándose a multitud de periféricos y dispositivos que transfieren información de esta forma. Dadas nuestras necesidades de comunicar el microcontrolador con un PC externo, éste módulo nos será útil para realizar esta labor.

La transferencia se realiza mediante las señales: Tx (transmisión) y Rx (recepción).

Dichas señales se encuentran en las líneas RC6 y RC7 del microcontrolador, respectivamente. En el protocolo de comunicación serie cada palabra de información o dato se envía independientemente de los demás. Las palabras suelen constar de 8 ó 9 bits y van precedidas por un bit de START y se finalizan con un bit de STOP. Los bits se transfieren a una frecuencia fija y normalizada. La velocidad de transmisión en baudios (bits por segundo) a la que se realiza la transferencia debe ser un valor normalizado. En nuestro caso utilizaremos una velocidad de 9600 baudios.

Respecto a la circuitería aplicada a el micro: el pin 1, Mclr, se le ha asignado un circuito para producir el reset. Los pines 8 y 19, Vss, son la masa mientras que el pin 20 es el de la alimentación, Vdd. Los pines 9 y 10,Osc 1 y 2 se utilizan para introducir señales de reloj al sistema. Y respecto a los puertos, ya han sido comentados anteriormente.

Page 28: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

27

1.4.2.2 Alimentación del circuito

El sistema de alimentación de nuestro circuito gira en torno al regulador de tensión LM7805. La utilización de este tipo de regulador supone una serie de ventajas, como son:

• Protección contra cortocircuitos • Protección contra sobrecargas • Regulación de línea del orden de 3 mV. • Regulación de carga del orden de 10 mV. • Corriente de reposo máxima de 8 mA. • Resistencia de salida de 8 mA. Como se puede apreciar en la figura se trata de un dispositivo de tres terminales. Uno

es el de entrada de la tensión no regulada, otro es el de salida y el tercero es un terminal común a la entrada y a la salida que suele estar conectado a tierra. Nuestro regulador se encargará de estabilizar la tensión a su salida a un valor de 5 V. Para ello la tensión de entrada debe estar comprendida entre los 7 y los 20 V.

Por lo que respecta al resto del circuito, el diodo, previene de inversiones de polaridad, que puedan ocasionar cualquier desperfecto circuital. Los condensadores implementan polos dominantes necesarios para estabilizar el regulador, dado que en base es un circuito realimentado. El condensador de mayor capacidad implementa un filtro pasabajos para la entrada del regulador. El LED sirve para indicarnos que la placa está alimentada. Y por último la resistencia situada en serie limita la intensidad que circula a través del LED a unos 3,3 mA.

Led

1N4004

47uF 100nF

LM7805

100nF 1k

GND

OUTIN

Figura 18. Alimentación del circuito.

Page 29: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

28

RA0

MCLR

RA3

RA2

RA1

VSS

RA5

RA4

OSC2

OSC1

RB5

RB6

RB7

RB2

RB3

RB4

RB0

RB1

VSS

VDD

RC1

RC0

RC3

RC2 RC5

RC6

RC7

RC4

VCC

100nF

Figura 19. Alimentación del Micro.

1.4.2.3 Circuito Oscilador ( XT)

Sabiendo el valor del cristal de cuarzo requerido, para nuestro proposito de 4MHz, se ha extraído el valor de los condensadores (15pF) necesarios de tablas de las hojas de características del propio microcontrolador (pag. 122 del datasheet).

El microcontrolador puede trabajar a una frecuencia máxima de 20 MHz. Es desaconsejable utilizar un cristal de esa frecuencia. Una de las razones es que hacer trabajar a esa frecuencia al micro lo haría mucho mas sensible al ruido. Por otro lado, a 20MHz se limita el rango de voltaje de entrada entre 4,5-5,5V; mientras que para 4MHz sería de 4,0-5,5V. Finalmente y como razón fundamental, remarcaremos que no es necesaria ni mucho menos una frecuencia similar. Con un valor de 4MHz como el utilizado tendremos margen temporal suficiente para el manejo de la información manteniendo una disciplina de envío constante mediante el trabajo de USART a 9600 bps.

Page 30: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

29

RA1

RA0

MCLR

RA3

RA2

VSS

RA5

RA4

RB7

OSC2

OSC1

RB5

RB6

RB2

RB3

RB4

VDD

RB0

RB1

RC0

VSS

RC3

RC2

RC1

RC5

RC6

RC7

RC4

4 Mhz

15pF

15pF

Figura 20. Circuito Oscilador.

1.4.2.4 Circuito Mclr

El Pic experimenta un reset de encendido (Power-On) cuando se detecta un flanco de subida en el rango de 1,2 a 1,7 V en el pin Mclr. A priori no es necesario utilizar pequeños circuitos RC para controlar este reset por parte del usuario (maniobras de reset). Basta con un pulsador y un divisor de tensión para este fin. Alimentando el conjunto, el usuario podrá resetear el dispositivo cuando tenga necesidad.

Para le correcto generado del reset nos serviremos de un condensador conectado en paralelo con el pin Mclr, de esta manera, fijaremos el incremento del voltaje sin importar el tipo de alimentación que se le aplique al equipo. En definitiva, utilizaremos un circuito RC.

Page 31: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

30

RA1

RA0

MCLR

RA3

RA2

VSS

RA5

RA4

RB7

OSC2

OSC1

RB5

RB6

RB2

RB3

RB4

VDD

RB0

RB1

RC0

VSS

RC3

RC2

RC1

RC5

RC6

RC7

RC4

12

100

10k

4,7uF

VCC

Figura 21. Circuito Mclr.

1.4.2.5 Circuito MAX232

Para podernos comunicar con el PC externo utilizaremos la norma RS-232, que es una de las más extendidas. Una de sus características es la de los rangos de tensión que utiliza para representar los niveles lógicos. El nivel alto se representa con una tensión comprendida entre –3 y –15 V, mientras que el nivel bajo utiliza el rango de +3 a +15 V. Dado que nuestro sistema, y en particular el microcontrolador, trabaja a niveles de tensión comprendidos entre 0 y 5 V se hace necesaria la inclusión de una etapa para adaptarse a la norma. Esto se consigue mediante la utilización de un circuito integrado MAX232. En la siguiente figura podemos ver cómo conectarlo para conseguir nuestros propósitos.

El MAX232 dispone de dos canales de entrada para niveles TTL, que son el T1IN y el T2IN, con sus correspondientes salidas: T1OUT y T2OUT. También posee dos canales de entrada para niveles RS-232 R1IN y R2IN y sus correspondientes salidas, R1OUT y R2OUT. Se alimenta con +5 V.

Para nuestra aplicación sólo será necesario el uso de un canal. El microcontrolador

transmite información a través de la línea T1IN, a nivel TTL, y T1OUT, a nivel RS-232. Del mismo modo, el PC puede comunicarse con el microcontrolador por las líneas R1IN y R1OUT.

Page 32: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

31

El chip MAX232, así también, como otros compatibles, pueden necesitar de aplicación de algunas capacidades para el correcto funcionamiento de los mismos. En nuestro caso necesitaremos 5 capacidades. Una de estas capacidades se situara en paralelo con la alimentación. Esta capacidad tiene la finalidad de implementar un filtro paso bajo para la tensión de alimentación.

VCC

VS+

C1+

C2-

C2+

C1-

R2IN

T2OUT

VS-

T1OUT

GND

VCC

T1IN

R1OUT

R1IN

R2OUT

T2IN

594837261

1uF

1uF

1uF

1uF

RX PIC

TX PIC

Figura 22. Conexión del C. I. MAX232 a un conector DB9 estándar.

1.4.2.6 Bus 3-wire

El protocolo de comunicación 3-wire, es el que se utilizará en este proyecto para la programación del sintetizador UMA1021M y el recomendado por el fabricante. Aunque se podría utilizar otro tipo de protocolo, como por ejemplo el I2C, se desestimó por la simplicidad del protocolo 3-wire.

Nuestro Bus de comunicación consta de 3 señales para tres “hilos”: la primera señal es la de Clk, la segunda señal será la de Datos y la tercera y última señal será la de habilitación, Enot.

Estas tres linias de comunicación van conectadas directamente al sintetizador a través de un cable. Las señales del Bus 3-wire son generadas por el micro a través del puerto B, en concreto mediante los pines RB7, RB6 y RB5.

Page 33: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

32

RA0

MCLR

RA3

RA2

RA1

VSS

RA5

RA4

OSC2

OSC1

RB5

RB6

RB7

RB2

RB3

RB4

RB0

RB1

VSS

VDD

RC1

RC0

RC3

RC2 RC5

RC6

RC7

RC4

CLK

DATA

E_NOT

Figura 23. Bus 3-wire.

Page 34: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

33

1.4.3 Módulo 3, Vco.

Para corregir el error de desfase se utiliza un oscilador controlado por tensión o VCO. El oscilador que vamos a utilizar trabaja con señales de entre 1370 y 2000 MHz suficiente para el rango de frecuencias que vamos a utilizar. El Vco en cuestión es un POS2000 de la casa Mini-Circuits.

VCC

IN VCO

GND

POS2000 VCO

TUNE GND

GND

OUT VCO

GND

VCC

GND

OUT

Figura 24. VCO, POS2000.

El oscilador funciona con un voltaje de 12 voltios con lo que hemos decido alimentarlo de forma independiente en vez de hacer un fuente de tensión compartida.

Para regular la tensión que alimenta al VCO hemos utilizado el regulador LM7812 con las mismas características que los reguladores antes comentados aunque con pequeñas diferencias como la regulación, que en este caso es de 12 voltios. Por este motivo no se va a comentar en este apartado el circuito que alimenta al VCO.

100nF

LM7812

100nF

IN

GND

OUT

Figura 25. Alimentación del VCO.

Page 35: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

34

1.5 Resultados y conclusiones

1.5.1 Resultados

Los resultados obtenidos son óptimos. Por eso nos damos por satisfechos viendo los resultados obtenidos en el laboratorio.

Como ejemplo de estos resultados hemos hecho medidas tales como: el tiempo de commutación entre frecuencias y la obtención del ruido de fase. Un ejemplo de estas medidas son comentadas a continuación:

En la figura 26, podemos apreciar el tiempo que pasa a la hora de cambiar de una frecuencia baja a una mas alta, que es del orden de unos Sµ300 , y la inyección de pulsos que hacen posible el enganche de la nueva frecuencia.

100

Figura 26. Tiempo de commutación.

Page 36: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

35

Para apreciar el ruido de fase hemos aplicado el criterio mostrado en la figura 27.

Figura 27. Ruido de fase.

En la figura 28, podemos deducir que a KHz3,293− de la frecuencia de enganche GHz399,1 , tenemos el siguiente ruido de fase:

)1

(log10)(/)( 10Hz

RBWPPHzdBcfL ssbs −−−= [11]

)1

3(log101,61/)( 10

Hz

KHzHzdBcfL −−=

77,341,61/)( −−=HzdBcfL = HzdBc /87,95−

Figura 28. Ruido de fase a 293KHz de la frecuencia de enganche.

Page 37: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

36

En la figura 29, repetimos la medida pero en este caso a KHz100− de la frecuencia de enganche GHz399,1 , resultando el siguiente ruido de fase:

)1

(log10)(/)( 10Hz

RBWPPHzdBcfL ssbs −−−= [11]

)1

3(log102,66/)( 10

Hz

KHzHzdBcfL −−=

77,342,66/)( −−=HzdBcfL = HzdBc /97,100−

Figura 29. Ruido de fase a 100KHz de la frecuencia de enganche.

Page 38: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

37

En la figura 30, reducimos a KHz10− de la frecuencia de enganche GHz399,1 , obteniendo el siguiente ruido de fase:

)1

(log10)(/)( 10Hz

RBWPPHzdBcfL ssbs −−−= [11]

)1

1(log109,44/)( 10

Hz

KHzHzdBcfL −−=

309,44/)( −−=HzdBcfL = HzdBc /9,74−

Figura 30. Ruido de fase a 10KHz de la frecuencia de enganche.

Page 39: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

38

1.5.2 Conclusiones

Para concluir podemos decir que el desarrollo e implementación del proyecto se ha realizado con éxito, logrando que todos los módulos interactúen de forma satisfactoria. Se ha podido comprobar el funcionamiento total del circuito PLL, programación, enganche, etc.

Como posibles ampliaciones y mejoras; una ampliación interesante sería la inclusión de módulos para la recepción y tratado de datos ya que el sistema fue pensado originalmente para comprobar como funciona un circuito PLL a nivel docente; y es por eso que sería interesante seguir la cadena de módulos que hacen posible una comunicación.

Otra posible mejora está relacionada con la sensibilidad del sistema y el alcance del mismo. Se podría mejorar el diseño del filtro para poder trabajar con todo el ancho de banda que nos es capaz de proporcionar el VCO. De otra forma también se podría trabajar para reducir el ruido de fase e incluir un atenuador variable para poder modificar la potencia de salida, ya que ahora es fija.

Para finalizar las conclusiones podemos mencionar las dificultades presentadas durante el desarrollo. De entre todas ellas, la mas significativas se han dado en las demoras de los componentes solicitados y la fabricación de los prototipos, así como también se han encontrado dificultades a la hora de acceder a los laboratorios.

Page 40: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

39

MEMORIA DE CÁLCULO

Page 41: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

40

2 Memoria de Cálculo

En este apartado se explica el funcionamiento general de los dos programas y la estrategia de resolución adoptada. Para ello se incorporan una serie de comentarios que facilitarán la compresión de dichos programas. Los códigos completos, tanto el del Micro como el ejecutado en el Pc, se encuentran de forma íntegra en el apartado 6 de esta memoria, Anexos.

2.1 Programa UMA v1.0

Figura 31. Programa de gestión, UMA v1.0.

El objetivo de este programa es poder programar el sintetizador UMA1021M de forma sencilla y que ofrezca un entorno de fácil comprensión. Para ello se ha desarrollado el software en plataforma WIN32 bajo varios sistemas operativos dentro de la gama Windows.

El programa de gestión y programación, quitando su entorno visual, es sencillo y de fácil solución. En los apartados siguientes se explicará de la forma mas sencilla posible, los algoritmos mas importantes y la estrategia adoptada.

Page 42: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

41

2.1.1 Algoritmo de programación por puerto paralelo

Para programar el sintetizador UMA1021M se necesitan únicamente tres señales; una de sincronización “clk”, otra de habilitación “Enot” y por último la señal de entrada de datos, osea “datos”.

Para generar estas tres señales hemos creado las siguientes rutinas:

//---------------------------------------------------------------------//

// Función que genera la señal de nivel bajo del clk

//---------------------------------------------------------------------//

void clockd()

int x;

x=PortIn(LPT1i);

x=x&254;

PortOut(LPT1o,x);

Esta función nos sirve para generar el nivel bajo de la señal de reloj. Como se puede observar es realmente sencillo. Únicamente hemos de saber la dirección del puerto paralelo y el pin exacto donde queremos generar la señal de nivel bajo. Nosotros hemos elegido el pin D0 para generar la señal de clk.

//---------------------------------------------------------------------//

// Función que genera la señal de nivel alto del clk

//---------------------------------------------------------------------//

void clockup()

int x,i;

x=PortIn(LPT1i);

x=x|1;

PortOut(LPT1o,x);

Esta función al igual que la anterior, sirve para generar la señal de clk, aunque esta a diferencia de la otra genera el nivel alto.

Page 43: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

42

//---------------------------------------------------------------------//

// Función que genera la señal de habilitación del sintetizador

//---------------------------------------------------------------------//

void endown()

int x;

x=PortIn(LPT1i);

x=x&251;

PortOut(LPT1o,x);

//---------------------------------------------------------------------//

// Función que genera la señal de inhabilitación del sintetizador

//---------------------------------------------------------------------//

void enup()

int x;

x=PortIn(LPT1i);

x=x|4;

PortOut(LPT1o,x);

Estas dos funciones sirven para generar tanto la señal de habilitación como la de inhabilitación de escritura en los registros del sintetizador. Funciona de igual forma que la señal de reloj con la única diferencia que esta señal se escribe en el pin D2 del puerto paralelo.

La señal de datos se explicará mas adelante. La función que nos ocupa en estos momentos se denomina db(int decimal). Esta función sirve para convertir un número entero en una secuencia binaria, o para ser mas claros convierte un número de notación decimal a binario.

Page 44: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

43

//---------------------------------------------------------------------//

// Función que convierte un entero en una secuencia binaria

//---------------------------------------------------------------------//

db(int decimal)

int dummy=decimal,i=0;

while (i<17)

data[i]= fmod(dummy,2);

dummy = dummy/2;

i++;

return (0);

Ya que la señal de datos es una señal que se propaga de forma serie por el pin D1 del puerto paralelo, de ahí la necesidad de convertir enteros en secuencias binarias.

La siguiente y última función sirve tanto como para generar la señal de datos, como para programar y utilizar todas las funciones antes comentadas. De echo esta función es la que programa al sintetizador.

//---------------------------------------------------------------------//

// Función que programa al sintetizador utilizando el puerto paralelo

//---------------------------------------------------------------------//

void latch (int *addr, int *data)

int x,i;

clockup();

endown();

ctr.cont=0;

for (i=16;i>=0;i--)

x=PortIn(LPT1i);

if (data[i]==1) x=x|2;

if (data[i]==0) x=x&253;

PortOut(LPT1o,x);

clockd();

x=PortIn(LPT1i);

clockup();

ctr.cont=ctr.cont+1;

Page 45: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

44

for (i=3;i>=0;i--)

x=PortIn(LPT1i);

if (addr[i]==1) x=x|2;

if (addr[i]==0)x=x&253;

PortOut(LPT1o,x);

clockd();

x=PortIn(LPT1i);

clockup();

ctr.cont=ctr.cont+1;

enup();

Con esto, queda claro como programamos el sintetizador por medio del puerto paralelo. Hay que decir, que el código completo, está en el apartado de Anexos, pues se ha creído únicamente comentar la generación de las señales que hacen posible la programación del dispositivo.

2.1.2 Algoritmo de programación por puerto serie

La diferencia entre programar el sintetizador por el puerto serie y programarlo por el puerto paralelo esta, en que de forma serie, no se programa directamente el sintetizador sino que se de hace de forma indirecta. Quien realmente programa el sintetizador es el microcontrolador que actúa de enlace entre PC y sintetizador. El micro recibe todas las consignas e información (que provienen del PC) necesaria para generar las señales de comunicación y programación que hacen posible la programación del sintetizador. De esta forma, la opción de programar a partir del puerto serie, sólo conlleva el envío de información sobre los registros a programar; ya que será el micro, está vez, quien genere todas las señales y no el PC como en la programación por puerto paralelo. Dicho esto queda claro, que sólo se envía información (al micro) y en ningún caso se generan señales de programación.

La rutina de programación por puerto serie es la que sigue. Se intentarán comentar las partes mas críticas de la misma.

Page 46: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

45

//---------------------------------------------------------------------//

// Función de Borland que nos permite enviar toda información al micro

// para que este programe con la información recibida el sintetizador

//---------------------------------------------------------------------//

void __fastcall TForm1::BitBtn2Click(TObject *Sender)

int j;

charA="a";

if((RadioButton5->Checked==true))

/----------------------------------------------------------------------/

/ Aquí va la rutina/s de programación por puerto paralelo (…..)

/ no las comentamos ya que se trataron en el apartado anterior

/----------------------------------------------------------------------/

/-----------------------------------------------------------------------/

/ Programación Por el Puerto Serie

/-----------------------------------------------------------------------/

// seleccionamos programación por puerto serie

if((RadioButton6->Checked==true))

if(ctr.tmp)

// variable que tiene que estar a uno para que

// podamos entrar, de esta manera

// se evita que el usuario le de a la tecla

// grabar dispositivo, reiteradamente.

// Se podría decir que es una protección

// Enviamos un Eco al micro si responde

// quiere decir que está preparado para

// recibir la información

WriteFile(hcomPort, "g", 1, &dwBytWri, 0);

Page 47: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

46

for(ii=0;ii<22;ii++)

acBuf[ii]=0x00; // Limpiamos nuestro buffer de información

// de entrada al Pc

ccc=0;

do

Sleep(100); // Retardo de 100 ms

// Esperamos que el micro nos envie ‘g’

// que no es mas, que el eco del carácter

// enviado previamente

ReadFile(hcomPort, acBuf, 1, &dwBytRea, 0);

if(acBuf[0]=='g') // Si recibimos ‘g’, micro conectado

// En caso contrario se nos informa

Memo1->Clear(); // del estado del micro

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add(" < Micro Conectado >");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

for(ii=0;ii<22;ii++) // Limpiamos el Buffer

acBuf[ii]=0x00;

flagm=1;

ccc=6;

ccc++;

while(ccc<6);

// En caso de que el Micro no este conectado se nos informa

Page 48: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

47

if(flagm==0)

Memo1->Clear();

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add(" < Micro NO Conectado >");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Sleep(2000);

Memo1->Clear();

if(flagm==1) // Si Micro, la bandera flagm=1, entonces…

// Informamos del envío de consignas

Sleep(1000);

Memo1->Lines->Clear();

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add(" < Enviando Consignas...>");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

for(ii=0;ii<22;ii++) // Inicializamos los vectores

// que vamos a utilizar

acBuf[ii]=0x00;

tramaA[ii]=0x00;

tramaB[ii]=0x00;

tramaC[ii]=0x00;

// Aquí va la primera trama…Es el Main divider…

db(ctr.mdr); // Conversión de entero a binario

for(j=0;j<17;j++)

if(data[j]==1)

tramaA[j]='1';

Page 49: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

48

if(data[j]==0)

tramaA[j]='0';

strrev(tramaA); // Esta función invierte la tramaA

tramaA[17]='0'; tramaA[18]='1'; tramaA[19]='0'; tramaA[20]='0';

// Estos bits nos indican la dirección del registro

// en el que vamos a escribir los datos del sintetizador

charA="a"; // Indicativo de final de trama

strcat(tramaA,charA); // Función que concatena dos strings

dwlen=strlen(tramaA);// Función que nos calcula los bytes que hay en

// la trama

// Enviamos la tramaA

WriteFile(hcomPort, tramaA, dwlen, &dwBytWri, 0);

//Aquí va la segunda trama....Es el Reference divider.......

db(ctr.rdr); // Conversión de entero a binario

for(j=0;j<17;j++)

if(data[j]==1)

tramaB[j]='1';

if(data[j]==0)

tramaB[j]='0';

strrev(tramaB); // Esta función invirte tramaB

tramaB[17]='0'; tramaB[18]='1'; tramaB[19]='0'; tramaB[20]='1';

// Estos bits nos indican la dirección del registro

Page 50: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

49

// en el que vamos a escribir los datos del sintetizador

charA="b"; // Indicativo de final de trama

strcat(tramaB,charA);// Concatena dos strings

dwlen=strlen(tramaB);// Función que nos calcula los bytes que hay

// en la trama

WriteFile(hcomPort, tramaB, dwlen, &dwBytWri, 0);// Enviamos la tramaB

// Aqui va la tercera trama....Es el charge pump, sPON y OOL

// que es el Registro de Control

for (j=0;j<17;j++) // Limpiamos

data[j]=0;

data[6]=ctr.pd; // introducimos Power Down

data[9]=ctr.cr0; // Charge Pump

data[10]=ctr.cr1; // Charge Pump

data[12]=ctr.ool; // Out Of Lock

for(j=0;j<17;j++)

if(data[j]==1)

tramaC[j]='1';

if(data[j]==0)

tramaC[j]='0';

strrev(tramaC); // Invertimos la tramaC

tramaC[17]='0'; tramaC[18]='0'; tramaC[19]='0'; tramaC[20]='1';

// Estos bits nos indican la dirección del registro

// en el que vamos a escribir los datos del sintetizador

Page 51: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

50

charA="c"; // Indicativo de final de trama

strcat(tramaC,charA); // Concateno los dos Strings

// Función que nos calcula los bytes que hay en la trama

dwlen=strlen(tramaC);

WriteFile(hcomPort, tramaC, dwlen, &dwBytWri, 0);// Envio la tramaC

// Verificación de las Tramas Enviadas, en caso de selección

if(CheckBox4->Checked==true)

Sleep(1000); // Informamos de la verificación

Memo1->Lines->Clear();

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add(" < Verificando...>");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

// Envio al micro un comando para que cuando lleguen

// las tramas me las vuelva a

// enviar por si hay errores en la transmisión

WriteFile(hcomPort, "d", 1, &dwBytWri, 0);

// Comando indicativo de verificación

// Esperamos a que lleguen las tramas para poder compararlas

do

Sleep(100); // Retardo de 100 ms

// Leo el Puerto serie

ReadFile(hcomPort, acBuf, dwlen, &dwBytRea, 0);

// Empieza la comparación

if(acBuf[21]=='a')

for(ii=0;ii<22;ii++)

// En el caso que las tramas recibidas sean diferentes

// se nos informa de ello

Page 52: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

51

if(tramaA[ii]!=acBuf[ii])

Memo1->Lines->Clear();

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add(" < -ERROR- TramaA incorrecta >");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Sleep(2000);

flagError=1;

flag=1;

while(flag==0);

for(ii=0;ii<22;ii++)

acBuf[ii]=0x00;

flag=0;

do

ReadFile(hcomPort, acBuf, dwlen, &dwBytRea, 0);

if(acBuf[21]=='b')

for(ii=0;ii<22;ii++)

if(tramaB[ii]!=acBuf[ii])

Memo1->Lines->Clear();

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add(" < -ERROR- TramaB incorrecta >");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Page 53: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

52

Sleep(2000);

flagError=1;

flag=1;

while(flag==0);

for(ii=0;ii<22;ii++)

acBuf[ii]=0x00;

flag=0;

do

ReadFile(hcomPort, acBuf, dwlen, &dwBytRea, 0);

if(acBuf[21]=='c')

for(ii=0;ii<22;ii++)

if(tramaC[ii]!=acBuf[ii])

Memo1->Lines->Clear();

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add(" < -ERROR- TramaC incorrecta >");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Sleep(2000);

flagError=1;

flag=1;

while(flag==0);

// Fin del if en el caso de haber elegido verificación

Page 54: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

53

// Una vez sabemos que las tramas están bien le digo al micro

// que empiece a programar el

// sintetizador. En el caso de no elegir la verificación de las

// tramas entraríamos en esta

// rutina directamente

if(flagError==0)

Sleep(1000);

Memo1->Lines->Clear();

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add(" <...en programación>");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

// Envio comando de programación

WriteFile(hcomPort, "e", 1, &dwBytWri, 0);

for(ii=0;ii<22;ii++)

acBuf[ii]=0x00;

// Espero a Recibir consigna del micro....el sintetizador

// esta programado ¿?

do

ReadFile(hcomPort, acBuf, 1, &dwBytRea, 0);

// Leemos el Puerto por si nos

Sleep(10); // llega el character ‘f’ que es el

ccc++; // indicativo de programación ok

Page 55: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

54

if(acBuf[0]=='f') // Si es sí, informamos del evento

Memo1->Clear();

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add(" < Dispositivo Programado >");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

for(ii=0;ii<22;ii++)// Limpiamos el buffer

acBuf[ii]=0x00;

flagp=1; // Banderas indicativas de programación positiva

ccb=1;

ccc=0;

if((ccc==1500)&&(flagp==0)&&(ccb==0)) // Condición de fallo del

// micro

Memo1->Clear(); // Informamos del evento

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add(" < El Micro No Responde >");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

ccc=0;

flagp=1;

while(flagp==0);

ccb=0;

Sleep(100);

// En caso de haber programado bien, esperamos a que el sintetizador

// se enganche

Page 56: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

55

// Si logra engancharse, nos avisa, en caso contrario también

do

// Esperamos la llega del commando ‘l’

ReadFile(hcomPort, acBuf, 1, &dwBytRea, 0);

ccc++;

// Si se cumple la condición nos indica que el pll está enganchado

if(acBuf[0]=='l')

Memo1->Clear();

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add(" < PLL Enganchado >");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo2->Color = clRed;

Sleep(2000);

Memo2->Color = clLime;

for(ii=0;ii<22;ii++)

acBuf[ii]=0x00;

flagp=0;

ccb=1;

ccc=0;

if((ccc==1500)&&(flagp==1)&&(ccb==0))// si no se cumple informamos

Memo1->Clear();

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add(" < No Engancha o Out of Lock >");

Memo1->Lines->Add(" < no está habilitado >");

Page 57: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

56

Memo1->Lines->Add("");

Memo2->Color = clLime;

ccc=0;

flagp=0;

while(flagp==1);

flagp=0;

else

Memo1->Clear();

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add(" < Vuelve a intentarlo >");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

flagm=0;

//fin if ctr.tmp

ctr.tmp=0;

//fin if serie

Page 58: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

57

2.2 Programa de gestión del Micro

El objetivo principal del microcontrolador es programar el sintetizador. El micro es capaz de recibir consignas que provienen del PC interpretarlas y ejecutar las acciones relacionadas con dichas consignas.

Para que el micro sea capaz de programar, primero ha de obtener la información necesaria, o sea, los datos. Estos datos provienen del PC en tramas de 21 bits y el medio que utiliza para su transporte se basa en el protocolo de comunicación RS232. Una vez recibidos los datos el micro los guarda en registros para su posterior utilización.

Para que el micro comience a programar con la información guardada en los registros, el programa de gestión del PC se lo ha de ordenar. Una vez que se envía la orden de programación, el micro comienza a programar el sintetizador.

A partir de aquí, se explica de forma general (y dependiendo del caso, de forma específica) la gestión y programación del sintetizador mediante el microcontrolador.

2.2.1 Recepción de los datos.

Como hemos dicho antes, nuestra comunicación se basa en el protocolo de comunicación RS232 (comunicación PC-uC). Cada vez que llega un dato o consigna al micro se produce una interrupción, de esa forma el micro no tiene porque estar esperando a que lleguen los datos. Una vez captado el dato, este se guarda en un vector de 21 posiciones. Si en vez de ser un dato de información lo que recibimos, es una consigna o comando el micro lo reconoce y lo procesa.

La rutina de servicio a la interrupción provocada por la llegada de un dato es la siguiente:

//---------------------------------------------------------------------//

// Rutina de servicio a la interrupción

//---------------------------------------------------------------------//

#int_rda

void serial_isr()

if(kbhit()) // Si llega algo

cc=0x00; // Inicializamos la variable

cc=getc();// La función getc() nos da el dato capatado del exterior

if((cc!='a')&&(cc!='b')&&(cc!='c')&&(cc!='d')&&(cc!='e'))

Add_buffrec(cc); // Acumulamos los datos que no son consignas

if(cc=='a')flaga=1; // Flag que nos indica fin de la 1ª trama

if(cc=='b')flagb=1; // Flag que nos indica fin de la 2ª trama

Page 59: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

58

if(cc=='c')flagc=1; // Flag que nos indica fin de la 3ª trama

if(cc=='d')flagd=1; // Flag que nos indica verificación de tramas

if(cc=='e')flage=1; // Flag que nos indica programación activa

Cuando llega un dato que no es de información se activa una bandera o flag que nos servirá o no, para ejecutar una acción mientras que si el dato recibido es una dato de información se acumula en un buffer para su posterior tratado.

2.2.2 Algoritmo de programación

Una vez llegada toda la información necesaria para programar el sintetizador, solo queda generar las señales adecuadas y el sintetizador recibirá toda la información que le hará ser funcional.

Rutina de generación de señales para la programación del sintetizador:

//---------------------------------------------------------------------//

// Esta función hace los pasos para meter los datos en el registro del

// sintetizador del chip, en su dirección addr y con datos data

//---------------------------------------------------------------------//

void latch (char *data)

int i;

output_high(PIN_B7); // Señal de clk a nivel alto

output_low(PIN_B5); // Señal de habilitación a nivel bajo

for (i=0;i<21;i++) // Introducción de # y @

if (data[i]=='1')

output_high(PIN_B6); // Señal de datos equivalente a un 1 lógico

if (data[i]=='0')

output_low(PIN_B6); // Señal de datos equivalente a un 0 lógico

output_low(PIN_B7); // Señal de clk a nivel bajo

output_high(PIN_B7); // Señal de clk a nivel alto

Page 60: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

59

output_high(PIN_B5); // Señal de habilitación a nivel alto

A través de “*data” introducimos las tres tramas de 21 bits que necesita el sintetizador para que sea operativo.

2.2.3 Rutinas auxiliares

A lo largo del programa se utilizan una serie de rutinas que aunque no son la piedra angular del código, sin ellas no podríamos trabajar. Las rutinas son las siguientes:

//---------------------------------------------------------------------//

// Inicialización del Buffer de recepción y tramas

//---------------------------------------------------------------------//

void Ini_buff_rec(void)

int i;

for(i=0;i<MAXLENBUFF;i++)

buffrec[i]=0x00;

if(flagr==1)

for(i=0;i<MAXLENBUFF;i++)

tramaA[i]=0x00;

tramaB[i]=0x00;

tramaC[i]=0x00;

flagr=0;

xbuffrec=0x00;

Page 61: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

60

//---------------------------------------------------------------------//

// Acumula los datos de información que entran por la USART

//---------------------------------------------------------------------//

void Add_buffrec(char c)

buffrec[xbuffrec++]=c;

//---------------------------------------------------------------------//

// Inicialización tras Reset del Micro

//---------------------------------------------------------------------//

void On_reset(void)

flagr=1;

output_low(PIN_B7);

output_low(PIN_B6);

output_high(PIN_B5);

disable_interrupts(GLOBAL);

delay_ms(100);

Ini_buff_rec();

enable_interrupts(int_rda);

enable_interrupts(global);

2.2.4 Función Main

La función Main realiza principalmente las siguientes gestiones:

//---------------------------------------------------------------------//

// Copia de las tramas recibidas.

//---------------------------------------------------------------------//

if(flaga==1)

strcpy(tramaA,buffrec);// Función que copia el string buffrec en tramaA

Ini_buff_rec();

flaga=0;

Page 62: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

61

if(flagb==1)

strcpy(tramaB,buffrec);// Función que copia el string buffrec en tramaB

Ini_buff_rec();

flagb=0;

if(flagc==1)

strcpy(tramaC,buffrec);// Función que copia el string buffrec en tramaC

Ini_buff_rec();

flagc=0;

//---------------------------------------------------------------------//

// Verifica las trama recibidas

//---------------------------------------------------------------------//

if(flagd==1)

for(j=0;j<21;j++) // Enviamos la tramaA al PC para que la compare

putc(tramaA[j]); // de esta forma sabemos si es corrupta

putc(cc='a');

delay_ms(10);

for(j=0;j<21;j++) // Enviamos la tramaB al PC para que la compare

putc(tramaB[j]);

putc(cc='b');

delay_ms(10);

for(j=0;j<21;j++) // Enviamos la tramaC al PC para que la compare

putc(tramaC[j]);

putc(cc='c');

flagd=0;

Page 63: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

62

//---------------------------------------------------------------------//

// Programación del sintetizador

//---------------------------------------------------------------------//

if(flage==1)

cont=0;

latch(tramaA); // Función que genera las señales de programación

latch(tramaB); // Función que genera las señales de programación

latch(tramaC); // Función que genera las señales de programación

putc(cc='f'); // Envío por Tx a PC... dispositivo programado

On_reset();

flage=0;

flagl=1;

//---------------------------------------------------------------------//

// Detecta el “enganche” o estado de “locking” del sintetizador.

//---------------------------------------------------------------------//

if((input(PIN_B4)==0)&&(flagl==1))

putc(cc='l');// Si en el pin B4 leemos un ‘0’ el programa envia por

// TX un comando

flagl=0; // que nos indica que el sintetizador esta enganchado

On_reset();

Page 64: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

63

PLANOS

Page 65: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

64

3 Planos

3.1 Placa del circuito impreso 1

3.1.1 Situación de los componentes en placa 1

Page 66: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

65

3.1.2 Mascara de cara soldadura, placa 1 ( Bottom )

Page 67: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

66

3.2 Placa del circuito impreso 2

3.2.1 Situación de los componentes en placa 2

Page 68: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

67

3.2.2 Mascara de cara soldadura placa 2 ( Top )

Page 69: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

68

3.2.3 Mascara de cara soldadura placa 2 ( Bottom )

Page 70: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

69

3.3 Placa del circuito impreso 3

3.3.1 Situación de los componentes en placa 3

Page 71: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

70

3.3.2 Mascara de cara soldadura placa 3 ( Top )

Page 72: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

71

3.3.3 Mascara de cara soldadura placa 3 ( Bottom )

Page 73: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

72

3.4 Placa del circuito impreso 4

3.4.1 Situación de los componentes en placa 4

Page 74: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

73

3.4.2 Mascara de cara soldadura placa 4 ( Top )

Page 75: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

74

3.4.3 Mascara de cara soldadura placa 4 ( Bottom )

Page 76: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

75

3.5 Placa del circuito impreso 5

3.5.1 Situación de los componentes en placa 5

Page 77: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

76

3.5.2 Mascara de cara soldadura placa 5 ( Top )

Page 78: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

77

3.5.3 Mascara de cara soldadura placa 5 ( Bottom )

Page 79: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

78

PRESUPUESTO

Page 80: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

79

4 Presupuesto

4.1 Mediciones

Capítulo 1: Horas de diseño.

Nº Ud Descripción Nº Partes Subtotal TOTAL

1.1 H HORAS DE DISEÑO PROTOTIPO

HORAS DE DISEÑO Y DESARROLLO DEL PROTOTIPO

400 400

400

Capítulo 2: Componentes electrónicos.

Nº Ud Descripción Nº Partes Subtotal TOTAL

2.1 U

MAX232

C.I. MAX232 TRANSMISIÓN/RECEPCIÓN DE SEÑALES TTL/232

1 1

1

2.2 U

UMA1021M

C.I. UMA1021M SSOP20 SINTETIZADOR DE FRECUENCIAS

1 1

1

2.3 U

PIC 16F876A

MICROCONTROLADOR PIC 16F876A DE 28 PINES

1 1

1

2.4 U

VCO POS2000

VCO POS2000 CON UN RANGO DE FRECUENCIAS DE 1370 A 2000 MHz

1 1

1

2.5 U CONDENSADOR 1uf

CONDENSADOR ELETROLÍTCO 1uf 4 4

4

2.6 U CONDENSADOR 100nf

CONDENSADOR CERÁMICO 100nf 4 4

4

2.7 U CONDENSADOR 47uf

CONDENSADOR ELECTROLÍTCO 47uf

1 1

1

2.8 U CONDENSADOR 4,7uf

CONDENSADOR ELECTROLÍTCO 4,7uf

1 1

1

Page 81: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

80

2.9 U CONDENSADOR 15pf

CONDENSADOR CERÁMICO 15pf 2 2

2

2.10 U CONDENSADOR SMD 100pf

CONDENSADOR SMD 1206 100pf 3 3

3

2.11 U CONDENSADOR SMD 100nf

CONDENSADOR SMD 1206 100nf 7 7

7

2.12 U CONDENSADOR SMD 56pf

CONDENSADOR SMD 1206 56pf 2 2

2

2.13 U CONDENSADOR SMD 1nf

CONDENSADOR SMD 1206 1nf 4 4

4

2.14 U CONDENSADOR SMD 33pf

CONDENSADOR SMD 1206 33pf 3 3

3

2.15 U CONDENSADOR SMD 3,7nf

CONDENSADOR SMD 1206 3,7nf 1 1

1

2.16 U CONDENSADOR SMD 37nf

CONDENSADOR SMD 1206 37nf 1 1

1

2.17 U DIODO

DIODO MODELO 1N4004 1 1

1

2.18 U LED VERDE

DIODO EMISOR DE LUZ 3mm COLOR VERDE

1 1

1

2.19 U LM7805

REGULADOR DE TENSIÓN MODELO LM7805

2 2

2

2.19 U LM7812

REGULADOR DE TENSIÓN MODELO LM7812

1 1

1

2.20 U OSCILADOR 4MHz

CRISTAL DE CUARZO DE 4MHz 1 1

1

2.21 U OSCILADOR 12MHz

OSCILADOR XTAL 12MHz 1 1

1

2.22 U RESISTENCIA 10K

RESISTENCIA DE 10K ¼ W 1 1

1

2.23 U RESISTENCIA 1K

RESISTENCIA DE 1K ¼ W 1 1

1

2.24 U RESISTENCIA 100

RESISTENCIA DE 100 ¼ W 1 1

1

Page 82: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

81

2.25 U RESISTENCIA SMD 100K

RESISTENCIA SMD 1206 DE 100K ¼ W

4 4

4

2.26 U RESISTENCIA SMD 12

RESISTENCIA SMD 1206 DE 12 ¼ W 7 7

7

2.27 U RESISTENCIA SMD 18

RESISTENCIA SMD 1206 DE 18 ¼ W 3 3

3

2.28 U RESISTENCIA SMD 56

RESISTENCIA SMD 1206 DE 56 ¼ W 1 1

1

2.29 U RESISTENCIA SMD 5K6

RESISTENCIA SMD 1206 DE 5K6 ¼ W 1 1

1

2.30 U RESISTENCIA SMD 10K

RESISTENCIA SMD 1206 DE 10K ¼ W 1 1

1

2.31 U RESISTENCIA SMD 1K8

RESISTENCIA SMD 1206 DE 1K8 ¼ W 1 1

1

2.32 U RESISTENCIA SMD 3K6

RESISTENCIA SMD 1206 DE 3K6 ¼ W 1 1

1

2.33 U RESISTENCIA SMD 100

RESISTENCIA SMD 1206 DE 100 ¼ W 2 2

2

2.34 U MICRO PULSADOR

MICRO PULSADOR 4 CONTACTOS 1 1

1

Capítulo 3: Placas de Circuito Impreso.

Nº Ud Descripción Nº Partes Subtotal TOTAL

3.1 U

CIRCUITO IMPRESO

PLACA CIRCUITO IMPRESO DOBLE CARA 50x100 mm

1 1

1

3.2 U CIRCUITO IMPRESO

PLACA CIRCUITO IMPRESO UNA CARA 80x90 mm

1 1

1

3.3 U CIRCUITO IMPRESO

PLACA CIRCUITO IMPRESO DOBLE CARA 30x40 mm

1 1

1

Page 83: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

82

Capítulo 4: Conectores y Cables.

Nº Ud Descripción Nº Partes Subtotal TOTAL

4.1 U CONECTOR DB9

CONECTOR PARA PCB DB9 HEMBRA ACODADO

1 1

1

4.2 U CABLE CONECTOR DB9

CABLE CONECTOR DB9 HEMBRA-MACHO

1 1

1

4.3 U CONECTOR ALIMENTACIÓN

CONECTOR ALIMENTACIÓN ATORNILLADO 2X1

5 5

5

4.4 U CONECTOR SMA

CONECTOR SMA PARA PCB HEMBRA

5 5

5

4.5 U CABLE SMA

CABLE CONEXION SMA MACHO-MACHO

3 3

3

4.6 U CONECTOR 5x1 SMD

CONECTOR 5x1 SMD TIPO REGLETA 1 1

1

4.7 U CABLE ALIMENTACIÓN

CABLE ALIMENTACIÓN ROJO/NEGRO

3 3

3

4.8 U CABLE PLANO

CABLE PLANO BUS 5 HILOS 1 1

1

4.9 U CABLE ADAPTADO DB25

CABLE ADAPTADO DB25 A 5 HILOS 1 1

1

Capítulo 5: Varios.

Nº Ud Descripción Nº Partes Subtotal TOTAL

5.1 U SOPORTE METACRILATO

SOPORTE PARA PCB’S DE METACRILATO

1 1

1

Page 84: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

83

4.2 Cuadro de precios

Capítulo 1: Horas de diseño.

Nº Ud Descripción Precio ( € )

1.1 H

HORAS DE DISEÑO PROTOTIPO

HORAS DE DISEÑO Y DESARROLLO DEL PROTOTIPO

40 CUARENTA EUROS

Capítulo 2: Componentes electrónicos.

Nº Ud Descripción Precio ( € )

2.1 U

MAX232

C.I. MAX232 TRANSMISIÓN/RECEPCIÓN DE SEÑALES TTL/232

1,09 UN EURO CON NUEVE CÉNTIMOS

2.2 U UMA1021M

C.I. UMA1021M SSOP20 SINTETIZADOR DE FRECUENCIAS

4,40 CUATRO EUROS CON CUARENTA CÉNTIMOS

2.3 U PIC 16F876A

MICROCONTROLADOR PIC 16F876A DE 28 PINES

9,7 NUEVE EUROS CON SETENTA CÉNTIMOS

2.4 U VCO POS2000

VCO POS2000 CON UN RANGO DE FRECUENCIAS DE 1370 A 2000 MHz

4,12 CUATRO EUROS CON 12 CÉNTIMOS

2.5 U CONDENSADOR 1uf

CONDENSADOR ELETROLÍTCO 1uf 0,13 TRECE CÉNTIMOS

2.6 U CONDENSADOR 100nf

CONDENSADOR CERÁMICO 100nf 0,12 DOCE CÉNTIMOS

2.7 U CONDENSADOR 47uf

CONDENSADOR ELECTROLÍTCO 47uf

0,13 TRECE CÉNTIMOS

2.8 U CONDENSADOR 4,7uf

CONDENSADOR ELECTROLÍTCO 4,7uf

0,13 TRECE CÉNTIMOS

2.9 U CONDENSADOR 15pf

CONDENSADOR CERÁMICO 15pf 0,10 DIEZ CÉNTIMOS

2.10 U CONDENSADOR SMD 100pf

CONDENSADOR SMD 1206 100pf 0,10 DIEZ CÉNTIMOS

Page 85: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

84

2.11 U CONDENSADOR SMD 100nf

CONDENSADOR SMD 1206 100nf 0,12 DOCE CÉNTIMOS

2.12 U CONDENSADOR SMD 56pf

CONDENSADOR SMD 1206 56pf 0,10 DIEZ CÉNTIMOS

2.13 U CONDENSADOR SMD 1nf

CONDENSADOR SMD 1206 1nf 0,12 DOCE CÉNTIMOS

2.14 U CONDENSADOR SMD 33pf

CONDENSADOR SMD 1206 33pf 0,10 DIEZ CÉNTIMOS

2.15 U CONDENSADOR SMD 3,7nf

CONDENSADOR SMD 1206 3,7nf 0,12 DOCE CÉNTIMOS

2.16 U CONDENSADOR SMD 37nf

CONDENSADOR SMD 1206 37nf 0,12 DOCE CÉNTIMOS

2.17 U DIODO

DIODO MODELO 1N4004 0,21 VEINTIÚN CÉNTIMOS

2.18 U LED VERDE

DIODO EMISOR DE LUZ 3mm COLOR VERDE

0,11 ONCE CÉNTIMOS

2.19 U LM7805

REGULADOR DE TENSIÓN MODELO LM7805

0,43 CUARENTA Y TRES CÉNTIMOS

2.19 U LM7812

REGULADOR DE TENSIÓN MODELO LM7812

0,52 CINCUENTA Y DOS CÉNTIMOS

2.20 U OSCILADOR 4MHz

CRISTAL DE CUARZO XT DE 4MHz

0,70 SETENTA CÉNTIMOS

2.21 U OSCILADOR 12MHz

OSCILADOR XTAL 12MHz 0,84 OCHENTA Y CUATRO CÉNTIMOS

2.22 U RESISTENCIA 10K

RESISTENCIA DE 10K ¼ W 0,10 DIEZ CÉNTIMOS

2.23 U RESISTENCIA 1K

RESISTENCIA DE 1K ¼ W 0,10 DIEZ CÉNTIMOS

2.24 U RESISTENCIA 100

RESISTENCIA DE 100 ¼ W 0,08 OCHO CÉNTIMOS

2.25 U RESISTENCIA SMD 100K

RESISTENCIA SMD 1206 DE 100K ¼ W

0,10 DIEZ CÉNTIMOS

2.26 U RESISTENCIA SMD 12

RESISTENCIA SMD 1206 DE 12 ¼ W 0,08 OCHO CÉNTIMOS

Page 86: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

85

2.27 U RESISTENCIA SMD 18

RESISTENCIA SMD 1206 DE 18 ¼ W 0,08 OCHO CÉNTIMOS

2.28 U RESISTENCIA SMD 56

RESISTENCIA SMD 1206 DE 56 ¼ W 0,08 OCHO CÉNTIMOS

2.29 U RESISTENCIA SMD 5K6

RESISTENCIA SMD 1206 DE 5K6 ¼ W 0,10 DIEZ CÉNTIMOS

2.30 U RESISTENCIA SMD 10K

RESISTENCIA SMD 1206 DE 10K ¼ W 0,10 DIEZ CÉNTIMOS

2.31 U

RESISTENCIA SMD 1K8

RESISTENCIA SMD 1206 DE 1K8 ¼ W 0,10 DIEZ CÉNTIMOS

2.32 U RESISTENCIA SMD 3K6

RESISTENCIA SMD 1206 DE 3K6 ¼ W 0,10 DIEZ CÉNTIMOS

2.33 U RESISTENCIA SMD 100

RESISTENCIA SMD 1206 DE 100 ¼ W 0,08 OCHO CÉNTIMOS

2.34 U MICRO PULSADOR

MICRO PULSADOR 4 CONTACTOS 0,87 OCHENTA Y SIETE

CÉNTIMOS

Capítulo 3: Placas de Circuito Impreso.

Nº Ud Descripción Precio ( € )

3.1 U

CIRCUITO IMPRESO

PLACA CIRCUITO IMPRESO DOBLE CARA 50x100 mm

2,15 DOS EUROS CON QUINCE CÉNTIMOS

3.2 U

CIRCUITO IMPRESO

PLACA CIRCUITO IMPRESO UNA CARA 80x90 mm

2,60 DOS EUROS CON SESENTA CÉNTIMOS

3.3 U

CIRCUITO IMPRESO

PLACA CIRCUITO IMPRESO DOBLE CARA 30x40 mm

1,80 UN EURO CON OCHENTA CENTIMOS

Page 87: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

86

Capítulo 4: Conectores y Cables.

Nº Ud Descripción Precio ( € )

4.1 U CONECTOR DB9

CONECTOR PARA PCB DB9 HEMBRA ACODADO

1,11 UN EURO CON ONCE CÉNTIMOS

4.2 U CABLE CONECTOR DB9

CABLE CONECTOR DB9 HEMBRA-MACHO

3,15 TRES EUROS CON QUINCE CÉNTIMOS

4.3 U CONECTOR ALIMENTACIÓN

CONECTOR ALIMENTACIÓN ATORNILLADO 2X1

0,45 CUARENTA Y CINCO CÉNTIMOS

4.4 U CONECTOR SMA

CONECTOR SMA PARA PCB HEMBRA

0,89 OCHENTA Y NUEVE CÉNTIMOS

4.5 U CABLE SMA

CABLE CONEXION SMA MACHO-MACHO

1,98 UN EURO CON NOVENTA Y OCHO CÉNTIMOS

4.6 U CONECTOR 5x1 SMD

CONECTOR 5x1 SMD TIPO REGLETA 0,24 VEINTICUATRO

CÉNTIMOS

4.7 U CABLE ALIMENTACIÓN

CABLE ALIMENTACIÓN ROJO/NEGRO 500mm

0,97 NOVENTA Y SIETE CÉNTIMOS

4.8 U CABLE PLANO

CABLE PLANO BUS 5 HILOS 250mm 0.54 CINCUENTA Y CUATRO

CÉNTIMOS

4.9 U CABLE ADAPTADO DB25

CABLE ADAPTADO DB25 A 5 HILOS 3,40 TRES EUROS CON

CUARENTA CÉNTIMOS

Capítulo 5: Varios.

Nº Ud Descripción Precio ( € )

5.1 U SOPORTE METACRILATO

SOPORTE PARA PCB’S DE METACRILATO

3,21 TRES EUROS CON VEINTIÚN CÉNTIMOS

Page 88: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

87

4.3 Aplicación de precios

Capítulo 1: Horas de diseño.

Nº Ud Descripción Cantidad Precio (€) Total(€)

1.1 H

HORAS DE DISEÑO PROTOTIPO

HORAS DE DISEÑO Y DESARROLLO DEL PROTOTIPO

400 40 16000

TOTAL CAPÍTULO 1 16000 €

Capítulo 2: Componentes electrónicos.

Nº Ud Descripción Cantidad Precio (€) Total(€)

2.1 U MAX232

C.I. MAX232 TRANSMISIÓN/RECEPCIÓN DE SEÑALES TTL/232

1 1,09 1,09

2.2 U UMA1021M

C.I. UMA1021M SSOP20 SINTETIZADOR DE FRECUENCIAS

1 4,40 4,40

2.3 U PIC 16F876A

MICROCONTROLADOR PIC 16F876A DE 28 PINES

1 9,7 9,7

2.4 U VCO POS2000

VCO POS2000 CON UN RANGO DE FRECUENCIAS DE 1370 A 2000 MHz

1 4,12 4,12

2.5 U CONDENSADOR 1uf

CONDENSADOR ELETROLÍTCO 1uf 4 0,13 0,52

2.6 U CONDENSADOR 100nf

CONDENSADOR CERÁMICO 100nf 4 0,12 0,48

2.7 U CONDENSADOR 47uf

CONDENSADOR ELECTROLÍTCO 47uf 1 0,13 0,13

2.8 U CONDENSADOR 4,7uf

CONDENSADOR ELECTROLÍTCO 4,7uf 1 0,13 0,13

2.9 U CONDENSADOR 15pf

CONDENSADOR CERÁMICO 15pf 2 0,10 0,20

Page 89: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

88

2.10 U CONDENSADOR SMD 100pf

CONDENSADOR SMD 1206 100pf 3 0,10 0,30

2.11 U CONDENSADOR SMD 100nf

CONDENSADOR SMD 1206 100nf 7 0,12 0,84

2.12 U CONDENSADOR SMD 56pf

CONDENSADOR SMD 1206 56pf 2 0,10 0,20

2.13 U CONDENSADOR SMD 1nf

CONDENSADOR SMD 1206 1nf 4 0,12 0,48

2.14 U CONDENSADOR SMD 33pf

CONDENSADOR SMD 1206 33pf 3 0,10 0,30

2.15 U CONDENSADOR SMD 3,7nf

CONDENSADOR SMD 1206 3,7nf 1 0,12 0,12

2.16 U CONDENSADOR SMD 37nf

CONDENSADOR SMD 1206 37nf 1 0,12 0,12

2.17 U DIODO

DIODO MODELO 1N4004 1 0,21 0,21

2.18 U LED VERDE

DIODO EMISOR DE LUZ 3mm COLOR VERDE

1 0,11 0,11

2.19 U LM7805

REGULADOR DE TENSIÓN MODELO LM7805

2 0,43 0,86

2.19 U LM7812

REGULADOR DE TENSIÓN MODELO LM7812

1 0,52 0,52

2.20 U OSCILADOR 4MHz

CRISTAL DE CUARZO DE 4MHz 1 0,70 0,70

2.21 U OSCILADOR 12MHz

OSCILADOR XTAL 12MHz 1 0,84 0,84

2.22 U RESISTENCIA 10K

RESISTENCIA DE 10K ¼ W 1 0,10 0,10

2.23 U RESISTENCIA 1K

RESISTENCIA DE 1K ¼ W 1 0,10 0,10

2.24 U RESISTENCIA 100

RESISTENCIA DE 100 ¼ W 1 0,08 0,08

Page 90: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

89

2.25 U RESISTENCIA SMD 100K

RESISTENCIA SMD 1206 DE 100K ¼ W 4 0,10 0,40

2.26 U RESISTENCIA SMD 12

RESISTENCIA SMD 1206 DE 12 ¼ W 7 0,08 0,56

2.27 U RESISTENCIA SMD 18

RESISTENCIA SMD 1206 DE 18 ¼ W 3 0,08 0,24

2.28 U RESISTENCIA SMD 56

RESISTENCIA SMD 1206 DE 56 ¼ W 1 0,08 0,08

2.29 U RESISTENCIA SMD 5K6

RESISTENCIA SMD 1206 DE 5K6 ¼ W 1 0,10 0,10

2.30 U RESISTENCIA SMD 10K

RESISTENCIA SMD 1206 DE 10K ¼ W 1 0,10 0,10

2.31 U RESISTENCIA SMD 1K8

RESISTENCIA SMD 1206 DE 1K8 ¼ W 1 0,10 0,10

2.32 U RESISTENCIA SMD 3K6

RESISTENCIA SMD 1206 DE 3K6 ¼ W 1 0,10 0,10

2.33 U RESISTENCIA SMD 100

RESISTENCIA SMD 1206 DE 100 ¼ W 2 0,08 0,16

2.34 U MICRO PULSADOR

MICRO PULSADOR 4 CONTACTOS 1 0,87 0,87

TOTAL CAPÍTULO 2 29,36 €

Page 91: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

90

Capítulo 3: Placas de Circuito Impreso.

Nº Ud Descripción Cantidad Precio (€) Total(€)

3.1 U

CIRCUITO IMPRESO

PLACA CIRCUITO IMPRESO DOBLE CARA 50x100 mm

1 2,15 2,15

3.2 U

CIRCUITO IMPRESO

PLACA CIRCUITO IMPRESO UNA CARA 80x90 mm

1 2,60 2,60

3.3 U

CIRCUITO IMPRESO

PLACA CIRCUITO IMPRESO DOBLE CARA 30x40 mm

1 1,80

1,80

TOTAL CAPÍTULO 3 6,55 €

Capítulo 4: Conectores y Cables.

Nº Ud Descripción Cantidad Precio (€) Total(€)

4.1 U CONECTOR DB9

CONECTOR PARA PCB DB9 HEMBRA ACODADO

1 1,11 1,11

4.2 U CABLE CONECTOR DB9

CABLE CONECTOR DB9 HEMBRA-MACHO

1 3,15 3,15

4.3 U CONECTOR ALIMENTACIÓN

CONECTOR ALIMENTACIÓN ATORNILLADO 2X1

5 0,45 2,25

4.4 U CONECTOR SMA

CONECTOR SMA PARA PCB HEMBRA 5 0,89 4,45

4.5 U CABLE SMA

CABLE CONEXION SMA MACHO-MACHO

3 1,98 5,94

4.6 U CONECTOR 5x1 SMD

CONECTOR 5x1 SMD TIPO REGLETA 1 0,24 0,24

4.7 U CABLE ALIMENTACIÓN

CABLE ALIMENTACIÓN ROJO/NEGRO 3 0,97 2,91

Page 92: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

91

4.8 U CABLE PLANO

CABLE PLANO BUS 5 HILOS 1 0,54 0,54

4.9 U CABLE ADAPTADO DB25

CABLE ADAPTADO DB25 A 5 HILOS 1 3,40 3,40

TOTAL CAPÍTULO 4 23,99 €

Capítulo 5: Varios.

Nº Ud Descripción Cantidad Precio (€) Total(€)

5.1 U SOPORTE METACRILATO

SOPORTE PARA PCB’S DE METACRILATO

1 3,21 3,21

TOTAL CAPÍTULO 5 3,21 €

Page 93: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

92

4.4 Resumen del presupuesto del prototipo

Para desarrollar este proyecto se han utilizado los siguientes elementos:

• Osciloscopio digital.

• Espectómetro.

• Grabador depurador de PIC´s ICD.

• PC.

• Software de generación y depuración del código del Micro, MPLAB.

• Software de generación y depuración del código del programa UMA, Borland Builder C++.

• Software para el diseño de los circuitos, Orcad.

• Soldador.

• Taladro.

La escuela ya disponía de estos elementos, por lo que no se ha tenido que hacer ningún tipo de inversión específica en los mismos.

Finalmente, el presupuesto es:

Total capítulo 1 16000,00€

Total capítulo 2 29,36€

Total capítulo 3 6,55€

Total capítulo 4 23,99€

Total capítulo 5 3,21€

TOTAL 16063,11€

DIECISÉIS MIL SESENTA Y TRES EUROS CON ONCE CÉNTIMOS

Tarragona, 28 de Julio de 2006

Firmado por: Jose A. García-Uceda Calvo

Ingeniero Técnico Industrial

Page 94: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

93

BIBLIOGRAFÍA

Page 95: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

94

5 Bibliografía

5.1 Libros y Manuales consultados

[1] UMA1021M DataSheet. Low-voltage frequency synthesizer for radio telephones. Philips Semiconductors. 1999.

[2] PIC16F87x DataSheet. Microchip. 2002.

[3] Mª Auxilio Recasens Bellver, José González Calabuig. “Diseño de Circuitos Impresos con OrCad Capture y Layout v.9.2”. Ed: Thomson. ISBN: 84-9732-071-9.

[4] Ángulo Usategui, J. M. Angulo Martínez, I. Romero Yesa, S. “Microcontroladores Pic. Diseño Práctico de Aplicaciones. Segunda Parte: Pic 16F87X”. Ed: Mc Graw-Hill, 2000. ISBN: 84-841-2858-3.

[5] Esteban del Castillo.”Apuntes de Informática Industrial II”. Departament d´Enginyeria Electrònica Elèctrica i Automàtica. 2003-2004.

[6] Marcos Faúndez Zanvy. “Circuitos electrónicos para sistemas de comunicaciones”. Ed: CEYSA .

[7] Keliu Shu, Edgar Sánchez-Sinencio. “CMOS PLL Synthesizers Análisis and Design”. Ed: Springer.

[8] Venceslao F.Kroupa.”Phase Lock Loops And Frequency Synthesis”. Ed: WILEY.

[9] Antonio Ramón Lázaro.”Apuntes de Laboratorio de Comunicaciones, Phase lock Loop (Tema 6)”.

Page 96: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

95

5.2 Páginas Web consultadas.

[1] http://www.microchip.com [Software de simulación y depuración de código ensamblamdor para PIC’s (MPLAB), Data Sheet 16F87x].

[2] http://www.amidata.es [Rs online es una página web dedicada a la venta de componentes

electrónicos y eléctricos de entre sus productos mas destacados].

[3] http://www.programacionfacil.com [Web que se dedica a divulgar diferentes lenguajes de

programación y muestra las funciones y objetos mas elementales de cada lenguaje].

[4] http://www.functionx.com [Web que dedica todos sus recursos al lenguaje de programacion C++ en

diferentes plataformas].

[5] http://server-die.alc.upv.es/asignaturas/LSED [Web corporativa de la asignatura sistemas eletrónicos

digitales de la universidad politécnica de Alcoi].

[6] http://picmania.garcia-cuervo.com [Web muy ilustrativa para el desarrollo de circuitos con

microcontroladores Pic. Basa todo su potencial en el desarrollo de software para estos microcontroladores mediante el compilador de C, CCS].

Page 97: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

96

ANEXOS

Page 98: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

97

6 Anexos

6.1 Manual de usuario

El software de gestión UMA v1.0 está diseñado en una plataforma visual. El objeto de este entorno visual se debe a una mejora en la compresión del programa por parte del usuario.

Aunque a simple vista no presenta ningún tipo de dificultad y resulta muy intuitivo, se dará una explicación de las partes que componen este programa.

Figura 32. Programa UMA v1.0.

• Selección del Puerto de comunicación

A la hora de programar el sintetizador tenemos dos posibles opciones, una es programarlo directamente desde el puerto paralelo y la segunda opción es utilizar el puerto serie (com) y decirle a un Microcontrolador que sea él quien se encargue de la programación del sintetizador.

Dicho esto, se deja clara la utilidad de la elección de cada puerto.

Cabe decir que si no elegimos ninguno de los puertos, el programa no hará nada por muchos valores que le introduzcamos.

Page 99: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

98

Para elegir una programación serie debemos seleccionar la opción “com” y seguidamente hacer un “click” en el botón “Abrir”.

Si por lo contrario queremos una programación vía puerto paralelo seleccionaremos la opción “Puerto Paralelo”.

Figura 33. Elección del puerto de comunicación.

• Selección de Frecuencias

Una vez elegida la vía de programación debemos entrar los parámetros al programa. Este apartado hace referencia al tipo de frecuencias que hemos de introducirle al sistema.

En el primer recuadro debemos introducir la frecuencia de referencia con la que vamos a trabajar(en MHz).

Figura 34. Frecuencia de Referencia.

En el segundo recuadro introduciremos la frecuencia de entrada RFI (MHz).

Page 100: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

99

En el tercer y último recuadro introduciremos la frecuencia de comparación del sintetizador, también en MHz.

Una vez seleccionadas las frecuencias las gravaremos haciendo “click” en el botón con forma de disco de 3 ½ .

• Barrido del Ancho de Banda

En el caso de querer visionar todo el ancho de banda en el espectómetro únicamente tenemos que seleccionar el recuadro Rango Frecuencial.

Figura 35. Elección Barrido del BW.

Seleccionando el Rango Frecuencial nos aparece la siguiente ventana en la que nos pide la frecuencia inicial, final, pasos y el tiempo de paso. En el caso que quisieramos ver como salta de frecuencia en frecuencia por todo el ancho de banda del filtro, seleccionaríamos esta opción.

Figura 36. Parámetros para barrido BW.

• Configuración de la Palabra de Control

Por último, sólo nos queda, antes de llegar a programar el sintetizador seleccionar nuestra palabra de control.

Dentro del cuadro de diálogo del Registro de control, seleccionaremos o no, dependiendo de nuestros intereses.

Una vez elegida la configuración que nos interesa gravaremos la palabra dándole al botón con el icono en forma de disket.

Page 101: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

100

Figura 37. Registro de Control.

Una vez seleccionadas y configuradas las posibles opciones, sólo nos queda programar el sintetizador. Para dar la orden de programación únicamente se ha de hacer un “click” en el siguiente botón:

Figura 38. Bónton de programación.

Page 102: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

101

GLOSARIO

• Cuadro de dialogo Puerto paralelo, si se selecciona sirve para realizar una comunicación directa PC-Sintetizador.

• Cuadro dialogo Puerto serie (Com), si se selecciona sirve para realizar una comunicación Pc-Microcontrolador-Sintetizador.

• Botón Abrir, abre el Puerto serie para que podamos escribir en él.

• Botón Cerrar, cierra el Puerto serie. Después de cerrarlo no podremos escribir en él.

• Verificar tramas, verifica los bits enviados a través del puerto serie haciendo un eco al micro.

• Frecuencia de Referencia, es la frecuencia del cristal de cuarzo que vamos a utilizar.

• Frecuencia RFI, es la frecuencia que queremos sintetizar.

• Frecuencia de comparación, es la frecuencia a la que va a trabajar el sintetizador.

• Out of Lock, detecta si el pll está enganchado siempre y cuando lo hallamos seleccionado.

• Power Down, sirve para activar o no el sintetizador por software, siempre y cuando por hardware también esté activo.

• Charge Pump, sirve para seleccionar el ancho del pulso de la señal de error. Dependiendo de nuestros intereses elegiremos una de las cuatro posibles opciones.

• Barrido del BW, si seleccionamos esta opción podemos hacer un barrido automático del ancho de banda.

Page 103: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

102

6.2 Código fuente para el PIC16F876A

//---------------------------------------------------------------------//

// Proyecto Final de Carrera - Generador Rf en Banda L.

// Programación del sintetizador de frecuencias UMA1021M

// Código fuente del programa residente en el microcontrolador

// Autor: Jose A. García-Uceda Calvo

//---------------------------------------------------------------------//

#include <16f876a.h>

#fuses XT,NOWDT,NOPROTECT,NOLVP,PUT,BROWNOUT

#use delay(clock=4000000)

#use rs232(baud=9600, xmit=PIN_C6, rcv=PIN_C7)

#include <stdlib.h>

#include <string.h>

//---------------------------------------------------------------------//

// Constantes, definiciones y variables

//---------------------------------------------------------------------//

int const MAXLENBUFF=22;

char buffrec[MAXLENBUFF];

char tramaA[MAXLENBUFF];

char tramaB[MAXLENBUFF];

char tramaC[MAXLENBUFF];

unsigned int xbuffrec=0x00,j,cont;

unsigned int flaga=0,flagb=0,flagr=0,flagl=0;

unsigned int flagc=0,flagd=0,flage=0,flagg=0;

char cc;

//---------------------------------------------------------------------//

// Declaración de Funciones

//---------------------------------------------------------------------//

void On_reset(void);

void Ini_buffrec(void);

Page 104: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

103

void Add_buffrec(char c);

void latch (char *data);

//---------------------------------------------------------------------//

// Interrupción RDA - Recepción USART -

//---------------------------------------------------------------------//

#int_rda

void serial_isr()

if(kbhit())

cc=0x00;

cc=getc();

if((cc!='a')&&(cc!='b')&&(cc!='c')&&(cc!='d')&&(cc!='e'))

Add_buffrec(cc);

if(cc=='a')flaga=1;

if(cc=='b')flagb=1;

if(cc=='c')flagc=1;

if(cc=='d')flagd=1;

if(cc=='e')flage=1;

if(cc=='g')flagg=1;

//---------------------------------------------------------------------//

//Rutinas de programación del sintetizador

//---------------------------------------------------------------------//

//---------------------------------------------------------------------//

// Esta función hace los pasos para meter los datos en el registro del

// sintetizador del chip, en su dirección addr y con datos data

//---------------------------------------------------------------------//

void latch (char *data)

int i;

output_high(PIN_B7); // CLK

output_low(PIN_B5); // ENOT

// Introduccion de # y @

Page 105: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

104

for (i=0;i<21;i++)

if (data[i]=='1')

output_high(PIN_B6); // DATA

if (data[i]=='0')

output_low(PIN_B6);

output_low(PIN_B7); // CLK

output_high(PIN_B7); // CLK

output_high(PIN_B5); // ENOT

//---------------------------------------------------------------------//

// Inicialización del buffer de Recepción y las Tramas

//---------------------------------------------------------------------//

void Ini_buff_rec(void)

int i;

for(i=0;i<MAXLENBUFF;i++)

buffrec[i]=0x00;

if(flagr==1)

for(i=0;i<MAXLENBUFF;i++)

tramaA[i]=0x00;

tramaB[i]=0x00;

tramaC[i]=0x00;

flagr=0;

xbuffrec=0x00;

Page 106: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

105

//---------------------------------------------------------------------//

// Acumula los datos de información que entran por la USART

//---------------------------------------------------------------------//

void Add_buffrec(char c)

buffrec[xbuffrec++]=c;

//---------------------------------------------------------------------//

// Inicialización tras Reset del Micro

//---------------------------------------------------------------------//

void On_reset(void)

flagr=1;

output_low(PIN_B7);

output_low(PIN_B6);

output_high(PIN_B5);

disable_interrupts(GLOBAL);

delay_ms(100);

Ini_buff_rec();

enable_interrupts(int_rda);

enable_interrupts(global);

//---------------------------------------------------------------------//

// Función principal Main

//---------------------------------------------------------------------//

main()

On_reset();

do

if(flaga==1)

strcpy(tramaA,buffrec);

Ini_buff_rec();

Page 107: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

106

flaga=0;

if(flagb==1)

strcpy(tramaB,buffrec);

Ini_buff_rec();

flagb=0;

if(flagc==1)

strcpy(tramaC,buffrec);

Ini_buff_rec();

flagc=0;

if(flagd==1)

//Verificar las tramas enviadas envio hacia el PC de las 3 tramas

for(j=0;j<21;j++)

putc(tramaA[j]);

putc(cc='a');

delay_ms(10);

for(j=0;j<21;j++)

putc(tramaB[j]);

putc(cc='b');

delay_ms(10);

for(j=0;j<21;j++)

putc(tramaC[j]);

putc(cc='c');

flagd=0;

if(flage==1)

cont=0;

latch(tramaA);

latch(tramaB);

latch(tramaC);

putc(cc='f');

On_reset();

flage=0;

Page 108: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

107

flagl=1;

if(flagg==1)

putc(cc='g');

On_reset();

flagg=0;

if((input(PIN_B4)==0)&&(flagl==1))

putc(cc='l');

flagl=0;

On_reset();

while(True);

return(0);

Page 109: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

108

6.3 Código fuente del programa UMA v1.0

//---------------------------------------------------------------------//

// Proyecto Final de Carrera - Generador Rf en Banda L.

// Software Para la programación del sintetizador de frecuencias UMA1021M

// A través del puerto paralelo o puerto serie

// Autor: Jose A. García-Uceda Calvo

//---------------------------------------------------------------------//

#include <vcl.h>

#include <windows.h>

#include <mmsystem.h>

#include <math.h>

#include <stdio.h>

#include <conio.h>

#include <iostream.h>

#pragma hdrstop

//---------------------------------------------------------------------//

#include "Unit1.h"

#include "io.h"

//---------------------------------------------------------------------//

#pragma resource "*.dfm"

//---------------------------------------------------------------------//

#define LPT1o 0x378

#define LPT1i 0x378

//---------------------------------------------------------------------//

TForm1 *Form1;

//---------------------------------------------------------------------//

HANDLE hcomPort = NULL;

//---------------------------------------------------------------------//

int data [17],resultado=0,flagp=0,flagm=0;

int addr[3],ii,flag=0,flagError=0,flagd=0;

int x=0,ccc=0,ccb=0,flagA=0,flagL=1;

//---------------------------------------------------------------------//

struct uma

int tmp,puerto,e;

unsigned long mdr,rdr;

double xtal,rf,fc,clk;

unsigned int ool,pd,cp,cr0,cr1,cont;

Page 110: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

109

const char* a;

;

struct uma ctr;

//---------------------------------------------------------------------//

void clockup(void); // Genera la señal de clk a nivel alto

void clockd(void); // Genera la señal de clk a nivel bajo

void endown(void); // Genera la señal de habilitación

void enup(void); // Genera la señal de inhabilitación

int db(int decimal); // Convierte un numero entero en binario

void latch (int *addr, int *data); // Aplica las funciones anteriores

para programar el

// sintetizador

//---------------------------------------------------------------------//

AnsiString Cola;

//---------------------------------------------------------------------//

typedef void (WINAPI *PORTOUT) (short int Port, char Data);

typedef char (WINAPI *PORTIN) (short int Port);

//---------------------------------------------------------------------//

extern PORTOUT PortOut;

extern PORTIN PortIn;

extern int LoadIODLL();

//---------------------------------------------------------------------//

PORTOUT PortOut;

PORTIN PortIn;

//---------------------------------------------------------------------//

HMODULE hio;

//---------------------------------------------------------------------//

// Función que libera el archivo DLL cargado

//---------------------------------------------------------------------//

void UnloadIODLL()

FreeLibrary(hio);

//---------------------------------------------------------------------//

// Función que carga el archivo DLL a utilizar

//---------------------------------------------------------------------//

int LoadIODLL()

hio = LoadLibrary("io");

Page 111: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

110

if (hio == NULL) return 1;

PortOut = (PORTOUT)GetProcAddress(hio, "PortOut");

PortIn = (PORTIN)GetProcAddress(hio, "PortIn");

atexit(UnloadIODLL);

return 0;

//---------------------------------------------------------------------//

// Función que genera la señal de nivel alto del clk

//---------------------------------------------------------------------//

void clockup()

int x,i;

x=PortIn(LPT1i);

x=x|1;

PortOut(LPT1o,x);

//---------------------------------------------------------------------//

// Función que genera la señal de nivel bajo del clk

//---------------------------------------------------------------------//

void clockd()

int x;

x=PortIn(LPT1i);

x=x&254;

PortOut(LPT1o,x);

//---------------------------------------------------------------------//

// Función que genera la señal de habilitación del sintetizador

//---------------------------------------------------------------------//

void endown()

int x;

x=PortIn(LPT1i);

x=x&251;

PortOut(LPT1o,x);

Page 112: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

111

//---------------------------------------------------------------------//

// Función que genera la señal de inhabilitación del sintetizador

//---------------------------------------------------------------------//

void enup()

int x;

x=PortIn(LPT1i);

x=x|4;

PortOut(LPT1o,x);

//---------------------------------------------------------------------//

// Función que convierte un entero en una secuencia binaria

//---------------------------------------------------------------------//

db(int decimal)

int dummy=decimal,i=0;

while (i<17)

data[i]= fmod(dummy,2);

dummy = dummy/2;

i++;

return (0);

//---------------------------------------------------------------------//

// Función que programa el sintetizador utilizando el puerto paralelo

//---------------------------------------------------------------------//

void latch (int *addr, int *data)

int x,i;

clockup();

endown();

ctr.cont=0;

/* Introduciendo los datos */

for (i=16;i>=0;i--)

x=PortIn(LPT1i);

if (data[i]==1) x=x|2;

if (data[i]==0) x=x&253;

Page 113: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

112

PortOut(LPT1o,x);

clockd();

x=PortIn(LPT1i);

clockup();

ctr.cont=ctr.cont+1;

/* Metemos la direcci¢n */

for (i=3;i>=0;i--)

x=PortIn(LPT1i);

if (addr[i]==1) x=x|2;

if (addr[i]==0)x=x&253;

PortOut(LPT1o,x);

clockd();

x=PortIn(LPT1i);

clockup();

ctr.cont=ctr.cont+1;

enup();

//---------------------------------------------------------------------//

// Función de Borland, cargamos DLL y ocultamos barra

//---------------------------------------------------------------------//

__fastcall TForm1::TForm1(TComponent* Owner)

: TForm(Owner)

LoadIODLL();

ProgressBar1->Visible=False;

//---------------------------------------------------------------------//

// Función de Borland, editamos la ventana de trabajo: color, bmp’s,

//---------------------------------------------------------------------//

void __fastcall TForm1::FormCreate(TObject *Sender)

Image1->Picture->LoadFromFile("urv.bmp");

Image2->Picture->LoadFromFile("pll.bmp");

Memo1->Color = clMenu;

Edit1->Color = clMenu;

Edit2->Color = clMenu;

Page 114: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

113

Edit3->Color = clMenu;

Memo2->Color = clLime;

//---------------------------------------------------------------------//

// Función de Borland para la adquisición de datos, prohíbe la escritura

// de cualquier carácter que no sea un entero

//---------------------------------------------------------------------//

void __fastcall TForm1::Edit1KeyPress(TObject *Sender, char &Key)

if(Key==8)return;

if ((Key < '0') || (Key > '9'))

Key='\0';

//---------------------------------------------------------------------//

// Función de Borland que deshabilita la escritura en el puerto serie

//---------------------------------------------------------------------//

void __fastcall TForm1::Button5Click(TObject *Sender)

if((RadioButton6->Checked==true)&&(flagA==1))

if(hcomPort!=INVALID_HANDLE_VALUE)

CloseHandle(hcomPort);

Memo1->Lines->Clear();

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add(" < Puerto Desabilitado >");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Sleep(1000);

Memo1->Lines->Clear();

flagA=0;

Page 115: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

114

//---------------------------------------------------------------------//

// Función de Borland que hace posible escribir en el puerto serie como

// si fuera un fichero

//---------------------------------------------------------------------//

void __fastcall TForm1::OpenClick(TObject *Sender)

if((RadioButton6->Checked==true)&&(flagA==0))

hcomPort=CreateFile("COM1",GENERIC_READ|GENERIC_WRITE,0,0,OPEN_EXISTING,

FILE_ATTRIBUTE_NORMAL, 0);

if( hcomPort==INVALID_HANDLE_VALUE)

Memo1->Clear();

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add(" < No se puede abrir el puerto COM >");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Sleep(1000);

Memo1->Clear();

else

Memo1->Clear();

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add(" < Puerto Abilitado >");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Sleep(1000);

Memo1->Clear();

GetCommState(hcomPort, &sComCfg);

Page 116: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

115

sComCfg.BaudRate=CBR_9600;

sComCfg.ByteSize=8;

sComCfg.Parity=NOPARITY;

sComCfg.StopBits=ONESTOPBIT;

sComCfg.fRtsControl=RTS_CONTROL_ENABLE;

sComCfg.fDtrControl=DTR_CONTROL_ENABLE;

SetCommState(hcomPort, &sComCfg);

sTimOut.ReadIntervalTimeout=MAXDWORD;

sTimOut.ReadTotalTimeoutMultiplier=0;

sTimOut.ReadTotalTimeoutConstant=0;

sTimOut.WriteTotalTimeoutMultiplier=0;

sTimOut.WriteTotalTimeoutConstant=0;

sTimOut.WriteTotalTimeoutConstant=0;

SetCommTimeouts(hcomPort, &sTimOut);

flagA=1;

//---------------------------------------------------------------------//

// Función de Borland que carga las frecuencias introducidas por el

// usuario y nos comunica si los valores se ajustan al rango de trabajo

// del sintetizador

//---------------------------------------------------------------------//

void __fastcall TForm1::BitBtn1Click(TObject *Sender)

int a=0,b=0,c=0;

ctr.tmp=0;

Memo1->Clear();

Memo1->Lines->Add("");

if(Edit1->Text=="" || Edit1->Text=="0")

ctr.xtal=13;

Memo1->Lines->Add("->F.R programada a "+String(ctr.xtal)+String("

MHz"));

Page 117: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

116

else

ctr.xtal=Edit1->Text.ToDouble();

Memo1->Lines->Add(" ->F.R programada a " +String(ctr.xtal) +String("

MHz"));

if(Edit2->Text=="" || Edit2->Text=="0")

ctr.rf=902;

Memo1->Lines->Add(" ->F.E programada a " +String(ctr.rf) +String("

MHz"));

else

ctr.rf=Edit2->Text.ToDouble();

Memo1->Lines->Add(" ->F.E programada a " +String(ctr.rf) +String("

MHz"));

if(Edit3->Text=="" || Edit3->Text=="0")

ctr.fc=0.2;

Memo1->Lines->Add(" ->F.C programada a " +String(ctr.fc) +String("

MHz"));

else

ctr.fc=Edit3->Text.ToDouble();

Memo1->Lines->Add(" ->F.C programada a " +String(ctr.fc) +String("

MHz"));

Sleep(3000);

Memo1->Clear();

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add(" ...Comprobando valores...");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Page 118: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

117

Sleep(1000);

Memo1->Clear();

ctr.mdr= ctr.rf/ctr.fc+1;

if ((ctr.mdr>131071) || (ctr.mdr<512))

Memo1->Clear();

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add(" ->Main Divider fuera de rango");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Sleep(1000);

Memo1->Clear();

a=0;

else a=1;

ctr.rdr=ctr.xtal/ctr.fc+1;

if ((ctr.rdr>2047) || (ctr.rdr<8))

Memo1->Clear();

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add(" ->Reference Divider fuera de rango");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Sleep(1000);

Memo1->Clear();

b=0;

else b=1;

if ((ctr.clk>100) || (ctr.clk<0))

Memo1->Clear();

Memo1->Lines->Add("");

Page 119: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

118

Memo1->Lines->Add("");

Memo1->Lines->Add(" ->Clk fuera de rango");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Sleep(1000);

Memo1->Clear();

c=0;

else c=1;

if (a&&b&&c)

Memo1->Lines->Clear();

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add(" < Frecuencias Correctas >");

Memo1->Lines->Add("");

Memo1->Lines->Add(" ->Main Divider a " +String(ctr.mdr));

Memo1->Lines->Add(" ->Reference Divider a " +String(ctr.rdr));

ctr.tmp=1;

//---------------------------------------------------------------------//

// Función de Borland que nos permite grabar toda información en el

// sintetizador. Es la función mas importante

//---------------------------------------------------------------------//

void __fastcall TForm1::BitBtn2Click(TObject *Sender)

int j;

charA="a";

if((RadioButton5->Checked==true))

if(ctr.tmp)

ProgressBar1->Min=0;

ProgressBar1->Max=120;

ProgressBar1->Position=0;

Page 120: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

119

ProgressBar1->Visible=True;

Memo1->Lines->Clear();

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add(" < ...en programación >");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

/* Utilizo el d0 para el CLK, el d1 para el DATA y el d2 para ENOT*/

/* Mandamos el primer dato al registro de direccion 4h */

db(ctr.mdr);

addr[0]=0; addr[1]=0; addr[2]=1; addr[3]=0;

latch (addr,data);

ProgressBar1->StepBy(ctr.cont*2);

/* Mandamos el segundo dato al registro de direcci¢n 5h*/

/*Aunque el Reference Divider s¢lo tiene 11 bits*/

db(ctr.rdr);

addr[0]=1; addr[1]=0; addr[2]=1; addr[3]=0;

latch (addr,data);

ProgressBar1->StepBy(ctr.cont*2);

/* Aqui hay que programar el registro 1h */

for (j=0;j<17;j++)data[j]=0;

data[6]=ctr.pd;

data[9]=ctr.cr0;

data[10]=ctr.cr1;

data[12]=ctr.ool;

addr[0]=1; addr[1]=0; addr[2]=0; addr[3]=0;

latch (addr, data);

ProgressBar1->StepBy(ctr.cont*2);

Page 121: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

120

Sleep(500);

ProgressBar1->Position=0;

ProgressBar1->Visible=False;

Memo1->Clear();

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add(" < Dispositivo programado >");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Sleep(1500);

Memo1->Clear();

ctr.tmp=0;

//Programacion Por el Puerto Serie

if((RadioButton6->Checked==true))

if(ctr.tmp)

//Envio eco al Micro

WriteFile(hcomPort, "g", 1, &dwBytWri, 0);

for(ii=0;ii<22;ii++)

acBuf[ii]=0x00;

//Esta el micro conectado??

ccc=0;

Page 122: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

121

do

Sleep(100);

ReadFile(hcomPort, acBuf, 1, &dwBytRea, 0);

if(acBuf[0]=='g')

Memo1->Clear();

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add(" < Micro Conectado >");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

for(ii=0;ii<22;ii++)

acBuf[ii]=0x00;

flagm=1;

ccc=6;

ccc++;

while(ccc<6);

if(flagm==0)

Memo1->Clear();

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add(" < Micro NO Conectado >");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Sleep(2000);

Memo1->Clear();

if(flagm==1)

Sleep(1000);

Page 123: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

122

Memo1->Lines->Clear();

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add(" < Enviando Consignas...>");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

//Aqui va la primera trama....Es el Main divider.......

for(ii=0;ii<22;ii++)

acBuf[ii]=0x00;

tramaA[ii]=0x00;

tramaB[ii]=0x00;

tramaC[ii]=0x00;

db(ctr.mdr); //Conversion a Bits

for(j=0;j<17;j++)

if(data[j]==1)

tramaA[j]='1';

if(data[j]==0)

tramaA[j]='0';

strrev(tramaA);

tramaA[17]='0'; tramaA[18]='1'; tramaA[19]='0'; tramaA[20]='0';

charA="a";

strcat(tramaA,charA);

dwlen=strlen(tramaA);

WriteFile(hcomPort, tramaA, dwlen, &dwBytWri, 0);

//Aqui va la segunda trama....Es el Reference divider.......

Page 124: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

123

db(ctr.rdr);

for(j=0;j<17;j++)

if(data[j]==1)

tramaB[j]='1';

if(data[j]==0)

tramaB[j]='0';

strrev(tramaB);

tramaB[17]='0'; tramaB[18]='1'; tramaB[19]='0'; tramaB[20]='1';

charA="b";

strcat(tramaB,charA);

dwlen=strlen(tramaB);

WriteFile(hcomPort, tramaB, dwlen, &dwBytWri, 0);

//Aqui va la tercera trama....Es el charge pump, sPON y OOL.......

for (j=0;j<17;j++)

data[j]=0;

data[6]=ctr.pd;

data[9]=ctr.cr0;

data[10]=ctr.cr1;

data[12]=ctr.ool;

for(j=0;j<17;j++)

if(data[j]==1)

tramaC[j]='1';

if(data[j]==0)

Page 125: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

124

tramaC[j]='0';

strrev(tramaC);

tramaC[17]='0'; tramaC[18]='0'; tramaC[19]='0'; tramaC[20]='1';

charA="c";

strcat(tramaC,charA);

dwlen=strlen(tramaC);

WriteFile(hcomPort, tramaC, dwlen, &dwBytWri, 0);

//Verificacion de las Tramas Enviadas

if(CheckBox4->Checked==true)

Sleep(1000);

Memo1->Lines->Clear();

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add(" < Verificando...>");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

WriteFile(hcomPort, "d", 1, &dwBytWri, 0);

do

Sleep(100);

ReadFile(hcomPort, acBuf, dwlen, &dwBytRea, 0);

if(acBuf[21]=='a')

for(ii=0;ii<22;ii++)

if(tramaA[ii]!=acBuf[ii])

Memo1->Lines->Clear();

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add(" < -ERROR- TramaA incorrecta >");

Page 126: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

125

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Sleep(2000);

flagError=1;

flag=1;

while(flag==0);

for(ii=0;ii<22;ii++)

acBuf[ii]=0x00;

flag=0;

do

ReadFile(hcomPort, acBuf, dwlen, &dwBytRea, 0);

if(acBuf[21]=='b')

for(ii=0;ii<22;ii++)

if(tramaB[ii]!=acBuf[ii])

Memo1->Lines->Clear();

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add(" < -ERROR- TramaB incorrecta >");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Sleep(2000);

flagError=1;

flag=1;

Page 127: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

126

while(flag==0);

for(ii=0;ii<22;ii++)

acBuf[ii]=0x00;

flag=0;

do

ReadFile(hcomPort, acBuf, dwlen, &dwBytRea, 0);

if(acBuf[21]=='c')

for(ii=0;ii<22;ii++)

if(tramaC[ii]!=acBuf[ii])

Memo1->Lines->Clear();

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add(" < -ERROR- TramaC incorrecta >");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Sleep(2000);

flagError=1;

flag=1;

while(flag==0);

//le digo al micro q empiece a programar el sintetizador

if(flagError==0)

Sleep(1000);

Memo1->Lines->Clear();

Page 128: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

127

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add(" <...en programación>");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

WriteFile(hcomPort, "e", 1, &dwBytWri, 0);

for(ii=0;ii<22;ii++)

acBuf[ii]=0x00;

//Recibo consigna del micro....el sintetizador esta programado

do

ReadFile(hcomPort, acBuf, 1, &dwBytRea, 0);

Sleep(10);

ccc++;

if(acBuf[0]=='f')

Memo1->Clear();

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add(" < Dispositivo Programado >");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

for(ii=0;ii<22;ii++)

acBuf[ii]=0x00;

flagp=1;

ccb=1;

// en teoria estaba con ccb=1 pero como e puesto el detector de

// enganche lo pongo a 0

ccc=0;

Page 129: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

128

if((ccc==1500)&&(flagp==0)&&(ccb==0))

Memo1->Clear();

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add(" < El Micro No Responde >");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

ccc=0;

flagp=1;

while(flagp==0);

ccb=0;

Sleep(100);

do

ReadFile(hcomPort, acBuf, 1, &dwBytRea, 0);

ccc++;

if(acBuf[0]=='l')

Memo1->Clear();

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add(" < PLL Enganchado >");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo2->Color = clRed;

Sleep(2000);

Memo2->Color = clLime;

Page 130: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

129

for(ii=0;ii<22;ii++)

acBuf[ii]=0x00;

flagp=0;

ccb=1;

ccc=0;

if((ccc==1500)&&(flagp==1)&&(ccb==0))

Memo1->Clear();

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add(" < No Engancha o Out of Lock >");

Memo1->Lines->Add(" < no está habilitado >");

Memo1->Lines->Add("");

Memo2->Color = clLime;

ccc=0;

flagp=0;

while(flagp==1);

flagp=0;

else

Memo1->Clear();

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add(" < Vuelve a intentarlo >");

Memo1->Lines->Add("");

Memo1->Lines->Add("");

flagm=0;

Page 131: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

130

//fin if ctr.tmp

ctr.tmp=0;

//fin if serie

//---------------------------------------------------------------------//

// Función de Borland para grabar al configuración de la palabra de

// control

//---------------------------------------------------------------------//

void __fastcall TForm1::BitBtn3Click(TObject *Sender)

Memo1->Clear();

Memo1->Lines->Add(" < Registro de Control >");

Memo1->Lines->Add("");

if(CheckBox1->Checked==false)

Memo1->Lines->Add(" ->Out of Lock a 0");

ctr.ool=0;

else

Memo1->Lines->Add(" ->Out of Lock a 1");

ctr.ool=1;

if(CheckBox2->Checked==false)

Memo1->Lines->Add(" ->Power Down a 0");

ctr.pd=0;

else

Memo1->Lines->Add(" ->Power Down a 1");

ctr.pd=1;

Page 132: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

131

if(CheckBox3->Checked==false)

Memo1->Lines->Add(" ->Charge Pump a 00");

ctr.cr0=0;

ctr.cr1=0;

else

if((RadioButton1->Checked==true)&(CheckBox3->Checked==true))

Memo1->Lines->Add(" ->IcpF=16Iset, Icp=Iset");

ctr.cr0=1;

ctr.cr1=1;

if((RadioButton2->Checked==true)&(CheckBox3->Checked==true))

Memo1->Lines->Add(" ->IcpF=12Iset, Icp=Iset");

ctr.cr0=0;

ctr.cr1=1;

if((RadioButton3->Checked==true)&(CheckBox3->Checked==true))

Memo1->Lines->Add(" ->IcpF=16Iset, Icp=2Iset");

ctr.cr0=1;

ctr.cr1=0;

if((RadioButton4->Checked==true)&(CheckBox3->Checked==true))

Memo1->Lines->Add(" ->IcpF=8Iset, Icp=2Iset");

ctr.cr0=0;

ctr.cr1=0;

Page 133: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

132

//---------------------------------------------------------------------//

// Función de Borland para la adquisición de datos, prohíbe la escritura

// de cualquier carácter que no sea un entero

//---------------------------------------------------------------------//

void __fastcall TForm1::Edit4KeyPress(TObject *Sender, char &Key)

if(Key==8)return;

if ((Key < '0') || (Key > '9'))

Key='\0';

//---------------------------------------------------------------------//

// Función de Borland para la adquisición de datos, prohíbe la escritura

// de cualquier carácter que no sea un entero

//---------------------------------------------------------------------//

void __fastcall TForm1::Edit3KeyPress(TObject *Sender, char &Key)

if(Key==8)return;

if(Key==',')return;

if ((Key < '0') || (Key > '9'))

Key='\0';

//---------------------------------------------------------------------//

// Función de Borland para la adquisición de datos, prohíbe la escritura

// de cualquier carácter que no sea un entero

//---------------------------------------------------------------------//

void __fastcall TForm1::Edit2KeyPress(TObject *Sender, char &Key)

if(Key==8)return;

if ((Key < '0') || (Key > '9'))

Key='\0';

Page 134: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

133

//---------------------------------------------------------------------//

// Función de Borland, selección de verificación de tramas por puerto

// serie

//---------------------------------------------------------------------//

void __fastcall TForm1::CheckBox4Click(TObject *Sender)

if((RadioButton6->Checked==true))

if(CheckBox4->Checked==false)

Memo1->Clear();

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add(" < Verificación Desactivada >");

Memo1->Lines->Add("");

Sleep(1000);

Memo1->Clear();

else

Memo1->Clear();

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add(" < Verificación Activada >");

Memo1->Lines->Add("");

Sleep(1000);

Memo1->Clear();

//---------------------------------------------------------------------//

// Función de Borland, selección de programación por puerto paralelo

//---------------------------------------------------------------------//

void __fastcall TForm1::RadioButton5Click(TObject *Sender)

if((RadioButton5->Checked==true))

Memo1->Clear();

Page 135: Diseño de un Generador RF en Banda L - deeea.urv.catdeeea.urv.cat/public/PROPOSTES/pub/pdf/685pub.pdf · DISEÑO DE UN GENERADOR DE RF EN BANDA L 3 3.4 Placa del circuito ... Normalmente

DISEÑO DE UN GENERADOR DE RF EN BANDA L

134

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add("< Comunicación por Puerto Paralelo >");

Memo1->Lines->Add("");

Memo1->Lines->Add(" ->Conexión directa desde el ");

Memo1->Lines->Add(" puerto paralelo al conector ");

Memo1->Lines->Add(" 3-wire del Sintetizador ");

clockd();

enup();

x=PortIn(LPT1i);

x=x&253;

PortOut(LPT1o,x);

//---------------------------------------------------------------------//

// Función de Borland, selección de programación por puerto serie

//---------------------------------------------------------------------//

void __fastcall TForm1::RadioButton6Click(TObject *Sender)

if((RadioButton6->Checked==true))

Memo1->Clear();

Memo1->Lines->Add("");

Memo1->Lines->Add("");

Memo1->Lines->Add(" < Comunicación por Puerto Serie >");

Memo1->Lines->Add("");

Memo1->Lines->Add(" ->Conexión directa desde el ");

Memo1->Lines->Add(" puerto serie al conector ");

Memo1->Lines->Add(" 3-wire del MicroControlador ");