memoria_estacion_meteorologica
TRANSCRIPT
-
8/3/2019 memoria_estacion_meteorologica
1/158
Desarrollo de una estacin
meteorolgica USB
Adela M. Rodrguez Zaragoz
Tutor: Jos Antonio Boluda Grau
5 de septiembre de 2006
Universitat de Valncia - ETSE
-
8/3/2019 memoria_estacion_meteorologica
2/158
-
8/3/2019 memoria_estacion_meteorologica
3/158
Agradecimientos
A mis padres, abuela, to y tas, por su apoyo, paciencia y confianza en m.
A Marian, por compartir conmigo un montn de experiencias, por todos los
buenos momentos que me has hecho pasar y por hacer que los menos buenos no
fueran tan malos, por tu paciencia aguantando mis agobios y locuras transitorias, por
todas esas bi y por lo mucho que me haces rer. Sin ninguna duda, tu amistad es lo
mejor que me ha aportado la carrera.
A Oscar, por su ayuda con la electrnica, apoyo, consejos y nimos.
A Blanca, por sufrir conmigo el PIC y el C#, por prestarme la placa y por esas
peazo de trufas belgas!!
A Sara y M. Jos, por todos esos momentos que hemos pasado juntas, me alegro
de que nuestra amistad no se haya limitado a la facul y que seis mucho ms que unas
compaeras de clase.
A mi tutor, por su disponibilidad y ayuda durante el desarrollo del proyecto.
A Isaac, por atenderme y resolver mis dudas.
A Natalia, por hacerme rer y ayudarme a desconectar.
A Marita, Miriam, Ins y Montse, por todo lo que me han enseado y
encomendado (y espero que sigan!).
A Isabel y Amparo, que aunque pase el tiempo y cambien las circunstancias,
siempre estn ah.
A Isidoro, por su ayuda en el estudio y con los exmenes, y a Beto, por estar
siempre pendiente de m y encontrarme sitio para aparcar. DOG - OIB
-
8/3/2019 memoria_estacion_meteorologica
4/158
-
8/3/2019 memoria_estacion_meteorologica
5/158
ndice General
I Memoria 1
1. Introduccin. 3
1.1. Enunciado y objetivos del proyecto.......................................................3
1.2. Resumen de la memoria.........................................................................4
2. Estado del arte. 7
2.1. Interconexin entre ordenador y perifricos. .........................................7
2.1.1. Interfaces serie. ..............................................................................9
2.1.1.1. La interfaz RS-232.......................................................................10
2.1.1.2. El Bus Serie Universal (USB)......................................................10
2.1.1.3. El estndar IEEE 1394 o FireWire...............................................14
2.1.2. Interfaces paralelas.......................................................................162.1.2.1. La interfaz Centronics..................................................................16
2.1.2.2. El estndar IEEE 1284. ................................................................17
2.1.2.3. Small Computer Systems Interface (SCSI)..................................17
2.1.3. Comunicacin inalmbrica. Bluetooth.........................................18
2.2. Microcontroladores..............................................................................21
2.3. Sistemas de adquisicin de datos mediante sensores...........................26
3. Metodologa y materiales. 29
3.1. Metodologa. ........................................................................................29
3.2. Material utilizado. ................................................................................31
3.2.1. Software. ......................................................................................31
3.2.2. Hardware......................................................................................34
4. Anlisis de alternativas. 35
4.1. Requisitos.............................................................................................35
-
8/3/2019 memoria_estacion_meteorologica
6/158
4.2. Evaluacin de alternativas. ..................................................................36
4.2.1. Interconexin entre el perifrico y el ordenador..........................36
4.2.2. Microcontrolador. ........................................................................38
4.2.3. Lenguajes y herramientas de desarrollo de aplicaciones. ............40
4.3. Seleccin..............................................................................................43
5. Diseo. 47
5.1. Diseo del hardware. ...........................................................................48
5.2. Diseo del firmware.............................................................................53
5.2.1. Registros de configuracin. .........................................................53
5.2.2. Registros del oscilador.................................................................55
5.2.3. Registros del mdulo A/D. ..........................................................58
5.2.4. Registros del mdulo USB...........................................................63
5.2.5. Descriptores. ................................................................................66
5.3. Diseo del software..............................................................................71
6. Implementacin. 73
6.1. Implementacin del hardware..............................................................73
6.2. Implementacin del firmware. .............................................................75
6.2.1. Programacin del microcontrolador. ...........................................75
6.2.2. Creacin del fichero INF. ............................................................78
6.2.3. Creacin de una nueva clase. .......................................................80
6.3. Implementacin del software. ..............................................................82
7. Experimentacin. 85
7.1. Instalacin del perifrico......................................................................85
7.2. Medicin de la temperatura. ................................................................86
7.3. Comprobacin del software. ................................................................87
8. Presupuesto. 89
8.1. Coste de los recursos hardware............................................................89
8.2. Coste de los recursos software.............................................................90
8.3. Coste de los componentes y fabricacin del PCB. ..............................91
8.4. Coste de los recursos humanos. ...........................................................92
-
8/3/2019 memoria_estacion_meteorologica
7/158
8.5. Coste total del proyecto. ......................................................................93
9. Conclusiones y trabajo futuro. 95
9.1. Conclusiones........................................................................................95
9.2. Trabajo futuro. .....................................................................................97
II Planos y especificaciones 99
10. Planos del PCB. 101
10.1. Esquema elctrico. .............................................................................101
10.2. Listado de componentes.....................................................................103
10.3. Diseo del PCB. Caras Top y Bottom. ..............................................104
10.4. Pinout. ................................................................................................105
11. Especificaciones. 107
11.1. Condiciones econmicas....................................................................108
11.2. Especificaciones tcnicas...................................................................108
11.2.1. Condiciones de trabajo del sistema............................................108
11.2.2. Requerimientos de las seales del sistema.................................109
11.3. Caractersticas de los materiales. .......................................................110
11.3.1. Especificaciones de los circuitos integrados..............................110
11.3.2. Componentes pasivos y conductores. ........................................111
11.4. Condiciones de ejecucin. .................................................................113
11.4.1. Fabricacin del PCB. .................................................................113
11.4.2. Montaje de componentes. ..........................................................114
III Apndices 115
A. Cdigo del microcontrolador 117
B. Fichero .INF 123
C. Cdigo de la aplicacin 125
-
8/3/2019 memoria_estacion_meteorologica
8/158
D. Manual de usuario de TempUSB 139
D.1. Instalacin del dispositivo...139
D.2. Instalacin de la aplicacin.....140
D.3. Utilizacin de la aplicacin.141
Bibliografa 145
-
8/3/2019 memoria_estacion_meteorologica
9/158
ndice de Figuras
Figura 2.1: Topologa de una conexin USB...............................................................12
Figura 2.2: Formato del tipo de cable utilizado............................................................13
Figura 2.3: Utilizacin de microcontroladores por sectores.........................................25
Figura 4.1: Encapsulado PIC18F2550..........................................................................45
Figura 5.1: Flujo de comunicaciones entre un dispositivo USB y el host....................47
Figura 5.2: Sensor de temperatura LM50.....................................................................49
Figura 5.3: Alimentacin a travs del bus USB...........................................................50
Figura 5.4: Conector USB tipo A.................................................................................50
Figura 5.5: Oscilador cristal o cermico (configuracin XT, HS o HSPLL)...............52
Figura 5.6: Deteccin de la velocidad de un dispositivo USB.....................................53
Figura 5.7: Mdulo del oscilador.................................................................................55Figura 5.8: Registro CONFIG1L..................................................................................56
Figura 5.9: Registro CONFIG1H.................................................................................57
Figura 5.10: Registro OSCCON...................................................................................58
Figura 5.11: Registro ADCON0...................................................................................59
Figura 5.12: Registro ADCON1...................................................................................60
Figura 5.13: Secuencia de conversin A/D..................................................................61
Figura 5.14: Conversin A/D con tiempo de adquisicin manual...............................62
Figura 5.15: Registro ADCON2...................................................................................63
Figura 5.16: Registro UCON........................................................................................64
Figura 5.17: Mdulo USB............................................................................................65
Figura 5.18: Registro UCFG........................................................................................66
Figura 5.19: Jerarqua de descriptores..........................................................................67
Figura 5.20: Descriptores del perifrico.......................................................................69
Figura 5.21: Registro UEPn.........................................................................................70
-
8/3/2019 memoria_estacion_meteorologica
10/158
Figura 6.1: Diagrama de bloques del programa...........................................................77
Figura 6.2: Nueva clase en el Administrador de Dispositivos.....................................82
Figura 11.1: Dimensiones del conector USB tipo A..112
-
8/3/2019 memoria_estacion_meteorologica
11/158
ndice de Tablas
Tabla 4.1: Comparacin entre FireWire y USB...........................................................37
Tabla 5.1: Modos de funcionamiento del oscilador en el PIC18F2550.......................51
Tabla 5.2: Registros de configuracin.........................................................................54
Tabla 5.3: TAD frente a frecuencia del oscilador........................................................62
Tabla 5.4: Valores de los registros de configuracin...................................................70
Tabla 8.1: Presupuesto de los recursos hardware.........................................................90
Tabla 8.2: Presupuesto de los recursos software..........................................................91
Tabla 8.3: Presupuesto de los componentes y el PCB.................................................92
Tabla 8.4: Presupuesto del coste de tareas del ingeniero.............................................93
Tabla 8.5: Presupuesto del coste de tareas del tcnico.................................................93
Tabla 8.6: Coste total de los recursos humanos...........................................................93Tabla 8.7: Coste total del proyecto..............................................................................94
Tabla 10.1: Listado de componentes..........................................................................103
Tabla 10.2: Pinout del microcontrolador PIC18F2550..............................................105
Tabla 10.3: Pinout del conector USB.........................................................................106
Tabla 11.1: Condiciones de la seal de alimentacin................................................109
Tabla 11.2: Mrgenes de tensin para los niveles lgicos en USB 1.1.....................109
Tabla 11.3: Caractersticas elctricas del PIC18F2550..............................................110
Tabla 11.4: Caractersticas elctricas del sensor LM50.............................................111
Tabla 11.5: Parmetros requeridos para la fabricacin del PCB....113
-
8/3/2019 memoria_estacion_meteorologica
12/158
-
8/3/2019 memoria_estacion_meteorologica
13/158
1
Parte I
Memoria
-
8/3/2019 memoria_estacion_meteorologica
14/158
2
-
8/3/2019 memoria_estacion_meteorologica
15/158
_____________________________________________________________________
Ingeniera Informtica 3 Universidad de Valencia
1. Introduccin.
1.1. Enunciado y objetivos del proyecto.
La aparicin de nuevos perifricos en el mercado es constante, desde los
tradicionales ratones o impresoras hasta las cmaras digitales o los pendrives pasando
por webcams, escners, conversores A/D o modems. Actualmente muchos
dispositivos que se utilizan de forma cotidiana como pueden ser cmaras de fotos,
vdeo, reproductores de msica o incluso un telfono mvil pueden ser conectados a
un ordenador. Esto hace que el desarrollo de dispositivos perifricos est en continua
evolucin, haciendo especial hincapi en la forma de interconexin entre estos
dispositivos y el ordenador.
Cada da aparecen nuevas utilidades de mayor potencia, con ms posibilidades y
mucho ms grficas, que requieren de ms capacidad y por lo tanto, las tareas
ordinarias son cada vez de mayor volumen. Para poder almacenar, transmitir o recibir
dichas tareas, aparecen en el mercado perifricos y componentes de mayor capacidad
pero tambin es necesario que la "va" por la que se van a transmitir esos datos sea
ms fiable y ms rpida, de forma que se ajuste a los nuevos avances.
-
8/3/2019 memoria_estacion_meteorologica
16/158
_____________________________________________________________________
Ingeniera Informtica 4 Universidad de Valencia
El objetivo de este proyecto es llevar a cabo el desarrollo de un perifrico, desde
el diseo del esquema hardware del dispositivo hasta la implementacin de una
aplicacin software que permita la comunicacin con l.
El perifrico consiste en un sistema de adquisicin de datos a travs de sensores.
Estos datos debern ser convertidos a formato digital para posteriormente, ser
enviados al ordenador donde podrn ser tratados y visualizados.
A continuacin se enumeran los principales objetivos del proyecto:
Diseo e implementacin de un circuito impreso que realice la
adquisicin de datos a travs de sensores.
Estudio de los distintos medios de interconexin entre el dispositivo y el
ordenador, seleccionando el que ms se adecue a nuestras necesidades.
Implementacin del protocolo de comunicacin entre el perifrico y el
host.
Desarrollo de una aplicacin software que permita visualizar los datos
adquiridos mediante los sensores.
1.2. Resumen de la memoria.La memoria se ha dividido en los siguientes captulos intentando ofrecer una
visin clara de todas las fases del proyecto:
Captulo 1: Enunciado y objetivos del proyecto y resumen del contenido
de la memoria.
Captulo 2: Estado del arte, es decir, la base terica sobre la que se basa
el proyecto.
Captulo 3: Metodologa y materiales utilizados en el desarrollo del
proyecto.
-
8/3/2019 memoria_estacion_meteorologica
17/158
_____________________________________________________________________
Ingeniera Informtica 5 Universidad de Valencia
Captulo 4: Especificacin de los requisitos a cumplir por el proyecto.
Exposicin y anlisis de las diferentes alternativas de las que se dispone
para realizar el proyecto y justificacin de la decisin final adoptada.
Captulo 5: Diseo del hardware, firmware y software del proyecto. Captulo 6: Descripcin del proceso de implementacin.
Captulo 7: Descripcin y resultados de las pruebas realizadas.
Captulo 8: Estimacin econmica del proyecto.
Captulo 9: Conclusiones extradas y posibles lneas de desarrollo futuras
a partir del estado final del proyecto.
Captulo 10: Esquema elctrico, planos del PCB y listado de
componentes. Captulo 11: Especificaciones tcnicas y caractersticas de los materiales.
Apndice A: Cdigo del microcontrolador.
Apndice B: Fichero INF.
Apndice C: Cdigo de la aplicacin software.
Apndice D: Manual de usuario donde se indica cmo instalar el
perifrico y utilizar la aplicacin software.
Bibliografa.
-
8/3/2019 memoria_estacion_meteorologica
18/158
_____________________________________________________________________
Ingeniera Informtica 6 Universidad de Valencia
-
8/3/2019 memoria_estacion_meteorologica
19/158
_____________________________________________________________________
Ingeniera Informtica 7 Universidad de Valencia
2. Estado del arte.En el presente captulo se expondrn las bases tericas del diseo de perifricos,
para ello el captulo se divide en tres secciones. En la primera se van a describir los
estndares ms importantes y comunes que se utilizan para conectar los perifricos al
ordenador. La segunda seccin trata sobre la importancia de los microcontroladores
en el desarrollo de perifricos y, por ltimo, en la tercera seccin se hablar sobre los
sistemas de adquisicin de datos a travs de sensores.
2.1. Interconexin entre ordenador y perifricos.En cualquier ordenador existe una parte muy importante llamada subsistema de
Entrada/Salida, que es la que hace posible la comunicacin con el mundo exterior.
Este sistema est formado por varios dispositivos perifricos que proporcionan un
medio para intercambiar datos con el exterior y que se comunican con el procesador a
travs de una serie de mdulos llamados de E/S. Cualquiera de estos mdulos
contiene una serie de controladores que se encargan de manejar el funcionamiento de
uno o varios perifricos.
Los mdulos de E/S no deben conectar directamente el perifrico con el bus del
sistema, sino que tienen que poseer una cierta inteligencia para poder realizar la
comunicacin entre el perifrico y el procesador de forma eficiente. Si se observan
-
8/3/2019 memoria_estacion_meteorologica
20/158
_____________________________________________________________________
Ingeniera Informtica 8 Universidad de Valencia
algunas de las caractersticas del subsistema de Entrada/Salida ser posible darse
cuenta de esta necesidad:
Existe una gran diversidad de perifricos que utilizan mtodos de
operacin diferentes. No sera lgico que la CPU tuviera que incorporar
toda la lgica necesaria para controlar este rango de dispositivos.
La velocidad de transferencia de los datos de los perifricos es a menudo
mucho ms lenta que la que tiene el procesador con el sistema de
memoria, por lo tanto resulta poco prctico usar el bus del sistema de alta
velocidad para comunicarse directamente con los perifricos.
A menudo los perifricos utilizan formatos y longitudes de palabra de
datos diferentes a los que utiliza el procesador. Debe haber por tanto
algn mecanismo para adecuar las seales de ambos dispositivos.
Los mdulos de E/S establecen una serie de reglas (llamadas interfaces) que les
permiten por un lado conectarse con la CPU y la memoria a travs del bus del sistema
o del de expansin y, por otro lado, conectarse con los dispositivos perifricos a travs
de enlaces dedicados para datos. Estos enlaces se caracterizan porque son ms lentos,
tienen una menor longitud de palabra y menores velocidades de transferencia de
datos. Su diseo se basa en un estndar para permitir la interconexin de dispositivos
de diferentes fabricantes. [MBP01]
A continuacin se describirn algunos de los estndares ms importantes
utilizados en la interconexin del ordenador y los perifricos, haciendo para ello una
distincin entre interfaces serie e interfaces paralelas:
Interfaz serie: Se utiliza una nica lnea para transmitir los datos.
Interfaz paralela: Se utilizan varias lneas de datos para transmitir
mltiples bits de forma simultnea.
-
8/3/2019 memoria_estacion_meteorologica
21/158
_____________________________________________________________________
Ingeniera Informtica 9 Universidad de Valencia
2.1.1. Interfaces serie.
La conexin a travs de esta interfaz es muy importante debido a su gran
flexibilidad. En los ordenadores personales la interfaz serie se utiliza para conectarmltiples dispositivos como plotters, mdems, ratones y tambin impresoras.
En la transmisin serie se van transfiriendo los bits de informacin de uno en uno
a travs de una lnea de datos, pudiendo ser las transferencias sncronas o asncronas.
Si se utilizan seales adicionales (reloj o seales de peticin y reconocimiento) para
indicar cundo el bit siguiente es vlido, entonces se dice que la transmisin se realiza
de forma sncrona. La principal ventaja de este tipo de transferencias es que elreceptor puede funcionar a varias frecuencias de reloj (siempre que no sobrepase su
frecuencia mxima de funcionamiento). Simplemente bastar con retrasar el envo de
la seal de reconocimiento para ralentizar el protocolo. En las transferencias
asncronas, por el contrario, tanto el receptor como el transmisor deben funcionar a la
misma frecuencia. En este caso se enva tambin informacin de sincronizacin a
travs de la lnea de datos, que se corresponde con un bit de comienzo (bit de start),
que indica el comienzo de una unidad de datos, un bit de fin (bit de stop) indicando su
finalizacin y, opcionalmente, un bit de paridad para controlar los posibles errores.
El bit de paridad lo generan los controladores serie de forma automtica,
pudiendo configurarse entre las opciones de: sin paridad, paridad par (odd), paridad
impar (even), siempre un nivel alto (mark) o siempre un nivel bajo (space).
Las tasas de transferencia de datos se miden en baudios. Los baudios indican el
nmero de veces que puede cambiar una seal en la lnea de transmisin por segundo.
En una interfaz serie, las seales cambian siempre a la misma frecuencia y se realiza
una codificacin binaria de la informacin de forma que cuando se quiere enviar un
1 se pone la lnea a nivel alto y cuando se quiere enviar un 0 se pone la lnea a
nivel bajo. En este caso los baudios coinciden con el nmero de bits por segundo
transferidos si se incluyen tambin los bits de comienzo, de fin y de paridad.
-
8/3/2019 memoria_estacion_meteorologica
22/158
_____________________________________________________________________
Ingeniera Informtica 10 Universidad de Valencia
2.1.1.1. La interfaz RS-232.
Este estndar lo incorporan todos los ordenadores personales y est definido por
la EIA ( Electronic Industries Association) aunque en Europa se le conoce como elestndar V.24 definido por la CCITT (Consultative Committee for International
Telephone and Telegraph). En l se definen todas las caractersticas mecnicas,
elctricas y los protocolos necesarios para conectar un equipo terminal de datos
(DTE- Data Terminal Equipment) con un equipo transmisor de datos (DCE Data
Carrier Equipment). Inicialmente se defini para realizar la comunicacin entre un
ordenador personal y un mdem, aunque actualmente se utiliza con muchos otros
propsitos para enviar datos de forma serializada.
El estndar define voltajes que oscilan entre + [3-15] V para el nivel alto y [3-
15] V para el nivel bajo. Debido a la gran diferencia de voltaje que existe entre los
niveles altos y bajos, se permiten tasas de transferencia de hasta 115.200 baudios si la
longitud del cable es de unas pocas decenas de metros.
Si se utiliza este estndar para conectar otros perifricos diferentes de los
mdems, stos se comportan como dispositivos DTE y, por lo tanto, las seales
cambian de significado.
2.1.1.2. El Bus Serie Universal (USB).
El USB es un estndar (1995) que define un bus utilizado para conectar
perifricos al ordenador. La principal caracterstica que tiene es que la conexin es
muy sencilla, ya que utiliza un nico conector para conectar a travs de un bus serie
todos los dispositivos. En l se definen los conectores y los cables, una topologa
especial tipo estrella para conectar hasta 127 dispositivos y protocolos que permiten la
deteccin y configuracin automtica de los dispositivos conectados. USB 1.0 soporta
dos tasas de transferencia diferentes, una baja de 1,5 Mbps para la conexin de
dispositivos lentos de bajo coste (joysticks, ratones) y otra alta de hasta 12 Mbps para
la conexin de dispositivos que requieren un mayor ancho de banda (discos o CD-ROMS).
-
8/3/2019 memoria_estacion_meteorologica
23/158
_____________________________________________________________________
Ingeniera Informtica 11 Universidad de Valencia
La especificacin de este estndar ha sido respaldada por las empresas lderes
mundiales en el campo de la informtica: Intel, IBM, DEC, Microsoft, Compac, NEC
y Northem Telecom, empresas que garantizan su continuidad y utilizacin.
A mediados del ao 2000 aparece la versin 2.0, que fue creada por el conjunto
de compaas arriba mencionadas, a las cuales se unieron Hewlett Packard, Lucent y
Philips. USB 2.0 multiplica la velocidad del bus por un factor de 30 o 40, llegando a
alcanzar una velocidad de 480 Mbps, con una diferencia de coste casi inapreciable. Es
compatible con la versin anterior y utiliza los mismos cables y conectores,
nicamente se necesitan nuevos hubs que soporten la versin 2.0. Estos hubs son algo
ms complejos que los anteriores, ya que tienen que manejar el trfico de datos de tres
velocidades distintas sin ser excluyentes entre ellas.
Cabe tambin destacar que USB 2.0 nunca llegar a reemplazar completamente a
USB 1.0, ya que existen algunos tipos de dispositivos, como los HID (teclados,
ratones,), que no requieren las altas velocidades que alcanza esta nueva versin y
que nicamente encareceran el dispositivo. [Usb]
Anteriormente los perifricos se conectaban mapeados directamente en
direcciones de E/S, se les asignaba una direccin especfica y en algunos casos un
canal DMA. Esta situacin conduca a tener conflictos en la asignacin de estos
recursos, puesto que siempre han estado bastante limitados en el ordenador. Adems
cada dispositivo tena su propio puerto de conexin y utilizaba sus cables especficos,
lo que daba lugar a un incremento de los costes. Debido a que a cada dispositivo se le
tenan que asignar unos recursos especficos la deteccin del mismo deba hacerse a la
hora de arrancar el sistema y nunca se poda incorporar un nuevo dispositivo cuando
el sistema estaba en marcha.
Los dos aspectos fundamentales que motivaron la realizacin de este estndar
fueron la necesidad de configurar de forma sencilla los perifricos conectados al
ordenador y la necesidad de aumentar el nmero de puertos disponibles.
Este estndar define una topologa de conexin en estrella, tal como se muestraen la figura 2.1, por medio de la incorporacin de varios concentradores (hubs)
-
8/3/2019 memoria_estacion_meteorologica
24/158
_____________________________________________________________________
Ingeniera Informtica 12 Universidad de Valencia
conectados en serie. Cada concentrador se conecta por un lado al ordenador, que
contiene una o dos interfaces de este tipo en la placa base, o a otro concentrador y, por
otro lado, se conecta a varios dispositivos o incluso a otro concentrador. De este modo
pueden existir perifricos que vengan ya preparados con nuevos conectores USB para
incorporar nuevos dispositivos, hasta un total de 127, todos ellos funcionando
simultneamente. Los hubs tienen la misin de ampliar el nmero de dispositivos que
se pueden conectar al bus. Son concentradores cableados que permiten la conexin
simultnea de mltiples dispositivos y lo ms importante es que se pueden concatenar
entre s ampliando la cantidad de puertos disponibles para los perifricos. El
concentrador detecta cundo un perifrico es conectado o desconectado a/de uno de
sus puertos, notificndolo de inmediato al controlador de USB. Tambin realiza
funciones de acoplamiento de las velocidades de los dispositivos ms lentos.
Figura 2.1: Topologa de una conexin USB
Existe una gran variedad de dispositivos USB que se conectan todos al mismo
bus. La caracterstica ms importante es que todos ellos utilizan el mismo tipo de
cable y de conector y se conectan de la misma forma tan sencilla. El host decide qu
dispositivo puede acceder al bus, utilizando un protocolo parecido al de paso de
testigo. Este protocolo se caracteriza porque entre los diferentes dispositivos se va
pasando un identificador a lo largo del tiempo que permite la utilizacin del bus.
-
8/3/2019 memoria_estacion_meteorologica
25/158
_____________________________________________________________________
Ingeniera Informtica 13 Universidad de Valencia
El host USB tiene las funciones de:
Detectar la conexin/desconexin de dispositivos y configurarlos.
Controlar las transferencias de datos y de control que tienen lugar en elbus.
Realizacin de auditorias sobre la actividad del sistema.
Servir como fuente de alimentacin a los dispositivos.
El USB define dos lneas para transmitir datos y otras dos para transmitir
potencia (vase la figura 2.2). Los datos de transmiten de forma balanceada a
velocidades entre 1,5 Mbps y 12 Mbps. La seal se transmite codificada en un cdigo
autoreloj de no retorno a cero invertido (NRZI) para poder incluir junto con los datos
informacin de sincronizacin. Las lneas de alimentacin (Vbus y GND) evitan la
necesidad de utilizar fuentes de alimentacin externas. Tiene una tensin de 5 V y la
corriente se limita a un mximo de 3 a 5 amperios por razones de seguridad, siendo el
consumo y la configuracin elctrica totalmente transparente al usuario. La distancia
entre dos perifricos conectados al mismo cable no debe ser superior a 5 metros para
evitar problemas de cadas de tensin.
Figura 2.2: Formato del tipo de cable utilizado
El computador identifica automticamente el dispositivo que se conecta mientras
opera y lo configura sin tener que instalar drivers especficos del fabricante. Al
comienzo se detectan los dispositivos conectados midiendo los niveles de voltaje de
las lneas. Si un dispositivo est conectado, entonces el dispositivo enva informacin
sobre el tipo o la clase a la que pertenece, qu modo de transferencia utilizar y cules
son sus necesidades de ancho de banda. El host reconocer el dispositivo buscando en
la lista de drivers del sistema operativo y teniendo en cuenta los dems dispositivos
-
8/3/2019 memoria_estacion_meteorologica
26/158
_____________________________________________________________________
Ingeniera Informtica 14 Universidad de Valencia
conectados le asignar un ancho de banda determinado. De la misma forma tambin
se pueden desconectar los dispositivos del sistema. El controlador USB del host
asigna un nmero diferente de dispositivo a cada uno de los perifricos que se
conectan a este bus. Para empezar la transferencia, ste enva un paquete que
identifica al dispositivo objeto de la transferencia. El protocolo soporta cuatro tipos de
transferencias:
Control. Son transferencias que se utilizan para leer informacin de los
descriptores en los registros de los dispositivos (llamados endpoints),
interpretarla y poder configurarlos.
Interrupcin. Usadas en los perifricos del tipo de los controladores de
juegos, teclados y ratones, cuya comunicacin es unidireccional y poco
frecuente.
Masiva. Son transferencias no peridicas que precisan de todo el ancho
de banda disponible. Utilizadas por las impresoras y los scanners.
Iscrona. Dedicadas a las transferencias de telecomunicaciones, como
voz o vdeo, que garantiza unas tasas de transferencia constantes. Se
caracterizan porque el nmero de pulsos de reloj que transcurren entre la
transmisin de dos caracteres es constante, por lo tanto, se est enviando
informacin constantemente entre el host y el dispositivo. [MBP01]
2.1.1.3. El estndar IEEE 1394 o FireWire.
Apple y Sony inventaron el FireWire a mediados de los 90 y lo desarrollaron
hasta convertirlo en el estndar multiplataforma IEEE 1394. FireWire es una
tecnologa para la entrada/salida de datos en serie a alta velocidad y la conexin de
dispositivos digitales como videocmaras o cmaras fotogrficas digitales que ha sido
ampliamente adoptado por fabricantes de perifricos digitales como Sony, Canon,
JVC y Kodak.
FireWire es uno de los estndares de perifricos ms rpidos que se han
desarrollado, caracterstica que lo hace ideal para su uso con perifricos del sectormultimedia (como cmaras de vdeo) y otros dispositivos de alta velocidad como, por
-
8/3/2019 memoria_estacion_meteorologica
27/158
_____________________________________________________________________
Ingeniera Informtica 15 Universidad de Valencia
ejemplo, lo ltimo en unidades de disco duro e impresoras. Se ha convertido en la
interfaz preferida de los sectores de audio y vdeo digital, ya que rene numerosas
ventajas, entre las que se encuentran la elevada velocidad, la flexibilidad de la
conexin y la capacidad de conectar un mximo de 63 dispositivos. Adems de
cmaras y equipo de vdeo digital, la amplia gama de productos FireWire comprende
reproductores de vdeo digital, sistemas domsticos para el ocio, sintetizadores de
msica, escneres y unidades de disco duro.
Con un ancho de banda 30 veces mayor que el conocido estndar de perifricos
USB 1.1, el FireWire 400 se ha convertido en el estndar ms respetado para la
transferencia de datos a alta velocidad. Apple fue el primer fabricante de ordenadores
que incluy FireWire en toda su gama de productos. Una vez ms, Apple ha vuelto a
subir las apuestas duplicando la velocidad de transferencia con su implementacin del
estndar IEEE 1394b o FireWire 800.
La velocidad sobresaliente del FireWire 800 frente al USB 2.0 convierte al
primero en un medio mucho ms adecuado para aplicaciones que necesitan mucho
ancho de banda, como las de grficos y vdeo, que a menudo consumen cientos o
incluso miles de megabytes de datos por archivo.
Algunas de las caractersticas ms importantes del FireWire son:
Flexibles opciones de conexin. Admite un mximo de 63 dispositivos
con cables de hasta 4,25 metros.
Distribucin en el momento. Fundamental para aplicaciones de audio y
vdeo, donde un fotograma que se retrasa o pierde la sincronizacin
arruina un trabajo.
Alimentacin por el bus. Mientras el USB 2.0 permite la alimentacin de
dispositivos sencillos que consumen un mximo de 2,5 W, como un ratn,
los dispositivos FireWire pueden proporcionar o consumir hasta 45 W,
ms que suficiente para discos duros de alto rendimiento y bateras de
carga rpida.
-
8/3/2019 memoria_estacion_meteorologica
28/158
_____________________________________________________________________
Ingeniera Informtica 16 Universidad de Valencia
Es conectable/desconectable en uso. Lo que significa que no se necesita
desactivar un dispositivo para conectarlo o desconectarlo y que no es
necesario reiniciar el ordenador.
Funciona tanto con Mac como con PC. Lo que garantiza la compatibilidadcon una larga lista de productos con FireWire a precios razonables. [App]
2.1.2. Interfaces paralelas.
Los ordenadores personales incorporan tradicionalmente un puerto paralelo
consistente en un conector DB25. Este tipo de interfaz se caracteriza porque se envan
simultneamente los bits de datos por medio de diferentes lneas. Desde siempre se ha
considerado la interfaz paralela como el puerto utilizado para conectar la impresora,
pero desde comienzos de la dcada de los noventa se viene utilizando con otros fines,
ya sea para comunicar diferentes sistemas informticos o bien para conectar
dispositivos de almacenamiento masivo. La clave para su expansin fue la utilizacin
de estndares que permitan la comunicacin bidireccional por las lneas de datos.
2.1.2.1. La interfaz Centronics.
Inicialmente se dise una interfaz con 36 pines, que utilizaba la casa Centronics
Data Computer Corporation en sus impresoras. Sin embargo, la interfaz Centronics de
los ordenadores personales actuales fue diseada por Epson Corporation.
La interfaz consta de 8 pines para datos ms 5 seales que controlan la impresoray cinco que vienen de la misma. Se utilizan voltajes TTL con seales no balanceadas,
por lo que son susceptibles de recibir ruido y producir errores. El bus soporta tasas de
transferencia de datos de hasta 100 Kbytes/s.
Actualmente se han diseado dos estndares que tratan de aumentar el ancho de
banda de la interfaz Centronics sin perder la compatibilidad con el mismo,
permitiendo adems la comunicacin bidireccional. Son las interfaces ECP (Extended
Capabilities Port) y EPP (Enhanced Capabilities Port) que se definen en el estndar
-
8/3/2019 memoria_estacion_meteorologica
29/158
_____________________________________________________________________
Ingeniera Informtica 17 Universidad de Valencia
del IEEE 1284. ECP se utiliza en las impresoras y escners, puesto que permite
mayores tasas de transferencia con protocolos sencillos, mientras que EPP sirve para
los dems dispositivos en donde se necesita un control de errores ms exhaustivo.
2.1.2.2. El estndar IEEE 1284.
Este nuevo estndar define 5 modos de transferencia de datos, desde el viejo
Centronics hasta dos mtodos que permiten la comunicacin bidireccional entre el
ordenador y el dispositivo. Debido a que los protocolos se implementan por hardware,
EPP y ECP permiten tasas de transferencia de datos mucho mayores, llegando incluso
al Megabyte por segundo. Los 5 modos de transferencia de datos que define el
estndar son: modo compatible, 4 bits, 8 bits (modo byte), ECP y EPP.
El estndar describe el formato de las seales, la asignacin de pines y los
mecanismos de deteccin y correccin de errores, sin embargo las funciones de la
BIOS, la interfaz software y el control de los puertos estn a cargo de los fabricantes.
El puerto paralelo se configura inicialmente en el modo compatible. Despus se
establece un dilogo con el perifrico para decidir el modo de funcionamiento final,
aunque debido a la facilidad con la que se puede cambiar el modo, es posible realizar
transferencias cambiando los modos de emisin y de recepcin de datos de forma
dinmica. Los modos byte, ECP y EPP son opcionales en el estndar.
2.1.2.3. Small Computer Systems Interface (SCSI).
La interfaz SCSI es una interfaz paralela, con 8, 16 o 32 lneas de datos, que se
utiliza para comunicar dispositivos rpidos, como discos CD-ROM, dispositivos de
audio y dispositivos de almacenamiento externo de datos. Normalmente se considera
a la configuracin SCSI como un bus (conexin multipunto), sin embargo, los
dispositivos estn conectados entre s formando una conexin daisy-chain. Cada
dispositivo tiene dos conectores, uno de entrada y otro de salida. El comienzo del bus
se conecta con el host y el ltimo dispositivo incorpora un terminado para evitar
-
8/3/2019 memoria_estacion_meteorologica
30/158
_____________________________________________________________________
Ingeniera Informtica 18 Universidad de Valencia
problemas de reflexiones de las seales. Los dispositivos funcionan de forma
independiente y pueden intercambiar datos tanto entre s como con el host.
Este bus puede soportar mltiples procesadores y mltiples dispositivos
perifricos. Soporta hasta 8 dispositivos, de los cuales cada uno puede tener 8
unidades lgicas, cada una de las cuales soporta 256 subunidades lgicas.
La especificacin original se llam SCSI-1 y usaba 8 lneas de datos a una
frecuencia de 5 MHz, permitiendo una transferencia de datos de 5 Mb/s. SCSI-1
soporta hasta 7 dispositivos que pueden ser encadenados al bus.
En 1991 surgi una extensin estndar, el SCSI-2, que incrementaba el nmero
de lneas de datos a 16 o 32 bits e incrementaba la frecuencia de reloj a 10 MHz. As
se logran tasas de transferencia mxima de hasta 40 Mbytes/s.
Las transferencias en el bus siempre tienen lugar entre un iniciador (dispositivo
que manda comandos) y un objetivo (dispositivo que ejecuta los comandos).
Normalmente el host es el iniciador y el controlador del dispositivo es el objetivo,
aunque puede haber algn dispositivo que sea ambas cosas a la vez. Las seales que
se transmiten por el bus pueden estar implementadas utilizando un solo cable cada
una y compartiendo una masa comn en el caso de unsingle-endedSCSI o utilizando
dos cables cada una en el caso del differential SCSI. El primero se utiliza para
distancias menores a 6 metros y el segundo para distancias menores a 25 metros. Los
conectores son de 50 pines. [MBP01]
2.1.3. Comunicacin inalmbrica. Bluetooth.
Bluetooth es la norma que define un estndar global de comunicacin
inalmbrica que posibilita la transmisin de voz y datos entre diferentes equipos
mediante un enlace por radiofrecuencia. Los principales objetivos que se pretende
conseguir con esta norma son:
-
8/3/2019 memoria_estacion_meteorologica
31/158
_____________________________________________________________________
Ingeniera Informtica 19 Universidad de Valencia
Facilitar las comunicaciones entre equipos mviles y fijos.
Eliminar cables y conectores entre stos.
Ofrecer la posibilidad de crear pequeas redes inalmbricas y facilitar la
sincronizacin de datos entre nuestros equipos personales. [Bol06]
La tecnologa Bluetooth comprende hardware, software y requerimientos de
interoperabilidad, por lo que para su desarrollo ha sido necesaria la participacin de
los principales fabricantes de los sectores de las telecomunicaciones y la informtica,
tales como: Ericsson, Nokia, Motorola, Toshiba, IBM e Intel, entre otros.
Posteriormente se han ido incorporando muchas ms compaas, y se prev que
prximamente lo hagan tambin empresas de sectores tan variados como
automatizacin industrial, maquinaria, ocio y entretenimiento, fabricantes de juguetes,
electrodomsticos, etc., con lo que en poco tiempo se nos presentar un panorama de
total conectividad de nuestros aparatos tanto en casa como en el trabajo.
Bluetooth proporciona una va de interconexin inalmbrica entre diversos
aparatos que tengan dentro de s esta tecnologa, como mviles, consolas, ordenadores
de mano, cmaras, ordenadores porttiles, impresoras o simplemente cualquier
dispositivo que un fabricante considere oportuno, usando siempre una conexin
segura de radio de muy corto alcance. El alcance que logran tener estos dispositivos
es de 10 metros para ahorrar energa ya que generalmente estos dispositivos utilizan
mayoritariamente bateras. Sin embargo, se puede llegar a un alcance de hasta 100
metros (similar a Wi-Fi) pero aumentando el consumo energtico considerablemente.
La especificacin de Bluetooth define un canal de comunicacin de mximo
720Kb/s (1 Mbps de capacidad bruta) con rango ptimo de 10 metros (opcionalmente
100 m con repetidores).
La frecuencia de radio con la que trabaja est en el rango de 2,4 a 2,48 GHz con
amplio espectro y saltos de frecuencia con posibilidad de transmitir en full duplex con
un mximo de 1600 saltos/seg. Los saltos de frecuencia se dan entre un total de 79
frecuencias con intervalos de 1 MHz; esto permite dar seguridad y robustez.
-
8/3/2019 memoria_estacion_meteorologica
32/158
_____________________________________________________________________
Ingeniera Informtica 20 Universidad de Valencia
La potencia de salida para transmitir a una distancia mxima de 10 metros es de 0
dBm (1 mW), mientras que la versin de largo alcance transmite entre 20 y 30 dBm
(entre 100 mW y 1 W).
El protocolo de banda base (canales simples por lnea) combina conmutacin de
circuitos y paquetes. Para asegurar que los paquetes no lleguen fuera de orden, los
slots pueden ser reservados por paquetes sncronos, un salto diferente de seal es
usado para cada paquete. Por otro lado, la conmutacin de circuitos puede ser
asncrona o sncrona. Tres canales de datos sncronos (voz), o un canal de datos
sncrono y uno asncrono, pueden ser soportados en un solo canal. Cada canal de voz
puede soportar una tasa de transferencia de 64 Kb/s en cada sentido, la cual es
suficientemente adecuada para la transmisin de voz. Un canal asncrono puede
transmitir como mucho 721 Kb/s en una direccin y 56 Kb/s en la direccin opuesta,
sin embargo, para una conexin asncrona es posible soportar 432,6 Kb/s en ambas
direcciones si el enlace es simtrico.
El hardware que compone el dispositivo Bluetooth esta compuesto por dos partes:
Un dispositivo de radio, encargado de modular y transmitir la seal.
Un controlador digital, compuesto por una CPU, por un procesador de
seales digitales (DSP - Digital Signal Processor) llamado Link
Controller (o controlador de enlace) y por los interfaces con el dispositivo
anfitrin.
El LC ( Link Controller) est encargado de hacer el procesamiento de la banda
base y del manejo de los protocolos ARQ y FEC de capa fsica. Adems, se encarga
de las funciones de transferencia (tanto asncrona como sncrona), codificacin de
audio y encriptacin de datos.
La CPU del dispositivo se encarga de atender las instrucciones relacionadas con
Bluetooth del dispositivo anfitrin, para as simplificar su operacin. Para ello, sobre
la CPU corre un software denominado Link Manager que tiene la funcin de
comunicarse con otros dispositivos por medio del protocolo LMP.
-
8/3/2019 memoria_estacion_meteorologica
33/158
_____________________________________________________________________
Ingeniera Informtica 21 Universidad de Valencia
2.2. Microcontroladores.Un controlador es un dispositivo que se emplea en el gobierno de uno o varios
procesos. Aunque el concepto de controlador ha continuado inalterable a travs del
tiempo, su implementacin fsica ha variado frecuentemente. Hace tres dcadas, los
controladores se construan exclusivamente con componentes de lgica discreta;
posteriormente se utilizaron los microprocesadores, que se rodeaban con chips de
memoria y E/S sobre una tarjeta de circuito impreso. En la actualidad, todos los
elementos del controlador se han podido incluir en un chip que recibe el nombre de
microcontrolador.
En definitiva, un microcontrolador es un circuito integrado programable que
contiene todos los componentes de un computador. Se utiliza para controlar el
funcionamiento de una tarea determinada y, debido a su reducida medida, suele ir
incorporado en el propio dispositivo que gobierna. Esta ltima caracterstica es la que
le confiere la denominacin de controlador incrustado (embedded controller).
El microcontrolador es un computador dedicado. En su memoria solamente reside
un programa destinado a gobernar una aplicacin determinada; sus lneas de
entrada/salida soportan la conexin de los sensores y actuadores del dispositivo a
controlar y todos los recursos complementarios disponibles tienen como nica
finalidad atender sus requerimientos. Una vez programado y configurado el
microcontrolador solamente sirve para gobernar la tarea asignada.
Un microcontrolador posee todos los componentes de un computador pero con
unas caractersticas fijas que no pueden alterarse. Todos disponen de los bloques
esenciales: procesador, memoria de datos y de instrucciones, mdulos de E/S,
oscilador de reloj y mdulos controladores de perifricos. Adems de estos elementos,
existen una serie de recursos especiales que los fabricantes pueden ofertar, algunos
amplan las capacidades de las memorias, otros incorporan nuevo recursos y hay
quienes reducen las prestaciones al mnimo para aplicaciones muy simples. Depende
del programador el encontrar el modelo mnimo que se ajuste a sus requerimientos y
-
8/3/2019 memoria_estacion_meteorologica
34/158
_____________________________________________________________________
Ingeniera Informtica 22 Universidad de Valencia
as minimizar el coste, el hardware y el software. Algunos de los principales recursos
especficos que incorporan los microcontroladores son:
Temporizadores (Timers
).
Perro guardin (Watchdog).
Proteccin frente a fallo de alimentacin (Brown-out).
Estado de bajo consumo.
Conversores AD y DA.
Modulador de anchura de pulsos PWM.
Comparadores analgicos.
Puertos de E/S digital. Puertos de comunicacin: serie, CAN, USB, I2C,
Los microcontroladores pueden clasificarse segn su arquitectura, que puede ser
Von Neumann o Harvard. La arquitectura Von Neumann se caracteriza por
disponer de una sola memoria principal donde se almacenan datos e instrucciones de
forma indistinta. A dicha memoria se accede a travs de un sistema de buses nico.
Hay aspectos positivos en esta configuracin como los accesos a tablas almacenadas
en memoria ROM y un set de instrucciones ms ortogonal. El bus de direcciones es
usado para identificar qu posicin de memoria esta siendo accedida, mientras que el
bus de datos es utilizado para trasladar informacin entre la CPU y alguna direccin
de memoria o viceversa. Con un nico sistema de buses, la arquitectura Von
Neumann es usada secuencialmente para acceder a instrucciones de la memoria de
programa y ejecutarlas regresando desde/hacia la memoria de datos. Esto significa
que el ciclo de instruccin no puede solaparse con ningn acceso a la memoria de
datos.
Una desventaja de esta arquitectura podra ser que el contador de programa o
algn otro registro se corrompieran y apuntaran a la memoria de datos y se tomara
sta momentneamente como memoria de programa. Consecuentemente se ejecutara
una instruccin no deseada o un error en la decodificacin de la instruccin.
-
8/3/2019 memoria_estacion_meteorologica
35/158
_____________________________________________________________________
Ingeniera Informtica 23 Universidad de Valencia
La Arquitectura Harvard se caracteriza por disponer de dos memorias
independientes, una que contiene slo instrucciones y otra con slo datos. Ambas
disponen de sus respectivos sistemas de buses de acceso y es posible realizar
operaciones de acceso (lectura o escritura) simultneamente en ambas memorias. Una
de las ventajas de esta arquitectura es que la operacin del microcontrolador puede ser
controlada ms fcilmente si se presentara una anomala en el contador de programa.
Existe otra arquitectura que permite accesos a tablas de datos desde la memoria de
programa. Esta arquitectura es la llamada arquitectura Harvard modificada.
Esta ltima arquitectura es la dominante en los microcontroladores actuales ya
que la memoria de programa es usualmente ROM, OTP, EPROM o FLASH mientras
que la memoria de datos es usualmente RAM. Consecuentemente, las tablas de datos
pueden estar en la memoria de programa sin que sean perdidas cada vez que el
sistema es apagado. Otra ventaja importante en la arquitectura Harvard modificada es
que las transferencias de datos pueden ser solapadas con los ciclos de decodificacin
de instrucciones. Esto quiere decir que la siguiente instruccin puede ser cargada de la
memoria de programa mientras se est ejecutando una instruccin que accede a la
memoria de datos. La desventaja de la arquitectura Harvard modificada podra ser que
se requieren instrucciones especiales para acceder a valores en memoria RAM y ROM
haciendo la programacin un poco complicada.
Segn [Per05] las principales ventajas que se pueden encontrar en el uso de
microcontroladores son:
Gestin eficiente de procesos.
Aumento de la fiabilidad.
Reduccin del tamao, consumo y coste.
Mayor flexibilidad (nicamente se requiere la reprogramacin).
Existe una gran diversidad de microcontroladores. Quiz la clasificacin ms
importante sea entre microcontroladores de 4, 8, 16 o 32 bits. Aunque las prestaciones
de los microcontroladores de 16 y 32 bits son superiores a los de 4 y 8 bits, la realidad
es que los microcontroladores de 8 bits dominan el mercado y los de 4 bits se resisten
-
8/3/2019 memoria_estacion_meteorologica
36/158
_____________________________________________________________________
Ingeniera Informtica 24 Universidad de Valencia
a desaparecer. La razn de esta tendencia es que los microcontroladores de 4 y 8 bits
son apropiados para la gran mayora de las aplicaciones, lo que hace innecesario
emplear microcontroladores ms potentes y consecuentemente ms caros.
En cuanto a las tcnicas de fabricacin, cabe decir que prcticamente la totalidad
de los microcontroladores actuales se fabrican con tecnologa CMOS 4
(Complementary Metal Oxide Semiconductor). Esta tecnologa supera a las tcnicas
anteriores por su bajo consumo y alta inmunidad al ruido.
El nmero de productos que funcionan en base a uno o varios microcontroladores
aumenta de forma exponencial. La industria informtica acapara gran parte de los
microcontroladores que se fabrican. Casi todos los perifricos del computador, desde
el ratn o el teclado hasta la impresora, son regulados por el programa de un
microcontrolador.
Los electrodomsticos (desde hornos y lavadoras hasta televisores y vdeos)
incorporan tambin numerosos microcontroladores e, igualmente, los sistemas de
supervisin, vigilancia y alarma en los edificios, utilizan estos chips para optimizar el
rendimiento de los ascensores, calefaccin, aire acondicionado, etc.
Las comunicaciones y sus sistemas de transferencia de informacin utilizan
profusamente estos pequeos computadores, incorporndolos en los grandes
automatismos y en los telfonos mviles.
La instrumentacin y la electromedicina son dos campos idneos para la
implantacin de estos circuitos integrados. Finalmente, una importante industria
consumidora de microcontroladores es la de la automocin, que los aplica en el
control de la climatizacin, la seguridad y los frenos ABS. En la siguiente figura se
puede ver la utilizacin de los microcontroladores en distintos sectores de consumo.
-
8/3/2019 memoria_estacion_meteorologica
37/158
_____________________________________________________________________
Ingeniera Informtica 25 Universidad de Valencia
33%
25%
16%
16%
10%
PerifricosElectrodomsticos
Comunicacin
Industria
Automocin
Figura 2.3: Utilizacin de microcontroladores por sectores
Algunos de los principales fabricantes de microcontroladores son Microchip,
Motorota, Intel, Atmel, Siemens, Philips, Hitachi o Nacional Semiconductor, entre
otros. De entre todos los fabricantes expuestos, Microchip es el que ms diversidad
posee, cuenta actualmente con 159 microcontroladores distintos adems de todas sus
versiones segn encapsulado.
A continuacin se exponen algunos de los microcontroladores ms populares:
8048 (Intel). Es el padre de los microcontroladores actuales, el primero de
todos. Su precio, disponibilidad y herramientas de desarrollo hacen que
todava sea muy utilizado.
8051 (Intel y otros). Es sin duda el microcontrolador ms popular. Fcil
de programar pero potente. Est bien documentado y posee cientos de
variantes e incontables herramientas de desarrollo.
80186, 80188 y 80386 EX (Intel). Versiones en microcontrolador de los
microprocesadores 8086 y 8088. Su principal ventaja es que permiten
aprovechar las herramientas de desarrollo para PC.
68HC11 (Motorola y Toshiba). Es un microcontrolador de 8 bits potente y
con gran cantidad de variantes.
-
8/3/2019 memoria_estacion_meteorologica
38/158
_____________________________________________________________________
Ingeniera Informtica 26 Universidad de Valencia
683xx (Motorola). Surgido a partir de la familia 68k, a la que se
incorporan algunos perifricos. Son microcontroladores de altsimas
prestaciones.
PIC (Microchip). Familia de microcontroladores que gana popularidad daa da. Fueron los primeros microcontroladores RISC.
Es preciso resaltar en este punto que existen innumerables familias de
microcontroladores, cada una de las cuales posee un gran nmero de variantes.
2.3. Sistemas de adquisicin de datos mediante sensores.
Adquirir datos es el proceso de medir los parmetros fsicos que los sensores
transforman en seales elctricas e introducirlos en el sistema. Mientras se adquiere,
se producen procesos que involucran esos datos adquiridos: alarmas, escalado de
datos, a veces control, guardar los datos, etc. Posteriormente a la adquisicin de datos
se realizan anlisis para extraer informacin til a partir de la cual se reportan los
datos, se visualizan resultados y se comparte la informacin. Estas fases representan
la funcionalidad de los sistemas modernos de adquisicin de datos basada en PC.
La funcin de adquisicin es una de las componentes ms crticas. En un sistema
basado en PC la adquisicin se realiza mediante un hardware especializado de
medicin que puede desglosarse en sensores, conectividad de la seal o de los
sensores, acondicionamiento de la seal, y conversin analgica-digital.
Una amplia variedad de sensores se usan para convertir magnitudes fsicas en
seales elctricas. Los hay de todos los tipos: de temperatura como termopares y
termistores, transductores de presin, galgas extensiomtricas y acelermetros,
Despus de instalar los sensores, hay que conectarlos al sistema de adquisicin.
La conectividad de la seal describe los componentes del hardware con los cuales se
conectan los sensores al equipo. Hay muchos tipos de conectores y es un factor a
decidir a la hora de configurar el equipo.
-
8/3/2019 memoria_estacion_meteorologica
39/158
_____________________________________________________________________
Ingeniera Informtica 27 Universidad de Valencia
El acondicionamiento de la seal es uno de los componentes ms importantes de
un equipo de adquisicin basado en PC. Muchas seales requieren algn tipo de
preparacin antes de ser digitalizadas. Por ejemplo, los termopares producen seales
de muy bajo nivel que requieren amplificacin, filtrado y linealizacin. Otros
sensores, como termistores, galgas y acelermetros, requieren alimentacin adems de
amplificacin y filtrado, mientras que otras seales pueden requerir aislamiento para
proteger el sistema de alto voltaje. Idealmente un equipo debera permitir todo tipo de
acondicionamiento incluido la combinacin de algunos procesos, si bien ste ha de
adaptarse a las posibles necesidades del usuario.
Despus de que los parmetros fsicos se han convertido en seales elctricas y se
acondicionan correctamente, las seales elctricas analgicas se convierten en valores
digitales y se pasan estos valores al computador. La conversin analgica-digital se
realiza a travs de una tarjeta de adquisicin de datos o en un sistema integrado con
acondicionamiento y conectividad.
La combinacin de sensores, conectividad de la seal, acondicionamiento y
conversin analgica-digital constituye el hardware de medicin de un equipo de
adquisicin basado en PC. Este hardware se configura y se controla a travs de
software construyendo aplicaciones a la medida de la aplicacin deseada.
-
8/3/2019 memoria_estacion_meteorologica
40/158
_____________________________________________________________________
Ingeniera Informtica 28 Universidad de Valencia
-
8/3/2019 memoria_estacion_meteorologica
41/158
_____________________________________________________________________
Ingeniera Informtica 29 Universidad de Valencia
3. Metodologa y materiales.
3.1. Metodologa.
En el diseo de sistemas se suelen seguir una serie de pasos que van desde la
especificacin de requisitos hasta la comercializacin del producto final. El presente
proyecto tiene como objetivo final la construccin de un prototipo, por lo que el ciclo
de diseo no abarcar hasta la fase final de fabricacin en serie del producto y
posterior comercializacin. Este ciclo de diseo se ha adaptado a las caractersticas
del proyecto y constar de las fases de especificacin de requisitos, establecimiento de
la arquitectura del sistema, desarrollo del hardware y software, test y debug y, por
ltimo, diseo y fabricacin del PCB. A continuacin se detallan las fases:
Especificacin de requisitos. En esta fase se establecen los requisitos que
se quiere que cumpla el producto a desarrollar. As pues, se tendrn que
especificar parmetros tales como el coste mximo, el rendimiento
mnimo, las ampliaciones futuras, el consumo de energa, tamao o peso.
Establecimiento de la arquitectura del sistema teniendo en cuenta que
lo ms importante es el micro. Tambin se habr de tener en cuenta el
subsistema de E/S, estableciendo que tipo de enlace se utilizar en la
comunicacin del perifrico con el ordenador.
-
8/3/2019 memoria_estacion_meteorologica
42/158
_____________________________________________________________________
Ingeniera Informtica 30 Universidad de Valencia
Desarrollo del hardware y software. Una vez se tiene claro lo que se
quiere hacer, es el momento de empezar a desarrollarlo y para ello, en
primer lugar, se hace una seleccin de los componentes a utilizar en la
placa, realizando tambin el esquema de la circuitera. Hay que tener en
cuenta que en el ciclo de diseo hardware se pueden dar situaciones de
diseo-prototipo-testeo-vuelta atrs, con el consiguiente encarecimiento
del producto final. Por esta razn, se deja la fase de diseo y fabricacin
del PCB para el final, desarrollando antes una primera placa de prueba
que servir para verificar en la siguiente fase de testeo tanto el correcto
diseo de la circuitera como el firmware del micro y la aplicacin
software desarrollados en la fase actual.
Test y debug. Una vez acabado el desarrollo del hardware, firmware y
software se procede a comprobar su correcto funcionamiento. Para probar
el firmware, se podra realizar una simulacin desde la herramienta de
desarrollo utilizada, pero el gran inconveniente que presentan estos
simuladores es que es difcil simular la entrada y salida de datos del
microcontrolador y los posibles ruidos en las entradas. Este mismo
problema de simulacin de las entradas se puede encontrar tambin en la
aplicacin software desarrollada. Por esta razn, debido a que se trabaja
con datos que pasan los sensores al micro y este los pasa a travs del USB
a la aplicacin, se opt, como se ha dicho anteriormente, por realizar el
testeo utilizando una primera versin de prueba de la placa (desarrollada
en la fase anterior) antes de la fabricacin del PCB.
Diseo y fabricacin del PCB. Por ltimo, una vez se ha comprobado el
correcto funcionamiento de la placa de prueba, se realiza el diseo del
circuito impreso y se envan estos ficheros de diseo a un fabricante
especializado. Una vez recibido el PCB se realiza una comprobacin
elctrica para detectar posibles defectos de fabricacin. Despus del testeo
se montarn los componentes manualmente y se realizar una nueva
comprobacin para verificar que el montaje se ha realizado
correctamente.
-
8/3/2019 memoria_estacion_meteorologica
43/158
_____________________________________________________________________
Ingeniera Informtica 31 Universidad de Valencia
Testeo y experimentacin. Con el prototipo listo se realizarn
experimentaciones para validarlo y comprobar que todo funciona
correctamente.
3.2. Material utilizado.
3.2.1. Software.
Las herramientas software utilizadas en el desarrollo del proyecto son cinco: el
paquete Orcad 9.2, el compilador de C para PICs PCWH versin 3.235 de CCS, el
programa EduMic versin 2.0, Microsoft Windows Server 2003 SP1 Driver
Development Kit (DDK) y el Visual C# 2005 Express Edition. A continuacin se har
una descripcin de cada una de estas herramientas indicando su utilidad y sus
principales caractersticas.
Orcad
El paquete Orcad, entre otras muchas funcionalidades, permite el diseo de PCBs
multicapa de forma sencilla y rpida. Consta del Orcad Capture, con el que se
realizan los esquemas del circuito, y del Orcad Layout, con el que se realiza el
diseo del PCB.
El Orcad Capture permite la gestin de proyectos de forma jerrquica y la
divisin de grandes diseos en otros ms pequeos. Por medio del Orcad Capture se
realiza el esquema del circuito incluyendo sus componentes. Aunque posee gran
cantidad de libreras de componentes, permite la creacin de libreras propias y el
diseo de componentes especficos.
Una vez realizado el esquema del diseo se utilizar el Orcad Layout para
realizar el diseo del PCB. Para mayor facilidad permite la posibilidad de realizar un
rutado automtico de las pistas del diseo as como diferentes opciones de rutado paraminimizar los costes de implementacin.
-
8/3/2019 memoria_estacion_meteorologica
44/158
_____________________________________________________________________
Ingeniera Informtica 32 Universidad de Valencia
Compilador CCS
Este compilador de lenguaje C ha sido desarrollado por CCS Inc. para resolver
las caractersticas especficas de los microcontroladores PIC. Es una herramienta de
desarrollo importante que permite disminuir el tiempo de desarrollo de los proyectos
ya que este software cuenta con libreras con mtodos para funciones especficas del
PIC (conversin A/D, entrada y salida, configuracin de timers, etc.) y el software IC-
Prog para la programacin del PIC.
Incluye tambin el cdigo fuente de numerosos programas de ejemplo para
mdulos LCD, teclados, conversores A/D, etc. Este software puede ser integrado con
MPLAB y usa 1, 8, 16 y 32 bits de tipo entero y 32 bits de tipo flotante. El cdigo
ensamblador puede ser insertado en cualquier parte y puede referenciar a variables C.
Adems incluye una funcin que permite desplegar informacin formateada en HEX
o en decimal. [CCS]
EduMic
El programa EduMic se encarga de descargar sobre el microcontrolador PIC de la
tarjeta el fichero HEX generado por la herramienta de compilacin que se utilice. El
software soporta la mayora de microcontroladores PIC de la familia 16 que soporten
ICSP y la versin 2.0 permite adems grabar varios de los dispositivos de la familia
18, incluyendo todos los que tienen USB.
Algunas de sus caractersticas ms importantes son:
Soporta casi todos los sistemas operativos (todos los MS Windows y
Linux).
El software es de libre distribucin.
Admite la especificacin en el fichero binario HEX tanto de la memoria
de programa como de la memoria de datos (EEPROM), as como la
palabra de configuracin y el identificador.
-
8/3/2019 memoria_estacion_meteorologica
45/158
_____________________________________________________________________
Ingeniera Informtica 33 Universidad de Valencia
La palabra de configuracin se puede establecer en el propio programa
seleccionando en las opciones que se deseen.
Admite la especificacin de un identificador para el microcontrolador
PIC. El programa sirve tanto para escribir el microcontrolador PIC como para
leerlo.
Se permite la edicin de los datos (programa y EEPROM) antes de
enviarlo al microcontrolador PIC.
Tiene la caracterstica de poder desproteger los microcontroladores PIC
protegidos contra lectura/escritura si son de tipo Flash. Una vez
desprotegido el microcontrolador pierde toda su informacin pero puede
ser reutilizado.
Dispone de un fichero de configuracin para poder incorporar nuevos
microcontroladores PIC y funcionalidades segn vayan apareciendo, sin
necesidad de descargar nuevas versiones del software. El propio usuario
puede modificar este fichero de forma sencilla. [Edu]
Windows Driver Development Kit (DDK)
DDK es una herramienta de desarrollo de drivers consolidada que proporciona un
entorno de desarrollo, herramientas, ejemplos y documentacin que permiten el
desarrollo de drivers para la familia de sistemas operativos de Windows. En concreto,
la versin utilizada, Windows Server 2003 SP1 DDK, permite la creacin de drivers
para los sistemas operativos Windows Server 2003, Windows XP y Windows 2000.
Esta versin contiene adems una herramienta (PREfast) que detecta ciertas
clases de errores que no son fcilmente detectados por los compiladores comunes.
[DDK]
-
8/3/2019 memoria_estacion_meteorologica
46/158
_____________________________________________________________________
Ingeniera Informtica 34 Universidad de Valencia
Visual C#
Visual C# .NET es un lenguaje de programacin seguro y orientado a objetos,
que combina la potencia de Visual C y Visual C++ con la sencillez funcional de las
herramientas de desarrollo de aplicaciones modernas y rpidas, permitiendo
desarrollar software .NET para Microsoft Windows, la web y un gran rango de
dispositivos. Posee una sintaxis que se asemeja a C++, un entorno de desarrollo
flexible (IDE) y ofrece la posibilidad de desarrollar soluciones para una gran gama de
plataformas y dispositivos. [Mic]
3.2.2. Hardware.El hardware necesario para la realizacin del proyecto consiste por una parte, en
la plataforma hardware sobre la que utilizar el software de desarrollo, por otra, en los
elementos necesarios para el montaje de los componentes y testeo de la placa y, por
ltimo, en la tarjeta EduMic.
La plataforma utilizada para el software de desarrollo es un PC con procesador
Intel Pentium M a 1 GHz y con memoria RAM de 1 GB. El sistema operativo es el
Windows XP Profesional.
En cuanto al material para el montaje de los componentes sobre la placa se
utilizar un soldador de montaje superficial y para el testeo de la misma ser necesario
utilizar un multmetro.
La tarjeta Edumic ser necesaria para programar el microcontrolador PIC. Esta
tarjeta permite la programacin de la mayora de micros PIC de la familia 16 y 18 que
soporten ICSP (casi todos). La programacin se hace a travs del puerto paralelo.
-
8/3/2019 memoria_estacion_meteorologica
47/158
_____________________________________________________________________
Ingeniera Informtica 35 Universidad de Valencia
4. Anlisis de alternativas.En este captulo se realizar la especificacin de los requisitos que debe cumplir
el proyecto para, posteriormente y basndose en ellos, analizar distintas alternativas a
tener en cuenta en el desarrollo del proyecto, tanto desde el punto de vista del
hardware (tipo de microcontrolador o de bus) como del software (lenguaje de
programacin o herramienta de desarrollo), y seleccionar la opcin ms ptima para
la consecucin de los objetivos.
4.1. Requisitos.Los requisitos a nivel de usuario que ha de cumplir el proyecto se pueden dividir
en tres grupos: requisitos del perifrico, requisitos de la aplicacin software y
requisitos generales del proyecto.
El perifrico debe ser manejable y tener un tamao lo ms pequeo posible. Se
pide tambin que la alimentacin sea a travs del bus de interconexin con el
ordenador, de manera que al no tener fuente de alimentacin propia, el nmero de
componentes de la placa es menor y por lo tanto esto influye en su tamao y coste.
Respecto a la aplicacin software, esta debe ser intuitiva y fcil de usar, con un
nmero de opciones por ventana limitado con el objetivo de no inundar de
-
8/3/2019 memoria_estacion_meteorologica
48/158
_____________________________________________________________________
Ingeniera Informtica 36 Universidad de Valencia
informacin al usuario. Con esta finalidad, se escribir un manual de usuario del
programa para as facilitar su introduccin y manejo. Este manual se adjunta con la
presente memoria (ver apndice D).
Un requisito general del proyecto es la fcil instalacin tanto del perifrico como
de la aplicacin (esto tambin se incluye en el manual de usuario mencionado
anteriormente) y la posibilidad de que sea soportado por varios sistemas operativos.
Por otra parte, se quiere que sea posible realizar ampliaciones futuras, pudiendo
aadir ms sensores en la placa y, por lo tanto, nuevas funcionalidades en la
aplicacin. Por ltimo, todo lo mencionado anteriormente se quiere conseguir con el
mnimo coste posible.
4.2. Evaluacin de alternativas.Una vez establecidos los requisitos que debe cumplir el proyecto, se pasa a
analizar las distintas opciones que se nos plantean, indicando los pros y los contras de
cada una de ellas.
4.2.1. Interconexin entre el perifrico y el ordenador.
El tipo de enlace utilizado en la interconexin del dispositivo con el ordenador es
una de las decisiones que hay que tomar ms importantes, ya que de ella dependern
otras decisiones tambin importantes como el tipo de microcontrolador utilizado,
debido a que dependiendo del tipo de bus que se utilice para comunicar al perifricocon el ordenador, se elegir un micro que disponga de puertos que soporten ese tipo
de comunicacin.
Otro aspecto en el que influye tambin esta decisin es en el diseo del perifrico
ya que segn el enlace que se utilice, se usarn unos componentes u otros, influyendo
esto tanto en el tamao como en el coste de la placa.
-
8/3/2019 memoria_estacion_meteorologica
49/158
_____________________________________________________________________
Ingeniera Informtica 37 Universidad de Valencia
De los distintos tipos de interconexin descritos anteriormente en la seccin 2.1.
se har especial hincapi en FireWire y USB, ya que estos tipos de enlace son dos de
los ms utilizados actualmente en el desarrollo de perifricos y adems ambos
permiten la alimentacin a travs del bus (uno de los requisitos mencionados en la
seccin 4.1.), presentando velocidades de transferencia de datos muy superiores a las
interfaces paralelas y a la interfaz serie RS-232. Otro tipo de comunicacin muy
utilizado actualmente es mediante Bluetooth pero este tampoco se tendr en cuenta ya
que generalmente estos dispositivos utilizan mayoritariamente bateras.
USB vs. FireWire
En el captulo 2 ya se habl sobre estas dos tecnologas, indicando cules eran sus
principales caractersticas, ventajas y desventajas. Por esta razn, este apartado se
centrar, basndose en lo descrito anteriormente, en realizar una comparacin entre
ambos tipos de enlace.
Tanto FireWire como USB son tecnologas que persiguen un nuevo mtodo de
conectar mltiples perifricos a un ordenador, permitiendo que estos sean aadidos o
desconectados sin la necesidad de reiniciar. Ambos usan cables ligeros y flexibles con
conectores duraderos, pero aqu terminan los parecidos. Aunque los cables de
FireWire y USB pueden parecer a la vista los mismo, la cantidad de datos que por
ellos transcurre es bastante diferente. Como muestra la siguiente tabla, la velocidad y
la capacidad de transferencia marcan la principal distincin entre estas dos
tecnologas:
FireWire USB
Nmero mximo de dispositivos 63 127
Cambio en caliente (agregar oquitar dispositivos sin tener quereiniciar el ordenador)
S S
Velocidad de transferencia dedatos
200 Mbps400 Mbps800 Mbps
1,5 Mbps12 Mbps480 Mbps
Conexin de perifricos interna S No
Tabla 4.1: Comparacin entre FireWire y USB
-
8/3/2019 memoria_estacion_meteorologica
50/158
_____________________________________________________________________
Ingeniera Informtica 38 Universidad de Valencia
Como puede verse, FireWire ofrece velocidades de transferencia de datos
superiores a las ofrecidas por USB pero esto no significa que FireWire gane la
"guerra" de interfaces. Los conectores FireWire y USB pueden coexistir
pacficamente. USB 1.0 queda reservado para perifricos con un pequeo ancho de
banda (ratones, teclados, mdems, etc.), mientras que FireWire, gracias a su mayor
ancho de banda, es ms adecuado para aplicaciones de vdeo digital (DV), audio
profesional, cmaras fotogrficas digitales de alto nivel y aparatos de ocio
domsticos.
4.2.2. Microcontrolador.
Antes de seleccionar un microcontrolador es imprescindible analizar los
requisitos de la aplicacin que se quiere desarrollar. A continuacin se indican
algunos de los aspectos que normalmente hay que tener en cuenta a la hora de realizar
la eleccin:
Procesamiento de datos: puede ser necesario que el microcontrolador
realice clculos crticos en un tiempo limitado. En ese caso debemos
asegurarnos de seleccionar un dispositivo suficientemente rpido para
ello. Por otro lado, habr que tener en cuenta la precisin de los datos a
manejar: si no es suficiente con un microcontrolador de 8 bits, puede ser
necesario acudir a microcontroladores de 16 o 32 bits, o incluso a
hardware de coma flotante.
Entrada/Salida: para determinar las necesidades de Entrada/Salida del
sistema es conveniente conocer el diagrama de bloques del mismo, de tal
forma, que sea sencillo identificar la cantidad y tipo de seales a
controlar. Una vez realizado este anlisis puede ser necesario aadir
perifricos externos o cambiar a otro microcontrolador ms adecuado a
ese sistema.
Consumo: algunos productos que incorporan microcontroladores estn
alimentados con bateras. Lo ms conveniente en un caso como ste
puede ser que el microcontrolador est en estado de bajo consumo pero
-
8/3/2019 memoria_estacion_meteorologica
51/158
_____________________________________________________________________
Ingeniera Informtica 39 Universidad de Valencia
que despierte ante la activacin de una seal (una interrupcin) y ejecute
el programa adecuado para procesarla.
Memoria: en cuanto a la cantidad de memoria necesaria se debe hacer
una estimacin de cunta memoria voltil y no voltil es necesaria y si es
conveniente disponer de memoria no voltil modificable.
Ancho de palabra: el criterio de diseo debe ser seleccionar el
microcontrolador de menor ancho de palabra que satisfaga los
requerimientos de la aplicacin. Usar un microcontrolador de 4 bits
supondr una reduccin en los costes importante, mientras que uno de 8
bits puede ser el ms adecuado si el ancho de los datos es de un byte. Los
microcontroladores de 16 y 32 bits, debido a su elevado coste, deben
reservarse para aplicaciones que requieran altas prestaciones.
Diseo de la placa: la seleccin de un microcontrolador concreto
condicionar el diseo de la placa. Deber tenerse en cuenta el
encapsulado del mismo.
Adems de todo lo mencionado tambin es importante tener en cuenta la
documentacin y herramientas de desarrollo disponibles para cada microcontrolador.
Segn volumen de ventas y diversidad de modelos se puede establecer como
principales fabricantes a los siguientes:
Microchip Technology Corp.
STMicroelectronics
Atmel Corp.
Motorola Semiconductors Corp.
De todos los fabricantes expuestos, Microchip es el que ms diversidad posee,
cuenta actualmente con 159 microcontroladores distintos adems de todas sus
versiones segn encapsulado.
-
8/3/2019 memoria_estacion_meteorologica
52/158
_____________________________________________________________________
Ingeniera Informtica 40 Universidad de Valencia
4.2.3. Lenguajes y herramientas de desarrollo de aplicaciones.
Existe gran diversidad de lenguajes de programacin convenientes para
desarrollar aplicaciones software que funcionen bajo Windows.
Tanto C como C++ son lenguajes de programacin de propsito general. Todo
puede programarse con ellos, desde sistemas operativos y compiladores hasta
aplicaciones de bases de datos y procesadores de texto, pasando por juegos,
aplicaciones a medida, etc.
Para un desarrollo ms fcil de aplicaciones Windows aparecieron herramientasde desarrollo visual, cuyos exponentes ms conocidos son Borland Delphi, de Inprise,
y Visual Basic, de Microsoft. La escritura de aplicaciones con herramientas de este
tipo se basa en el uso de componentes o controles prefabricados. As, la creacin de la
interfaz de usuario deja de ser un trabajo tedioso y el programador puede centrarse en
el ncleo del programa. Estos entornos de desarrollo visual tambin facilitan
operaciones habituales en Windows, como la comunicacin con otras aplicaciones, el
uso de cuadros de dilogo comunes, la gestin de bases de datos, etc. Cada elemento
de un programa, sea visual o no, viene representado por un componente. Algunas de
estas herramientas de desarrollo visual se describen a continuacin.
Visual Basic
Visual Basic es una herramienta de diseo de aplicaciones para Windows en la
que estas se desarrollan en una gran parte a partir del diseo de una interfaz grfica.
En una aplicacin Visual Basic, el programa est formado por una parte de cdigo
puro y otras partes asociadas a los objetos que forman la interfaz grfica. Es por tanto,
un trmino medio entre la programacin tradicional, formada por una sucesin lineal
de cdigo estructurado, y la programacin orientada a objetos. Combina ambas
tendencias.
Desde su salida al mercado, cada versin supera y mejora la anterior. Dados los
buenos resultados a nivel profesional de este producto y el apoyo prestado por el
-
8/3/2019 memoria_estacion_meteorologica
53/158
_____________________________________________________________________
Ingeniera Informtica 41 Universidad de Valencia
fabricante para la formacin de programadores, Visual Basic se ha convertido en la
primera herramienta de desarrollo de aplicaciones en entorno Windows.
El lenguaje base del Visual Basic es el BASIC, de gran simplicidad e ideal para
el programador novel. Conserva de l su sencillez de manejo, pero si lo que se quiere
es llegar al fondo de la mquina y controlar uno a uno sus registros, ser necesario
utilizar otro lenguaje que permita bajar el nivel de programacin (Visual C, Visual
C++, etc.) o utilizar libreras (DLLs) que lo hagan. [Mic]
Visual C++
Es la herramienta preferida por los profesionales de las aplicaciones Windows. Es
el compilador ms vendido del mercado y ofrece casi todo lo que se necesita. Le falta
soporte CORBA y le sobran requerimientos de hardware. Aconsejable para
desarrollar aplicaciones MFC.
Visual C++ .NET proporciona a los programadores numerosas caractersticas de
nivel profesional y les permite crear aplicaciones y componentes para Windows
extremadamente eficaces. De principio a fin, la herramienta ofrece caractersticas que
ayudan a optimizar el proceso de programacin de software con C++.
Los asistentes para aplicaciones proporcionan plantillas eficaces para iniciar
proyectos con rapidez. Las bibliotecas de marcos de aplicacin MFC y ATL que se
incluyen, son las ms eficaces, productivas y populares disponibles para la
programacin de apl