revista elektor 320

76
Smartcard lectura y programación Smartcard lectura y programación ¡PUNTAS CALIENTES! 14 estaciones de soldadura comparadas ¡PUNTAS CALIENTES! 14 estaciones de soldadura comparadas CD-ROM del mes a la reproducción, duplicación, o alquiler de pa xpresa autorización de los propietarios del copyright. D.L.: G U.3 - 1 9 8 0 Herramient de Desarro Herramient de Desarro Microcontroladores Microcontroladores Con la colaboración de Lápiz USB para microcontroladores Lápiz USB para microcontroladores El R8C con Multi-Funcionalidades El R8C con Multi-Funcionalidades Bloque Electrónico de VB a USB Bloque Electrónico de VB a USB

Upload: ajmendoza

Post on 26-Nov-2015

646 views

Category:

Documents


95 download

TRANSCRIPT

• Smartcard lectura y programación• Smartcard lectura y programación

¡PUNTAS CALIENTES!14 estaciones de soldadura comparadas

¡PUNTAS CALIENTES!14 estaciones de soldadura comparadas

CD-ROM del mes

a la reproducción, duplicación, o alquiler de paxpresa autorización de l

os pr

opiet

arios

del

copy

right

. D.

L.: G

U.3-

1980

Herramientde DesarroHerramientde Desarro

MicrocontroladoresMicrocontroladores

Con la colaboración de

Lápiz USB para microcontroladoresLápiz USB para microcontroladores

• El R8C con Multi-Funcionalidades• El R8C con Multi-Funcionalidades

• Bloque Electrónico de VB a USB• Bloque Electrónico de VB a USB

Nº 320ENERO 2007

RedacciónVIDELEC, S.L.

DirecciónEduardo CorralColaboradoresJose Mª Villoch, Pablo de la Muñoza, Andrés Ferrer,José Muñoz Carmona

PublicidadJefe de grupo dpto comercialJavier Menendez Jefe de publicidadIsidro IglesiasValportillo primera nº11 28108 Alcobendas (Madrid)Tel.: +34 91 141 69 16 - Fax: +34 91 661 47 54email: [email protected]

Delegación CataluñaAD PRESS, S.L. Director:Isidro Á. IglesiasPublicidad:Annie CabarubiasComte d’Urgell, 165-167, B-1º-3ª 08036 BarcelonaTel.: +34 93 451 89 07 - Fax: +34 93 451 83 23email: [email protected]

EDITORMartín Gabilondo ViqueiraSUBDIRECTOR GENERAL José Manuel Alonso VigueraDIRECTOR COMERCIALAmador MorenoDIRECTOR DE EXPANSIÓNRafael MorilloDIRECTOR DE PRODUCCIÓNAndrés ValladolidDIRECTOR DE PUBLICACIONESJuan Francisco CalleDIRECTORA DE ADMINISTRACIÓNMar MolpeceresREDACCIÓN, PUBLICIDAD Y SUSCRIPCIONESC/Valportillo Primera, 11. 28108 Alcobendas. MadridTeléfono: 91 662 21 37 Fax: 91 662 26 54www.grupov.es

ServiciosRedacción, traducciones y maquetaciónVIDELEC, S.L.

ImprimeIBERGRAPHI 2002 S.L.L.

Distribución en España:S.G.E.L. Avda. Valdelaparra, 29Tel.: 91 657 69 00

Distribución en el ExteriorArgentinaImportadorEdilogo S.A. Av. Belgrano 225, 1º, B C1276ADB Buenos AiresDistribución CapitalDISTRIREDDistribución InteriorD.G.P.ChileImportadorIberoamericana de Ediciones, S.A.C/ Leonor de la Corte, 6035. Quinta Normal. Santiago de ChileMéxicoImportador exclusivoCompañía Importadora de Revistas S.A. de C.V. (“CIRSA”)Negra modelo Nº 6. Col. Alce Blanco Municipio de Naucalpan de Juárez. (53330) Estado de México Tel.: (52-55) 5360-4167 - Fax: (52-55) 5560-7774Distribución Estados: CitemDistribución D.F.: Unión de VoceadoresPortugalImportadorEdiber-Edicao e distrib. de Public. L.D.A.Rua D. Carlos Mascarenhas, 15 - 1000, Lisboa

VenezuelaDistribuidora Continental

ColombiaDisunidas, S.A.

Depósito legal: GU.3-1980ISSN 0211-397X31/Enero/2.007

Reservados todos los derechos de edición.Se prohíbe la reproducción total o parcial del contenido de este número,ya sea por medio electrónico o mecánico de fotocopia, grabación u otrosistema de reproducción, sin la autorización expresa del editor.Las opiniones expresadas a lo largo de los distintos artículos, así como elcontenido de los mismos, son responsabilidad exclusiva de los autores.Así mismo, del contenido de los mensajes publicitarios son responsablesúnicamente los anunciantes.Copyright=1996 Segment BV

PVP en Canarias: 4,65 € (sobretasa aérea)

71 Nuevos Libros72 EPS

16 Noticias35 Próximo número41 Circuitos impresos42 ¡Puntas Calientes!53 Libros

informática ymercado

información yentretenimiento

6 Historia de Dos Lectores de Tarjetas Inteligentes...

50 Curso FPGA (6)60 Lápiz USB con ARM y RS 233268 Con Bloque Electrónico de VB a USB

sobre el terreno

36 El R8C con Multi-Funcionalidades

tecnología

54 Smartcards

conocimientos

42 42 ¡Puntas Calient¡Puntas Calient

54 SmartcardsDespués de un indeciso comienzo las tarjetas chipse han hecho valer y ocupan un lugar importante

en nuestras vidas. Hoy en día encontramostarjetas chip en muchas aplicaciones, en una

tarjeta bancaria, en las que se utilizan para vercanales de pago de TV, en las SIM de los teléfonos

móviles, en tarjetas de pago para parking olavanderías.

Cualquier aplicación para las tarjetas inteligentesrequiere lo que comúnmente se denomina "un

lector de tarjetas". Hasta ahora, se requería unagran variedad de lectores de tarjetas

diferentes. En este artículo presentamos dosdiseños de lectores/grabadores de

tarjetas que, juntos, cubren la mayoríade las tarjetas inteligentes del

mercado, incluidas las tarjetas“Gold” (“Oro”), “Silver”(“Plata”), “Purple” (“Púrpura”),“Phoenix”, etc, e incluso algunas

tarjetas más avanzadas del tipo“Open OS”.

El soldador es un elemento clave en cualquier estación electrónicade trabajo y una herramienta esencial para trabajar con circuitoselectrónicos. Nuestro panel de prueba profesional presenta variasestaciones de soldadura conocidas, mostrando sus prestaciones, ypermitiéndonos determinar si el modelo más caro que tenemosdelante de nuestros ojos es realmente el de peor precio…

6 Historia de Dos Lectores de Tarjetas Inteligentes...

60 Lápiz USB con ARM y RS 2332Este esmerado lápiz de memoria con su sistema autónomo puedealmacenar o transferir datos desde un sistema microcontrolador situadoen el campo hasta un ordenador, utilizando sus puertos USB y/o RS232 incorporados. Además de esto, una pantalla LCD y su sencillomodo de trabajo de captura de datos hacen que este dispositivo sea elbroche de oro de este tipo de equipos.

es!es!CONTENIDO

6

Historia de Dos Lectoresde Tarjetas Inteligentes...

Christian Tavernier

Cualquier aplicación para tarjetas inteligentesrequiere lo que comúnmente se denomina "un lectorde tarjetas". Si nuestros lectores ya han leído el artículode este mismo número que hace referencia a los distintostipos de tarjetas inteligentes, ya sabrán la gran variedad delectores de tarjetas que pueden necesitarse si quisiéramostrabajar con todas ellas. Todo depende de si estamoshablando de trabajar con tarjetas del tipo “Open OS”,o de una tarjeta que está aún en blanco.

Comenzaremos explicando breve-mente la teoría que está detrás de lasdistintas tarjetas inteligentes, y a con-tinuación haremos una introducciónsobre dos diseños de lectores/progra-madores, que no solamente son com-patibles con la gran mayoría de las tar-jetas inteligentes disponibles en elmercado actualmente, sino que tam-bién (y aún más importante) se puedenutilizar con una gran cantidad de pro-gramas gratuitos que pueden obte-nerse fácilmente a través de Internet.

Un programador para tarjetas inteligentes “Fun” (púrpura) y “Júpiter” (rosa)

Las tarjetas “Júpiter”, también cono-cidas como “tarjetas rosa”, práctica-mente están obsoletas. A pesar deello, si alguno de nuestros lectoresaún tiene una, podrá utilizar esteprogramador. Las tarjetas “Fun”,también conocidas como “tarjetaspúrpura”, están utilizándose actual-

SOBRE EL TERRENO SMARTCARDS

elektor

¡… que leen, escriben y programan!

7elektor

mente en una gran cantidad de apli-caciones. Ambos tipos de tarjetasestán equipadas con un microcontro-lador AVR de la casa Atmel, el cualpuede programarse en el propio cir-cuito. El esquema eléctrico de esteprogramador es sencillo en sí mismo,tal y como podemos ver en la Figura1. Este esquema es similar alesquema eléctrico del "ProgramadorApolo", que podemos encontrar fácil-mente en Internet. La única diferenciaes que se le ha añadido una fuentede alimentación de 5 V para el cir-cuito integrado que está sobre la tar-jeta. Esta tensión se logra a partir detres salidas de datos del puerto deimpresora (Centronics) del ordena-dor. Normalmente en los viejos orde-nadores estas salidas son suficiente-mente potentes y con el puente JP1uniendo los puntos S1 y Vcc, la ten-sión de alimentación es perfecta-mente adecuada. Como consecuen-cia, la circuitería alrededor del cir-cuito integrado IC1 y de lostransistores T1 y T2 podría omitirse.Sin embargo, en los ordenadores per-sonales más modernos y en los por-tátiles la tensión que se puede obte-ner del puerto de impresora rara-mente supera los 3,3 V, valor que noes suficientemente elevado para ase-gurar una comunicación estable ennuestro lector. En estos casos serequiere una fuente de alimentaciónexterna adicional. Esta fuente seconectará en K3 y disminuirá su valorhasta alcanzar una tensión de 5 Vestabilizada, que es lo que hace lacircuitería alrededor de IC1, T1 y T2.Con el puente JP1 cortocircuitandolos elementos S2 y Vcc, las líneas dedatos serán ahora capaces de propor-cionar la tensión de alimentaciónexterna necesaria, ya que no necesi-tan dar alimentación a ningún otroelemento.Cuándo la tarjeta está programándosese enciende el diodo LED 1, lo quetambién nos indica que la tarjeta nodebe retirarse del lector durante eltiempo de programación.

Construcción del programadorComo podemos ver en la Figura 2,todos los componentes se montaránsobre la placa de circuito impreso. Elprogramador está equipado con unconector tipo Centronics, que nospermitirá conectar fácilmente nues-tro equipo al puerto paralelo delordenador a través de un cable deimpresora. Tenemos que tener encuenta la polaridad de los compo-nentes cuando vayamos a realizarsu montaje, pero aparte de esto, la

1

2

3

4

5

6

7

8

9

10

11

12

13

K1

Centronics

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

Card Connector

VCC

RST

CLK

RFU

GND

VPP

I/O

RFU

K2

R1220 Ω

R2220 Ω

R3220 Ω

R4

1k

R6

10k

R7

10k

R5

1k

R10

330

Ω

R9

1k

R8

10k

T2

BC547

T1BC557

C4

100n

C2

220n

LED1

C1

1025V

C3

47025V

D1

1N4004K3

9V

1

K4

2

050237 - 11

IC1

78L05

RESET

Figura 1. Esquema eléctrico del programador para tarjetas inteligentes “Fun” (púrpura) y “Júpiter” (rosa).

Un lector que también escribeEl dispositivo donde colocamos nuestra tarjeta inteligente se denomina habitual-mente “lector” de tarjetas, sin embargo, el nombre no hace justicia a estos dis-positivos, ya que la mayoría de ellos también pueden escribir sin mayores pro-blemas sobre dicha tarjeta. En algunos casos, dependiendo de la tarjeta y deltipo del lector, también es posible programar el circuito integrado interno quese ha insertado en la tarjeta que, a su vez, se ha colocado en dicho "lector".¿Confundido?, intentaremos poner orden en todo esto.

Para empezar, una gran cantidad de tarjetas inteligentes contienen una aplica-ción específica en su interior. Un ejemplo es nuestra tarjeta del banco (protegi-da con un código PIN), ya que normalmente tienen un pequeño circuito integra-do incorporado. Otros ejemplos serían la Tarjeta Básica (Basic Card), que estábasada en un sistema operativo abierto (“Open OS”), o las tarjetas inteligentesOro (“Gold”) y Plata (“Silver”). Estas tarjetas pueden ser leídas o escritas desdecualquier lector de tarjetas. El programa y el ordenador correspondientes sonlos encargados de determinar si un lector de tarjetas es compatible con la tarje-ta “PC/SC”, la tarjeta “Phoenix” o la “SmartMouse”.

Las tarjetas vírgenes de sistema operativo abierto (“Open OS”) son las únicasque también pueden programarse con este tipo de lectores, con cualquier otrotipo de tarjetas vírgenes, la funcionalidad de su lector se ve limitada a la lectu-ra y a la escritura. Por ello, si queremos colocar nuestra propia aplicaciónsobre una tarjeta Oro, Plata, Fun, o cualquier otra de que dispongamos, necesi-taremos un programador independiente.

Si nuestros lectores ya han leído nuestra explicación sobre las intrincadas técni-cas internas de todas estas diferentes tarjetas inteligentes (que aparece en otroartículo de esta entrega de Elektor), sabrán que un dispositivo programadornecesita generar unos códigos en el tiempo de forma muy precisa. Inclusopuede ser necesario manipular "de forma inteligente" los terminales del circuitointegrado interno de la tarjeta, algo que normalmente nunca se tiene que hacer,como es el caso de las tarjetas Fun y Júpiter.

Por supuesto, un programador de los habituales no hará el trabajo, por lo quetenemos dos opciones, o compramos uno de acuerdo con nuestras propiasespecificaciones o lo construimos nosotros mismos. Esta última opción es la queveremos en este artículo.

elektor

SOBRE EL TERRENO SMARTCARDS

8 elektor

050237-1

C1

C2

C3

C4

D1

IC1

K1

K2

K3K4

LED1

R1

R2

R3

R4

R5

R6R7 R

8

R9

R10

T1

T2 - +

12

050237-1

050237-1

Figura 2. Diagrama de pistas y esquema de implantación de componentes del programador para la Tarjeta “Fun”.

LISTA DEMATERIALES Programador Fun / Júpiter

Resistencias

R1,R2,R3 = 220Ω

R4,R5,R9 = 1kΩ

R6,R7,R8 = 10kΩ

R10 = 330Ω

CondensadoresC1 = 10μF, condensador electrolítico de

25 V radialC2 = 220nF MKTC3 = 470μF, condensador electrolítico

de 25 V radialC4 = 100nF MKT

SemiconductoresIC1 = 78L05T1 = BC557T2 = BC547D1 = 1N4004LED1 = Diodo LED rojo de 5 mm

Varios:K1 = Conector tipo “Centronics” hembra,

con terminales en ángulo recto paramontaje en placa de circuito impreso

K2 = Conector tipo “Smartcard” estándar(por ejemplo, Selectronic Nº 60.9292)

K3 = Conector para adaptador de ten-sión de red con montaje en placa decircuito impreso

K4 = Conector tipo “pinheader” de 3 ter-minales SIL, con separación entre termi-nales de 2,54 mm, con puente físico

PCB, Placa de Circuito Impreso con códi-go de pedido nº 050237-1

Figura 4. El programa FunProm proporciona acceso a la memoria EEPROM externade las tarjetas “Fun”.

Figura 3. Programa IC-Prog configurado para su uso con el programador de la tarjeta “Fun”.

9elektor

placa de circuito impreso se montamuy fácilmente. La fuente de ali-mentación externa, si fuese necesa-ria, puede ser cualquier adaptadorde tensión de red capaz de propor-cionar una tensión de unos 9 V DCcon una corriente de unos 50 mA, yaque el consumo del circuito es bas-tante bajo.

Programa y uso prácticoHay una gran cantidad de programasdisponibles gratuitamente en Inter-net que son compatibles con esteprogramador. El autor de este artí-culo recomienda dos paquetes enespecial, uno de ellos es el excelenteIC-Prog, que ya debe ser familiar atodos aquellos que poseen un pro-gramador PIC de fabricación casera,y el otro es algo menos conocido,pero no por ello menos interesante, yes el FunProm.

Podemos encontrar instrucciones decómo utilizar el programa IC-Progen la página web de su autor(www.ic-prog.com). Sólo necesita-mos unos pocos controladores espe-cíficos si queremos instalarlo bajoWindows XP. Una vez que se harealizado la instalación, lo único quenecesitamos hacer es configurar elprograma IC-Prog de acuerdo a lacaptura de pantalla que se muestraen la Figura 3, por supuesto, selec-cionando el puerto de impresoracorrecto.

Para su uso conuna tarjeta deltipo “Fun”, elp r o c e s a d o rdebe selec-cionarse enAT 90S8515,tal y como seindica en dichafigura. Esto nospermite acceder tantoa la memoria de programascomo a la memoria de datosdel circuito integrado colocado enla propia tarjeta, proporcionándonosla posibilidad de leer, programar yverificar dichas memorias. Existeuna limitación: el programa IC-Progno nos deja acceder a la memoriaEEPROM externa de las tarjetas“Fun”. Normalmente esto no debesuponer ningún problema para to-dos aquellos que hayan desarrolladosus propias aplicaciones, pero sepuede convertir en un serio obstá-culo para "otras aplicaciones" quenecesiten el acceso a claves encrip-tadas almacenadas en dicha memo-ria EEPROM.

Precisamente por este motivo se des-arrolló el programa FunProm (ver losenlaces de Internet al final de esteartículo). La instalación de dicho pro-grama es tan sencilla como la tarea dedescomprimir un fichero RAR, ejecu-tar el programa y acceder a la memo-ria EEPROM externa, tal y como semuestra en la Figura 4.

Un lector/programador para tarjetas Phoenix y SmartMousePoco tiempo después de que la pri-mera tarjeta “Gold” (Oro) hiciese suaparición en el mercado, creció lanecesidad de disponer de un lectorque tuviese dos características prin-cipales: bajo precio y rápida disponi-bilidad. Los lectores de tarjetas demuchos fabricantes no cumplían con

estas necesidades y sólo ofrecíanunas funcionalidades limitadas.Como siempre, "la necesidad es lamadre de la invención": poco tiempodespués comenzaron a circular enInternet dos diseños de lectores querecibieron el nombre de Phoenix ySmartMouse. Pronto se observó queestos dos diseños eran bastantesimilares y que no sería muy difícilconvertir ambos lectores en unúnico diseño que pudiese manejarambos formatos, haciendo, quizás,dicha selección con uno o dos puen-tes. Sin embargo, como ya se haexplicado, esto sólo proporcionaríaun dispositivo lector que sería inca-paz de programar el microcontrola-dor incorporado en las tarjetas Oroy Plata. En respuesta a esta necesi-dad surgieron algunos diseños quetambién permitían la programaciónde ambas tarjetas. El modelo másconocido, y también el más sencillo,

SOBRE EL TERRENO SMARTCARDS

10 elektor

es el programador JDM, que trabajaa través del puerto serie. Por des-gracia, este programador era incom-patible con los lectores Phoenix ySmartMouse. Muchos aficionados ala electrónica han tenido que cons-truirse dos dispositivos y se hanvisto obligados a jugar con los dis-tintos puertos COM disponibles ensus ordenadores, moviendo las tar-jetas desde el dispositivo lector alprogramador y viceversa.

En la actualidad, después de unanálisis más profundo de ambosdiseños (y sacando el máximo par-tido de algunas de sus limitacionesy deficiencias), hemos conseguidopresentar a nuestros lectores undiseño "todo en uno": un lector Pho-enix y SmartMouse que, al mismotiempo, puede trabajar como progra-mador de tarjetas Oro y Plata y quees compatible con el modelo JDM. Y

D5 realizan la combinación de lasseñales TxD y RxD, provenientes delpuerto COM, hacia la tarjeta inteli-gente y las separa en el camino devuelta.

Todas las tarjetas inteligentes re-quieren del uso de un reloj externo.Así, dos puertas provenientes delcircuito integrado 74HC00 (IC3) rea-lizan la función de amplificación parados osciladores, con frecuencias de3,579 MHz (cristal NTSC) y 6 MHzrespectivamente, tal y como indicanlas especificaciones de los lectoresPhoenix y SmartMouse. Además,otras muchas tarjetas tambiénrequieren una frecuencia de trabajode 3,58 MHz. Podemos conmutarentre las distintas señales de relojcon la ayuda del puente K5. Lapuerta IC3d permite el paso de laseñal de reloj al resto del circuito.Aquellos lectores que deseen reali-

todo ello a un precio muy asequible,tal y como podemos ver en elesquema eléctrico de la Figura 5. Aprimera vista parece bastante máscomplicado de lo que es, pero sufuncionamiento no presenta nin-guna dificultad tras su análisis. Enel centro del esquema eléctricopodemos ver un bloque de conecto-res con puentes, S1 a S4, que nospermiten realizar la selección entreel modo Phoenix (lector) y el modoJDM (programador). En el modo lec-tor, el ya conocido circuito integradoMAX 232 (IC2), convierte los nivelesRS 232 del puerto COM correspon-diente en niveles TTL para nuestrocircuito. Ahora ya disponemos de uncanal de E/S bidireccional para latarjeta inteligente, ya que el puertoCOM tiene líneas independientespara la entrada (RxD) y para lasalida (TxD). De esta manera, laresistencia R3 y el diodo Schottky

Figura 5. Esquema eléctrico del lector/programador de las tarjetas inteligentes “Phoenix”, “SmartMouse” y “JDM”.

K1

SUB D9

1

2

3

4

5

6

7

8

9MAX232

T1OUT

T2OUT

R1OUT

R2OUT

R1IN

IC2

T1IN

T2IN

R2IN

C1–

C1+

C2+

C2–

11

12

10

13

14

15

16V+

V-

7

8 9

3

1

4

5

2

6

R14

1k5

C7

10

C8

10

C1

10

C5

10

+5V

S4 S3 S2 S1

R4

10k

S5

R3

4k7

D5

R2

1k

LED2

DATA

Card Connector

VCC

RST

CLK

RFU

GND

VPP

I/O

RFU

K2

D1

D6

D2

D4

Presence

+5V

R5

10Ω

C6

100n

R11

1k

T2

T1

R7

10k

R8

10k

R10

47k

IC1

7805

C3

10

C2

10n

C4

220n

C9

470

D3

R12

4k7

T3 D7

13V

C10

1n

R13

22k

K3

15V

9

108

IC3.C

&LED3

RESET

R91k

R6

10k

D8

C11

10n

PS1

RESET

K4

+5V

4

56

IC3.B

&

R15

1M

R17

2k2

X1

3.579MHzC14

22p

C13

22p

1

23

IC3.A

&

R16

1M

R18

2k2

X2

6MHz C16

22p

C15

22p

K5

12 13

11

IC3.D&

K6

+5V

C12

47p

T4

R21

220

Ω

D9R191k

R20

150 Ω

+5V

LED1

R22

1k

R1

1k

+5V

Phoenix JDM

CLOCK

GROUND

PWR

red green

050237 - 14

opcionalver texto

IC3

14

7

+5V

IC3 = 74HC00

BAT82

1N4148

16V

16V

16V

16V

16V

BC557

BC547

2N2369

1N4148

1N4001

D1, D2, D4, D6 = 1N4148

25V

BC327

11elektor

2-732050

1C

2C

3C

4C

5C

6C

7C8

C

9C

01C

11CC12

31C41

C

51C

6 1C

D1

D2

D3

D4

5D

D6D7

8D

D9

1CI

IC2

IC3

1K

K2

3K

4K

K5

6K

1DEL

2DEL

LED3

1SP

1R

R2R3

R4

5R

R6

7R8R

R9

01R

R11

21R

31R

41R

51R

6 1R

71R

81R

R19

R20

12R

22R S1 S2 S3S4

5S

1T

2T

3T

4T

1X

2X

2-732050

T

2-732050

Figura 6. Diagrama de pistas y esquema de implantación de componentes del circuito de la Figura 5.

SOBRE EL TERRENO SMARTCARDS

12 elektor

zar experimentos con tarjetas inteli-gentes a frecuencias no estándar,también puede utilizar una señalde reloj externa. En ese caso,dicha señal de reloj debe dellegar a través de la resis-tencia R20, será conver-tida a niveles TTL pormedio del transistor T4(un 2N2369), y, posterior-mente, pasada a través delpuente K6. Probablementeesta opción es algo que no se uti-lizará muy a menudo, pero pode-mos hacerlo si lo deseamos.

Una línea de control, proveniente delpuerto COM, proporciona una señalde reset (reinicio) para la tarjeta in-teligente. El lector Phoenix requiereuna señal de reset a nivel alto, mien-tras que el lector SmartMouse re-quiere un nivel bajo. Por lo tanto, laseñal de reset puede invertirse, si esnecesario, utilizando los puentesdel conector K4. Además, tam-bién podemos generar unaseñal de reset manual utilizandoel conmutador PS1, y con una pro-tección de cortocircuito para lapuerta IC3c proporcionada por eldiodo D8. La sección de la tensión dealimentación del lector es de 5 V, esta-bilizada por un regulador del tipo 7805(IC1). El conmutador/detector secerrará cuando coloquemos una tar-jeta dentro del lector. En esemomento el transistor T2 se activará,lo cual provocará que se habilite latensión de alimentación a través deltransistor T1.

Necesitamos una fuente de alimen-tación externa para alimentar el cir-cuito que sea capaz de proporcionar

Figura 7. Programa IC-Prog configurado para su uso con el programador de la tarjeta “JDM”.

Programación en Visual BasicEl uso de programas procedentes de otros desarrolladores es positivo, pero ¡des-arrollar nuestro propio programa es aún mejor! Una vez que hemos comenzado,pronto nos daremos cuenta que queremos controlar la tarjeta inteligente desdenuestro ordenador. Utilizando los dispositivos tratados en este artículo seremoscapaces de descubrir que esta tarea no es tan complicada como podría parecera primera vista: las señales que llegan y salen de la tarjeta inteligente se corres-ponden con aquellas señales de un puerto serie asíncrono estándar (ver la Figura1 en la introducción sobre tarjetas inteligentes en otro artículo de esta entrega).Sin embargo, el uso de un lenguaje de programación de alto nivel no significaque sea la mejor herramienta para manipular los registros de un puerto COM deun ordenador, por lo que recomendamos a nuestros lectores que se descarguenel programa “Phoenix UC” para este propósito (www.cartesapouce.fr).

El programa ha sido desarrollado por una persona que trabajaba bajo el seudó-nimo de “Phelix”, probablemente debido a que su uso puede ser de algún mododudoso. Sin embargo, ¡se trata de una excelente herramienta de programa! Elfichero “PhoenixUC.RAR contiene varios módulos para utilizar en el entorno deVisual Basic, con lo que se nos proporciona una funcionalidad completa con elinterfaz compatible Phoenix. Este programa es muy sencillo de aprender y la pro-gramación se realiza muy rápida. Además, con dicho programa también pode-mos manipular tarjetas inteligentes no estándar.

La figura nos muestra un ejemplo sencillo: la tarjeta ha enviado una “Answer ToReset” (ATR, es decir una “Respuesta a un Reset”) y en la pantalla se muestra el men-saje completo. En el fichero RAR se suministra una documentación completa y conse-guir nuestro primer programa que funcione será cuestión de unos minutos.

Ejemplo de un programa en Visual Basic hecho con PhoenixUC.

Figura 8. Utilizando el programa CorWinPhoenix podemos acceder a la memoria EEPROM externa de las tarjetas inteligentes “Gold” (Oro).

13elektor

una tensión de unos 15 VDC noregulados. La razón de esto derivade la necesidad de disponer de unatensión de 13 V para programar lastarjetas inteligentes. Un diodo LEDde dos colores nos indica cuándoestá disponible la tensión de alimen-tación: dependiendo de la posicióndel conmutador S1, mostrará uncolor verde cuando estemos traba-jando en el modo Phoenix o un coloramarillo (mezcla de verde y rojo)para el modo JDM.

Las cosas son mucho más sencillasen el modo JDM: tanto la línea deentrada de reloj como la línea de E/Sde la tarjeta inteligente se controlandirectamente desde el puerto seriedel ordenador. Cuando estamos pro-gramando una tarjeta inteligentetipo Oro o Plata, se usan estas doslíneas. Estas líneas se correspondencon RB6 y RB7 (ver también elesquema eléctrico en el artículocorrespondiente dentro de la entregade este mes).

Actualmente, los circuitos microcon-troladores PICs pueden programarsecon tensiones de 5 V, sin embargo, losviejos microcontroladores 16F84 y16F876, que podemos encontrar enlas tarjetas inteligentes Oro y Plata,exigen una tensión de 13 voltios en elterminal de Reset para poder progra-marse. Una versión anterior de estecircuito incluía un multiplicador detensión en la tensión de alimentacióndel puerto COM. Sin embargo, losordenadores de sobremesa másrecientes y los portátiles han ido evo-

LISTA DEMATERIALESProgramador /Lector paraPhoenix / SmartMouse /JDM

Resistencias:R1,R2,R9,R11,R19,R22 = 1kΩR3,R12 = 4kΩ7R4,R6,R7,R8 = 10kΩR5 = 10ΩR10 = 47kΩR13 = 22kΩR14 = 1kΩ5R15,R16 = 1MΩR17,R18 = 2kΩ2R20 = 150ΩR21 = 220Ω

Condensadores:C1,C3,C5,C7,C8 = 10μF, condensador

electrolítico de 16 V radialC2,C11 = 10nF cerámico

C4 = 220nF MKTC6 = 100nF MKTC9 = 470μF, condensador electrolítico

de 25 V radialC10 = 1nF MKTC12 = 47pF cerámicoC13-C16 = 22pF cerámico

SemiconductoresIC1 = 7805IC2 = MAX232IC3 = 74HC00T1 = BC327T2 = BC557T3 = BC547T4 = 2N2369AD1,D2,D4,D6,D8,D9 = 1N4148D3 = 1N4004D5 = BAT82D7 = Diodo zéner de 13 V y 400 mWLED1 = Diodo LED bicolor, de 5 mm, con

ánodos separadosLED2 = Diodo LED rojo de 3 mmLED3= Diodo LED amarillo de 3 mm

VariosK1 = Conector sub-D de 9 terminales

hembra, en ángulo recto para montajeen placa de circuito impreso

K2 = Conector tipo “Smartcard” estándar(por ejemplo, Selectronic Nº 60.9292)

K3 = Conector para adaptador de ten-sión de red con montaje en placa decircuito impreso

K4, K5, K6= Conector tipo “pinheader”de 3 terminales SIL, con puente físico

X1 = Cristal de cuarzo de 3,579 MHz,con encapsulado HC 18/U

X2= Cristal de cuarzo de 6 MHz, conencapsulado HC 18/U

PS1 = Conmutador, cuadrado, tipo D6 (ITT)S1, S2, S3, S4 = Bloque de conmutadores

DIP, de 4 elementos (ASE 42FN, Tyco /Alcoswitch), o 4conectores tipo “pinhea-der” de 3 terminales SIL, con puente físico

S5 = conector tipo “pinheader” de 2 ter-minales SIL, con puente físico

PCB, Placa de Circuito Impreso con códi-go de pedido nº 050237-2

Tabla 1. Configuración de puentes

Programador de Tarjeta “Fun”

Cabecera Posición Función

K4 1 Alimentación externa através de puerto paralelo

2 Alimentación a través deadaptador de tensión de red

Programador de tarjeta Phoenix / SnartMouse

Puente JDM Phoenix

S1 1-2 2-3

S2 1-2 2-3

S3 1-2 2-3

S4 1-2 2-3

(Numeración desde la cara biselada)

S5 Montado Detección normalde tarjeta

S5 Ausente Tarjeta siempre insertada

Cabecera Posición Función

K4 1-2 Reset directo

K4 2-3 Reset invertido

K5 1-2 6MHz

K5 2-3 3.579MHz

K6 1-2 Reloj interno

K6 2-3 Reloj externo

SOBRE EL TERRENO SMARTCARDS

14 elektor

lucionando de manera que lacorriente que podemos obtener deeste modo es demasiado pequeña.Por eso, en su lugar, hemos preferidoelegir la tensión de alimentación de15 V. El diodo zéner D7 baja la ten-sión de entrada hasta los 13 voltios.Además, esta tensión puede acti-varse y desactivarse, según se desee,por medio del transistor T3, el cual, asu vez, está bajo control del pro-grama, a través del puerto serie.Exceptuando el diodo LED 1, del queya hemos hablado, todos los otrosdiodos LEDs del circuito sirven comoayuda e indicación cuando estamosutilizando un programa del que noconocemos el enlace específico con latarjeta inteligente o con programascon los que aún no estamos familiari-zados.

El diodo LED 3 se enciende cuandola tarjeta inteligente está reinicián-dose. El diodo LED 2 se encenderácuando exista tráfico de datos entrela tarjeta inteligente y el ordenadoren el modo Phoenix o SmartMouse.Si, al mismo tiempo, la señal de 13V de reset está activa, esto quieredecir que el circuito está trabajandoen modo JDM, por ejemplo, enmodo de programación. Como yahemos mencionado anteriormente,nunca debemos retirar la tarjeta desu lector mientras está siendo pro-gramada.

Construcción del lector/programadorTodos los componentes están monta-dos sobre una única placa de circuitoimpreso. En la Figura 6 podemos veruna fotografía de la misma, el planode montaje de los componentes y ladistribución de pistas de la misma. Siseguimos adecuadamente la lista decomponentes y la colocación de losmismos en la placa, el ensamblaje detodos los elementos es cosa de "cosery cantar".

Programa y uso prácticoNuevamente estamos delante delexcelente programa “IC-Prog”, con-figurado esta vez como se muestraen la Figura 7. Cuando queramosprogramar una tarjeta Oro haremosla selección del microcontrolador16F84, mientras que si queremosprogramar una tarjeta Plata seleccio-naremos el microcontrolador 16F876.A partir de ese momento tendremostodas funcionalidades del programaIC-Prog disponibles, de manera que

En la Tabla 1 podemos encontrar unapresentación global de la configura-ción de todos los puentes, de maneraque nos proporcione una ayuda rápidacuando tengamos que configurar elcircuito. Si llegamos a tener algunaduda, vigilaremos el diodo LED 3: si semantiene encendido, esto quiere decirque el programa está reiniciando latarjeta, lo cual, efectivamente, impidela comunicación con la tarjeta. Cam-biando la configuración del puente enel conector K4 se solucionará estasituación.

ConclusiónHabría mucho más que decir sobre lalectura y la programación de tarjetasinteligentes (prácticamente no hemoshablado nada sobre tarjetas PC/SC,por ejemplo), pero esto será el temade otros artículos diferentes en unfuturo próximo. Por ahora nos hemosconcentrado en las tarjetas inteligen-tes del tipo Oro, Plata, Rosa y Púr-pura, a las que podemos poner en fun-cionamiento completo con los dos cir-cuitos que se describen en esteartículo.

(050237-I)

Enlacesen la Redwww.elektor.com

www.cartesapuce.fr (Página web del autor sobre tarjetasinteligentes)

www.tavernier-c.com (Página web general del autor)

podremos programar tanto la memo-ria EEPROM de datos del PIC comola memoria que almacena el pro-grama interno del PIC. Con unpuente colocado en los terminales 2-3 del conector K4, el circuito se utili-zará como un programador JDM. Eneste caso no nos tendremos que pre-ocupar por la posición de los otrospuentes.Sin embargo, no podremos teneracceso a la memoria EEPROM ex-terna de la tarjeta inteligente deforma directa, debido a la manera enque dicha memoria está conectada almicrocontrolador PIC. Tan sólo pode-mos programar lo que se denomina elprograma “loader” (es decir, “carga-dor”), el cual es tan sólo un pequeñotrozo de programa que se almacenaen el PIC, proporcionando al usuarioun acceso "transparente" a la memo-ria EEPROM externa. En el programaIC-Prog esta función se denomina“assistant SmartCard” (es decir,“asistente para la tarjeta inteli-gente"), pero esta función no siempretrabaja correctamente, como tambiénnos confirma la persona que ha des-arrollado el programa en su páginaweb.

Por esta razón, recomendamos anuestros lectores retiren el programacargador del PIC mediante el pro-grama IC-Prog y, a continuación, car-guen la memoria EEPROM externacon un programa diferente. Para lastarjetas Oro podemos utilizar los pro-gramas WinPhoenix o CorWinPhoe-nix (sólo en francés). Ambos progra-mas están disponibles para su des-carga a partir de los enlaces enInternet que aparecen al final deeste artículo. En ambos programastendremos que conmutar nuestroslectores desde el modo Phoenix almodo JDM. La Figura 8 nos muestraun ejemplo de cómo se lee la memo-ria EEPROM externa en una tarjetaOro utilizando el programa CorWin-Phoenix.En Internet podemos encontrar mu-chos otros lectores, tanto para lastarjetas inteligentes del tipo Orocomo para las de tipo Plata. Un ejem-plo de ambas se encuentra en lapágina web del autor (www.cartesa-puce.fr), pero también tenemos quedecir que existen muchas variantesde las mismas. Algunos programascomo WinPhoenix sustituyen nuestrapropia aplicación volcada sobre latarjeta por su propio programa carga-dor, dando de esta manera acceso ala memoria EEPROM externa. Es bas-tante sencillo una vez que sabemoscómo funciona.

INFORMÁTICA Y MERCADO NOTICIAS

elektor 16

Principales Datos:• Transceptor de 2,4GHzIEEE 802.15.4 de Bajo Con-sumo en un Encapsulado de40 patillas y 6 x 6mm• Pila de Protocolo ZigBee™Gratuita y con Todas las Fun-ciones• Pila de Protocolo MiWi™Gratuita, de Huella Reduciday Exenta de Certificación• Herramienta de Análisis deRed ZENA™ que OfreceSoporte a ZigBee y MiWi

Microchip anuncia tres nue-vas soluciones para redesinalámbricas: el transceptorMRF24J40, la pila de pro-tocolo MiWi™ y el analiza-dor de redes inalámbricasZENA™.El MRF24J40 es el primertransceptor de RF de Micro-chip. Es un transceptor IEEE802.15.4 de 2,4GHz paraZigBee™ y otros protocolosinalámbricos propietarios enaplicaciones que requierenun consumo reducido y unasexcelentes prestaciones en RFcon muy pocos componentesexternos. El dispositivo superatodas las especificaciones delestándar IEEE 802.15.4 yproporciona soporte total alControlador de Acceso aMedios (Media Access Con-troller, MAC) así como unnúcleo de criptografiado dehardware AES (AdvancedEncryption Standard, AES).El transceptor IEEE 802.15.4MRF24J40 está encapsuladoen un formato QFN de 40patillas y 6x6mm libre deplomo y conforme a RoHS.Actualmente se ofrece comomuestra y su producción estáprevista para Diciembre.Microchip ofrece actualmentela única pila de protocoloZigBee dotada de todas lasfunciones, con licencia gra-tuita y sin pagos por royal-

ties. Es además uno de losmás pequeños en el mercadoy proporciona un formato decódigo fuente que permite alos diseñadores personalizarsu producto utilizando unaamplia gama de microcon-troladores PIC®.Ahora bien, dado que el pro-tocolo completo ZigBee se hahecho muy grande y com-plejo para muchas aplica-ciones, se espera una granparte del mercado pararedes inalámbricas IEEE802.15.4 utilice protocolosalternativos de tipo propieta-rio. Además, la certificacióndel protocolo ZigBee es unproceso caro y farragoso. El protocolo MiWi de Micro-chip es un protocolo gratuito yde huella reducida desarro-llado para clientes que nonecesitan la interoperatividadtotal del protocolo ZigBeepero que quieren utilizartransceptores estándar IEEE802.15.4 en redes de bajocoste punto a punto, en estre-lla y de malla (mesh). Los sis-

temas con protocolo MiWi nonecesitan certificación algunay la pila de protocolo se sumi-nistra con licencia gratuita, sise utiliza con microcontrola-dores Microchip y el trans-ceptor MRF24J40.La nueva herramienta paraanálisis de redes inalámbricasZENA (número de referenciaDM183023) utiliza un senci-llo interface gráfico de usuariopara configurar las pilas deprotocolo gratuitas de Micro-chip para ZigBee y MiWi.Esto puede reducir el tamañodel código al eliminar funcio-nes opcionales; puede recor-tar el tiempo de desarrollo sim-plificando las interaccionescon las pilas; y permite la per-sonalización de la pila paraadaptarse a una necesidadconcreta. El analizador deredes inalámbricas ZENA, for-mado por hardware y soft-ware, es capaz de decodificarpaquetes de protocolo IEEE802.15.4 ZigBee y MiWi,desde las capas más bajashasta la parte superior de la

pila (incluyendo los módulosde seguridad). La ventana quevisualiza la configuración dela red permite que los usuariosvean el tráfico en tiempo reala medida que pasa de unnodo a otro. También sepuede guardar una sesión enun archivo, y así permitir elanálisis posterior de todo eltráfico en la red.Con independencia del pro-tocolo que seleccione el inge-niero de diseño, esta solucióncompleta de Microchip lespermite evaluar y empezar adesarrollar con rapidez unaenorme variedad de aplica-ciones IEEE 802.15.4 pararedes inalámbricas, inclu-yendo seguridad, ilumina-ción, control de acceso, moni-torización industrial y auto-matización y periféricos paraordenadores personales.Además del analizador deprotocolo ZENA, Microchipofrece el Kit de Demostra-ción de 2,4GHz PICDEM™Z (número de referenciaDM163027-4), que es una

Microchip Anuncia una Plataforma Completa para Protocolo ZigBee™ con Transceptor IEEE 802.15.4 de 2,4GHz y Herramienta para Análisis de Red

...y además

La revista

En ella encontrarás análisis dematerial fotográfico, cámaras,objetivos y accesorios, reportajesde naturaleza y viajes conmagníficas imágenes, artículosprácticos para hacer mejoresfotografías y técnicas paraprofundizar más sobre fotografía

el concurso fotográfico

“Book Super Foto”abierto a todos los aficionados

con 6.000 € en premios.

N 1para los amantesde la fotografía

o

incluye la mayor

guía de

cámaras

y objetivos del

m

ercado de oca

sión.

incluye la mayor

guía de

cámaras

y objetivos del

m

ercado de oca

sión.

Nº 132 · AÑO Xii

3/10/05 00:51:16

INFORMÁTICA Y MERCADO NOTICIAS

elektor 18

plataforma de evaluación ydesarrollo de sencillo uso paradiseñadores de aplicacionesIEEE 802.15.4. El kit incluyetodo el hardware, códigofuente de software y archivospara el trazado de la placa decircuito impreso necesariospara el desarrollo rápido deprototipos de productosinalámbricos. Hay disponibletambién una detallada nota deaplicación en la Web deMicrochip. Esta plataforma dedesarrollo está basada en lafamilia de microcontroladoresde altas prestaciones PIC18de Microchip, que ofrece unaamplia variedad de productoscon un máximo de 128 Kbytesde memoria de programaFlash en encapsulados de 28a 100 patillas.

Principales Datos:• Microcontroladores de 8 y14 patillas con Periféricos yRegulador en Derivación Inte-grados• Periféricos como PWM, Con-trol de Temporizador, Compa-rador y Convertidor A/D• Regulador en Derivacióncon Soporte a Funciona-miento a partir de 2,0V yhasta un Máximo Definidopor el Usuario• Ideal para Control de Venti-lador / Motor y Aplicacionesen Fuentes de Alimentación

Microchip anuncia los pri-meros microcontroladoresFlash PIC® de aplicacióngeneral con periféricos paraun control más económico deventiladores y pequeños mo-tores. Los microcontroladoresPIC16F616/610 de 14 pati-llas y PIC12F615/609 de 8patillas pueden reducir nota-blemente el número de com-ponentes y el coste con peri-

féricos especializados comoModulación de Ancho deImpulso (Pulse-Width Modula-tion, PWM) de puente com-pleto con control de banda

muerta, Control de Puerta deTempirizador1 para medidade ancho de impulso, un com-parador con histéresis parainterfaces a sensor de efecto

Hall y un convertidor A/Dpara temperatura y otras fun-ciones de monitorización.Como ejemplo de aplicación,cuando se utiliza para el con-

Microchip Presenta Microcontroladores PIC® con Regulador Interno en Derivación

INFORMÁTICA Y MERCADO NOTICIAS

elektor 20

trol de ventiladores de refri-geración, los microcontrola-dores Flash PIC16F616/610y PIC12F615/609 puedenproporcionar una funcionali-dad mucho mayor que loscomponentes discretos paracontrol de ventiladores, inclu-yendo control de velocidadlineal, respuesta dinámicamejorada y un diseño perso-nalizable por firmware.Las versiones PIC16HV616/610y PIC12HV615/609 incor-poran un regulador internoen derivación (shunt) que per-mite el funcionamiento delmicrocontrolador PIC conuna tensión mayor sin laincorporación de regulado-res externos de tensión.Muchas aplicaciones demayor tensión, como contro-les de motor y fuentes de ali-mentación, necesitan compo-nentes para reducir la tensiónde entrada. Estos nuevosmicrocontroladores “HV” PICpermiten que los ingenierosdiseñen sistemas que funcio-nen a partir de 2,0V y hastaun máximo definido por elusuario sin necesidad de aña-dir un regulador, reduciendoasí aún más el coste y elespacio ocupado en laplaca. Además, tales aplica-ciones precisan a menudotensiones intermedias paracontroladores de potencia yotros componentes. La familiaPIC16F616/HV616 puedeproporcionarlos utilizandopara ello una báscula S/Rintegrada para la realizaciónde una fuente de alimenta-ción conmutada.Algunos ejemplos concretosde aplicación son electrodo-mésticos, ventiladores derefrigeración y otros contro-les de motor, herramientaseléctricas, control y monitori-zación de sistemas, carga-dores de baterías y fuentesde alimentación.Éstas son algunas de las princi-pales características de los micro-controladores PIC16F616/610

y PIC12F615/609, así comode las versiones HV:• Hasta 3,5 Kbytes (2K Ins-trucciones) de Memoria de Pro-grama Flash; 128 bytes RAM• Periférico de Captura Avan-zada, Comparación y PWM

- Incluye Control de PuenteCompleto, Control de Ban-da Muerta y Apagado porHardware

• Hasta Dos Comparadores- Incluye Histéresis selecciona-ble, Referencia interna de ten-sión y modo de báscula S/R

• Un Convertidor A/D de 10bit con hasta 8 canales• Oscilador Interno de Preci-sión de 4/8 MHz• Reinicialización por Sub-tensión (BOR) y Temporiza-dor Supervisor (WDT)

Estos nuevos microcontrola-dores cuentan con el soportede las herramientas de des-arrollo de Microchip, entreellas el Entorno de DesarrolloIntegrado (Integrated Deve-lopment Environment) gra-tuito MPLAB® IDE, el Depu-rador In-Circuit (In-CircuitDebugger) de bajo costeMPLAB ICD 2 y el Programa-dor Universal de DispositivosMPLAB PM3. Además, elPICkit™ 2 Starter Kit(DV164120) permite que losingenieros se introduzcan enel desarrollo con la familiaPIC16F616/HV616 demanera sencilla y econó-mica. El kit utiliza una cone-xión USB 2.0 de alta veloci-dad, lo que permite una pro-

gramación más rápida y laactualización del firmware, yproporciona asimismo unafuente de alimentación parael programador y una tarjetapara la aplicación corres-pondiente.Los microcontroladoresPIC16F616/610 yPIC16HV616/610 están dis-ponibles en encapsuladosPDIP, SOIC, TSSOP y QFN de14 patillas. El PIC12F615/609y el PIC12HV615/609 estándisponibles en encapsuladosPDIP, SOIC, DFN y MSOPde 8 patillas. Todos los dis-positivos están disponiblesya para muestreo en sam-ple.microchip.com y paraproducción en volumen enwww.microchipdirect.com.

elektor 22

INFORMÁTICA Y MERCADO NOTICIAS

El DA-07 de la firma FADISEL,realiza funciones de grabadoro temporizador por presenciade tarjeta en el lector. En su fun-ción de grabador permite asig-nar entre 1 y 120 créditos portarjeta. Como temporizador,mientras la tarjeta se mantengaen el lector, el módulo descon-tará y consumirá uno a uno loscréditos almacenados en ésta.El tiempo asignable por créditoes ajustable entre 1 y 120 seg.

Incorpora controles localespara el grabación, alta, baja,saldos consulta y “Setup” delas tarjetas. Permite el cambiodel número de serie para uti-lizar varios controladores enun mismo recinto. La salida serealiza a relé. Incluye leds deseñalización, lector-grabador,y bornes de conexión.

Más información en www.fadisel.com

DA-07 Temporizador con Tarjetas Xip

costes extras. Los dos nuevosmodelos se benefician delchipset Intel® 852GM+ICH4que hace posible un desplie-gue rápido para maximizarlas ventajas competitivas.

AXIOMTEK Iberia, com-pañía líder en sistemas ycomponentes industriales yembebidos, ha introducidodos paneles PC industrialesde 15” para aplicaciones enentornos adversos.El PANEL1151-807 y elPANEL1151FL-807, que sonlos modelos más económicosdel mercado, soportan socket478 para procesador Intel®Pentium® M e Intel® Cele-ron® M de 800 MHz de ultrabaja tensión, respectivamente. Ambos paneles PC estánequipados con un displayLDC TFT XGA de 15” y cum-plen con el estándar decompatibilidad de panelfrontal NEMA 4/IP65, con-virtiéndose en la elecciónideal para aplicaciones HMI(Human Machine Interface)industriales y rugerizadas. Estas soluciones económicasde AXIOMTEK ofrecen ele-vada calidad y permiten alusuario obtener un magníficorendimiento de sistema sin

Además, el PANEL1151-807y el PANEL1151FL-807 tam-bién se caracterizan por FastEthernet dual, tres COM, múl-tiples puertos I/O, fuente dealimentación AC y DC, dos

slot de expansión y socketCompactFlash™ Tipo-II, asícomo soporte para los siste-mas operativos Windows®CE.NET, Windows® XPembebido y Linux Kernel 2.4.

temperatura de ±0.16 ppm,y se encuentra disponiblecon un rango operativo de -20 a +70 °C. También

Rakon, empresa represen-tada en España por Ana-tronic, S.A., ha introducidoun nuevo oscilador de cristal

con temperatura compen-sada (TCXO) de elevadaestabilidad en un encapsu-lado de 5 x 3.2 mm.

El IT5300D emplea un ICanalógico para la compen-sación de temperatura, ofre-ciendo una estabilidad de

AXIOMTEK Iberia anuncia nuevos paneles PC industriales Pentium M

Nuevo oscilador miniatura TCXO de elevada estabilidad

existe una versión con unrango de -40 a +85 °C yuna estabilidad de frecuen-cia de ±0.28 ppm. Las frecuencias que están dis-ponibles, de 10 a 52 MHzcon onda senoidal o salidaHCMOS. La nueva unidadtambién ofrece un rendi-miento superior de rudio defase y puede operar concualquieer tensión de ali-mentación de 2.7 a 5.5 V. El IT5300D es ideal para usoen multitud de aplicaciones,incluyendo receptores GPSde interior y comunicaciónpor satélite, sistemas de emer-gencia COSPAS / SARSAT,estaciones base celulares,transmisores y redes. Ade-más, el nuevo TCXO dota de

compatibilidad Stratum 3para sistemas de telecomuni-caciones SDH / SONET.

Por lo tanto, cuando una apli-cación requiere la máxima esta-bilidad posible en un encapsu-

lado pequeño, el IT5300D seconvierte en la mejor soluciónTCXO del mercado.

Los módulos educacionalesCEBEK, están indicados espe-cialmente para la enseñanza yla práctica de la electrónica. LaEdu-003 reparte en cinco expe-rimentos los principios y carac-terísticas y código de la resis-tencia de carbono, el resultadoeléctrico de aplicarla en distin-tas configuraciones, y el omni-presente teorema de Thevenin.Para la realización de las dis-tintas prácticas, el módulo sola-mente precisa de un alimenta-dor, y un multímetro. El resto deoperaciones se realiza con loselementos propios del circuito.

Se incluyen referencias técni-cas que permitirán al alumnoprofundizar en cada campoexperimental.Práctica 1. Definición de la Resis-tencia. Comportamiento en Serie.Práctica 2. ComportamientoResistencias en Paralelo, ten-sión y corriente.Práctica 3. El Divisor de Tensión.Comportamiento y cálculos.Práctica 4. Teorema de Theve-nin, Resistencia de Thevenin.Práctica 5. Teorema de Norton.Práctica 6. Auto configura-ción Serie - Paralelo. Controlde tensión y corriente.

EDU-003 Módulo para la práctica de la Electrónica. La resistencia

Más información en www.fadisel.com

elektor 26

INFORMÁTICA Y MERCADO NOTICIAS

Advantech Co., Ltd., em-presa representada en Es-paña por Ibérica de Com-ponentes, S.A., anunciaun nuevo sistema 4U pre-con-figurado de elevado rendi-miento alimentado por pro-cesadores Intel® Pentium® 4,que permiten transformar unPC industrial en una unidadvistosa que desarrolla larobustez necesaria para suuso en entornos rigurosos. El SYS-4U4320-2S01 estáequipado con una nueva gene-ración de procesadores Intel yun backplane PCI / ISA esca-lable, ofreciendo una soluciónindustrial fiable y eficiente. Diseñado con el chipset Intel915GV, el nuevo sistema 4Usoporta procesadores Pen-tium® 4 de elevado rendi-miento de hasta 3.8 GHzjunto con anchos de bandade 800 MHz FSB. El sistematiene una arquitectura dememoria muy escalable, contecnología DDR2 de canaldual, permitiendo un amplioancho de banda de DDR2

533 MHz a velocidades detransmisión de hasta 8.5 GB/μs. Además, el chipset915GV integra el Intel MediaAccelerator 900 para des-arrollar calidad visual y exce-lente rendimiento 3D a unmenor coste. El SYS-4U4320-2S01 destacapor un gran número de inter-faces I/O. Los conectores delUSB frontal ofrecen enlaces deelevada velocidad que permi-ten al usuario incorporar fácil-

mente dispositivos USB. Laconectividad se completa conpuertos serie, paralelos, PS/2,VGA y LAN. También integraun controlador Gigabit Ether-net que hace posible que elsistema desarrolle elevado an-cho de banda, y GigabitEthernet de hasta 2 Gbps. El nuevo sistema posee dosbandejas SATA HDD deacceso frontal para soportarHDDS con una tarjeta RAID,así como dos bahías de 5.25”

y una bahía de 3.5” paradrive óptico, disco floppy odisco duro adicional. Graciasa los backplanes PCI e ISA, elSYS-4U4320-2S01 soportadiez slot PCI y dos slot ISApara dotar de gran capacidadde expansión para el futuro. Por lo tanto, este sistema demontaje en rack 4U es idealpara aplicaciones industria-les que demanden fiabilidad,rendimiento y capacidad deexpansión.

bisagras que facilita la insta-lación y el mantenimiento.La disposición de las placasde mecanismo en sentido hori-zontal contribuye a colocar ungran número de elementos ypermite que la altura total de

CYMEM, S.A., empresa líderen el desarrollo y fabricaciónde componentes y equipospara telecomunicación, infor-mática y electrónica, anunciasus torretas de suelo TM-6,que están especialmente dise-

ñadas para suelos en los quela instalación de cajas empo-tradas es compleja o no sedispone de espacio suficiente.Las cajas verticales TM-6 sebasan en una caja de superfi-cie del tipo TM-8 y poseen

todas sus características técni-cas y facilidades de instala-ción, disponiendo además deuna peana robusta para aislarla caja del suelo. La torretatiene un acceso total al interior,ya que tiene una tapa con

Sistema de montaje en rack 4U industrial con procesador Pentium 4

Torretas de conexión para entornos ofimáticos e industriales

más comandos de accesoespecíficos para receptoresDTMF Cebek, con los que estotalmente compatible.Incluye también una memoriacon capacidad para 10teclas o tonos, que en casode ser activada, la inserta yreproduce automáticamente,a modo de prefijo sobrecada tecla pulsada.

Otro de los productos destaca-dos del catálogo de Fadisel es elDTMF-1, que reproduce sobreuna salida de 5 V. D.C. lostonos DTMF correspondientes alas teclas 1 a 9, * y #, delteclado que los compone.Esta funcionalidad le permitegenerar secuencias de con-trol sobre receptores remotosde DTMF, incorporando ade-

Especialmente indicado paratransmisión de codigos a tra-vés del teléfono, radio-aficio-nado, o llave DTMF remotacon control de hasta 8 sali-das mediante los módulosDTMF-2 o DTMF-3 de CEBEK.Admite instalación en Carril-din ref Cebek C-7563.

Más información en www.fadisel.com

DTMF-1 Emisor/Generador DTMF

la torreta sea mínima, sin afec-tar a los faldones de las mesasde los usuarios. Las torretas TM-6 también sepueden instalar en entornosindustriales, colgándolas en lostechos para dar servicio a ope-rarios y diferentes equipos. Sucomportamiento, en estas apli-caciones industriales, es excep-cional debido a su solidez y lacalidad de los materiales emple-ados en la fabricación (alumi-nio y plásticos de gran resisten-cia). Además, unos pequeñosraíles permiten atornillar regle-tas, circuitos impresos y otroselementos a sus paredes. Los modelos TM-6 hacen posi-ble la incorporación de ele-mentos de protección, disyun-

tores o placas PTM y posibili-tan el acople de dos torretasentre sí por la parte posterior,ya que carecen de rebordes.Las paredes laterales estánfabricadas con plásticosautoextinguibles clase V.0.,según la norma UL94, sonlibres de halógenos y tienenun tratamiento contra losrayos ultravioletas. Todos los productos deCYMEM, que son de diseñopropio, están amparados porpatentes internacionales y sefabrican de acuerdo a las nor-mas de calidad más exigentes.

elektor 27

CD-ROM del mesEl CD de este mes realizado en colaboración Arrow Ibérica incluyeinformación sobre los microcontroladores y dispositivos de NECElectronics. En el interior encontramos la descripción de lasdiferentes familias de microcontroladores de la casa NECElectronics como son las series 78K, 78KOR y V850 de 8-bits, de16-bits y de 32-bits.

Explorando el CD encontrará cuatro carpetas, de ellas tres carpetasestán referenciadas a cada familia de microcontroladores y lacuarta incluye una presentación de los diferentes microcontroladoresy dispositivos de la casa NEC Electronics.En la página web de NEC Electronics puede encontrar y descargardocumentación y herramientas de desarrollo para realizar losproyectos:

78K: En las tres carpetas que encontramos, disponemos de informacióncomo notas de aplicación, manuales de los microntroladores de 8-bits, así como información sobre las herramientas de desarrollo.

78KOR:En está carpeta encontramos la descripción de la serie de losmicrocontroladores de 16-bits.

V850:Encontramos información y descripción de las familias de 32-bits,así como notas de aplicación.

Cajas verticales para instala-ciones con cableados en falsosuelo o techo.

BFI Optilas, División Lá-ser y Optoelectrónica,presenta la amplia gamade gafas de protecciónante la radiación de láserde Laservision, que ofrecela máxima seguridad ycomodidad para la plantillade laboratorios y centrossanitarios, y cualquier per-sona expuesta a este tipo deradiación.Las gafas, que poseen elmarcado de calidad CE, secomponen de filtros y mon-tura. Los filtros determinan eltipo de protección (láserescw y pulsados), mientras quela montura, gracias a la tec-

elektor 28

INFORMÁTICA Y MERCADO NOTICIAS

CMATIC, S.L., empresa líderen el suministro de materialespara redes LAN, ofrece diver-sas promociones para aque-llos clientes que adquieransoluciones de comprobación ycertificación de Fluke Net-works antes del 31 dediciembre de 2006. Los clientes se pueden bene-ficiar de las siguientes ofer-tas: regalo de cinco juegosPM06 al comprar un certifi-cador DTX-1800; treinta porciento de descuento por laadquisición del certificadorDTX-10GB-KIT SK, regalo deun microscopio de 200 o400 aumentos al comprar unmódulo multimodo o mono-modo serie 2 para certifica-ción de fibra para el DTX;treinta por ciento de des-cuento y microscopio gratisal adquirir módulos recondi-cionados de fibra; regalo deun detector PoE con la com-pra de un LinkRunner, Net-Tool o CableIQ. Además, CMATIC continúa el“Plan Renove” al comprar unmodelo OptiFiber, que con-siste en recibir 3000 euros al

entregar el OTDR antiguo, yofrece un treinta por cientode descuento en el módulomonomodo al adquirir un Kitmultimodo OF-500-01 osuperior.

CMATIC es distribuidorautorizado de las solucio-nes innovadoras de FlukeNetworks para aplicacionesde comprobación, monitori-zación y análisis de redes

corporativas y de telecomu-nicaciones, así como la ins-talación y certificación dela fibra y el cobre que for-man la base de dichasredes.

CMATIC presenta sus promociones para el tercer trimestre del año

Gafas de protección ante la radiación de láser

La compañía ofrece múltiples ofertas al comprar soluciones de Fluke Networks.

nología SPLIT-SHIELD, esajustable y ofrece el máximoconfort. BFI y LASERVISION presen-tan la mayoría de monturasen dos versiones: una parafiltros con los niveles de pro-tección necesarios para

láseres de baja potencia, yotra con una cubierta metá-lica (refuerzo) en la parteinterna de la propia mon-tura para láseres de elevadapotencia. Toda la gama de gafas cum-ple con la reglamentación

vigente, que establece que lamontura debe ofrecer elmismo nivel de protección deradiación que los filtros, yaque estos filtros también tie-nen que evitar que el haz deláser alcance los ojos (pro-tección lateral).

Además, los filtros de lasgafas LASERVISION, que for-man una unidad inseparablecon la montura, dotan deprotección ante una ampliavariedad de longitudes deonda de diodo, por ejemplode 625 a 820 nm.

elektor 29

BFI Optilas, DivisiónComponentes, ha amplia-do su gama de núcleos deferrita para supresión EMIcon la introducción de losnuevos núcleos “LFB” de bajafrecuencia de Steward. Estos dispositivos LFB ofrecenuna excelente impedanciacon frecuencia menores, asícomo una atenuación óptimade EMI de entre 500 KHz y10 MHz. La gama de materiales LFBestá especialmente indicadapara uso en diversas confi-guraciones de giro para mul-tiplicar la impedancia. Cadagiro de cable puede cuadru-plicar la impedancia. Los nuevos modelos, disponi-bles con materiales LFB, sonuna solución muy económicade núcleos de ferrita cilíndrica

para cables y arneses decableado que tengan los tama-ños estándares de la industria.

Las aplicaciones típicas para lasnuevas ferritas EMI con materialLFB son fuente de alimentación

de conmutación, filtros EMI en elsector de la automoción y supre-sión EMI en motores AC / DC.

Nuevas ferritas EMI de baja frecuencia

DIODE, distribuidor exclu-sivo de Wavecom paraEspaña y Portugal, anunciala total disponibilidad de losWireless CPU GR64 y GS64con la nueva versión de soft-ware R2. Los módulos GR64 y GS64de Wavecom, que cumplencon la directiva europeaRoHS, son Dispositivos RadioCompactos CuatribandaGSM / GPRS clase 10 yestán optimizado para lascomunicaciones M2M. Su funcionalidad es compa-rable a la de los módulos

DIODE presenta en exclusiva los módulos GR64 y GS64 con la nuevaversión de software R2

GM47 / GM48 y GR47 /GR48, ofreciendo un ampliorango de funciones para vozy datos. Además, el GR64aparece como la mejoropción de migración paraequipos con módulos de lafamilia anterior, debido a su

compatibilidad tanto dehardware como de software. Estos Wireless CPU incorporansustanciales ventajas frente a laanterior versión R1C, talescomo mejora del funciona-miento del protocolo 07.10MUX; introducción del modo

Autonomous sleep-mode, quepermite a cualquier aplicaciónque no utilice todos los pins dela UART emplear el modo debajo consumo; soporte parazumbador, tonos de llamada yfunciones de programacióninterna; y nuevos comandos AT.

Los módulos GR64 yGS64, pertenecientes ante-riormente a la familia deSony Ericsson, pasan atomar un puesto de rele-vancia y complemento enla gran familia de WirelessCPU de Wavecom.

elektor 30

INFORMÁTICA Y MERCADO NOTICIAS

Fluke Networks ha anun-ciado hoy el lanzamiento denuevas funciones para su lagalardonada herramientaEtherScope Serie II NetworkAssistant.Las nuevas funciones de lec-tura de seguridad y localiza-ción reducen el tiempo nece-sario para la detección devulnerabilidades en las redesinalámbricas de área localen un 75%, en comparacióncon las tarjetas habituales deradio que utilizan una antenaomnidireccional. La avanzada función dedetección WLAN utiliza unaantena externa y direccionalpara identificar y localizar laubicación de los puntos deacceso inalámbricos no auto-rizados (como puntos deacceso en techos o pisossuperiores e inferiores), loque agiliza enormemente elproceso de detección en esta-blecimientos de varios pisos.Gracias a las nuevas funcio-nes, en combinación con elpaquete portátil y ligero deEtherScope y una pantallatáctil, fácil de leer y en color,los usuarios podrán encontrarpuntos de acceso vulnerablesmás rápido y fácilmente quenunca.

Nueva comprobaciónexhaustiva basada en RFCOtra de las nuevas caracte-rísticas de EtherScope es lacapacidad de comprobar elrendimiento de los enlaces de

redes LAN y WAN mediantelos procedimientos de com-probación de gran acepta-ción RFC 2544. EtherScopeSerie II Network Assistantincorpora las comprobacio-nes RFC 2544 que permitenmedir la capacidad de trans-

misión, la latencia y la pér-dida de tramas. Estas prue-bas vienen ahora integradasen las opciones InternetworkThroughput y Traffic Genera-tor de EtherScope. Los responsables de redes yproveedores de servicio dis-

ponen ahora de la capaci-dad de comprobar el rendi-miento de las redes utili-zando un procedimientorápido, sencillo y basado enRFC. Las empresas de teleco-municaciones pueden docu-mentar los niveles de rendi-miento que ofrecen a susclientes. Los responsables deredes pueden comprobar queel ancho de banda que reci-ben del proveedor de servi-cios se corresponde con elque han contratado.

Compatibilidad con elidioma rusoAdemás de las nuevas com-probaciones RFC 2544 y lalocalización avanzada deWLAN, EtherScope ahoraincorpora soporte para elidioma ruso, como lenguaque el usuario puede elegir.Ahora la interfaz de usuario,todas las aplicaciones deescritorio de la unidad, losencabezados de los informesy las pantallas de ayuda deEtherScope están disponiblesen 8 idiomas distintos (Inglés,Chino, Francés, Alemán,Japonés, Portugués, Españoly Ruso), lo que permite queEtherScope Network Assistantse adapte por completo a lanaturaleza transnacional delas redes.

Disponibilidad de losproductosEtherScope Serie II NetworkAssistant ya está disponiblede manera inmediata a tra-

EtherScope Network Assistant reduce en un 75% el tiempo de detecciónde vulnerabilidades en redes WLAN

La nueva función de seguimiento direccional permite identificar ylocalizar rápidamente puntos de acceso inalámbricos no autorizados.

HBM, fabricante de equiposy componentes para lamedida de magnitudes mecá-nicas y pesaje, ha ampliadosu sistema multifuncional deamplificación de mediciónMGCplus con una placa deconexión de cuatro canalespara la medición de señaleseléctricas. La nueva AP402ies capaz de procesar tensio-nes de ±1 hasta ±60 V ycorrientes (±20mA). Por lotanto, en una sola caja de16 ranuras pueden proce-sarse simultáneamente hasta64 canales.Gracias al reconocimientodel transductor con TEDS(Transducer Electronic DataSheet) conforme a la normaIEEE1451.4, es posible con-figurar los canales de en-

trada en pocos segundos,aumentando así la fiabilidadde la adquisición de datos.Mediante un enchufe Lemosamacho de seis polos, se pue-den conectar de forma senci-lla todo tipo de transductoresactivos con las entradas detensión y de corriente. La ten-sión de alimentación para laelectrónica externa del trans-ductor puede suministrarseasimismo a través de laplaca de conexión. Cada entrada de mediciónqueda aislada eléctricamentehasta un máximo de 500 V.

La tarjeta procesadora Kon-tron AT8020 AdvancedTCAofrece un rendimiento de sis-tema excepcional mediantedos procesadores Dual-CoreIntel® Xeon® LV de 2.0 GHzque se caracterizan por tec-nología multi-núcleo y 2 MBde caché de segundo nivel.Esta plataforma informáticaintensiva es extremadamente

Kontron, líder del mer-cado en tecnología infor-mática embebida y miem-bro Premier del Intel® Com-munications Alliance, hadesarrollado la tarjeta pro-cesadora Kontron AT8020AdvancedTCA. Diseñadapara cumplir las necesida-des de los principales fabri-cantes de equipos de tele-

comunicaciones (TEM), elmodelo AT8020 se caracte-riza por dos procesadoresDual-Core Intel® Xeon® LVde 2.0 GHz y soporte parados módulos AdvancedMC.El resultado es una plata-forma abierta de procesomodular que incrementaráel número de desplieguesde soluciones AdvancedTCA

en el núcleo de cada ele-mento de red computer-intensive mobile-IMS, desdela codificación de conte-nido móvil multimedia enun Procesador de Funciónde Recurso Multimedia(MRFP) a proceso simultá-neo de datos de abonadoen sistemas Home Subscri-ber Locator (HLR).

vés de los canales de ventade Fluke Networks de todo elmundo. Las comprobacionesRFC 2544/ITO y el análisisWLAN, incluida la funciónde localización direccional,están disponibles como com-ponentes opcionales. Losusuarios actuales de EtherS-cope pueden adquirir estos

componentes como actuali-zaciones.

Acerca de Fluke NetworksFluke Networks ofrece solucionesinnovadoras para aplicaciones decomprobación, monitorización yanálisis de redes corporativas y detelecomunicaciones, así como lainstalación y certificación de la

fibra y el cobre que forman la basede dichas redes. La línea NetworkSuperVision™ Solutions de la com-pañía dota a los instaladores, pro-pietarios y gestores de red de unavisión superior, combinando veloci-dad, precisión y facilidad de usopara optimizar el rendimiento dered. Con sede en Everett, Washing-ton (Estados Unidos), la compañía

distribuye sus productos en más decincuenta países. Se puede encon-trar más información visitando lapágina Web de Fluke Networks enwww.flukenetworks.com o lla-mando al teléfono 914 140 113.

Para más información:Fluke Networkswww.flukenetworks.com/etherscope

elektor 31

Nuevo sistema de amplificación demedición MGCplus

Kontron cambia el paradigma de proceso de aplicaciones de redes móviles con su plataforma AdvancedTCA basada en dos procesadores Dual Core Intel® Xeon®

La placa de conexión AP402ipermite el procesamiento de

tensiones de hasta 60 V ycorrientes con TEDS.

atractiva para un ampliorango de aplicaciones enredes móviles que requierenelevada potencia de pro-ceso, tales como transcodingde contenido multimediamóvil y proceso simultáneopara sistemas HLR. Otra característica única deesta tarjeta son sus dos sitiosAdvancedMC de medianotamaño para diseños amedida con hasta 16 GB deDDR 400 Registered ECCSDRAM y un tejido de con-mutación mezzanine flexibleque destaca por CrossSwitchpara SAS y Ethernet. Elmodelo AT8020 ha sidodiseñado con un Subsistemade Sincronización de Redpara ofrecer soporte de reloje integrarlo con una ampliavariedad de módulos AMCI/O de telecomunicaciones,tales como T1/E1, OC-3 yotros muchos. La tarjeta Kontron AT8020 seintegra con el chipset Intel®E7520 con GFSB de 667MHz y soporte para PCI

Express™. También incluyedos 10/100/1000 MbpsEthernet traseros (Base Inter-face), Dual-Dual 1000Base-BX Ethernet, un RJ45 serie,un USB 2.0 frontal y10/100BaseT, y SAS víaRTM.

Beneficios de la tecnología Intel Dual-CoreLos procesadores dual-coreIntel Xeon se dirigen a entor-nos de elevadísima densidadque requieren menor con-sumo de potencia y estánoptimizados para desarrollar

un rendimiento energéticomuy eficiente. Por lo tanto, latarjeta Kontron AT8020 esuna plataforma escalable eideal para ofrecer más ren-dimiento por vatio y perma-necer en el ratio Advan-cedTCA de 200 W.

elektor 32

INFORMÁTICA Y MERCADO NOTICIAS

La compañía desarrolla la tarjeta procesadora AdvancedTCA con prestaciones de red y eficienciade potencia sin precedentes.

Kontron introduce el mo-delo ETX® miniBaseboard,una placa base ETX extrema-damente compacta paradiseños compatibles con ETX3.0, con unas dimensionesde 130 x 155 mm. Estanovedad opera como unaplataforma de desarrollo uni-versal para módulos ETX 3.0y es completamente back-ward compatible con sus pre-decesores ETX. Todos los interfaces state-of-the-art permiten acelerar eltest de aplicación en estaplataforma con rendimientode procesador escalable,ahorrando tiempo y dinero.

Primera placa base extremadamente compacta para ETX® 3.0

ETX® miniBaseboard ofrecetodo lo necesario en 130 x

155 mm.

Los clientes OEM tambiénpueden emplear el ETX mini-Baseboard como un pro-ducto estándar para sus apli-caciones finales. Como elresto de modelos ETX deKontron, los OEM se benefi-cian de disponibilidad alargo plazo, construcciónrobusta, diseño de test defunción y diversas caracterís-ticas gracias a la compatibi-lidad ETX 3.0.

Con unas dimensiones de 130x 155 mm, el nuevo miniBase-board con compatibilidadRoHS es ligeramente mayor aun módulo ETX (95 x 125 mm).Como resultado, se puede inte-grar como una placa baseextremadamente compacta encasi cualquier aplicación embe-bida fácilmente. Los interfacesde comunicación integradosson slot PCMCIA de 32 bit,cuatro USB, slot PCI de 32

bit, cuatro interfaces serie ydos interfaces Ethernet con10/100/1000 o 10/100 Mb. Además, los medios de alma-cenamiento se pueden conec-tar a módulos ETX con compa-tibilidad ETX 3.0 vía dos inter-faces SATA. La tarjeta tambiénofrece un slot de tarjeta CF ydos interfaces IDE. Los panelesplanos se controlan a través deun interface LVDS estandari-zado, mientras que gráficos

adicionales se conectan me-diante una salida VGA (SUB-D). Un LPT (SUB-D), dos PS/2 eI/O de audio estéreo a travésde un enchufe de 3.5 mm,completan las características. Se encuentra disponible unacopia de la especificaciónETX para su descarga onlineen la página web de ETXIndustrial Group (www.etx-ig.com) y en las delegacio-nes de Kontron.

elektor 33

C&D Technologies, em-presa representada en Españapor Lober, S.A., ha introdu-cido un nuevo convertidoranalógico a digital (ADC) conresolución de 14 bit y 10MSPS dual sampling total-mente integrado. El modelo ADSD-1410, quecomplementa al dispositivoADSD-1402S de C&D, es unmódulo con funcionalidad com-pleta en un encapsulado SMTde 40 pines que se presentacon dos rangos de temperaturaoperativa (estándar y militar). El nuevo convertidor A/Ddual sampling se dirige a sis-temas de adquisición dedatos de elevada velocidad,instrumentación médica,radares I/Q, DSP y ATE paraaplicaciones comerciales ymilitares.

Por lo tanto, este convertidor de10 MHz y 14 bit ofrece rapi-

dez y elevada resolución, con-virtiéndose en la solución per-

fecta para aquellas aplicacio-nes que demandan bajo ruido.

tiva RoHS, así como unaamplia posibilidad de elec-ción de tensiones deentrada y trimming desalida para dotar de lamáxima versatilidad. Para complementar la gamaInnoveta de convertidoresde punto de carga y mon-taje en superficie, con unaeficiencia líder en la indus-

Lambda, compañía líder enla fabricación de fuentes dealimentación, introduce unanueva gama de convertido-res DC-DC de la familia TDKInnoveta. Combinando elevada efi-ciencia y fiabilidad con unprecio muy competitivo, losnuevos productos se encuen-tran disponibles en diferentes

versiones, desde convertido-res de punto de carga (POL)en encapsulados DOSA conuna potencia de pocos vatiosa modelos “full brick” quedesarrollan 700 W. Los convertidores TDK Inno-veta, que incorporan tecno-logía de rectificación sín-crona de MOSFET de bajapérdida y se benefician de

una construcción magnéticaplana, están especialmenteindicados para uso en apli-caciones de potencia distri-buida y telecomunicaciones,incluyen ATCA. Todos los modelos de estafamilia ofrecen elevadadensidad de potencia, fácilgestión térmica y compati-bilidad total con la norma-

Nuevo convertidor A/D dual sampling de 10 MSPS

Nuevos convertidores DC-DC para aplicaciones de potencia distribuida ytelecomunicaciones

Desarrolla el máximo rendimiento en sistemas de adquisición de datos de elevada velocidad.

tria del 95%, la compañíatambién posee modelos BUSConverter con entrada /salida dividida en un ratiode conversión 4. Los convertidores pico-brickde la familia Innoveta, quemiden 30.5 x 29.3 x 8.1mm, pueden desarrollar sumáxima potencia con tempe-raturas de hasta +70 °C y seencuentran disponibles de1.2 a 18 V. Lambda ha incorporado lafamilia Innoveta de converti-dores DC-DC a su catálogode productos como conse-cuencia de su adquisición porparte de TDK el año pasado.

elektor 34

INFORMÁTICA Y MERCADO NOTICIAS

La familia TDK Innoveta ofrece eficiencia y fiabilidad a un precio muy competitivo.

Livingston, uno de los mayo-res proveedores independien-tes de equipos de prueba ymedida de ocasión de los prin-cipales fabricantes mundiales,anuncia su campaña especial“fin de año”, mediante la cualpone a la venta una ampliagama de productos con unahorro de hasta el ciencuentapor ciento en comparacióncon el precio del fabricante. Estos equipos de medida yprueba ofrecen múltiples ven-tajas, además de las econó-micas, tales como disponibili-dad inmediata del stock,garantía íntegra de docemeses y suministro de un certi-ficado de calibración, posibi-lidad de extensiones de garan-tía, control del funcionamientode los dispositivos (segúnespecificaciones del fabri-cante) y garantía de 7 días(satisfacción o devolución).

La lista de productos de estacampaña incluye equipos deprueba y medida de losfabricantes más prestigiososdel mercado para múltiplesaplicaciones, destacandoradiodifusión, transmisión dedatos, instrumentación gene-ral, industrial, óptica, radio-

frecuencia, acceso y comuni-cación sin hilos. Agilent, Anritsu, Keithley, Rhode& Schwarz, Sorensen, Tektro-nix, Yokogawa, Flir Systems,Sefran, Acterna, NetTest, Birde IFR son algunas de las mar-cas presentes en la campañaespecial “fin de año”.

Livingston también ofreceasesoramiento técnico paraayudar en la elección dedel equipo más adecuadoen función de los requeri-mientos del cliente, envian-do la documentación nece-saria con todas las especifi-caciones.

aparecen fichas de nuevosproductos y artículos divul-gativos de carácter técnico,ofrece información nove-

OPTRAL, S.A., compañíalíder en el sector de comuni-caciones ópticas, diseñando,fabricando y comerciali-

zando cables de fibra ópticay equipos optoelectrónicospara la transmisión de voz,video y datos, presenta su

nuevo boletín electrónico“OPTRAL INFORM”. Esta publicación gratuita enformato electrónico, donde

Livingston presenta su campaña especial “fin de año”

Nuevo boletín electrónico “OPTRAL INFORM”

La compañía pone a la venta una amplia gama de equipos de medida y prueba con un ahorro dehasta el cincuenta por ciento.

dosa y de interés para mejo-rar la calidad y las presta-ciones de las instalaciones ymontajes de los clientes dela compañía. Como ejemplo, el primerboletín incluye informaciónde los cables tácticos milita-res de OPTRAL, que poseenmejoras de resistencia a latracción y al aplastamiento yde las características mecá-nicas de las cubiertas. “OPTRAL INFORM” es unejemplo más de la amplia-ción de la red de servicio alcliente de la compañía, ofre-ciendo la respuesta eficaz,completa y de calidad quedemanda un mercado tandinámico como este. Para recibir de forma gratuita“OPTRAL INFORM”, sólo hayque dirigir un e-mail a la com-pañía ([email protected]), indi-cando la dirección, el correoelectrónico y los datos identi-ficativos del interesado.

elektor 35

PRÓXIMO MES EN ELEKTOR PRÓXIMO NÚMERO

Antenas WLAN en la prácticaLas redes Wireless, en la mayoría de hogares con dos o más ordenadores, evita que teng-

amos que usar cables. Las antenas en la mayoría de productos WLAN no son adecuadas paracubrir distancias mayores de unos pocos metros, así que en el número siguiente mostramos

cómo cubrir mayores distancias para dos antenas direccionales de 2,4 GHz.

Receptor de onda corta DDSPresentamos un receptor de cobertura general de (150 kHz – 30 MHz) AM/FM/SSBcon algunas formidables características como un chip DDS para la sección VFO y una sal-ida DRM para conectar a nuestro ordenador. El receptor está controlado por un microAtmel de 8 bit ARM. Otras características sobresalientes del receptor incluyen una res-olución de 10 Hz para sintonía fina, una antena activa interna que conmuta entre cuatroanchuras de banda que actúan en AM, FM, USB, LSB o transmisores DRM.

En la mayoría de las aplicaciones con microcontroladores,los programas deben ejecutarse de forma asíncrona conuna serie de eventos externos a la CPU, con el inconve-niente que ello puede suponer. Los sistemas que trabajan deesta manera se denominan "sistemas en tiempo real". Losprogramas en tiempo real, por lo general, no están escritosutilizando lazos de retardo de tiempo o de interrogación.Los problemas de control complejos pueden resolversedividiéndolos en módulos más pequeños. La "multitarea"es el proceso mediante el cual un programa conmutaentre un cierto número de tareas interdependientes bajoun programa de control.Existen distintas variedades de multitareas, en cada caso crea-mos la ilusión de un número de programas o partes de progra-mas, denominadas (dependiendo del sistema utilizado) "proce-sos", "tareas", o " hilos de ejecución ", que se están ejecutandode modo simultáneo. En el sistema operativo multitarea descritoen este artículo se usa el término "tarea". Aquí denominamos“mt” al sistema operativo escrito por Dieter Holzhäuser, un lectorde Elektor, ingeniero retirado y desarrollador de programas,.Para proporcionar la capacidad de multitarea a un microproce-sador simplemente necesitamos conmutar la ejecución desdeuna tarea a otra, de un modo suficientemente rápido.El funcionamiento en tiempo real se consigue de maneramás precisa cuando las tareas conmutan por medio de uncontrol de eventos, lo que se consigue bastante bien si nosfijamos en el hecho de que muchas tareas, especialmenteen aplicaciones de control, están normalmente en un estadodonde permanecen esperando la llegada de un evento enparticular y, posteriormente, continúan su ejecución.

Conmutación de tareaEl objetivo fundamental de un sistema multitarea es el deconmutar de tarea. En un sistema de control de eventos latarea correspondiente debe iniciarse tan pronto como seaposible, una vez que se ha producido el disparo delevento correspondiente.

TECNOLOGÍA MICROCONTROLADORES

36 elektor

Sistema operativo multitarea en tiempo real (RTOS)Dieter Holzhäuser y Burkhard Kainka

La multitarea es una manera elegante y sencilla de solucionar problemas complejos de con-trol, y las prestaciones en tiempo real no tienen por qué sufrir como consecuencia de ello.Unas pocas rutinas escritas en lenguaje C (y algo de disciplina por parte del programador)nos permiten obtener unas prestaciones satisfactorias de multitarea, incluso con microcon-troladores del tipo del R8C.

TASK P

START

SCHEDULER

060141 - 13

P1

P2

TASK S

S1

S2

TASK V

V1

V2

V3

Figura 1. Estructura de un programa mt (multitarea). El programa del usuario (mostrado en amarillo) está formado porvarias tareas que ceden el control al programa gestor de eventos (en verde), que normalmente se encarga de esperar lallegada de un evento. Antes de ello se llama a una función “mt” dedicada (en rojo), la cual lleva un registro del tiempode espera con el gestor de eventos. Esta llamada también especifica la función que el gestor de eventos tiene que iniciarpara continuar la tarea cuando se produzca dicho evento (o si el evento ya ha sucedido). Todas las tareas deben decomenzar utilizando una rutina de inicio (en azul).

El R8C con Multi-Funcion

Las tareas, por lo general, se ejecutan en un lazo infinito, elcual sólo puede detenerse por una interrupción. Una tareatambién puede ceder el control utilizando una llamada auna sub-rutina, proporcionada para este propósito, si nece-sita esperar la llegada de un evento en particular antes decontinuar su ejecución. Si se produce la conmutación deuna tarea, entrará en ejecución una tarea diferente. Por lotanto, el manejador de interrupciones, o sub-rutina, no tienenecesariamente que volver al punto desde el que había sidollamado, una característica no soportada por una gran can-tidad de los procesadores habituales. Es necesaria una pilaindependiente para cada tarea, de manera que se puedaimplementar este mecanismo. Por desgracia, cada tareahace uso de un precioso espacio de memoria RAM.El sistema “mt” elude este problema a costa de un par derestricciones menores. En lugar de estar escrita como si setratase de una única función que contiene un lazo infinito,una tarea “mt” está escrita como un número de funcionesindependientes que se llaman en cada momento, según nosinterese (lo que se traduce en un proceso infinito en símismo). Si una tarea necesita esperar la llegada de unevento, devuelve el control al sistema operativo, de maneraque dicha tarea no continúa su ejecución. Antes de haceresto, dicha tarea llama a una función especial, que seencarga de registrar qué función de la tarea tiene que serllamada cuando se produzca el evento ("almacenamiento").

Gestor de eventosEl gestor de eventos es el punto central de tratamiento delas funciones de tareas (ver Figura 1). Cuando una tareacede el control, vuelve de nuevo al gestor de tareas. En esemomento, el gestor de tareas llama a la función registradade la siguiente tarea, la cual está lista para ejecutarse por-que su evento, que había sido registrado, ya se ha produ-cido. Para más información al respecto, recomendamos anuestros lectores que lean el cuadro de texto correspon-diente sobre los estados que puede tener una tarea. Si nohay ninguna tarea lista para ejecutar, el gestor de tareas sesitúa en un lazo vacío. Si hay más de una tarea lista paraejecutar, se elige una de ellas, basándose en el orden de

registro y en la prioridad especificada por el programador.También podemos ver lo que un sistema multitarea no puedehacer: una interrupción no tiene por qué llevarnos a la con-mutación inmediata sobre una tarea. Una función de tareaque ha sido interrumpida continuará su ejecución despuésde la interrupción hasta que llegue, de modo natural, a sufin. Esto tan sólo es una desventaja importante si estamos tra-bajando con funciones de tareas de tiempo de ejecuciónlargo y se produce una interrupción en otra tarea que estálista para ejecutarse. En un sistema de tiempo real es mejorque se produzca la interrupción cuando el gestor de eventosesté en su lazo vacío: en ese caso, si una interrupción pro-voca que una tarea pase a su estado de “lista para ser eje-cutada”, el gestor de eventos la inicia de forma inmediata.Por supuesto, también permanece la posibilidad de escri-bir tareas que puedan proporcionarnos gran cantidad decálculos de un modo cooperativista, devolviendo el con-trol de forma voluntaria a intervalos de tiempo regulares.Cuando utilizamos funciones de librerías externas es necesa-rio verificar que se ejecutan lo suficientemente rápido paraque no afecte negativamente al proceso de las otras tareas.

Funciones “mt”Las tareas conmutan continuamente entre un estado dondeestán en ejecución y un estado donde están esperando lallegada de un evento. Durante el tiempo de espera de unatarea se estará ejecutando otra tarea o el propio gestor deeventos. Para cada tipo de evento existe su correspondientefunción “mt” que se encarga de registrar la tarea en esperay almacena la función que tiene que llamarse cuando seproduce el evento. Cuando se ha llamado a una de las fun-ciones “mt” la función de la tarea debe devolver el control,ya que en caso contrario la tarea donde vamos a conmutarestará esperando hasta que esto se produzca.Las funciones “mt” son independientes del sistema y podemosencontrarlas en el fichero fuente “mtsys.c”. (Normalmente losficheros del programa están disponibles para su descarga gra-tuita en las páginas del proyecto de la página web de Elektor).Existen funciones “mt” para los distintos tipos de eventos queun microcontrolador puede encontrar habitualmente en su fun-

37elektor

060141 - 12

R8CR8C

nalidades

cionamiento, tales como el tiempo de finalización de un tem-porizador y los cambios de nivel en los puertos de entrada. Eluso de los denominados "semáforos" proporciona la posibili-dad de que una tarea pueda generar, por sí misma, un eventopara otra tarea (vea el cuadro de texto correspondiente). En lapágina web de Elektor nuestros lectores podrán encontrarinformación adicional acerca de la descripción de otras carac-terísticas de los sistemas multitarea “mt”.El uso de las funciones “mt” puede verse más claramente conun ejemplo (vea el cuadro de texto correspondiente). En nues-tro caso, el microcontrolador R8C reproduce una melodía,enciende un diodo LED y mide una frecuencia (la cual es pro-ducida por él mismo), y ¡todo al mismo tiempo! La Placa deAplicación para el R8C de Elektor, publicada en el mes deMayo de 2006 es una plataforma de desarrollo ideal.

El siguiente pasoAunque el núcleo “kernel” proporciona una base potentepara el desarrollo de programas, a medida que los pro-blemas se hacen más complejos, es muy útil hacer uso demódulos ya desarrollados anteriormente (por nosotrosmismos o por terceros). Los siguientes módulos que seindican ya han sido desarrollados previamente:

• Interfaz de usuario con teclado y pantalla LCD.• Reloj DCF 77 con funciones de tiempo y hora.• Entradas / Salidas serie.• Interfaz de memoria flash (con compatibilidad “mt” limitada).

Estos módulos también están disponibles en la página webde Elektor, además de un artículo adicional que nos haceuna demostración del uso del módulo interfaz LCD (ver enla-ces más abajo). También se están desarrollando los elemen-tos necesarios para poder crear una red de microcontrola-dores R8C, de manera que se puedan distribuir tareas com-plejas sobre varios procesadores. Miren ese apartado.

(060141-I)

Enlaces en InternetDieter Holzhäuser: Email [email protected]

En las páginas del proyecto R8C, en la web de Elektor, podemosencontrar información muy completa acerca del microcontroladorR8C, además de artículos relacionados y productos. Los progra-mas del proyecto incluyen ejemplos que también están disponi-bles para su descarga gratuita en las páginas web de este artí-culo, junto con un artículo gratuito adicional de regalo.www.elektor.com.

TECNOLOGÍA MICROCONTROLADORES

38 elektor

Funciones “mt”void mtdelay (unsigned long a , void (*b) (void) );void mtcoop ( void (*a) (void) );void mtwait (char a, void (*b) (void) );void mtbitup (char*a , char b, void (*c) (void) );void mtbitdown (char* a, char b, void (*c) (void) );// en cada caso, el último parámetro indica// la función siguiente que tiene que ser llamada

• Temporizador: se puede establecer un tiempo de retardo, expresadoen milisegundos, mediante la función mtdelay().

• Cambio de bit: un programa puede reaccionar a un evento produci-do por un periférico esperando el cambio en un bit. En las funcionesmtbitup() (por un flanco de subida) y mtbitdown() (por un flanco debajada), “a” es un puntero a un registro, a un puerto o a un byte, mien-tras que “b” proporciona el índice del bit.

• Semáforos: las tareas son unas entidades totalmente indepen-dientes. A pesar de eso, deben ser capaces de influenciar unas

sobre otras y, por este motivo, se ha establecido el uso de semáfo-ros. Una vez que han sido definidos, pueden tratarse de manerasimilar a los semáforos de una carretera. Si el semáforo está vacío(activado), la tarea afectada debe esperar a que otra tarea lo con-figure (active). La función mtwait() crea un período de espera debi-do a un semáforo. El parámetro “a” especifica el semáforo por elque se está esperando.Las funciones signal(char) y addsignal(char) configuran los semáforos. Adiferencia de lo que sucede con las funciones “mt”, la función de unatarea no necesita estar acabada en dicho momento, aunque deberemosde considerar siempre si merece la pena permitir la posibilidad de queuna tarea conmute en ese momento.Los tiempos de retardo y los cambios de bits son eventos externos alprograma. Estos eventos aparecen a partir de un temporizador de inter-rupciones que debería estar configurado preferiblemente para que seproduzca a una frecuencia de 1 KHz. Un temporizador de interrupcio-nes regular es, por lo tanto, esencial para el funcionamiento del siste-ma. Por su parte, los semáforos son eventos internos al programa y nodependen de interrupciones para su funcionamiento. Si se requiere elacceso a interrupciones generadas por periféricos, los semáforos se

Figura 2. La placa de aplicación R8C de Elektor, publicada en el número de mayo de2006, es una plataforma ideal de desarrollo.

Estados de tareasUna tarea “mt” puede estar en uno de los siguientes cuatro estados diferentes:

• En ejecución: en un momento dado sólo puede estar en este estadouna tarea.

• Bloqueada: una tarea que está esperando la llegada de un eventoestá "bloqueada". Éste es el caso siempre que se está esperando la lle-gada de un evento externo como, por ejemplo, la finalización del tiempode un temporizador o el cambio de estado de un bit. Cuando se estáesperando debido a un semáforo, la tarea solamente se bloquea cuando

el semáforo aún no ha alcanzado su estado final: en el momento en queesto sucede la tarea pasa inmediatamente a su estado de "Lista para serejecutada". Esto también sucede cuando se llama a la función mtcoop()(véase cuadro de texto sobre eventos de “mt”). Si hay varias tareas queestán bloqueadas al mismo tiempo, se mantiene en una cola de espera.

• Lista para ser ejecutada: aquellas tareas cuyo evento se ha producido,pero que aún no están en ejecución (debido a que otra tarea está ejecu-tándose) están en modo ‘Lista para ser ejecutada’. Si existen varias tareasen este mismo estado, se mantiene una cola de espera para las mismas.

• Terminada: las tareas que ya han terminado solamente puedendevolverse a su estado de ejecución utilizando la función start().

39elektor

deben utilizar para cambiar una tarea a su estado de "Lista para serejecutada" dentro del propio manejador de interrupciones.

• mtcoop(): esta función no realiza ninguna espera. Se utiliza paraabandonar la función de una tarea o para ofrecer al gestor de eventos

la oportunidad para conmutar de tarea (también denominada ‘multita-rea cooperativa’). Para obtener más detalles acerca del uso de las funciones “mt” reco-mendamos a nuestros lectores que lean el fichero de cabecera mtsys.h.

Ejemplo mtdemo1.cLos ficheros de los programas para este ejemplo están disponibles parasu descarga en la página web de Elektor. La mejor manera de procederes la de crear un nuevo proyecto R8C, denominado ‘mtdemo1’, dentrodel directorio HEW, y copiar todos los ficheros dentro de él, sobrescri-biendo cualquier otro fichero que hubiese si fuese necesario.Utilizaremos la función “Project/Add files” (es decir, Proyecto / Añadirficheros) para traer a este proyecto todos los ficheros fuentes y cabece-ra necesarios en lenguaje C que aún no hayan sido incluidos en dichoproyecto. A continuación seleccionaremos el tipo de proyecto como‘Release’, inhabilitando la opción de depuración.

La estructura de un programa “mt” es siempre la misma. Todos los fiche-ros que se incluyen se nombran al principio del todo. A continuaciónsiguen la definición de las tareas y los nombres de los semáforos, loscuales están sencillamente desplazados dentro de una tabla o “array”.El propio “array” se define más tarde, aunque los parámetros relevantesde su tamaño (TLSIZE y SLSIZE) se definen en este momento.

Cada definición de tarea requiere 16 bytes de memoria RAM y cadadefinición de semáforo necesita un byte de memoria RAM.

#include “sfr_r813.h”#include “mtsys.h”

// nombre de las tareas, enumeradas de forma consecutiva apartir de 0

#define SIMU 0#define SCAN 1#define COPY 2#define VF 3#define PLAY 4// contador de tareas (el número de tarea más grande másuno, máximo 30)

#define TLSIZE 5

// nombres de semáforos, numerados de forma consecutiva apartir de 0

#define SCANSEM 0// contador de semáforos#define SLSIZE 1 // siempre se especifica SLSIZE (elnúmero de semáforo más grande más uno, máximo 255)

A continuación aparecen las tareas. Para hacer que el código escrito sea máscomprensible es una buena idea dar el nombre de las funciones utilizando elnombre de la tarea seguido por un número en secuencia que va aumentando.A continuación debemos de colocar aquellas funciones que van a ser utiliza-das pero que aún no han sido definidas. Dichas funciones deben de tener unadeclaración anterior en la forma de una función prototipo.

La tarea PLAY en una pieza de música utiliza la función Timer X, configura-da como un generador de frecuencia ajustable con su salida en p1_7 (ter-minal 8). En el modo salida de pulso no se necesitan las interrupciones, lascuales solamente son soportadas por la función Timer X. La función“play1()” de la tarea comienza una nota o una pausa de la duración apro-piada de la misma, mientras que la función “play2()” produce una brevepausa entre dos notas consecutivas. Seguidamente, la ejecución del pro-grama continúa con la ejecución de nuevo de la función “play1()”.

// PLAY: reproduce una melodía en p1_7#define C 238 // definiciones de notas#define Csharp 224 // relación de un semitono 1,059,relación de un tono completo 1,122

#define D 212#define Dsharp 200#define E 189#define F 179#define Fsharp 169#define G 159

#define Gsharp 150#define A 142#define Asharp 134#define B 127#define S18 5 // definición de la duración de una nota#define S14 10#define S38 15#define S12 20#define S34 30#define S11 40

#define SONG radetzky

conststruct {char f; char t;} radetzky [104 ] = {{sizeof(radetzky) / 2, 25}, //longitud, tiempo

{G ,S14}, {G ,S14}, {G ,S14}, {0 , S14},{B ,S14}, {A ,S14}, {G ,S14}, {0, S18}, {Fsharp, S18},

{E ,S18}, {Dsharp ,S18}, {E, S18}, {Fsharp ,S18}, {G,S14}, {A, S14},

{D ,S12}, {0 ,S14}, {B ,S18}, {Asharp, S18},{B ,S14}, {B ,S18}, {Asharp ,S18}, {B, S14}, {B,S18},{Asharp ,S18},

{B ,S14}, {A ,S14}, {G ,S14}, {B, S18}, {Asharp, S18},{B ,S14}, {B ,S18}, {Asharp ,S18}, {B, S14}, {B,S18},{Asharp ,S18},

{B ,S14}, {E/2 ,S14}, {D/2 ,S14}, {D/2, S18}, {B, S18},

{C/2 ,S14}, {E/2 ,S14}, {D/2 ,S14}, {D/2, S18}, {A, S18},{B ,S14}, {E/2 ,S14}, {D/2 ,S14}, {D/2, S18}, {B, S18},{A ,S14}, {Fsharp/2 ,S12}, {E/2 ,S14},{D/2, S14}, {D/2, S18}, {Csharp/2, S18}, {D/2, S18}, {E/2,S18}, {D/2, S18}, {C/2, S18},

{B ,S14}, {B ,S18}, {Asharp ,S18}, {B, S14}, {B,S18},{Asharp ,S18},

{B ,S14}, {A ,S14}, {G ,S14}, {B, S18}, {Asharp, S18},

{B,S14}, {B,S18}, {Asharp ,S18}, {B, S14}, {B, S18},{Asharp, S18},

{B,S14}, {E/2 ,S14}, {D/2 ,S14}, {D/2, S18}, {B, S18},{Csharp/2 ,S14}, {B/2 ,S14}, {A/2 ,S14}, {0 ,S14},{B, S14}, {A/2, S14}, {G/2, S14}, {0, S14},{Fsharp/2 ,S14}, {0 ,S18}, {E/2 ,S18}, {D/2, S18}, {C/2,S18},{B, S18},{A ,S18},

{G ,S14}, {G/2 ,S14}, {G/2 ,S14}, {0, S14},{0 ,2*S11}};

char pb = 1;void play1 ();void play2 () {

txs = 0;if (++pb == SONG[0].f ) pb = 1;mtdelay (25, play1);

}void play1 () {

if (SONG[pb].f) {tx = SONG[pb].f - 1;txs = 1;

}mtdelay ( (int)SONG[pb].t * SONG[0].t - 25 , play2);

}

La tarea VF genera una frecuencia variable sobre una salida que estáconectada a un diodo LED. Cada mitad del ciclo producido por la funciónvf1() tiene una duración aproximada del 10% más larga que la que se eje-cutó previamente. Cuando la duración alcanza los 700 ms la tarea proce-de a ejecutar la función f2(), la cual acorta cada mitad de ciclo en, aproxi-madamente, un 10%, hasta que la duración llega a ser tan sólo de 50 ms.En ese momento se activa de nuevo la función vf1() y el proceso se repite.

// VF: generate a variable frequency on p1_2

TECNOLOGÍA MICROCONTROLADORES

40 elektor

void vf1 ();int tvf = 100;void vf2 () {

tvf = tvf * 10 / 11;if (tvf < 50) mtcoop (vf1);else {

p1 = p1 ^ 0x08;mtdelay ( tvf , vf2);

}}void vf1 () {

tvf = tvf * 11 / 10;if (tvf > 700) mtcoop (vf2); else {

p1 = p1 ^ 0x08; mtdelay ( tvf , vf1);

}}

Por último, como si no fuese suficiente que se ejecuten las tareas PLAY yVF de forma simultánea y armoniosa, hemos añadido una ocupaciónconsiderablemente importante del procesador con las tareas SIMU,SCAN y COPY. Esto asegura que el gestor de eventos tiene siemprealgo que hacer en caso de interrupción del temporizador.

El trabajo de la tarea SCAN es el de medir una frecuencia. Dicha frecuen-cia se proporciona con una entrada de 500 Hz por parte de la tareaSIMU, en la forma de un byte (‘sim’) que cambia, evitando así la necesidadde un generador de frecuencia externo. La tarea SCAN espera, de maneraalternativa, la aparición de un flanco ascendente y descendente de un bit 0del byte sim. Dicha tarea indica su resultado sobre la tarea COPY, utilizan-do el semáforo SCANSEM, el cual muestra su resultado sobre un diodoLED. El funcionamiento correcto de todo esto se puede verificar de maneramás sencilla utilizando un osciloscopio. Estas tres tareas demuestran que unprograma puede continuar su ejecución de manera tranquila incluso si elprocesador está bajo una considerable carga de trabajo.

// SIMU: simula la entrada para la función SCAN en “sim”a 500 Hz

char sim = 0;void simu1 () {

sim = sim ^ 0xFF; // alterna entre sim = 0and sim = 0xFFmtdelay ( 1 , simu1 ) ;

}

// SCAN: busca y localiza el bit 0 de “sim” y señala elresultado usando la función SCANSEM

void scan2 ();void scan3 () {

signal (SCANSEM);mtbitup ( &sim, 0, scan2);

}void scan2 () {

signal (SCANSEM);mtbitdown ( &sim, 0, scan3);

}void scan1 () {

mtbitup ( &sim, 0, scan2); }

// COPY: espera por la función SCANSEM y copia el resul-tado de SCAN en p1_2

void copy1 () {p1 = p1 ^ 0x04;mtwait ( SCANSEM, copy1);

}

Después de las tareas definimos la función startmt(). Esto nos proporcionacualquier inicialización requerida por la tarea y, a continuación, la ejecuta.

void startmt (void) { // inicializa e inicia la tareapd1 = pd1 | 0x0C; // p1_2 usada por COPY, p1_3usada por VF

//PLAYasm( “FCLR I”); // inhabilita la interrupcióntxmr = 1; // modo de salida de pulso en el termi-nal 8 para el temporizador Timer X

tx = 142-1; // 125 kHz /142 = 880 Hz, correspon-diente a la nota de 440 Hzprex = 20-1; // 2.5 MHz / 20 = 125 kHztxck0= 1; // 20 MHz / 8 = 2.5 MHztxck1= 0;txs = 0; // temporizador Timer X detenido asm( “FSET I”); // habilita la interrupciónstart (PLAY, 1, play1);

// SIMU, SCAN, COPYstart (SIMU, 1, simu1);start (SCAN, 1, scan1);start (COPY, 1, copy1);

// VFstart (VF, 1, vf1);

}

La parte final de todos los programas “mt” es la misma. El arrays tlist(datos para el kernel de la “mt”) y la semalist (para el almacenamientode semáforos) se definen aquí.

A continuación viene el manejador (“handler “) de interrupciones parael temporizador Timer Y, el cual detecta cuándo se acaba el tiempo yrealiza un cambio de bit utilizando la función mtint_handler(). Esto esesencial para sobrescribir la entrada falsa para el vector 23 ubicada enla tabla de variables de vectores, en el R8C (fichero sect30.inc) con_timer_y, haciendo que tenga una perspectiva global.

.glb _timer_y

.lword _timer_y ; vector 23

La función main() cambia el reloj de la CPU a 20 MHz e inicializa el tempori-zador Timer Y. las dos llamadas finales de la función main() deben ser startmt()y schedule(). La función schedule() es el ‘motor’ del programa, realizando lasllamadas a las funciones de tareas a medida que es necesario y ejecutandoun lazo vacío cuando no hay ninguna función preparada para ejecutar.

/* El código a partir de aquí es idéntico para todos losprogramas “mt” */

tlisttype tlist[TLSIZE];semalisttype semalist[SLSIZE] = { 0 };

#pragma interrupt timer_yvoid timer_y (void){

mtint_handler ( );}

void main() { asm( “FCLR I”); // cambia el reloj del oscilador queestá en el circuito integrado prc0 = 1; // inhabilita la proteccióncm13 = 1; // Xin, Xoutcm15 = 1; // selecciona la capacidad de controlXCIN, XCOUTbit: HIGH cm05 = 0; // Xin activada cm16 = 0; // reloj principal = modo de nodivisióncm17 = 0;cm06 = 0; // CM16 y CM17 habilitados asm(“nop”); asm(“nop”); asm(“nop”); asm(“nop”);ocd2 = 0; // cambio de reloj principalprc0 = 0; // habilita la protección

tymod0 = 0; // modo de temporizador para Timer Ytysc = 0; // 250 kHz / 250 = 1 kHztypr = 250-1;prey = 10-1; // 2.5 MHz / 10 = 250 kHztyck0 = 1; // 20 MHz / 8 = 2.5 MHztyck1 = 0;tyic = 7; // nivel de interrupcióntywc = 0;ir_tyic = 0;tys = 1; // temporizador activado

asm( “FSET I”); // habilita la interrupción

startmt ();schedule ();

CIRCUITOS IMPRESOS INFORMÁTICA Y MERCADO

elektor

Todos los circuitos están a tamaño real (100%) excepto indicación en contra.

41

050237-2

050237-1

Historia de Dos Lectores de Tarjetas Inteligentes...(050237-I)

Lápiz USB con ARM y RS 2332(060006-I)

42 elektor

INFORMÁTICA Y MERCADO ESTACIONES DE SOLDADURA

Hemos sometido catorce estaciones de soldadura a aná-lisis mediante un test. Para ello hemos considerado algu-nos aspectos importantes con objeto de obtener unaimpresión general tanto de lo positivo como de lo negati-vo de cada estación de soldadura. Los resultados serecogen en este artículo.

¿Con o sin una estación?Los soldadores de estaño se encuentran en varias formas,incluyendo aquellos alimentados por una estación de sol-dadura. Los hay que se conectan directamente a la redeléctrica, otros son portátiles y funcionan con baterías ogas, y por supuesto hay estaciones de soldadura que utili-zan aire caliente. Posiblemente no podemos probar todasellas, por lo que tenemos que marcar el límite en algúnpunto. En este test hemos decidido centrarnos en estacio-nes de soldadura en una escala lo más ancha posible.

Las estaciones de soldadura nos permiten controlar latemperatura de la punta, lo que tiene sus ventajas en lapráctica: los componentes y el soldador no se calientandemasiado, la punta no soporta un sobrecalentamientotan rápido, etc. La regularización de la temperatura sitúael soldador de estaño en un estado de standby, de formaque puede alcanzar la temperatura de trabajo rápida-mente, al mismo tiempo que reduce el grado de oxida-ción de la punta. Algunas de las estaciones más carashacen esto de forma automática.

Como la mayoría de las cosas, las estaciones de solda-dura están disponibles en un gran rango de precios. Lasestaciones más baratas que hemos probado oscilan entorno a los 40 euros y las utilizan principalmente los afi-

cionados. Las estaciones de soldadura de uso profesio-nal deben de ser diseñadas para varios años de usocontinuado. Las estaciones más caras que sometimos aprueba deberían catalogarse como profesionales y, enprincipio, su uso para aficionados es incuestionable.Naturalmente existen un gran número de estaciones másprofesionales y más caras, pero están fuera de los crite-rios establecidos para este test.

La relación calidad/precio de las estaciones es naturalmenteuno de los puntos clave. Por ello pedimos a diversos fabri-cantes conocidos que nos suministraran algunas estacionesde trabajo para poder probarlas en nuestro propio laborato-rio. Por supuesto, aquí es útil la experiencia de nuestrosdiseñadores, y con su ayuda fuimos capaces de llevar acabo una imagen adecuada de las diferentes características(buenas y malas) de las estaciones de soldadura.

El testLas nuevas regulaciones sobre RoHS han causado algu-nos cambios en la práctica de la soldadura. El cambiomás importante que concierne a las estaciones de solda-dura es que los soldadores con la normativa RoHS tienentemperaturas de fusión más altas. Esto significa que el sol-dador de estaño debe tener un adecuado rango de tem-peratura. Como podemos ver en la tabla, casi todas lasestaciones pueden alcanzar la temperatura de punta sufi-ciente para fundir las soldaduras libres de plomo. Sólolos StarTec experimentaron alguna dificultad con soldado-res libres de plomo y componentes normales through-hole.

Para conseguir una impresión de la realización y facilitarel uso de las estaciones de soldadura, un equipo de seis

¡Puntas Calien14 estaciones de soldaduracomparadas en precio y fabThijs Beckers

Los soldadores de estaño son casi indispensables, tanto en el mundo profesional como anivel de aficionado. Este elemento clave de cada estación de trabajo electrónico es una her-ramienta esencial para trabajar en circuitos y, por lo tanto, merece nuestra atención especi-al. Seguiremos leyendo para aprender lo que el test profesional que hemos llevado a cabodetermina sobre algunas conocidas estaciones de soldadura (y averiguar si ese modelo tancaro al que le hemos echado el ojo merece realmente la pena...).

43elektor

profesionales experimentados del campo de la electróni-ca sometieron cada una de ellas a una valoración críti-ca. Hemos resumido sus impresiones para cada estaciónindividualmente, intentando evaluar cada una de lasestaciones de forma objetiva. Evitamos informar al equi-po de profesionales de los precios de las estacionesdurante el test, para no condicionar su valoración, aun-que, por supuesto, no trabajaban en una completa igno-rancia, pues todos saben que un Weller de estaño esgeneralmente más caro que un Velleman de estaño. Sin

embargo, las diferencias se encuentran principalmenteen la construcción, acabado y opciones.En muchos casos vale la pena averiguar qué accesorios ypuntas de soldadura están disponibles para cada estaciónparticular o estaño. Por supuesto, debemos de tener en cuentael uso que buscamos en este proceso. Si queremos utilizar elestaño para soldar SMDs haremos bien en seleccionar unapunta, ya que una punta más ancha es mejor para compo-nentes normales. La punta de soldadura que puede utilizarseen ambos casos es siempre una solución comprometida.

ntes!a bricación

Aire calienteAoyue 852A (£69 / € 100) andWeller WAD101 (£425 / € 620)

También probamos dos estaciones de aire caliente para sol-dar estaño con puntas duras. La Aoyue 825A, bastante eco-nómica para ser una estación de soldadura de aire caliente,se fabrica en China (lo que explica su precio…). Es una uni-dad bastante completa. La punta del soldador es demasiadolarga y no es cómoda y el cable es un poco irritante.

La unidad Weller es bastante mejor en este sentido. Lasboquillas suministradas con 852 A son utilizables, pero lasboquilla Weller son más finas y por tanto, una vez más,mejores. Ambas estaciones tienen flujo de aire regulable, yes más fácil encontrar la configuración adecuada. La relati-vamente cara WAD101 necesita un compresor externo parael suministro de aire, mientras que la 852 A ya lo contiene(como se ha mencionado anteriormente).

Por lo tanto, la unidad Aoyue es mejor en estesentido.

Ninguna de estas estaciones es adecuada para utilizarse concomponentes throgh-hole, pero son perfectas para desoldar ytrabajar con SMDs mientras que la temperatura y el flujo deaire sea el adecuado.

La estación Weller se recomienda para estaciones profesio-nales en las que el aire comprimido ya esté disponible,mientras que las 852 A se utilizan más en casa a nivel deaficionado.

44 elektor

INFORMÁTICA Y MERCADO ESTACIONES DE SOLDADURA

Este tipo de estaciones de soldadura no seusa normalmente, ya que vienen con unsoldador de estaño de 50 W y con unascaracterísticas de funcionamiento bastantebuenas. El cable es un poco corto, perobastante flexible. El soldador se conecta ala estación mediante un conector DIN, dis-poniendo de una conexión a tierra para elmismo, de manera que la punta del solda-dor está conectada a un enchufe de la redeléctrica a través de una conexión a tierra.La punta del soldador no es bien recibida ennuestro panel de prueba. La punta oblicua yredondeada nos recuerda a los viejos solda-dores de estaño. Hoy en día esperamos unpoco más de los soldadores de estaño.

El estaño es fácil de manejar, pero eso difí-cilmente puede sorprender a nadie, porqueesta estación no tiene timbres ni silbatos. Unmando rotatorio nos permite realizar unajuste de temperatura. Dos diodos LEDs nosproporcionan indicaciones de estado, perola temperatura de la punta no se muestra enningún sitio. La estación tiene dos soportesen la parte trasera para poder colocarla deforma vertical, lo que nos dejará más sitioen nuestra mesa de trabajo.La apariencia de la estación 660 TC esun caso aparte, pero desgraciadamentesus características no nos dan una buenaimpresión. Como mínimo, necesita sumi-nistrarse con una punta diferente.

El soldador de esta estación y el de laestación 660TC parecen diferenciarsesólo en el color de la punta, pero no sonintercambiables. Existen diferentes tiposde sensores de temperatura y diferentesenchufes (DIN 180ºC vs DIN 270ºC). Laescala de temperatura se establece engrados Fahrenheit por defecto. Puedecambiarse a Celsius a través del menú,pero tenemos que consultar el manualpara averiguar cómo se hace. Dosmemorias de temperatura se escondentambién en la estación. Afortuna-damente, la guía de usuario describetodas las opciones de forma clara.Aunque el cable de interconexión es

razonablemente flexible, también escorto. Esta estación también tiene el sol-dador conectado a la tierra del conec-tor de la red eléctrica. El soldador es unpoco largo y no es adecuado para sol-dar componentes SMD. Además, tuvi-mos el problema de que la punta seoxida rápidamente si no se estaña mien-tras se calienta. Una vez que la punta seoxida, no puede utilizarse para soldar ydebe de limpiarse utilizando una espon-ja de fregar no metálica.

Antex 660TC (£130 / €190)

Antex 690SD (£195 / €280)

Conrad Toolcraft ST-50D (£55 / €80)Esta atractiva y moderna estación consoporte de soldador separado y muchospequeños compartimentos de almacena-miento es relativamente barata, permi-tiéndonos ahorrar mucho dinero. Tieneun buen display con un LCD de dos líne-as con luz azul de fondo y un mandopara fijar la temperatura. También tienevarios ajustes. La operación es bastanteintuitiva, y el único punto negativo paraesta estación es que el LCD parpadeaalgo porque la lectura de temperaturase toma con demasiada frecuencia.Esta estación ha sido catalogada como‘razonablemente buena’, pero no se consi-dera de uso específico para profesionales.El soldador de estaño que nos suministra-

ron nos ha dado muy buenos resultadoscon componentes relativamente pequeños,pero la punta es bastante fina para gran-des componentes, y la capacidad decalentamiento también resulta un pococorta. La punta del soldador está todavíatemplada después de varias horas de uso.Desgraciadamente, la temperatura mostra-da en el display es bastante optimista, y enla práctica la temperatura fijada fluctúamucho más de lo indicado por el display.Conclusión: una buena estación de sol-dadura a buen precio, y bastante ade-cuada para aficionados electrónicos.

45elektor

Esta estación de color crema con ungran display (LS50) es un producto dela empresa de pedidos por correoAlemana ELV. El soporte del soldador(LA50) es demasiado ligero, por lo quees fácil que se caiga. El soldador noparece muy seguro en su soporte.Parece que este soldador es del mismofabricante que el de los soldadoresVelleman. El cable, que es demasiadocorto y rígido, se conecta a la estaciónmediante un conector DIN. Junto alconector del soldador hay un conectorpara la conexión a tierra (con unaconexión de banana) para protegercomponentes sensibles contra descar-gas estáticas.

La estación es fácil de manejar. La tempe-ratura se puede fijar usando dos pulsa-dores. Hay también tres pulsadores quese pueden usar para seleccionar unatemperatura programada de usuario.

La punta suministrada con el soldadorno es adecuada para componentesSMD. El estaño probablemente no sepuede adherir en estos casos. Nuestrosprobadores, sin embargo, no tuvieronproblemas para soldar componentesnormales. Es una pena lo del cable rígi-do y el poco peso del soporte.

Después de Weller, Ersa es probable-mente el nombre más conocido de sol-dadores de estaño. Además de su mode-lo digital 2000A, nosotros selecciona-mos el modelo RDS80 desde la línea deproducto de este fabricante. Esos dosmodelos difieren completamente en apa-riencia. El RDS80 es muy atractivo ytiene por separado el soporte del solda-dor y la estación. La estación tiene undisplay bastante grande y fácil de leer,y es muy fácil de operar, realmente nonecesitamos una guía de usuario.

El soldador proporcionado con la esta-ción tiene una potencia generosa, 80W, pero se fija con una punta fina y

plana. La mayoría de los probadores delaboratorio disfrutaron usando este equi-po para trabajos normales, pero para lasoldadura de componentes SMD esta-ban un poco divididos debido a lapunta plana (una punta diferente podríaayudar). El soporte del soldador es bas-tante confortable, pero la conexión delcable a la estación podría ser un pocomás flexible.

Después de todo, los probadores dabana esta estación de rango medio unaaceptación bastante positiva.

La estación Digital 2000A parece bas-tante moderna con su panel frontal meta-lizado en plata. Podemos escoger entrevarios modelos de soldadores para laestación. Nosotros probamos con elMicrotool, el cual se ha diseñado paratrabajos finos. El cable del soldador essuficientemente flexible, pero en determi-nadas ocasiones lo encontramos unpoco corto. Desgraciadamente, la inter-face de usuario de la estación no esespecialmente buena. El menú estáorganizado pobremente y su uso no esintuitivo.El suministrador de soldadores tiene unacalidad razonablemente buena. La punta

fina es particularmente adecuada paratrabajar con placas SMD con alta densi-dad de integración. Se debería tenermás cuidado con el diseño del soporte,ya que el soldador puede caerse si no secoloca cuidadosamente en su soporte,con el riesgo de que la punta calientepueda tocar el plástico del soporte.El resultado final se puede considerar‘razonable’. El Microtool es bastanteadecuado para soldar SMDs. Tambiénpuede soldar grandes componentes bas-tante bien, y el tiempo de calentamientoes bueno. Sin embargo, si los probado-res pudieran acabarían fijando elmenú…

ELV LS50 & LA50 (£47 / €69)

Ersa RDS80 (£125 / €180)

Ersa Digital 2000A (£220 / €320)

46 elektor

INFORMÁTICA Y MERCADO ESTACIONES DE SOLDADURA

Esta compacta estación y soldador azu-les puede fijarse en los bolsillos de nues-tro pantalón. Al lado del interruptor deon/off, un mando de temperatura y LEDindicador, hay incluso un conector parapotencial ecualización. Sin embargo,no hay control de temperatura, el cualse hace evidente rápidamente cuandomedimos la temperatura. El mando detemperatura ajusta el tiempo que seaplica calor al elemento calorífico. Laconfiguración más alta proporciona lapotencia más alta a la estación (duran-te cada periodo).A pesar de su revolucionario diseño, elsoldador se usa de forma muy conforta-ble. El cable de interconexión es flexible

y suficientemente largo, y la punta bienrayada. Sin embargo, el soporte es demuy bajo perfil. El conector que soportael cable a la estación no es tampoco unmodelo de lujo. Es un conector de cin-cha estándar. Por supuesto, el pequeñoconector de 7 W no consume muchacorriente, así que esto no es realmenteun problema. Tampoco las estacionesStarTec tienen una esponja limpiadora.Considerando su precio, el ST081 es unbuen soldador para uso portátil y solda-dura de pequeños componentes. Laestación no tiene bastante potenciapara hacer un trabajo decente de solda-dura para componentes thru-hole.

Parece extraño que el segundo (y mayor)de los modelos StarTec cueste lo mismo quesu hermano pequeño, pero esto es porqueproceden de diferentes fabricantes.El ST301 es un modelo razonablementecompleto que se suministra con dos sol-dadores, uno grande y otro pequeño. Eldiseño de esta estación también es bas-tante sencillo. Nuevamente la regulaciónde temperatura se realiza mediante unpulso de anchura variable cuyo ciclo detrabajo se puede variar mediante el usode un potenciómetro. Los soldadoresestán conectados a la estación medianteun conector de cinta normal. El soportedel soldador de la estación no es tampo-

co nada especial, es el mismo que elsoporte de la pequeña estación.Los probadores comprobaron que lascaracterísticas de ambos soldadoresson generalmente razonables, aunqueel pequeño soldador tiene una construc-ción débil. Igualmente notaron que lapunta del soldador grande se templadespués usarse durante un tiempo.El bajo precio de este dispositivo lo hace atrac-tivo para la gente que comienza en electróni-ca, pero no deberíamos esperar mucho másde él. La mejor característica para los aficiona-dos es que tiene dos soldadores, por lo quepodremos experimentar tanto con componen-tes SMD como con componentes normales.

Esta estación de soldadura de color gristiene un soporte de soldador fijado enel lado izquierdo, que es adecuadopara personas diestras (porque el cablede interconexión está siempre en elmismo lado). Sin embargo, el soporte sepuede separar de la estación con unpoco de esfuerzo por lo que se puedecolocar en cualquier otro lado.La estación tiene un diseño simple, condos pulsadores para fijar la temperaturay un gran LCD de tamaño generosoacompañado de un pesado soldadorconectado a través de un cable corto.Este cable de conexión a la estacióntiene un robusto conector.

La mayoría de los probadores encontra-ron este soldador primariamente ade-cuado para grandes componentes. Elsoldador no es adecuado para SMDs, ytampoco es especialmente confortablepara componentes de dimensiones rela-tivamente grandes. La punta del solda-dor se pone templada después de lar-gos periodos de uso, pero esto no esparticularmente irritante. El soportepodría ser mejor, ya que el soldadorpuede deslizarse y caerse fuera delsoporte. Esta estación es fiable para tra-bajos de soldadura convencional.

Star Tec ST081 (£27 / €40)

Velleman VTSSC40N (£48 / €70)

StarTec ST301 (£27 / €40)

47elektor

El Velleman LAB1 es más que una esta-ción de soldadura. En la gran caja tam-bién se almacena una sencilla tensión dealimentación (3-12 V) y un polímetro digi-tal (alimentado por una batería de 9 V yeléctricamente aislado de la tensión dealimentación). La temperatura de solda-dura se puede fijar usando un botón. Nohay display, y la estación no indica cuán-to de caliente está el soldador. Si la tem-peratura es mayor de 350º C, el piloto‘heater’ (caliente) permanece encendidode forma continua, y parece que la esta-ción no regula realmente la temperatura.El soldador de estaño parece ser elmismo que para el VTSSC40N, excepto

que el robusto conector y el cable se hansustituido por un conector DIN estándarde 5 pines. El soporte se puede conside-rar como aceptable. Una esponja estácolocada junto al soporte.La impresión que causó esta combina-ción fue positiva. El ahorro de espacioresultante del concepto tres en uno es unpunto más especialmente fuerte. Si consi-deramos la estación de soldadura por símisma, la conclusión es que es un solda-dor para uso de aficionados, inadecua-do para usos profesionales.

Weller WD1M (£290 / €420)Probamos esta estación de atractivo diseñocon un gran LCD junto con el pequeño ydelgado soldador de estaño WMRP. Todoslos probadores manifiestan que el soldadortiene un uso muy cómodo. El cable de inter-conexión es bastante flexible, y no es dema-siado largo ni demasiado corto. Las carac-terísticas generales del soldador se han con-siderado como buenas. Debido a su peque-ña punta, este soldador es muy adecuadopara soldadura SMD. Es menos adecuadopara usar con grandes componentes debi-do a su pequeña capacidad de calor.El soldador viene con un soporte que tieneun diseño poco usual, pero es adecuadopara trabajar con él. El soporte permite a

la estación detectar si el soldador se hacolocado sobre el soporte, y reduce la tem-peratura a un valor configurable de repo-so. El tiempo de calentamiento es bastantecorto: el soldador sólo tarda cinco segun-dos en alcanzar su temperatura de trabajo.La estación de soldadura tiene un ampliomenú de operación y se puede conectara un puerto USB. Además, permite con-trolar la estación mediante un ordenador,soportando el almacenamiento y visuali-zación de registros de temperatura.A pesar de su elevado precio, ésta esuna de las mejores y más fiables estacio-nes probadas. Son muy adecuadas parasoldar componentes pequeños.

Weller WSD81 (£225 / €325)La estación de soldadura suministradacon el WSD81 fue también bastante fácilde usar por nuestros probadores. El cablese consideró como ‘bueno’ sin ningunaapelación en contra. Los resultados delsoldador fueron razonablemente buenos,aunque la punta suministrada no es ade-cuada para cualquier tipo de trabajo.Sin embargo, Cooper Hand Tools tieneun gran rango de puntas de soldaduraen su catálogo, así que siempre pode-mos seleccionar un soldador que satisfa-ga nuestras necesidades específicas. Unanillo de plástico asegura que sea fácilde cambiar la punta mientras el solda-dor está todavía templado.

El mango del soldador también perma-nece bien frío. El soporte del soldador essuficientemente pesado como para evitarque se mueva y se caiga sobre la super-ficie de trabajo.La apariencia vulgar de la estación essuplida por el toque profesional de losbotones y el aspecto de solidez del dis-positivo. Se puede considerar ésta comouna buena unidad que podrá usarsecada día durante unos cuantos años.Uno de los aspectos negativos acomentar es que el conector que une elsoldador a la estación podría ser másrobusto.

Velleman Lab1 (£89 / €130)

Fabricante Modelo PRR(aprox.) Voltaje )W(Potencia Temperatura

)C°(rango de Conexióna tierra

Indicación detemperatura Características especiales

Tiempo en alcanzarlos 350 °C

)s(

Temperaturatotal

)C°((seleccionar 350 °C)

xetnAku.oc.xetna.www

CT066 031£ V42 05 054~56 Si, a conector de red Analógico 05 633

DS-096 591£ V42 05 054~56 Si, a conector de red latigiDPuede ser usada como cotación

desoldadora con la punta adecuada 05 563

darnoCln.darnoc.www D05-TS 55£ desconocido 05 054~051 Si, a conector de red latigiD Preselección de temperatura 09 633

VLE *ed.vle.www 05AL&05SL 9£+74£ V42 84 054~051 Si, conexión por banana latigiD

Autoencendido y apagado, standby, preselección de temperatura 07 483

ASREmoc.asre.www

htiwA0002latigiDlootorciM 022£ V42 03 054~05 Si, conexión por banana latigiD Autoencendido y apagado, standby,

preselección de temperatura

Autoencendido y apagado, standby, preselección de temperatura

Se reemplazan fácilmente las puntas,aún calientes

Permite la conexión al PC medianteUSB, preselección de temperatura

Multimetro digital

Suministrado con dos soldadores

53 433

08SDR 521£ V42 08 054~051 Si, conexión por banana latigiD 56 553

ceTratS **-cetrats.www

ed.stcudorp

180TS 72£ V21 8 004~001 Si, conexión por minibanana

AnalógicotnioptesoNerutarepmet

noitacidni013

103TS 72£ V21 5.7/52 054~051 Si, conexión por minibanana

AnalógicotnioptesoNerutarepmet

noitacidni804

namelleVeb.namellev.www

N04CSSTV 84£ V42 84 054~051 oN latigiD 521 573

1BAL 98£ V42 84 054~051 oN Analógico 051 063

relleW.slootdnahrepooc.www

moc

18DSW 522£ V42 08 054~05 Si, conexión por banana latigiD 51 483

htiwM1DWPRMW 092£ V42 04 054~05 Si, conexión por banana latigiD 5 473

Suministrado por ELVSuministrado por Conrad *****Solamente disponible en ELV*

48

elektor

INFORMÁTICA

YM

ERCADOESTACIONES

DESOLDADURA

ConclusiónLa estación de soldadura bajo prueba atrajo la atención denuestros seguidores. Todos querían saber qué estaba pasan-do en el laboratorio. Los miembros que realizaban el testpasaron un rato agradable. Además de los gritos de apoyo("¡bien por SMDs!"), se oyeron expresiones menos positivas("piensan que cualquiera que trabaje con electrónica eszurdo"), pero afortunadamente, todo fue bien y no tuvimosque tratar ninguna ampolla con esparadrapo o ungüento.Algunas diferencias se vieron rápidamente en el procesode testeo y recogida de datos. Las mayores diferenciasestaban en el tiempo de calentamiento. Generalmente lasestaciones más caras calientan los soldadores de formaconsiderablemente más rápida que las menos caras.Naturalmente, esto es debido a la capacidad de potenciade las estaciones, aunque también depende de la capa-cidad de calentamiento y de la construcción de los solda-dores y del circuito de control del elemento calorífico. Las estaciones más caras también tienen una lectura digi-tal, o lo que es lo mismo un display que muestra la tem-peratura medida del soldador, lo que naturalmente no esposible con un botón de control analógico. Otra cuestión que rápidamente llegó a ser aparente fue-ron las diferencias entre los soldadores. Algunos de lossoldadores fueron suministrados con una punta muy finaque se utilizó para soldar componentes SMD. Sin embar-go, algunas de las estaciones con algunas puntas fuerontambién adecuadas para soldar componentes normales(through-hole). Naturalmente, los soldadores con puntas‘normales’ son adecuados para soldar estos compontes. Algunas de las estaciones de soldadura utilizadas en eltest pueden usarse con diferentes soldadores. Por ejem-plo, con el Ersa Digital 2000A podemos seleccionar

Micro Tool (30W), Tech Tool (70 W), Power Tool (105W), X-Tool (120W), o las pinzas desoldadoras de Chip(2 x 20W). El modelo Antex 660 TC puede usarse conla punta de 25 W TC25, y las estaciones Weller puedenutilizarse con un mayor rango de puntas.

Las ganadorasNaturalmente es imposible determinar un sólo producto quecubra perfectamente las necesidades de cada usuario. Sinembargo, algunas de las estaciones probadas están muycerca de conseguir este objetivo. Por ejemplo, la combina-ción de la estación Weller WD 1M y el estaño de soldarWMRP consigue la mayor cercanía. Es bastante fácil de uti-lizar, el estaño se calienta rápidamente y el aparato nos dauna buena impresión. El WD 1M es una estación profesio-nal que se construye para poder usarla durante varios años. También podemos recomendar la Ersa RDS80 como unmodelo de rango medio con una excelente relación cali-dad/precio. Los probadores estuvieron bastante satisfe-chos con este modelo. Sus características no sólo lahacen adecuada para grandes trabajos de soldaduraSMD, sino que pueden mejorar con unas pocas puntasde soldadura. El premio a la mejor relación calidad/precio es para laStarTec ST301. Conseguimos una estación de soldaduracon no sólo una, sino dos puntas de soldar por poco másde 38 euros. Aunque esta estación tiene algunos inconve-nientes, no es una mala elección para un uso discontinuo.

(060279-1)

Queremos agradecer a los diversos proveedores y fabricantes su colaboración, propor-cionándonos las estaciones de soldadura para llevar a cabo estas pruebas.

49elektor

Laboratorio favoritoNuestro laboratorio ha tenido un claro favorito por muchos años: La estación TE460 y soldadura TE del fabricante alemánSelektra. El soldador tiene una punta fina, curvada y delgada, pero todavía tiene bastante capacidad de calor para hacer un tra-bajo decente en la soldadura de componentes. Es también útil para soldar componentes SMD. La punta curvada hace fácil mover-se más allá de obstáculos y alcanzar el pad de soldadura y la finura de la punta hace menos probable tocar otros componentesy reduce así el riesgo de derretirlos (los condensadores electrolíticos y los condensadores grandes de polipropileno son las vícti-mas más frecuentes). Se agradece el diámetro pequeño del soporte, el soldador es de uso cómodo. La estación es un modelo dela simplicidad. No hay lectura digital de la temperatura o puerto USB. Tiene apenas un mando para fijar la temperatura y un LEDpara indicar si se está calentando el soldador. Desafortunadamente, Selektra no vende a personas privadas, y las grandes com-pañías en los pedidos por correo no distribuyen esta marca. Por esta razón, no incluimos a nuestro favorito en la prueba.

SOBRE EL TERRENO FPGA

50 elektor

La mayoría de los sistemas de prototipos utilizan el enlaceRS 232 para enviar y recibir datos. Este enlace, normal-mente, se produce en un ordenador que ejecuta un pro-grama emulador de terminal. Por lo tanto, el usuario uti-liza la pantalla del ordenador como el dispositivo desalida normal y el teclado como el dispositivo de entrada.En nuestro caso, también podemos olvidarnos de nuestroordenador si conectamos una pantalla y un teclado direc-tamente a la placa de prototipos

PS/2Hasta hace poco tiempo los teclados de los ordenadores seconectaban siempre al ordenador a través de un bus PS/2.La placa de prototipos FPGA también dispone de dos puer-tos PS/2. Además de las dos líneas de la tensión de alimen-tación, un puerto PS/2 dispone de una línea de datos y unalínea de reloj. Estas dos líneas son del tipo bidireccional, y,en nuestro montaje, están conectadas directamente a variosterminales de la FPGA que está montada sobre la placa delcircuito. Los datos se transmiten desde un dispositivo PS/2(como un teclado, por ejemplo) hacia el elemento receptordenominado “host” (en este caso la FPGA), como se des-cribe a continuación. En primer lugar, el dispositivo PS/2trasmite un bit de inicio. El bit de inicio siempre es 0. A con-tinuación envía los ocho bits de datos, comenzando con elbit menos significativo. Seguidamente se envía el bit deparidad con paridad par, lo que significa que el bit de pari-dad estará a 1 si un número impar de bits a 1 está presenteen el byte transmitido. Por último, está el bit de parada ostop, el cual también siempre es 1.La señal de reloj para la transmisión es generada por eldispositivo PS/2. El nivel de señal en la línea de datoscambia sólo cuando la señal de reloj está a nivel alto (verFigura 1).

Desde el “host” al dispositivoLa comunicación desde el elemento receptor (“host”) hastael dispositivo PS/2 es algo más complicada. En primerlugar el “host” debe indicar que desea transmitir datos. Estolo hace colocando la línea de la señal de reloj a nivel bajo,lo que provoca la finalización de cualquier comunicaciónque pueda estar en progreso en ese momento. Después deun breve retardo, el elemento receptor coloca la línea dedatos a nivel bajo. Por último, vuelve a colocar la línea de

la señal de reloj a nivel alto. Como resultado de todo esto,el dispositivo sabe que el elemento receptor (“host”) va acomenzar a transmitir datos. En respuesta a esto, el disposi-tivo PS/2 genera una señal de reloj. Seguidamente, el“host” envía un bit de datos con cada pulso de reloj. Estacomunicación comienza con un bit de inicio (0) seguido porocho bits de datos. Estos bits de datos se envían tambiéncomenzando por el bit menos significativo. El siguiente bites un bit de paridad (impar). Por último, el “host” envía unbit de parada (1), pero la sesión de comunicación no se hacompletado aún. La acción final es que el dispositivo PS/2envía un 0 como reconocimiento (ACK) de que el dato hasido recibido de forma correcta (ver Figura 2).

Programas frente a circuitosPor supuesto, es posible implementar un protocolo PS/2 den-tro de un programa. En una entrega anterior de esta revistase tomó esta solución con el bus I2C. La desventaja de estemétodo es que el procesador debe de gastar parte de sutiempo en el procesamiento de las señales. Además, estotambién hace que el programa ya no sea tan sencillo. Unaalternativa a esta configuración es la de diseñar un circuitointerfaz que se encargue de la generación y el procesa-miento de las señales. En este artículo vamos a describircómo se puede implementar una interfaz PS/2 en el circuito.Con una interfaz física, el microcontrolador (8051) no tienepor qué estar ocupándose al detalle de cómo funciona lainterfaz PS/2. Antes de examinar la implementación del cir-cuito de la interfaz PS/2 nos van a permitir que echemosuna ojeada más detenida al microcontrolador T8250.

T8052En este curso ya hemos utilizado varias veces el núcleode programa del procesador T51. El microcontroladorestá formado por una porción de procesador, denomi-nada T51, y varios dispositivos periféricos, tales comouna UART, temporizadores, y algunos más. Al igual quetodo procesador MCS 51, el T51 utiliza un sistema debus especial para controlar los dispositivos periféricos.Los registros de este bus se denominan Registros de Fun-ciones Especiales (SFRs, del inglés Special Function Regis-ters). El microcontrolador original (8051) no utiliza todaslas direcciones disponibles, lo cual fue diseñado demanera intencionada para permitir disponer de espacio

Parte 6: Conexión de un tecladoPaul Goossens y Andreas Voggeneder (FH Hagenberg)

Sin duda, muchos lectores deben de tener un viejo teclado PS/2 cogiendo polvo en algún lugar de sucasa. Ahora es la oportunidad de darle nuevamente un buen uso como dispositivo de entrada parala placa FPGA de prototipos. Esta entrega de nuestro curso de FPGA nos muestra cómo hacerlo.

Curso FPGA (6)

51elektor

EjemploEl primer ejemplo de cómo utilizar la interfaz PS/2 estáen el fichero ex17. Para comenzar, conectaremos unteclado en el conector etiquetado como “KEYBOARD” (esdecir, “TECLADO”) y, a continuación, utilizaremos elfichero de configuración que se acompaña para configu-rar la FPGA.

Si todo está bien, como debe ser, aparecerá un mensajeen la pantalla LCD. A partir de ahora, todos los datosenviados por el teclado se mostrarán en la pantalla LCDen formato hexadecimal. El teclado no envía ningún datocuando no está usándose. Así, empezaremos pulsandocualquier tecla que deseemos del teclado. El dato corres-pondiente será enviado inmediatamente hacia la FPGApara que informe de esta acción. Si mantenemos unatecla pulsada durante un tiempo mayor que un intervalodeterminado, el teclado transmitirá el correspondientecódigo de forma repetida.

Figura 1. Transmisión de datos desde un dispositivo hasta el receptor. La tasa superior muestra la señal de reloj.

para otros dispositivos periféricos. Esta posibilidad puedeusarse para añadir una interfaz PS/2 al microcontrola-dor, tal y como se muestra en nuestro ejemplo “ex17”.

El código que aparece en el fichero “T51_Glue.VHDL” seencarga de descodificar las distintas direcciones de los SFRs.Sobre este fichero hemos añadido las siguientes líneas:

Este pequeño trozo de código hace que el registroPS2_DATA esté disponible en el registro SFR en la direc-ción 0xD9. Por su parte, el registro PS2_CTRL_STAT estádisponible en la dirección 0xD8.

Interfaz PS/2La interfaz PS/2 que presentamos aquí está escrita en elfichero “PS2Keyboard-a.VHDL”. La interfaz con el bus SFRestá definida en el comienzo de la línea 218. La línea 218 esparte de un proceso que es evaluado en un flanco de subidade reloj. Si se produce un flanco de subida de reloj cuando laseñal data_wr_i está a nivel alto, el contenido proporcionadopor el procesador se carga sobre el registro CmdReg. Ade-más, se carga un 1 en el bit 8 (¡que es el noveno bit!).Si la señal ctrl_stat_wr_i está a nivel alto se cargarán variosregistros con los bits correspondientes presentes en el busde datos. Como podemos ver claramente, la interfaz sevuelve a su estado de reposo si el bit 7 está colocado a 1.Cuando la interfaz está en este estado es que está espe-rando la recepción de datos desde el dispositivo PS/2.El procesador lee el contenido de la variable SFR_Data_oen el caso de que se produzca una operación de lectura.La línea 236 hace que se pase el contenido del registrointerno DataReg, si ha sido seleccionado por la señaldata_sel_i. En caso contrario, el contenido del registro deestado será el que se pase.La transferencia hacia el procesador del dato almacenado enese momento se controla por medio del fichero T8051.VHDL.Lo que queda del fichero PS2Keyboard-a.VHDL describe lacomunicación entre la FPGA y el bus PS/2. El funcionamientode este programa es razonablemente sencillo de entender,pero si aún así no podemos imaginarnos claramente lo quesucede, siempre podremos utilizar el programa simuladorpara examinar las interacciones entre las señales internas.

ps2_data_sel <= ‘1’ when IO_Addr = “1011001” else ‘0’; -- 0xD9ps2_data_wr <= ‘1’ when IO_Addr_r = “1011001” and IO_Wr = ‘1’ else ‘0’; -- 0xD9ps2_ctrl_stat_sel <= ‘1’ when IO_Addr = “1011000” else ‘0’; -- 0xD8ps2_ctrl_stat_wr <= ‘1’ when IO_Addr_r = “1011000” and IO_Wr = ‘1’ else ‘0’; -- 0xD8

SOBRE EL TERRENO FPGA

52 elektor

Vamos a suponer que hemos pulsado la tecla “w”. Deacuerdo con la pantalla LCD, el teclado ha enviado elcódigo 0x1D. El teclado envía dos códigos cuando unatecla ha dejado de ser pulsada. El primer código queenvía es “0F”, el cual le indica que el usuario ha dejadode pulsar una tecla. Después de este código se envía elcódigo de la tecla en cuestión.

Firmware¿Cómo se maneja todo esto con el programa? En primerlugar la pantalla LCD se inicializa de forma habitual. Des-pués de esto, se hace una llamada a la rutina init_kb ().Dicha rutina está localizada en el fichero kb.c. En dichofichero se asignan unos valores iniciales a las variables.Después de esto, la acción final es la de llamar a la rutinaInitKbd (), la cual se encuentra localizada en el ficherofpga_lib.c. Aquí se muestra como el dato puede enviarsehacia el teclado y leerse desde el mismo. La primera acciónes la de enviar el código 0xFF hacia el teclado para provo-car un “reset” del mismo. El teclado devuelve una señalACK (código 0xFA) si recibe este código de modo correcto.Si el teclado devuelve el código 0xFE, es que se ha produ-cido un error durante el proceso de comunicación.Si todo ha funcionando de manera correcta el tecladoejecutará una autoverificación para ver si todo está bien.Esto se indica brevemente haciendo que los diodos LEDsdel teclado se enciendan por unos instantes. Si esta verifi-cación se completa sin mayores problemas, el tecladoenvía un código 0xAA como signo de que todo estábien. A partir de este momento, el teclado funciona en elmodo en que se supone que debe hacerlo.El resto del código se ha mantenido lo más sencillo posi-ble. En el momento en que se recibe un dato, la rutina deinterrupción ext_int2_isr () provoca que el dato sea alma-cenado en un “buffer”.

Códigos capturadosDe acuerdo, ya podemos comunicarnos con el teclado.Cada tecla pulsada se envía hacia el procesador, pero loque realmente queremos recibir son los caracteres ASCIInormales. Por este motivo, hemos ampliado la rutina deinterrupción del fichero kb.c en un nuevo ejemplo (ex18).

La nueva versión de la rutina de interrupción convierte loscódigos capturados en caracteres ASCII. Nuestros lectoresmás inquisidores y puntillosos también podrán intentar eltratamiento de la tecla de “MAYUSCULAS” en el ejemploprevio. Si intentan hacerlo observarán que el diodo LEDdel teclado no responde para nada a nuestros mandatos.Esto es así porque es como debe de funcionar, ya que losdiodos LEDs del teclado están controlados por el elementoreceptor o “host”. La rutina Set_LED () del ejemplo 8 nosmuestra cómo podemos controlar los diodos LEDs delteclado. En este ejemplo, el número del carácter pulsado escontado y el resultado es indicado por los diodos LEDs delpropio teclado. Como tan sólo se dispone de tres diodosLED, sólo se pueden indicar números en el rango de 0 a 7.Esta entrega muestra claramente que la potencia total deuna FPGA solamente puede usarse si hacemos uso de lasventajas de la lógica configurable relativas a los sistemasmicrocontroladores convencionales. Por supuesto, tambiénpodríamos implementar un protocolo PS/2 completo porprograma, pero esto nos costaría un tiempo de procesa-miento adicional. Con la implementación del circuito quese describe aquí el procesador no tiene por qué preocu-parse del manejo de las señales eléctricas del bus PS/2,de manera que dispone de más tiempo para otras tareas.El protocolo del bus I2C fue implementado por programaen una entrega previa de este curso, y también podríaimplementarse como circuito adicional de forma similar.En la próxima entrega intentaremos añadir una salidaVGA totalmente funcional hacia el sistema microcontrola-dor de la entrega de este mes. Por supuesto, dicha funcio-nalidad también será implementada con un circuito.

(060025-VI)

Figura 2. Un bloque de datos transmitidos desde el receptor hasta el dispositivo.

¡Conozca el cursoFPGA con el paqueteFPGA de Elektor!La base de este curso es un módulo FPGA alimentado porun circuito integrado FPGA del tipo “Cyclone” de la casaAltera, instalado en una Placa de Prototipos GPGA, equi-pada con una gran cantidad de Entradas/Salidas y dospantallas LCDs (ver la entrega de mayo de 2006).

Ambas placas están disponibles ya montadas y verificadas.Las dos juntas forman una base sólida para que nuestros lec-tores puedan probar y ejecutar los ejemplos presentadoscomo parte de este curso y, al mismo tiempo, coger expe-riencia personal y "saber hacer" en el campo de las FPGA’s.

Nuestros lectores pueden obtener información adicionalsobre este tema en las páginas de Internet sobre módulosy kits en www.elektor.com

LIBROS INFORMÁTICA Y MERCADO

elektor 53

Elektor ofrece a sus lectores una selección de libros técnicos de gran valor para aficionados y profesionales. Todos ellos están escritos en inglés,el idioma más utilizado en el ámbito técnico.

SERIE 300. Circuitos y aplicaciones:

Construcción de equipos completos:Nombre

Domicilio

C.P.

Tel. Fax Fecha

CUPON DE PEDIDOPor favor envíen este pedido a:ADELTRONIKApartado de Correos 3512828080 MadridESPAÑATel. (91) 327 37 97

Forma de pago (vea la página contigua para más detalles)Nota: Los cheques serán en pesetas y conformados por una entidad bancaria.

❏ Cheque (nominativo a VIDELKIT, S.L.)

❏ Giro postal. Cuenta Postal (BBVA)

Nº 0182-4919-74-0202708815

❏ Fecha de caducidad:

Número de tarjeta:

Por favor envíenme los siguientes libros.

Cant. Título Precio/unid. TotalIVA incl. €

Sub-totalGastos envioTotal

Los precios y las descripciones están sujetas acambio. La editorial se reserva el derecho decambiar los precios sin notificación previa. Losprecios y las descripciones aquí indicadas anulanlas de los anteriores números de la revista.

3,01

Firma:

Microprocesadores, periféricos y técnicas:

301 CircuitsPrecio: 27,05 €

Agotado

305 CircuitsPrecio: 39,67 €

307 CircuitsPrecio: 46,28 €

Data Book 4 -Peripherical ChipsPrecio: 29,45 €

Build your ownHigh-end AudioEquipmentPrecio: 39,67 €

Build your ownElectronic test instrumentsPrecio: 42,07 €

Agotado

304 CircuitsPrecio: 34,26 €

303 CircuitsPrecio: 29,45 €

Agotado

302 CircuitsPrecio: 27,05 €

Short course8051/8032 microcontrollersand assemblePrecio: 27,05 €

Data Sheet Book 2Precio: 27,05 €

Agotado

ST62MicrocontrollersPrecio: 66,11 €

SCSI The insand outsPrecio: 66,11 €

PICs in practicePrecio: 66,11 €

The I2C BusPrecio: 66,11 €

Build yourown AudioValveAmplifiersPrecio: 39,67 €

Data Book 3- PeriphericalChipsPrecio: 29,45 €

MicroprocessorData BookPrecio: 29,45 €

Agotado

SMT ProjectsPrecio: 27,05 €

Agotado

CONOCIMIENTOS CHIPCARDS

54 elektor

En este artículo ofrecemos más información sobre el dise-ño y el interior de varios tipos de tarjetas inteligentes(smartcards), de manera que podrán utilizarlas en suspropias aplicaciones. La lectura, escritura y programa-ción de estas tarjetas son esenciales, pero nos ocupare-mos de ello en un segundo artículo.

Conector estándarLas tarjetas chip se ajustan a muchos estándares ISO,pero los más conocidos son los ISO 7816-1 y los ISO7816-4. Estos modelos de tarjetas ofrecen las más impor-tantes propiedades técnicas. Debido a la falta de espa-cio no podemos ocuparnos de éstas en este artículo,pero si encuentran este tema interesante pueden consul-tar el trabajo del autor [1]. En este artículo nos limitare-mos a los aspectos más importantes, comenzando conuna visión del circuito interno de las tarjetas que contie-nen un microcontrolador (Figura 1).

Como verá, el diseño es bastante sencillo. En todas lastarjetas se utiliza un microcontrolador, normalmente en unchip conocido (por ejemplo un 68HC05 de Motorola, unPIC16F84 o un 16F876 de Microchip o incluso unAT90S8515 de Atmel). En algunas tarjetas el microcontro-lador se conecta a la memoria EEPROM o a un procesa-dor criptográfico, éste es el caso de las últimas tarjetas.En este artículo no nos ocuparemos de las tarjetas inalám-bricas (RFID), de las que hemos hablado ampliamente enel número del mes anterior. Las tarjetas chip que describi-remos en este número se comunican con el mundo exte-

rior a través de una serie de contactos de oro metaliza-dos que se colocan sobre el chip y que son estándar(Figura 2). Estas conexiones no supondrán ninguna sor-presa si hemos estudiado el diseño de la Figura 1.

• C1 es la conexión positiva (VCC) y C5 es la negativa(GND) para la fuente. La tensión nominal de la fuentede alimentación ha sido de 5 V durante mucho tiempo.Actualmente, se tiende en el desarrollo a trabajar contensiones de alimentación de 3 V, debido al mayor usode la lógica digital, que opera a esta tensión.

• C2 se llama RST. Ésta es la entrada reset de la tarjetay se conecta al pin reset del microcontrolador embebi-do (empotrado). Tiene que llevarse a un nivel bajopara activarse.

• C3 se llama CLK y es sólo la entrada externa del relojde la tarjeta. El microcontrolador que se encuentra enla placa no tiene su propio reloj y por lo tanto necesitaconseguirlo de forma externa.

• C7 es la conexión I/O y es la única unión con la tarjetaque puede comunicarse con el mundo exterior. Se haimplementado como una entrada/salida serie asíncrona ytoda comunicación con el microcontrolador hace esta ruta.

• C4 y C8 se muestran en muchos documentos comoFFU, lo que significa ‘Reserved for Future Use’.¡Esperamos ver lo que esto significará, aunque las pri-meras tarjetas de chip aparecieron hace veinte años!

Christian Tavernier

Después de un indeciso comienzo las tarjetaschip se han hecho valer y ocupan un lugarimportante en nuestras vidas. Hoy en díaencontramos tarjetas chip en muchas aplicaci-ones, en una tarjeta bancaria, en las que seutilizan para ver canales de pago de TV, enlas SIM de los teléfonos móviles, en tarjetasde pago para parking o lavanderías.

ABC de tarjetas blancas para aplicaciones privadas

SmartcardsSmartcards

55elektor

• C6 se utilizó inicialmente para la alimentación VPPporque era lo que requerían las primeras tarjetaspara programar las EEPROMs. Actualmente esta ali-mentación secundaria ya no es necesaria y estasconexiones no se usan.

No tenemos espacio en este artículo para explicar lacomplejidad del protocolo de comunicaciones, aunquees claro. Dependiendo de la respuesta de este artículodispondremos de información adicional en la website deElektor, concretamente en la página de este artículo.

Tarjetas disponiblesActualmente hay bastantes tarjetas que no están totalmentedocumentadas. Esto, en principio, puede resultar extraño,pero no debemos olvidar que la mayoría de estas tarjetasfueron diseñadas para aplicaciones no muy honestas. Lasentrañas de las tarjetas no fueron de mucho interés parala mayoría de los usuarios, que sin embargo si se preocu-paban en saber cómo podían programar las tarjetas enblanco con algunos ficheros ‘milagro’ de Internet.Hoy podemos encontrar información segura para diferentestarjetas, en lo que respecta a su contenido y circuiteríainterna.

La tarjeta oro y la tarjeta plataDesde un punto de vista histórico éstas son las más antiguas,las más conocidas y las más utilizadas. Por tanto es lógicocomenzar nuestro resumen con este tipo de tarjetas. Las

clock &reset logic

programEEPROM

dataEEPROM

Interfaceparallèle

externalEEPROM

centralunit

RAMCrypto

processorserial

interface

VCC

RST

CLK

050236 - 15

I /O

GND

VCC

GND

microcontroller

microcontroller card

Figura 1. Circuito interno de una chipcard (los elementos punteados son elementosopcionales).

C5

C6

C7

C8

GND

VPP

I/O

RFU

050236 - 16

C1

C2

C3

C4

VCC

RST

CLK

RFU

Figura 2. Conexión de detalles y posición de los contactos en una chipcard.

24LC16

IC2SDA

SCL

A0

A1

A2 WP

1 5

8

4

62

3 7Card Connector

VCC

RST

CLK

RFU

GND

VPP

I/O

RFU

K1

RA4/T0CKI

PIC16F84

RB0/INT

OSC2

IC1

OSC1

MCLR

RA1

RA0

RA2

RA3

RB1

RB2

RB3

RB4

RB5

RB6

RB7

18

17

13

12

11

10

1615

14

1

3

9

8

7

6

2

4

5

050236 - 11

Figura 3. Circuitos de una Goldcard.

CONOCIMIENTOS CHIPCARDS

56 elektor

hemos agrupado juntas porque ambas utilizan PICs fabrica-dos por Microchip. Si ustedes están ya familiarizados conesta familia de microcontroladores es bastante interesante des-arrollar aplicaciones para el uso de una tarjeta Oro o Plata.

La Figura 3 nos muestra el circuito interno de una tarjetaOro, la más antigua de las dos, la cual tiene por ello unPIC antiguo, el 16F84. La forma en la que el PIC seconecta a la tarjeta es la más lógica posible: la entradareset se conecta a RST, mientras que la entrada de relojse conecta al contacto CLK. RB6 del controlador tambiénse conecta a CLK, y RB7 se conecta a la entrada I/O delconector. De esta forma tenemos un acceso externo aRB6 y RB7 y el PIC se puede programar, porque nosotrossólo necesitamos esas dos líneas (aparte del reset) paraesto. Esto, por supuesto, nos obliga a usar el puerto RB7del PIC como entrada/salida para intercambiar datos conel mundo exterior durante el funcionamiento normal.

Debido a que los datos de la memoria EEPROM delPIC16F84 eran demasiados pequeños para algunas apli-caciones, se añade una memoria EEPROM (en este casouna 24LC16 o equivalente). Debido a que esta EEPROMse suministra con una interface I2C y que el estándar16F84 no tiene dicha interface, nos ayudamos con lospuertos RB4 y RB5 mediante una rutina de software ade-cuada. Si no usamos esta memoria, las rutinas I2C en elPIC no serán necesarias.

El circuito de una tarjeta Plata, mostrado en la Figura4, es tan sencillo como el de una tarjeta Oro, porque losdiseñadores sólo has sustituido el PIC16F84 por un16F876 y la memoria 24LC16 con una 24LC64. Estorealmente era un cambio muy sencillo, pero no sorpren-dente, porque el circuito se diseñó por y para vídeospiratas. La memoria EEPROM se conecta nuevamente aRB4 y RB5, lo que significa que todavía tenemos queescribir las rutinas para la interface I2C nosotros mismos.Esto es porque el 16F876 tiene una interface I2C en laplaca, la cual está conectada a los pines RB3 y RB4. Laúnica ‘ventaja’ de esta decisión es que nos deja cambiarde una tarjeta Oro a una tarjeta Plata sin tener quemodificar el programa.

Card Connector

VCC

RST

CLK

RFU

GND

VPP

I/O

RFU

K1

24LC64

IC2SDA

SCL

A0

A1

A2 WP

1 5

8

4

62

3 7

PIC16F876

RA4/T0CKI

RA3/AN3

RA5/AN4

RA1/AN1

RA0/AN0

RA2/AN2

RC3/SCL

RC4/SDA

MCLR

IC1OSC2

OSC1

RB0

RC6

RC7

RC0

RC1

RC2

RC5

RB1

RB2

RB3

RB4

RB5

RB6

RB7

20

10

28

27

26

25

24

23

22

21 11

12

13

14

16

15

17

18

198

1

9

3

2

4

6

5

7

050236 - 12

Figura 4. Circuitos de una Silvercard.

AT24Cxx

IC2SDA

SCL

A0

A1

A2 WP

1 5

8

4

62

3 7

Card Connector

VCC

RST

CLK

RFU

GND

VPP

I/O

RFU

K2

AT90S8515

PB5/MOSI

PB6/MISO

PB7/SCK

RESET

XTAL1 XTAL2

IC1

OC1B

PB2

PD2

PD3

PB3

PD5

PA0

PA1

PA2

PA3

PA4

PA5

PA6

PA7

PC2

PC4

PC5

PC6

PC7

PC3

PD0

PD1

PC0

PC1

ALE

PD4

ICP

PB0

PB1

PB4

PD7

PD6

39

38

37

36

35

34

33

32

21

22

23

25

26

27

28

19 1820

40

17

16

30

11

10

12

13

14

15

24

2931

9

1

2

3

4

5

6

7

8

050236 - 13

Figura 5. Circuitos de una Funcard (o Purplecard).

Debido a que da acceso a una información ‘sensible’, la tarje-ta chip ha llamado la atención de los piratas de software yotros hackers. Como ejemplo podemos citar la famosaYescard, una tarjeta que responde ‘sí’ a todo, y que se usódurante mucho tiempo para falsificar tarjetas de banco. El con-tenido de las tarjetas usadas para ver canales de TV encripta-dos también puede encontrarse en algunos lugares de Internet.

Debido a todo esto, se puede pensar, y no sin razón, que laschipcards no son seguras. No obstante, esta afirmación es falsa,porque los piratas sólo consiguieron entrar en la seguridad de lastarjetas cuando los programas asociados no tenían implementa-dos sistemas de seguridad adecuados. Podemos tener una tarjetatan segura y robusta como queramos, siempre y cuando no escri-bamos la clave en un papel al que pueda acceder cualquiera.

Normas para el

57elektor

Para escribir una aplicación para tarjetas Oro y Platatenemos que programar el PIC en lenguaje ensamblador,añadiendo un software basado en la interface I2C parala EEPROM externa cuando lo deseemos. Todo lo quenecesitamos para esto es un excelente programa llama-do MPLAB que se puede descargar de forma gratuita dela página web de Microchip.

Cuando programemos físicamente la tarjeta tenemos quetener en mente que las señales de programación en lospuertos RB6 y RB7 del PIC están exactamente en fase con laprogramación de la memoria interna. Tenemos que asegu-rarnos que la tensión en la línea reset tiene que estar a 13V durante la programación, lo cual significa que no sepuede usar un lector de tarjetas normal para programar unatarjeta Oro o Plata. Más tarde, en el montaje del artículosobre un lector de tarjeta, mostraremos que también puedeutilizarse como un programador, y es fácil de construir.

Fun, Purple, Pink y JúpiterAl mismo tiempo que se desarrolló la primera tarjetaOro, otros desarrolladores prefirieron microcontroladoresde Atmel en lugar de los de Microchip, cuyos integradosson los que usan los desarrolladores de las otras dos tar-jetas. Aunque esas tarjetas no tuvieron tanto éxito comolas tarjetas Oro y Plata, se fabricaron muchas y una delas series todavía está disponible hoy en día.

La tarjeta Fun, que inicialmente se llamó Purple, debi-do a su color, era suministrada con un microcontrola-dor Atmel AT90S8515, que puede verse en la Figura5. Las conexiones son, en lo que se refiere a las seña-les de reloj y reset del microcontrolador, las mismasque para las tarjetas Oro y Plata. Por otro lado, necesi-tamos acceso al SCK y señales MOSI de la interfaceSPI cuando programemos chips de la familia AT90S.Debido a que esas señales son incompatibles con lasusadas en un conector estándar, se han llevado a loscontactos C4 y C8, los cuales están reservados parafuturos usos y que normalmente no se usan. Observeque la línea MISO de esta interface SPI, que tambiénse necesita durante la fase de programación, estáconectada al contacto I/O del conector de la tarjeta.

Esto significa que durante el uso normal debemosemplear este pin para intercambiar datos con el mundoexterior.

Los diseñadores de la tarjeta Fun tenían los mismos problemasque los de las tarjetas Oro y Plata con el tamaño de la

EEPROM en el controlador, que era demasiado pequeña. Poresta razón se conectó una EEPROM externa AT24Cxx almicrocontrolador, donde xx depende de la versión deFuncard y puede tomar un valor entre 64 y 1.024 (Tabla 1).Si no hay un tipo de número, la tarjeta Fun tendrá un chip dememoria estándar 24C64, la cual corresponde a 8 Kb.

24C16

IC2SDA

SCL

A0

A1

A2 WP

1 5

8

4

62

3 7

AT90S2343

PB1/MISO

PB0/MOSI

PB2/SCK

CLK/PB3

RESETIC1

PB4

8

4

7

6

1

2

3

5

Card Connector

VCC

RST

CLK

RFU

GND

VPP

I/O

RFU

K1

050236 - 14

Figura 6. Circuitos de una Jupitercard (o Pinkcard).

Es irónico que esas actividades ilegales también tengan unefecto positivo. Debido a que los piratas de TV requieran tar-jetas en blanco para el desarrollo de sus aplicaciones, variosfabricantes del sureste asiático han comenzado a producirtarjetas chip con una variedad de procesadores y memoria.La Oro, Plata, Fun y otras tarjetas que fueron el resultado deesto se pueden usar ahora en nuestras aplicaciones.

El sureste de Asia ha sido un referente en esta área, viendoaparecer varias tarjetas estándar en un periodo de tiemporelativamente corto. El nombre de las tarjetas se ha inspiradoen las características físicas de las primeras tarjetas. La tarje-ta Oro, la más vieja, fue (y aún es) coloreada en color oro,mientras que la tarjeta Plata lleva un forro de color plata.

sureste asiático

Cualquier Funcard son divertidas como sigue.

Table 1.Funcard type External EEPROM

memoryFun (standard) 24C64Fun 2 24C64Fun 4 24C256Fun 5 24C512Fun 6 24C1024

CONOCIMIENTOS CHIPCARDS

58 elektor

La tarjeta Júpiter (también llamada tarjeta Pink, por-que es el color de la primera tarjeta) también usa uncontrolador Atmel, pero este es de menor capacidad queel usado en las tarjetas Fun. Como podemos ver en laFigura 6, se ha usado un ‘pequeño’ AT90S2343, comosiempre con una EEPROM extra, en este caso una24C16. La forma en la que está conectada es idéntica ala de la tarjeta Fun, porque el chip pertenece a la mismafamilia que el AT90S8515 utilizado en la Funcard.Los piratas han empleado esta tarjeta con éxito durantemucho tiempo para crakear señales de TV encriptadas,pero esos días ya han pasado. Nuestro consejo es utili-zar esta tarjeta para otras aplicaciones.El diseño de una aplicación para una tarjeta Fun requie-re utilizar un lenguaje ensamblador, pero esta vez paraun microcontrolador de la familia Atmel AT90S. Paraesto podríamos usar un buen programa, llamado AVRstudio, que podemos descargar de forma gratuita, aligual que el MPLAB, de la página web de Atmel.

Por otro lado, no es posible usar una tarjeta lectora están-dar para programar tarjetas Fun porque no es posible acce-der a contactos C4 y C8 en el conector. A continuaciónmostraremos en el montaje que acompaña a este artículoque sólo necesitamos un puñado de componentes paraconstruir un programador de tarjeta Fun (el cual también sepuede usar para las menos comunes tarjetas Júpiter).

Titanium, Platinum, Knot y OposEn un intento de parar la piratería que están sufriendo, algu-nos proveedores de tarjetas de pago de TV dotaron a sus sis-temas con niveles de encriptamiento bastante mejorados, loque prácticamente inutilizó a las Gold –Oro-, Silver –Plata- oFun cards para este uso. Cuanto más algoritmos de encripta-ción se utilizaban, más insuficiente era la energía de proce-samiento y el set de instrucciones de un simple PIC o AT90Spara hacer los cálculos suficientemente rápidos.Como resultado de esto, las tarjetas comenzaron a aparecercon procesadores criptográficos con nombres tales comoTitanium (las más antiguas), Titan, Platinum, Knot y Opos. Lamayoría de estas tarjetas funcionan con un microcontroladorAtmel de la familia de AT90S12836 o un dispositivo similar.

¿Una tarjeta con memoriao con microcontrolador?El término ‘chipcard’ puede ser un poco contradictorio porque virtualmente des-cribe dos tipos de productos diferentes. Existen tarjetas que únicamente tienenmemoria, llamadas Tarjetas de Memoria. Además hay tarjetas con inteligenciaen la placa (un procesador) y que se llaman ‘Tarjetas Inteligentes’. Hoy en díatenemos que tener en cuenta las diferencias entre ambos tipos de tarjeta porquesus capacidades difieren bastante.

Las Tarjetas de Memoria que encontramos en muchas aplicaciones de prepago(tarjetas de teléfono, lavandería y control de acceso) contienen, como su nom-bre indica, sólo una memoria en forma de una EEPROM, para que puedan sereléctricamente programadas y borradas. Dependiendo del nivel de seguridadde la tarjeta la memoria puede encriptarse.

Antes de comprar tarjetas de este tipo y conseguir acceso a información técnicatenemos que firmar previamente un documento del fabricante llamado NDA(Non Disclosure Agreement) . Las chipcards que contienen únicamente memoriatienen poco interés para la mayoría de las aplicaciones, por lo que no nos refe-riremos más a ellas en este artículo.

Las chipcads con un microcontrolador en la placa se utilizan para aplicaciones‘superiores’ tales como tarjetas de crédito, tarjetas SIM para móviles o para verla TV de pago. Estas tarjetas son más interesantes para los ingenieros electróni-cos que quieren utilizarlas en sus propios proyectos, considerando que existebastante información disponible y pueden comprarse desprogramadas.

Tarjeta Básicauna tarjeta con una diferenciaEsta tarjeta, que fabrica exclusivamente la pequeña compañía alemanaZeitControl, también es una tarjeta con una apertura OS. Como su nombre indi-ca, se programa en Basic. Lo básico en la tarjeta Básica sólo tiene que ver conla antigüedad y la fiabilidad, porque tiene un rápido ypoderoso juego de instrucciones. Además, este lenguajede programación ha sido especialmente adaptado parael uso en chipcards, lo que realmente simplifica la pro-gramación. Además viene con librerías criptográficas ylos cálculos de un DES o 3DES se simplifica bastante.

En este momento hay quince tarjetas Básicas diferentes,con una gran variedad de memoria y capacidades crip-tográficas. Para desarrollar una aplicación para una tar-jeta básica necesitamos una herramienta especial dedesarrollo debido al único lenguaje de programaciónutilizado. Afortunadamente esto es gratis y puede des-cargarse de la website del fabricante. Merece la penamencionar que esta herramienta funciona bajoWindows, además de bajo DOS. También incluye unatarjeta simuladora y un lector simulador. Por lo tantopodemos diseñar una aplicación sin ningún hardwareen un ambiente virtual, antes de intentarlo sin hardwareen un mundo real. Dado que la tarjeta Básica contieneun OS, no necesita un programa especial y por lo tantopuede programarse a través de cualquier programa quesoporte el kit de desarrollo. Bajo Windows es bastantesencillo, ya que podemos utilizar cualquier dispositivocompatible con PC/SC.

59elektor

OTP AccessControl

DataBus8-bit

RandomNumber

Generator

Crypto-Processor

CryptoProcessor

Block

ROM

SecureControl

Shared RAM

AVR RAM

InterruptUnit

AccessControl

StatusRegister

GeneralPurpose

Registers

xyz

EEPROMUser Memory

InstructionRegister

PC

16

InstructionDecoder

ControlLines

FlashProgramMemory

16

8 8

8

16IN/OUT0

CLK

050236 - 18

GNDVCC

VCC

IN/OUT1

ISO 7816I/O Port

ALU

Timer

Figura 7. Circuito interno de un microcontrolador Atmel desde un AT90xxxx con funcio-nes criptográficas.

El autorIngeniero consultor de electrónica,Christian Tavernier es un académico yun experto legal en electrónica, informa-ción tecnológica y telecomunicaciones.

También es autor de varios libros y artí-culos que tratan una gran variedad detemas de electrónica e IT. Lleva trabajan-do en estos campos más de 25 años.

[email protected]

Las viejas tarjetas chip (izquierda) todavía usan el estándar AFNOR, aunque en esosdías se adaptaron a la estándar ISO (derecha), que es un estándar internacional.

Como podemos ver en la Figura 7, estos microcontrola-dores son versiones mejoradas de la bien conocida fami-lia AT90S con un módulo criptográfico integrado (algu-nas más avanzadas que otras). Estos módulos realizancálculos muy rápidos de los algoritmos criptográficos(DES, 3DES, RSA, etc.), por lo que la CPU sólo tiene quedarles un comando, en vez de realizar todos esos cálcu-los ella misma. Desgraciadamente no podemos dar más informaciónsobre estos microcontroladores protegidos, porque lasbases de datos no están disponibles, o más precisamen-te, únicamente están disponibles después de firmar unaNDA (Non Disclosure Agreement) o compromiso de norevelar los contenidos.En teoría no está permitido programar estos microcontro-ladores en ensamblador, a menos que antes se haya fir-mado un acuerdo. Para soslayar este problema, hoy endía las smartcards que contienen este microcontoladorvienen con Sistema Operativo Abierto (OS) en el que losnombres, funciones y diferentes versiones, dependen deltipo de tarjeta, su origen y… todas las diferentes amplia-ciones que el proveedor nos pueda suministrar.En general estas tarjetas se programan en C, mediante uncompilador adecuado para el uso con el microcontrola-dor que se encuentra en la tarjeta. El compilador C deIAR se usa frecuentemente, pero en realidad podemos uti-lizar cualquier compilador, mientras tenga una conexiónde entrada o la librería correcta para la tarjeta elegida.Si decidimos utilizar este tipo de tarjeta en nuestra apli-cación tendremos que consultar Internet para lograr infor-mación. El plug-in, librerías y bases de datos relevantesse encuentran únicamente en websites que están en ellímite de la legalidad.Podemos concluir que todas las tarjetas que vienen con anopen OS no generan mayor problema que la programa-ción, y pueden programarse utilizando un simple readermientras sea compatible con Phoenix. En otro artículosobre la construcción mostraremos como puede realizarse.

Finalmente...Aparte de las Basic Card (vea el recuadro), que desde elprincipio se diseñaron sin malas intenciones, todas las tar-jetas que se encuentran actualmente en circulación hansido diseñadas para aplicaciones prohibidas. A pesar deello, podemos encontrar producciones en masa, productosseguros y de buena reputación que podemos utilizarlegalmente en nuestras propias aplicaciones. Todavía nos falta saber cómo programarlas, pero esto lotrataremos en un artículo posterior.

(050236-I)

Enlaces WEBMicrochip (MPLAB download):www.microchip.com

Atmel (AVR Studio download):www.atmel.com

ZeitControl (developer of the Basic Card):www.zeitcontrol.de

ZeitControl (Basic Card):www.basiccard.com

Author’s general website:www.tavernier-c.com

Author’s website dedicated to chipcards only:www.cartesapuce.fr

SOBRE EL TERRENO MICROCONTROLADORES

60 elektor

Lápiz USB con ARM yControlador flash gigabyte para microcontrol

Ursula Engelmann-Schrader y Jürgen Engelmann

Este esmerado y autónomo lápiz de memoria puede almacenar y transferir datos desde un sistemamicrocontrolador localizado en el campo, a un ordenador, utilizando los puertos RS 232 y USB quelleva integrados. Además de esto, una pantalla LCD y el sencillo uso del modo registrador de datosson la "guinda que corona la tarta".

Algunos sistemas electrónicos situa-dos en localizaciones remotas, pararecoger datos provenientes de even-tos naturales como la longitud y fuer-za del viento, o las instalaciones ali-mentadas por energía solar, realizan yalmacenan las medidas “in situ”sobre la memoria de un sistemamicrocontrolador. En ocasiones espreciso transferir los datos almacena-dos hacia un ordenador donde serántotalmente evaluados y archivados. Sino se dispone del lujo de un enlaceradio o de una línea telefónica paratransferir la información, lo más fáciles pensar que una buena solución esemplear un versátil lápiz de memoriaque se pueda conectar, tanto sobre elpuerto serie de un sistema microcon-trolador como a un puerto USB de unordenador. ¡Tenemos el gusto deanunciar que nuestros lectores no tie-nen que buscar más, ya que éstas sonexactamente las funciones que realizael dispositivo que describimos en esteartículo!

Una memoria “Jano”Cuando iniciamos el diseño para este"Lápiz USB con microcontrolador”, losprimeros esbozos y líneas maestrasnos llevaron a la conclusión de que lo

mejor era no utilizar circuitos integra-dos de memoria que tuviesen quemontarse sobre el dispositivo. En sulugar se proporcionaría una ranura deconexión para tarjetas de memoria deltipo SD o MMC (con formato FAT16).La flexibilidad de esta configuraciónsignifica que la elección del tipo dememoria para la tarjeta no está atadatan sólo a un único suministrador, conlo que aprovechamos la ventaja depoder utilizar memorias que con eltiempo son más baratas e incremen-tan su tamaño (del orden de gigaby-tes), como suele suceder en las tarje-tas de memoria más recientes.Al igual que el dios romano Jano, elcontrolador flash USB presenta doscaras al mundo exterior, en una deellas el conector USB se comportacomo un lápiz de memoria USB com-patible tanto para Windows comopara Linux. Una vez que el lápiz dememoria se ha conectado a un orde-nador, todos los ficheros almacenadosen la tarjeta flash pueden verse y edi-tarse sobre la pantalla del ordenador.El usuario del ordenador puede asílibremente comenzar a trabajar con lainterpretación de los datos almacena-dos en la tarjeta que previamente haestado montada sobre el sistemamicrocontrolador (el cual también

puede conectarse al ordenador). Lasegunda cara del dispositivo permiteque el sistema microcontroladorpueda leer los datos almacenados enla memoria del ordenador. El procesa-dor ARM interno que lleva este dispo-sitivo, junto con su programacióninterna, posibilita conectar al puertoRS 232 un sistema microcontroladorexterno para disponer así de un senci-llo acceso de lectura y escritura a lamemoria flash. Una ilustración, al finalde este artículo, muestra el disco dememoria Flash USB conectado a la tar-jeta controladora ATmega (050176-71)la cual ya se publicó en la entrega deJulio de 2006 de Elektor.El acceso a la tarjeta de memoria porparte de microcontrolador se realizapor medio de un controlador que inter-preta un conjunto de instruccionesya definidas. Las instrucciones sonsencillos comandos como FileOpen,FileRead, FileWrite, FileClose, etc. Elcontrolador está contenido en el pro-pio programa y no solamente controlael acceso a la memoria, sino que tam-bién interpreta los comandos para elcontrol de periféricos tales como unapantalla LCD.El código fuente en lenguaje C paraestos controladores, junto con algu-nos ejemplos de código adaptado para

61elektor

y RS 2332lador

controladores compatibles con el8051, se incluyen en el conjunto deprogramas gratuitos que están dispo-nibles para su descarga en la páginaweb de Elektor [1]. También se hanincluido algunos ficheros escritos enPascal como información adicional(estos ficheros fueron escritos paraaplicaciones anteriores de esta uni-dad). Desde el punto de vista del sis-tema operativo DOS, la tarjeta dememoria se trata como un disco duroexterno conectado a la interfaz serie.También se incorpora un programa deWindows (“Testsuit”), junto con otrogrupo de ficheros, que pueden usarsepara verificar el funcionamiento de laplaca de circuito impreso. La tarjetade memoria flash es tremendamentefácil de utilizar en el modo de registrode datos (véase el apartado de textocorrespondiente).

El controlador ARM7El corazón del circuito que se muestraen la Figura 1 es el controlador ARM7 AT 91SAM7S64 (IC1). Se trata de uncontrolador de 32 bits que tiene unnúcleo RISC. En el juego de instruccio-nes de la CPU hay algunas que permi-ten la conmutación entre 16 ó 32 bits,optimizando así el uso del procesador

para cada aplicación. El procesadordispone de una memoria Flash internade 64 KBytes y una memoria RAM de16 KB. Un PLL interno multiplica lafrecuencia del cristal, de 12 MHz, por4, hasta conseguir los 48 MHz utiliza-dos por procesador.El controlador ARM 7 está equipadocon un completo rango de prestacio-nes adicionales que incluye un com-

pleto puerto USB integrado en el pro-pio dispositivo, de manera que sólo esnecesario conectar las señales D- y D+del puerto USB. Las resistencias R9 yR10 forman una red divisora de ten-sión que el controlador utiliza paradeterminar si hay un dispositivoconectado en el puerto USB. En laventana de texto correspondiente seofrece una breve descripción de las

Características PrincipalesDispositivo de Memoria: Tarjeta MMC o SD de hasta 2 GB

Sistema de Ficheros: FAT16 (un máximo de cuatro ficheros pueden estar abiertos al mismo tiempo)

Interfaces: 1 x USB (2.0 and 1.1), 2 x RS232

Velocidad de transferencia USB: 12 Mbit/s

Velocidad de transferencia por RS232: de 9.600 bit/s a 230 kbit/s

Tensión de Alimentación: 5 V derivados del conector USB o por medio de un adaptador de tensión de red externo.

Consumo de Corriente: 50 mA (aproximadamente).

Opciones: Conector para LCD, interfaz serie con niveles TTL.

Dimensiones (aproximadas): 41 mm x 77 mm x 18 mm (incluyendo conectores y tarjeta de memoria)

SOBRE EL TERRENO MICROCONTROLADORES

62 elektor

principales características del micro-controlador ARM 7.Todos aquellos que deseen profundi-zar aún más en el modo en que tra-baja el controlador ARM 7 , puedenutilizar un compilador GNU o cual-quiera de los distintos compiladoresdisponibles. La tecnología ARM yaha sido tratada en varios artículos deElektor.

La interfaz RS 232 es totalmente con-vencional y utiliza un circuito integra-do MAX 232 (IC11) para proporcionarla adaptación de los niveles necesa-rios de las señales sobre un conectortipo Sub-D de nueve terminales(CON2), proporcionando unos nivelesnominales de ±12 V en el lado de lasseñales RS 232, y niveles TTL en ellado del controlador ARM. En el

Las interfacesLa interfaz USB (ST2) tiene una veloci-dad de transferencia de datos en líne-as de 12 Mbits/s y puede usarse comopuerto para un ordenador que cumplecon las especificaciones tanto del USB1.1 como del USB 2.0. Su funciona-miento con alta velocidad se indica enel ordenador por medio de la resisten-cia R11 sobre la línea D+.

X1

12MHz

C14

15p

C15

15p

C13

1n

C12

10n

R6

1k5 MAX232

T1OUT

T2OUT

R1OUT

R2OUT

R1IN

IC11

T1IN

T2IN

R2IN

C1–

C1+

C2+

C2–

11

12

10

13

14

15

16V+

V-

7

89

3

1

4

5

2

6

C34

1

C35

1

CON2

1

2

3

4

5

6

7

8

9

PA0

PA4

PA5

PA6

PA7

PA8

PA9

PA10

PA11

PA12

PA13

PA14

PA15

PA16

PA17

PA18

PA19

PA20

PA21

PA22

PA23

PA24

PA25

PA26

PA27

PA28

PA29

PA30

PA31

PA22

PA6

PA21

SJ1

PA5

C38

1

C36

1

+5V

JP2PA17

I/O - 17

RX2

TX2

GND

JP3

PA30

PA29

PA28

PA27

PA4

PA16

PA24

PA25

PA26

PA7

PA20

PA23

PA19

PA18

UBUS

RS

R/W

E

DO

D1

D2

D3

D4

D5

D6

D7

VSS

VDD

VO

DISPLAY

I/O - 30

I/O - 29

I/O - 28

I/O - 27

I/O - 04

I/O - 16

I/O - 24

I/O - 25

I/O - 26

I/O - 07

I/O - 20

I/O - 23

I/O - 19

I/O - 18

+5V

1k

R1 I /O

LP2985-3.3

IC2

BYP

EN

1 5

2

3

4

C1

33

C3

100n

C2

33

C4

1n

C5

100n

C6

100n

C7

100n

C8

100n

C9

100n

C10

100n

+3V3

ST2

+5V

GND

D–

D+

S1 S2

1

2

3

4

USB-AGF

ST3

+3V3

RN

2D10

k

RN

2C10

k

RN

2B10

k

PA17/TD/PCK1/AD0

PA18/RD/PCK2/AD1

PA20/RF/IRQ0/AD3

PA10/DTXO/NPCS2

PA11/NPCS0/PWM0

PA19/RK/FIQ/AD2

PA22/TXD1/NPCS3

PA26/DCD1/TIOA2

PA27/DTR1/TIOB2

PA28/DSR1/TCLK1

PA30/IRQ1/NPCS2

PA31/NPCS1/PCK2

PA0/PWM0/TIOA0

PA1/PWM1/TIOB0

PA4/TWCK/TCLK0

PA5/RXD0/NPCS3

PA8/CTS0/ADTRG

PA9/DRXO/NPCS1

PA12/MISO/PWM1

PA13/MOS1/PWM2

PA14/SPCK/PWM3

PA21/RXD1/PCK1

PA23/SCK1/PWM0

PA24/RTS1/PWM1

PA25/CTS1/PWM2

PA29/RI1/TCLK2

PA2/PWM2/SCK0

PA3/TWD/NPCS3

PA6/TXD0/PCK0

PA7/RTS0/PWM3

PA15/TF/TIOA1

PA16/TK/TIOB1

AT91SAM7S64

VDDFLASH

VD

DC

OR

E

VD

DC

OR

E

VD

DC

OR

E

JTAGSEL

VD

DO

UT

VD

DP

LL

ADVREF

PGMCK

VD

DIO

VD

DIO

VD

DIO

VD

DIN

ERASE

PLLRC

XOUT

IC1

XIN/

NRST

GN

D

GN

D

GN

D

GN

D

AD7

AD6

AD5

AD4

TDI

TDO

TCK

TMS

DDM

DDP

TST

48

47

44

43

36

35

34

32

31

62 61

30

29

28

27

22

21

20

19

10

13

16

11

14

15

23

25

26

37

38

41

42

52

604617

18 45 58 64 12 24 54

59

33

39

49

50

53

51

55

56

57

63

40

9

2

6

5

4

3

7 8

1

C20

15p

C21

15p

R7

22Ω

R8

22Ω

C18

15p

C19

15p

R11

1k5

UBUS

R9

27k

R10

39k

C16

10n

C17

100n

L1

MLB-201209-0080AI

140mA

F1

JP1

SJ2

C23

33

C26

1

C24

100n

C22

1n

C25

100n

+3V3

PA0

PA31

PA5

PA6PA14

PA9

PA8

+3V3

RN

2A10

k

PA11

PA13

PA12

PA15

PA10

RN

1A10

k

RN

1B10

k

RN

1C10

k

RN

1D10

k CON1

WPT

CD

WP

S1 S2

9

1

2

3

4

5

6

7

8

060006 - 11

D–

D+

Figura 1. El núcleo de la unidad es un controlador ARM 7 que contiene una interfaz USB integrada. Su programa interno permite conectar un microcontrolador al puerto RS 232 para tener acceso de lectura y escritura a los datos de la memoria flash.

63elektor

Figura 2. Colocación de los componentes SMD sobre la placa de circuito impreso. Esta placa está disponible para nuestros lectores ya montada y verificada.

LISTA DE MATERIALES ResistenciasR1 = 1kΩ potenciómetro SMD del 1 % (opcional,

ver texto)RN1,RN2 = 10 KΩ conjunto de 4 resistencia

del 5 %R6, R11 = 1kΩ5 resistencia SMD del 1 % con

encapsulado 0805R7,R8 = 22Ω resistencia SMD del 1 % con

encapsulado 0805R9 = 27kΩ resistencia SMD del 1 % con

encapsulado 0805R10 = 39kΩ resistencia SMD del 1 % con

encapsulado 0805

CondensadoresC1,C2,C23 = 3μF3 condensador de tántalo

SMD del 20 % con encapsulado 3528C3,C5,C6,C7,C8,C9,C10,C24,C25 =

100nF condensador SMD del 10 % conencapsulado 0805

C4,C13,C17,C22 = 1nF condensador NP0SMD del 5 % con encapsulado 0805

C12,C16 = 10nF condensador SMD del 10% con encapsulado 0805

C14,C15,C18,C19,C20,C21 = 15pF con-densador SMD del 5 % con encapsulado0805

C26,C34,C35,C36,C38 = 1μF condensadorSMD del 10 % con encapsulado 0805

SemiconductoresIC1 = AT91SAM7S64 (programado, con

código de pedido 060006-41)IC2 = LP2985A-33DBVT (con encapsulado

SOT 23, de la casa Texas Instruments)IC11 = MAX232 (con encapsulado SO 16,

de la casa Maxim)

VariosX1 = Cristal de cuarzo de 12 MHz, con

encapsulado SM 49F1 = Polyswitch de 140 mA L1 = Bobina de choque, MLB – 201209 –

0080AI (Kitagawa)

CON1 = Conector con alojamiento para tar-jeta de memoria SD / MMC

CON2 = Conector sub-D de 9 terminaleshembra, en ángulo recto, para montaje enplaca de circuito impreso

ST1 = Conector USB – A hembra, para monta-je en placa de circuito impreso, por ejemplo,Assmann A-USB-a-SMT (Reichelt USB AGF)

JP1,JP2 = Conector tipo “pinheader” de 4 ter-minales SIL, con separación entre termi-nales de 0,1 pulgadas

JP3 = Conector tipo “pinheader” de 21 termi-nales SIL, con separación entre terminalesde 0,1 pulgadas

PCB, Placa de Circuito Impreso con código depedido nº 060006-1 (sin montar componen-tes), o con código de pedido nº 060006-91con componentes montados y verificada (verapartado SHOP de Elektor dentro de estarevista o ir a la página web www.elektor.com).

Programas del proyecto, fichero 060006-81.zip, con descarga gratuitaen la página web www.elektor.com

El controlador ARM 7Características Principales del AT 91SAM7S64

• Arquitectura RISC de 32-bit.• Memoria Flash de 64 kB, memoria SRAM de 16 kB.• Controlador de Reset, detector de Brownout.• 32 Terminales de E/S (de Pullups).• 2 UART, bus SPI (8 a 16-bit), TWI.• USB 2.0 de Velocidad Total (12 Mbit/s), controlador DMA.• Varios temporizadores, por ejemplo, temporizador / contadorde 16-bit, controlador PWM.• Conversor A/D de 8 canales de 10-bits.• JTAG, conexión para emulación y depuración.• E/S que trabajan con 5 V, cuatro terminales de E/S que sumini-stran hasta 16 mA.• Encapsulado LQFP de 64 terminales.

Tabla 1. Vista General de los ComandosComandos USB:Mount UnMount CardAvailable CardNotAvailableConnect DisConnect WriteDisable WriteEnablePing

Comandos relacionados con Ficheros:FileOpen FileClose FileRead FileWriteFileSeek FileTell Dir ChangeDirCreateDir RenameFile RemoveFile QuickFormat

Comandos relacionados con los Periféricos:InitDisplay ClearDisplay DisplayOff DisplayWriteBaudrate SetDirection SetOutput GetInputSetPullup GetCardStatus GetFirmwareVersion

EjemploComando MOUNT hacia el controlador:41h 04h 00h 45h

Checksum 41h, haciendo un XOR con 04h y XOR con 00h nos da 45h.Byte superior de la suma de bytes en la secuencia de comandos.Byte inferior de la suma de bytes en la secuencia de comandos.El byte de comando

Respuesta del controlador:41h 01h 40h

Checksum 41h, haciendo un XOR con 01h nos da 40h.El valor 1 indica que la petición MOUNT ha sido aceptada y realizada.Eco del Byte de comando

SOBRE EL TERRENO MICROCONTROLADORES

64 elektor

conector JP2 hay una segunda inter-faz serie. La interfaz RS 232 puede tra-bajar con datos cuyas velocidades vandesde los 9,6 Kbits/s hasta los 230Kbits/s. Tras una señal de reinicializa-ción (“reset”) la velocidad se estable-ce por defecto a 9.600 bits/s. La inter-faz serie recibe y trasmite señales quetambién están disponibles sobre losterminales 2 y 3 del conector JP1 conniveles TTL. Cuando se utiliza estaopción es necesario retirar el puentehecho con estaño sobre SJ1, de mane-ra que se evite cualquier posible limi-tación en los niveles de señal, produ-cida por los datos recibidos sobre elconector CON2.Un conector tipo “pin header” de 21terminales, JP3, proporciona los ele-mentos necesarios para la conexiónde una pantalla LCD estándar que uti-lice un controlador HD 44780 o compa-tible. Nuestro equipo está preparadopara proporcionar soporte a visualiza-dores que utilicen una, dos o cuatrolíneas de texto con una longitud máxi-ma final de 16 ó 20 caracteres. La ali-mentación para el visualizador sederiva directamente del bus USB. Si alfinal optamos por montar una pantallaLCD será necesario montar el poten-ciómetro SMD R1 que nos permite rea-lizar un control sobre el contraste dela misma. La pantalla de visualizaciónutiliza once terminales de JP3, ochopara los datos, uno para la señal deSelección de Registro (RS), uno para laseñal de Lectura/Escritura (R/W) yuno más para la señal “Enable” (E, esdecir, habilitar). Cuando se ha optadopor no montar ninguna pantalla LCD,los terminales que van desde PA7 aPA20 pueden emplearse como termi-nales de E/S de propósito generalEl controlador ARM también disponede una interfaz SPI que permite laconexión de una tarjeta de memoriaFlash. El siguiente apartado nosmuestra esta interfaz en mayor pro-fundidad.

La tarjeta de memoriaEl conector de la tarjeta Flash (CON1),situado sobre la placa de circuitoimpreso, puede trabajar tanto con tar-jetas de tipo MMC como de tipo SD, apesar de su diferente grosor. Una granvariedad de aplicaciones comerciales,tales como cámaras digitales, agendaspersonales, etc., emplean ambos tiposde tarjetas. Este tipo de tarjetas tieneun precio muy competitivo y ofreceuna gran capacidad de memoria. El cir-cuito de este proyecto soporta tarjetascon una capacidad de hasta 2 GB.La memoria flash tiene un númerolimitado de ciclos de borrado (lo cual,

Figura 3. El conector USB, el conector RS 232 y el receptor para la tarjeta MMC / SD son los únicos componentes montados sobreuna de las caras de la placa.

65elektor

obviamente, también limita los ciclosde escritura). Estas cifras de vida útildependen en su mayor parte del tipode tecnología utilizada por la tarjeta(memoria flash del tipo NOR o NAND).Las tarjetas de memoria MMC y SDestándar (memoria flash tipo NOR),presentan unas cifras de ciclos deescritura de 100.000 veces. Sin embar-go, existen variantes industriales quellegan a alcanzar los 400.000 ciclos yque presentan rango de temperaturade funcionamiento extendido.Cuando se inserta una tarjeta en elconector, el controlador determina elestado del conmutador de protecciónde escritura. El espacio de memoriade la tarjeta está organizado en secto-res de 512 bytes, que se correspondetambién con el tamaño de memoriaque puede ser leído o escrito de unasola vez. El sistema de ficheros utiliza-do es el formato FAT16 ya estandari-zado en la industria, de manera que latarjeta puede retirarse y usarse enotro equipo con lector de tarjetas.La comunicación con las tarjetas dememoria se puede conseguir utilizan-do bien el modo MMC o bien el modoSD, ya que ambos tipos de tarjetassoportan el modo de interfaz SPI. Elcontrolador ARM 7 utiliza el modo SPIy sólo necesita cuatro líneas de cone-xión con la tarjeta: MOSI (Master Out -Slave In, es decir, Maestro Envía –Esclavo Escucha), MISO (Master In -Slave Out, es decir, Maestro Escucha –Esclavo Envía), SCK (Serial Clock, esdecir, Reloj Serie) y SS (Slave Select, esdecir, Selección de Esclavo). La tarjetase comunica con una velocidad dedatos serie de 12 Mbits/s. Es impor-tante estar seguros de que esta tarje-ta no se inserta o se retira durante nin-guna operación de lectura o escritura.

AlimentaciónLa unidad completa toma su tensiónde alimentación de + 5 V del conectorUSB o de un adaptador de tensión dered externo que se conecta en elconector JP1.Se utiliza un puente de soldadura(SJ2) para definir qué tipo de opciónde tensión de alimentación se estáutilizando. El regulador de tensión IC2proporciona la tensión de + 3,3 Vrequerida por el microcontrolador y lamayoría de la circuitería que le rodea.En el modo de funcionamiento normaltan sólo estarán puenteados dos ter-minales de SJ2, que serán los quedefinan el origen de la tensión de ali-mentación para la unidad. No se reco-mienda, pero sí que es posible, puen-tear los tres terminales juntos, demanera que la tensión de alimenta-

Figura 4. El microcontrolador AT 91SAM7S64, el circuito integrado MAX 232 y el cristal de 12 MHz, son los componentes másgrandes en la cara inferior de la placa de circuito impreso.

NAVTEXLa red NAVTEX, que proporciona radiodifusión de información meteorológica, ha proporcio-nado su ayuda a los marineros durante muchos años y también ha servido como fuente deinspiración para la creación de este proyecto. La red internacional NAVTEX (NavigationalWarnings by Telex, es decir, Avisos de Navegación por Teletexto) envía información delestado del mar y avisos de tormentas, así como información de la evolución de la situación.La estación trasmite de forma internacional en la frecuencia de 518 KHz o de forma nacio-nal (en el idioma local) sobre la frecuencia de 490 KHz [2].

Esta transmisión de texto puede ser capturada porreceptores dedicados a ello (ver fotografía), algu-nos de los cuales utilizan una impresora térmicapara disponer de una copia física del mensa-je, mientras que otros utilizan una memoriaflash para almacenar los mensajes recibi-dos, los cuales pueden ser leídos, demodo simultáneo (o más tarde), por unordenador, a través de un puertoUSB.

El autor de este artículo creó estediseño ampliando este concep-to, de manera que se pue-den almacenar datos pro-venientes de un sistemamicrocontrolador ytransferirlos sobre unordenador utilizan-do un puertoRS232, un puer-to USB y/o unatarjeta de memoriade alta capacidad debajo coste, del tipoMMC/SD, utilizada comomedio de almacenamiento.

SOBRE EL TERRENO MICROCONTROLADORES

66 elektor

ción pueda suministrarse desdeambas fuentes. Con los dos puentessoldados siempre deberemos tenermucho cuidado de ¡no aplicar la ten-sión de alimentación a la unidad a tra-

de alimentación del puerto USB. Loscondensadores montados entre laslíneas de datos del bus USB y alrede-dor del circuito integrado reguladorde tensión, realizan la misma función.Un fusible (F1) de 150 mA, del tipoPolySwitch, evita que el circuito sufradaños debidos a un consumo decorriente demasiado elevado si se pro-duce un fallo.

La placa de circuito impresoLa placa de circuito impreso (Figura2) muestra que todos los componen-tes SMD están montados en una delas caras de la placa mientras que laotra cara se usa para montar losconectores (Figura 3). Los componen-tes más grandes de la cara de compo-nentes (Figura 4) son el microcontro-lador AT 91SAM7S64, el MAX 232 y elcristal de 12 MHz.El proceso de soldadura de los compo-nentes SMD puede ser bastante difícil(y caro) si no tenemos una ciertaexperiencia con este tipo de trabajos.Así, tanto el componente con encap-sulado LQFP de 64 patillas, utilizado

vés del adaptador de tensión de red ydel puerto USB simultáneamente!La bobina L1 y el condensador C17forman un filtro paso/bajo que supri-me cualquier interferencia en la línea

060006-81.zip(Descargado desde la páginawww.elektor.com o por pedido del CD):

Ficheros fuente detexto/Controladores para lenguaje CFichero Stickdrv:double.cpp Comandos hacia el lápizdouble.h Fichero Cabeceraserial.cpp Interfaz serieserial.h Fichero CabeceraFile Stick51:Ejemplos en lenguaje C para dispositivoscompatibles con el 8051

Ficheros fuente y controladorespara comandos similares al DOS:File Stickdos:COPYS.PAS Comando para Copiar

DELS.PAS Comando para Borrar

DIRS.PAS Comando para hacer un “Dir”

TYPES.PAS Comando para Escribir (Type)

MISC.PAS odds and ends

PARAM.PAS manejador de parámetrosde las instrucciones anteriores

RS232.PAS Interfaz serie

STICK.PAS Comandos hacia el lápiz

Programa de Windows (que incluye código fuente)Fichero Sticktest con entorno Testsuite paraverificación y pruebas

Documentación:Fichero Stickdok: Información adicionalque describe todos los comandos.

Ficheros del programa

Registradorde datosLa memoria USB-Flash también puede usarse comodispositivo registrador de datos. El programa internoalmacenado en el controlador ARM conmuta al modode trabajo de registro de datos cuando detecta la pre-sencia de un puente conectado en los terminales 17 y18 del conector tipo “pin header” JP3. Para poder tra-bajar en este modo de funcionamiento son necesariostres componentes adicionales:

• Un pulsador conectado entre el terminal 4 (GND) yel terminal 7 (PA30).

• Una resistencia de 750 Ω entre el terminal 8 (PA29)y el terminal 12 (PA16).

• Un diodo LED rojo de baja corriente (2 mA) con elánodo conectado al terminal 12 (PA16) y el cátodoconectado al terminal 13 (PA24).

Una vez que el puente está colocado en su lugar, eldiodo LED se enciende de manera permanente paraindicar que el dispositivo está trabajando en modoregistrador de ratos. Cuando se activa el pulsadoraparece en pantalla el mensaje “DATEN” (si no haydatos disponibles). A continuación, el diodo LED sequeda parpadeando y el controlador espera la llega-da de datos provenientes del puerto RS 232 (9.600bits/s). Cuando se produce la llegada de datos,dichos datos se escriben en un fichero que tiene elnombre de ‘DATEN001.TXT’. Si este fichero ya exis-te se crea otro fichero diferente con el nombre‘DATEN002.TXT’, y así continuamente hasta llegar alnombre de fichero máximo ‘DATEN999.TXT’.

Una vez que el fichero ha sido transferido, si pulsamos otra vez elpulsador el fichero se cierra y el diodo LED se enciende de nuevo demanera continua, indicando que el dispositivo está listo para el sigui-ente fichero.

JP3

12

13

17

18

4

7

8

750

Ω

LED

060006 - 12

Diagrama del conector de 21 pines JP3 cuandose usa en el modo de registro de datos.El pin 1 del conector está indicado por un

contorno cuadrado impreso en la PCB.

67elektor

para el controlador, y el encapsulado1206 de la red de resistencias, requie-ren un cuidado particular. Para todosaquellos lectores que no estén segu-ros de poder hacer el trabajo correcta-mente, existe una placa totalmentemontada que puede pedirse a travésde nuestra sección de Tienda deElektor. Por el contrario, para aquellosmás aventurados, también existe lamisma placa de circuito impreso sincomponentes montados, cuyo pedidose puede realizar de la misma manera.

SoftwareTodos los programas para este proyectoestán contenidos en un archivo quetiene la referencia nº 060006-81.zip yque nuestros lectores pueden encontraren la página web www.elektor-electro-nics.com. La sección de texto corres-pondiente, denominada "Ficheros delPrograma”, nos proporciona una infor-mación global de todos los ficheros yde la documentación del programa.Principalmente este fichero contienerutinas para los controladores y fiche-ros ejemplo para un sistema micro-controlador conectado al puerto RS232 de una memoria flash.El programa para el controlador ARM7 (dispositivo disponible ya progra-mado) se encarga del sistema deficheros y ejecuta los comandosenviados sobre la interfaz USB o RS232. Los comandos provenientes delsistema operativo que corre en elordenador son recibidos a través delpuerto USB, de manera que la memo-ria flash se ve como un disco adicio-nal. Los comandos provenientes deun sistema microcontrolador externo,y sus respuestas correspondientes,se reciben a través de la interfaz RS232. La Tabla 1 ofrece una visióngeneral de todos los comandos, divi-didos en tres grupos:

• Comandos USBDonde se muestran todas las instruc-ciones que tratan con la comunicaciónentre el puerto USB, el puerto RS 232,el ordenador y el controlador ARM 7.

• Comandos de ficherosEstos comandos permiten que losficheros puedan abrirse, cerrarse yrenombrarse, y para las tarjetas dememoria MMC / SD conectadas, quetambién puedan formatearse.

• Comandos para periféricosComandos para controlar la pantallade visualización, los terminales de E/Slibres y la velocidad de las comunica-ciones.

Todas las comunicaciones están esta-blecidas según la misma estructura

básica: se envía un comando hacia elcontrolador al que le sigue la respues-ta del propio controlador. Cada men-saje hacia el controlador contiene uncampo de comando, un campo deparámetro (si el comando tiene algúnparámetro asociado con él) y unasuma de verificación. La principaldiferencia es el número de parámetrosenviados.Por lo tanto, las instrucciones hacia elcontrolador tienen el siguiente formato:

[Byte de comando - [de 0 a 4 paráme-tros] – Checksum (es decir, suma deverificación)]

Byte 1: Byte de comandoByte 2: Byte bajo de la longitud totaldel comandoByte 3: Byte alto de la longitud totaldel comando

Byte 4: Byte bajo de la longitud totaldel primer parámetroByte 5: Byte alto de la longitud totaldel primer parámetroByte 6: datos del primer parámetro(1-512 bytes)

[…] hasta tres parámetros más

Byte n: 8-bit XOR checksum (sumade verificación) entre comandos com-pletos

La respuesta del controlador tiene unformato similar que, típicamente, con-siste en una secuencia de tres bytes.El primer byte es una repetición (eco)del byte de comando enviado hacia elcontrolador; el segundo byte es unaviso que nos indica si la ejecución delcomando se ha realizado de manerapositiva o negativa; mientras que eltercer byte es un checksum (es decir,una suma de verificación). Cuando elcomando solicita un dato, éste estransmitido antes de la secuencia.Por lo tanto, la respuesta del controla-dor tiene el formato siguiente:

[Command byte – aviso de éxito/fallo– Checksum (suma de verificación)]

Byte 1: repetición del comandoByte 2: ‘1’ si el comando se ha ejecu-tado correctamente, sino, ‘0’Byte 3: 8-bit XOR checksum entrelos dos bytes anteriores

Para mostrar mejor el proceso decomunicación, en la Tabla 1 se indicacon detalle el comando MOUNT. Por logeneral, el comando MOUNT es el pri-mer comando en el programa y notiene ningún parámetro asociado conél. Este comando pide al controlador

que cargue las partes del sistema deficheros (FAT, con índice) de la tarjetaMMC / SD sobre su memoria RAM. Esnecesario obtener y retener esta infor-mación proveniente de la tarjeta dememoria antes de que algún otrocomando pueda usarse.Cuando han pasado juntos todos losbytes en el comando y en la secuen-cia de respuesta a través de la fun-ción XOR, el resultado que obtene-mos debe ser igual a 00h, lo que nosindica (con un alto nivel de probabili-dad) que la secuencia de comunica-ción no se ha visto interrumpida. Paraverificar si el comando ha sido envia-do de manera exitosa es necesarioexaminar el byte central de la secuen-cia recibida. Si el byte recibido es 01hesto nos indica que el proceso se harealizado de forma correcta, mientrasque si se recibe 00h será una indica-ción de que no ha sido posible enviarel comando.Entre todos los ficheros que se inclu-yen en el fichero 060006-81.zip (quepuede descargarse desde la páginaweb www.elektor.com [1]), nuestroslectores pueden obtener una descrip-ción mucho más detallada de cadauno de estos comandos.

(060006-I)

Enlacesen la Red:[1] www.elektor.com

[2] http://en.wikipedia.org/wiki/Navtex

SOBRE EL TERRENO E-BLOCKS

68 elektor

Waraporn Supmak, John Dobson

Los bloques electrónicos son como los bloques de Lego, podemosunirlos unos con otros para conseguir construir diferentes tipos deformas y estructuras. Los módulos también son perfectos parafuncionar por sí mismos. En este artículo vamos a utilizar bloqueselectrónicos y el programa Flowcode para controlar los circuitos através de un puerto USB, por medio de un puerto RS 232, mien-tras hacemos un uso inteligente de la aplicación Visual Basic. Unagran cantidad de contenido para nuestras propias aplicaciones.

Hace poco me preguntaron sialgún amigo mío podría desarrollaruna pequeña ventana de visualiza-ción que permitiera dar instruccio-nes al cartero sobre dónde dejarlos paquetes cuando no hubiesenadie en la oficina.Los requisitos eran que queríaintroducir una serie de comandosde texto (la dirección de un vecino,por ejemplo) dentro de una aplica-ción que se ejecutase en el ordena-dor, y disponer del mensaje mos-trado en pantalla. A continuaciónpodría mostrarse otra pantalla quefuese visible desde el exterior desu casa pero que no fuera exage-rada. Utilizando un pequeño cir-cuito basado en una pantalla LCDy un microcontrolador, el diseñosería mucho más adecuado. Laesencia del trabajo es cómo conse-

guir que un ordenador se comuni-que con un sistema basado en unmicrocontrolador. Según parece, setrata de una cuestión que se le hapresentado a un gran número delectores de Elektor, por lo quehemos pensado que sería un buentema para un proyecto.

El conceptoLa Figura 1 muestra el diagramabásico del sistema final que necesi-tamos. En términos de componen-tes, el sistema de visualización quequeremos necesita un microcontro-lador central (en este caso unmicrocontrolador PIC), una interfazUSB (proveniente de la casa FTDI)y una pantalla LCD. Como medidasde previsión y de indicaciones adi-cionales, hemos incluido algunos

diodos LEDs y conmutadores. Losconmutadores nos permitirán crearun visualizador estándar a partir deuno que suministre varios mensa-jes, y los diodos LEDs pueden lle-gar a ser muy útiles más adelante.Por suerte, el sistema dispone deunas líneas de alimentación dereserva que proporcionan una ten-sión de salida de 18 V. Un reguladorde tensión estándar, del tipo 7805,podría proporcionar la tensión de 5V necesaria para el funcionamientodel circuito.

Elaboración de bloques electrónicosLo primero que hice fue desarrollarun sistema prototipo a partir de blo-ques electrónicos. El resultado semuestra en la Figura 2. La mayoríade nuestros lectores ya estaránfamiliarizados con las distintas tarje-tas de bloques electrónicos quehemos utilizado en estos apartados:un multiprogramador con micro-controlador PICmicro, una placa dediodos LEDs, y una placa que con-tiene conmutadores y una pantallaLCD. En la sección “SHOP” de lapágina www.elektor.com nuestroslectores pueden encontrar informa-ción más general y detallada sobrelos bloques electrónicos disponiblesen estos momentos.Como núcleo microcontrolador seha utilizado el PIC 16F877A. Esta-mos de acuerdo que se trata de un

Figura 1. Bloque esquemático del sistema de visualización.

Con Bloque Electrónico de

69elektor

microcontrolador sobredimensio-nado para esta tarea, pero tambiénhemos pensado que siempre pode-mos utilizar un microcontroladorPIC más pequeño cuando todoesté acabado. Una tarjeta de blo-ques electrónicos que puede queno sea demasiado familiar paranuestros lectores es el móduloUSB232, que se muestra en laFigura 3. Este módulo está basadoen la conocida interfaz USB a RS232, suministrado por una grancompañía escocesa llamada FTDI.Cómo trabaja esta interfaz interna-mente está más allá del objetivo deeste artículo, así que lo único quevamos a decir sobre el uso de estedispositivo es que la interfaz de lacasa FTDI convierte una señal USBen una señal RS 232 y que la placase suministra con un conjunto decontroladores COM virtuales quenos permite comunicarnos con ellautilizando programas estándaresde Windows, como es el caso deVisual Basic.

Prueba “virtual” Haremos una pequeña prueba ini-cial mediante un pequeño pro-grama en Visual Basic que cumple,más o menos, con los objetivosgenerales. Hemos diseñado unapantalla con una zona de visualiza-ción, ocho conmutadores y ochodiodos LEDs. El estado de los ochoconmutadores, conectados sobre elpuerto D del multiprogramador, sepuede verificar por el estado de losocho diodos LEDs dentro de la apli-cación de Visual Basic.En consecuencia, el estado de losdiodos LEDs, conectados sobre elpuerto A del bloque electrónico delmultiprogramador, refleja el estadode los ocho conmutadores queestán presentes en nuestra aplica-ción de Visual Basic. Estos elemen-tos fueron realmente útiles du-rante la fase de diseño inicial delprograma, ya que nos permitieronverificar que podíamos transferirdatos desde y hacia el dispositivomicrocontrolador. Por este motivolos hemos dejado dentro del pro-

grama de aplicación, ya que hemospensado que podrían ser muy úti-les en proyectos futuros.

De lo “virtual” a lo realEn el programa final, para mostrarun mensaje en la pantalla LCD,basta con escribir el mensaje en laventana de texto de la aplicaciónque se ejecuta en el ordenador.Este texto escrito se actualiza, deforma inmediata, en la pantallaLCD a través del puerto B del mul-tiprogramador. El botón “CLEAR”(“BORRAR”), nos permite eliminarcualquier texto presente en la pan-talla. La aplicación de control estáescrita en Visual Basic, cuyo resul-tado final se muestra en la Figura5. Creemos que una explicaciónmás profunda sobre el funciona-miento del programa excede losobjetivos de este artículo, pero

para aquellos que estén interesa-dos en dicho programa, puedendescargar los ficheros fuentes de lapágina web de la revista Elektoren www.elektor.com (nuestros lec-tores necesitarán el programaVisual Basic para poderlos ver). Elnombre del fichero es 065087-11.zip y nuestros lectores podránencontrarlo en la página webwww.elektor.com bajo la opción“MAGAZIN”, seleccionando poste-riormente el mes de la publicación.

Y a continuación... FlowcodePara el microcontrolador PIC hemosdesarrollado un programa en la apli-cación Flowcode, y más concreta-mente en su versión 3, la cualincluye un icono que maneja elpuerto RS 232 y que nos permite lacomunicación con el dispositivo dela casa FTDI. Casi todo el programa

elektor

Comunicación de circuitos usando USB

Figura 2. Sistema de prototipo del bloque electrónico. Señalar el cable plano de nueve hilos que va hacia la pantalla LCD.

VB a USB

Figura 3. Placa del bloque electrónico del conversor USB a RS 232.

SOBRE EL TERRENO E-BLOCKS

70 elektor

Conclusión

El dispositivo de la casa FTDI es idealpara realizar la tarea de la conexión albus USB de manera sencilla. Comoprueba de ello es que hemos tardadomenos de un día para crear la aplica-ción completa y los resultados hansido interesantes para un primer pro-totipo. El coste de los distintos blo-ques electrónicos necesarios paraeste proyecto está por debajo de los160 €, teniendo en cuenta que nisiquiera hemos tenido la necesidadde crear una placa de circuito impresoya que, al final, tan sólo hemos utili-zado el sistema de prototipos que semuestra en la Figura 2, con un cableplano IDC, de una longitud de 60 cm,para conectar la pantalla LCD. Todoha funcionado perfectamente.

(065087-I)

dez de 30 días, que nos permitiráver cómo funciona este programa.La dirección “url” de la versión dedemostración de este programa estácolocada en la página del proyectopara este artículo. En la página webde Elektor, www.elektor.com.

completo está representado en eldiagrama de flujo de Flowcode quese muestra en la Figura 4. Todosaquellos lectores que no dispongande una copia de la aplicación Flow-code pueden descargarse una ver-sión de demostración, con una vali-

Figura 4. Programa 3 escrito en Flowcode.

Figura 5. Aplicación de Visual Basic.

LCDDisp...Start

BEGIN

Inicialización de la pantalla LCD

LCDDisp...Clear

0 PORT B

2 s

A:

While1

Borra la pantalla LCD

Call MacroCHECK_...

IfCHR <>

255?

Punto de conexión

Reinicializa el estado de los LEDs del puerto B

Inicio del programa Principal

LCDDisp...PrintASC...

Mensaje de Bienvenida en la pantalla LCD

Retardo

A

END

PORT A INPA

Entra en la subrutina de tratamiento de interrupción

RS232(0)CHR=Re...

Verifica la llegada de un mensaje RS 232

Si hay un mensaje presente…

LCDDisp...PrintASC...

Muestra el carácter en la pantalla LCD

LCDDisp...Clear

Borra la pantalla LCD

El carácter es LF

El carácter es '<'

El carácter es '>'

Ir al punto de conexión

ni '>' ni '<'

Si

NoSi

No

Lee los datos del puerto A

Envía datos a las entradas del puerto A+ envía un mensaje vía RS 232

If(CHR <>

60) AN?

RS232(0)CHR=Re...

Leer el siguiente byte RS 232

PORTB = P...

Activar el puerto B dependiendo de…

Enviar un dato de salida al puerto B

Yes

No

If(CHR =10) O...

?

Si

No

IfCHR = 6

0?

PORTB PORT B

RS232(0)CHR=Re...

Leer el siguiente byte RS 232

PORTB = P...

Activar el puerto B dependiendo de…

Enviar un dato de salida al puerto B

Inicio del programa Principal

Yes

065087- 12

No

IfCHR = 6

2?

PORTB PORT B

Unas palabras sobre el programa del 16F877ASi examinamos el diagrama de flujo del programa Flowcode de la Figura 4, podemos verfácilmente cómo funciona el programa PICmicro.En primer lugar se inicializa la pantalla LCD y se muestra un mensaje de bienvenida. En el pro-grama principal leemos el estado (las entradas) de los conmutadores del puerto A (si algún con-mutador está siendo activado se envía el dato de nuevo hacia el ordenador utilizando la subruti-na de entrada de conmutación, que no está mostrada con detalle). A continuación se verifica laentrada de algún mensaje sobre los terminales del puerto RS 232. Si, por ejemplo, dicho men-saje no existe, la subrutina nos devuelve el valor "255", y se ejecuta de nuevo el lazo.El programa de Visual Basic envía caracteres “<” y “>”como instrucciones para las salidas delpuerto B (“<” indica que el terminal de salida está activado y “>”indica que el terminal de sali-da está desactivado). Por lo tanto, si existe un mensaje, la siguiente decisión es la de verificarsi se trata de un mensaje de salida sobre el puerto B. En caso contrario el carácter de entradase muestra en la pantalla LCD. La segunda casilla de decisión detecta si se ha recibido uncarácter de avance de línea generado por el botón “CLEAR” en la aplicación de Visual Basic.Si se ha recibido dicho carácter, el programa borra la pantalla LCD y envía el programa denuevo al punto “A”. Seguidamente, la siguiente casilla de decisión detecta si se ha recibido uncarácter “<” y, si el carácter recibido coincide con el carácter RS 232 correspondiente, conte-niendo la información del terminal, activa el correspondiente terminal del puerto B a nivel alto.La última casilla de decisión detecta si se ha recibido un carácter “>”y, si se recibe, lee el cor-respondiente carácter RS 232 y coloca el correspondiente terminal del puerto B a nivel bajo.Avisamos a aquellos lectores que deseen saber algo más sobre las pantallas LCD del hechode que una pantalla de 16 caracteres normalmente tiene 32 caracteres internos, por lo quepuede parecer que el programa no funciona correctamente. En la práctica este programa deVisual Basic se encarga de estos espacios adicionales.

elektor 71

LIBROS INFORMACIÓN Y ENTRETENIMIENTO

Las direcciones másinteresantes de Internet.Edición 2007 Por Óscar RodríguezFernández, RobertoTroncoso Egea ySagrario Bravo de PabloISBN 978-84-415-2099-8960 páginasEditorial AnayaMultimedia

En nuestros días está másque demostrado que Inter-net ofrece la mayor fuentede información que el usua-rio tiene a su alcance. Lafacilitación del acceso a laRed ha potenciado la demo-cratización de datos y con-tenidos, por lo que todas lastemáticas son abarcables,desde el deporte hasta lapolítica, pasando por lamúsica, el arte o la econo-mía; no importa lo que quie-ra buscar, sencillo o enreve-sado, seguro que lo encon-trará en la Red. Organizada por temáticasclaramente estructuradas,esta obra ofrece al usuariouna referencia detallada delas direcciones que puedenresultar más útiles e intere-santes en función de susnecesidades y preferencias.Las direcciones más intere-santes de Internet 2007 setrata de un listado ordena-

do alfabéticamente y rigu-rosamente actualizado quepermite localizar de mane-ra rápida y eficaz los mejo-res contenidos web en cas-tellano.

El proceso digital de la imagen conPhotoshop CS2 Por Enrique RodríguezÁlvarez y ClaudiaValdés-MirandaISBN 978-84-415-2081-3320 páginasEditorial AnayaMultimedia

Actualmente las imágenesdigitales se usan con ex-traordinaria eficacia en lacomunicación visual paratransmitir información y elproceso de impresión se haflexibilizado, acercándosecomo nunca al creador. Estarealidad provoca un segui-miento especial de los fabri-cantes de herramientas, pa-ra perfeccionar el procesa-miento de imágenes. Sonmúltiples las opciones dis-ponibles con las que puedenobtenerse resultados exce-lentes.

Adobe Photoshop CS2, es laherramienta líder en el tra-tamiento de imágenes.Unprograma que justifica supopularidad con alcance yexcelencia. Este libro sebasa en esta nueva versiónaunque muchas de las téc-nicas descritas trabajan per-fectamente en la versión CS.Aprenderá las técnicas másusadas en el uso de Photos-hop, porque aunque la apli-cación proporciona infini-dad de funciones, no esnecesario conocer todo elconjunto para lograr buenosresultados. Están explicados los con-ceptos digitales más impor-tantes y todo el proceso ensí, desde la captura de ima-gen con un escáner o cáma-ra, pasando por la transfe-rencia de archivos al orde-nador, la depuración y losajustes básicos hasta la pre-paración de las imágenespara el medio donde se utili-zarán; la impresión o la Web.

Los mejores trucos paraInternet. Edición 2007 Por Gonzalo ÁlvarezMarañónISBN 978-84-415-2088-2944 páginasEditorial AnayaMultimedia

Internet es ya un elementoimprescindible en nuestravida diaria, tanto en elámbito profesional como enel personal. La tecnologíaavanza de un modo tan ver-tiginoso que cada día sur-gen métodos más innova-dores y eficaces de accedera toda la información quenos es necesaria. Su impac-to ha sido tal que ha provo-cado una revolución tantoen la economía mundialcomo en las relacionesinterpersonales. Este libro pretende que no sequede atrás en el desarrollo yprogreso de Internet. Lemostrará los consejos másútiles para obtener el máxi-mo rendimiento de la Red;configurar su ordenador, na-vegar de forma eficaz por losdiferentes buscadores y ma-nejar la mensajería instantá-nea o personalizar los pro-gramas al gusto son algunosde los aspectos que abarcaesta obra. Los trucos de estelibro enseñan al lector aexplotar los recursos en elámbito de Internet y de-muestran que con un cono-cimiento adecuado de Inter-net se puede ahorrar tiempoy dinero, y se puede compar-tir información, conocimien-to e ideas.

elektor 72

INFORMACIÓN Y ENTRETENIMIENTO SERVICIOS DE LECTORES

CONDICIONES GENERALES

Los circuitos impresos, carátulas autoadhesivas, ROMs, PALs, GALs, microcontroladores y disquetes que apa-recen en las páginas de ELEKTOR se encuentran a disposición de los lectores que lo requieran. Para solicitar-los es necesario utilizar el cupón de pedido que se encuentra en las páginas anexas.Este mismo cupón también puede utilizarse para efectuar pedidos de los libros de la colección de ELEKTOR (enversión original inglesa).- Los items marcados con un asterisco (*) tienen una vigencia limitada y su disponibilidad solo puede garanti-zarse durante un cierto periodo de tiempo. - Los items que no se encuentran en esta lista no están disponibles.- Los diseños de circuitos impresos se encuentran en las páginas centrales de la Revista. En ocasiones y porlimitación de espacio no se garantiza la publicación de todos los circuitos. En estos casos los lectores interesa-dos pueden solicitar los diseños, utilizando el mismo cupón de pedido y les serán enviados a su domicilio con-tra reembolso de 3 € (incluidos gastos de envio).- Los EPROMs, GALs, PALs, (E)PLDs, PICs y otros microcontroladores se suministrarán ya programados.Los precios y las descripciones de los diferentes productos estan sujetos a cambios. La editorial se reserva elderecho de modificar los precios sin necesidad de notificación previa. Los precios y las descripciones incluidasen la presente edición anulan los publicados en los anteriores números de la Revista.

FORMA DE ENVIO

Los pedidos serán enviados por correo a la dirección indicada en el cupón de las páginas anexas. Además loslectores pueden formular pedidos por teléfono llamando al número 91 327 37 97 de lunes a viernes en horariode 9,30 a 14 h y de 16 a 19 h. Fuera de este horario existe un contestador telefónico preparado para recogerlas demandas. Los gastos de envio serán abonados por el comprador, tal como se indica en el cupón.

FORMA DE PAGO

Todos los pedidos deberán venir acompañados por el pago, que incluirá los gastos de envio, tal como se indi-có anteriormente.El pago puede realizarse mediante cheque conformado de cualquier banco residente en territorio español, giropostal anticipado, tarjeta VISA (en este caso debe indicarse la fecha de caducidad, domicilio del propietario dela tarjeta y firma del mismo).Nunca se deberá enviar dinero en metálico con el pedido. Los cheques y los giros postales deben ser nominati-vos a la orden de VIDELEC S.L.

SUSCRIPCIONES A LA REVISTA Y EJEMPLARES ATRASADOS

Las suscripciones o pedido de números atrasados, si se encuentran disponibles, se realizarán a Grupo V, C/ Valportillo Primera 11 - 28108 Alcobendas (Madrid). Telf: 91 662 21 37, Fax: 91 662 26 54. E-mail: [email protected] precios de ejemplares atrasados son de 4,50 € más gastos de envio.

COMPONENTES UTILIZADOS EN LOS PROYECTOS

Todos los componentes utilizados en los proyectos ofrecidos en las páginas de la Revista se encuentran gene-ralmente disponibles en cualquier establecimiento especializado o a través de los anunciantes de este ejemplar.Si existiera alguna dificultad especial con la obtención de alguna de las partes, se indicará la fuente de suminis-tro en el mismo artículo. Lógicamente los proveedores indicados no son exclusivos y cualquier lector podráoptar por su suministrador habitual.

CONDICIONES GENERALES DE VENTA

Plazo de entrega: El plazo normal será de 2-3 semanas desde la recepción del pedido. No obstante no pode-mos garantizar el cumplimiento de este periodo para la totalidad de los pedidos.Devoluciones: Aquellos envios que se encuentren defectuosos o con la falta de alguno de los componentespodrán ser devueltos para su reposición, solicitando previamente nuestro consentimiento mediante llamadatelefónica al número (91) 3273797 en horario de oficina. En este caso la persona que llame recibirá un númerode devolución que deberá hacer constar al devolver el material en un lugar bien visible. En este caso correrápor nuestra cuenta el gasto de envio de la devolución, debiéndolo hacer así constar el remitente en su oficinapostal. A continuación se le enviará nuevamente el pedido solicitado sin ningún gasto para el solicitante.En cualquiera de los casos anteriores, solo se admitirán las devoluciones en un plazo de tiempo de 14 diascontados a partir de la fecha de envio del pedido.Patentes: Algunos de los circuitos o proyectos publicados pueden estar protegidos mediante patente, tanto enla Revista como en los libros técnicos. La editorial no aceptará ninguna responsabilidad derivada de la utiliza-ción inadecuada de tales proyectos o circuitos para fines distintos de los meramente personales.Copyright: Todos los dibujos, fotografias, artículos, circuitos impresos, circuitos integrados programados, dis-quetes y cualquier otro tipo de software publicados en libros y revistas están protegidos por un Copyright y nopueden ser reproducidos o transmitidos, en parte o en su totalidad, en ninguna forma ni por ningún medio,incluyendo fotocopiado o grabación de datos, sin el permiso previo por escrito de la Editorial. No obstante, los diseños de circuitos impresos si pueden ser utilizados para uso personal y privado, sin nece-sidad de obtener un permiso previo.Limitación de responsabilidad: Todos los materiales suministrados a los lectores cumplen la NormativaInternacional en cuanto a seguridad de componentes electrónicos y deberán ser utilizados y manipuladossegún las reglas universalmente aceptadas para este tipo de productos. Por tanto ni la editorial, ni la empresasuministradora de los materiales a los lectores se hacen responsables de ningún daño producido pos la inade-cuada manipulación de los materiales enviados.

CONSULTORIO TECNICO

Existe un Consultorio técnico telefónico gratuito a disposición de todos los lectores. Este sevicio se prestatodos los lunes y martes laborables en horario de 17 a 19 h.El número de teléfono para consultas es el 91 375 02 70.

Código Precio(€)

E320 ENERO 2007Lápiz USB con ARM y RS 2332:

- PCB 060006-1 28,00- AT91SAM7S64, programado 060006-41 56,00- Tarjeta montada y probada 060006-91 159,00- CD-ROM con software del proyecto 060006-81 11,00

E319 DICIEMBRE 2006Depurador/Programador para PICs en el Circuito:

- PCB 050348-1 10,50- PIC16F877, programado 050348-41 36,00- Kit, incl. PCB, controlador, todas las piezas 050348-71 68,50

GBECG-GameBoy como electrocardiógrafo:- PCB, ensamblado y probado 050280-91 110,00

ECG usando una tarjeta de sonido:- PCB 040479-1 11,00- CD-ROM, software del proyecto 040479-81 10,00

E318 NOVIEMBRE 2006Lector RFID de ELEKTOR:

- PCB, ensamblada y probada, con cable USB 060132-91 82,20- LCD con retroiluminación 030451-72 14,50- Caja 060132-71 18,00- Software del proyecto 060132-81 10,50

Lector experimental RFID:- Disk, all project software 060221-11 10,50- ATmega16, programado 060221-41 18,00

Monitor DiSEqC:- Disk, PIC código fuente y código Hex 040398-11 10,50- PIC16F628A-20/P, programado 040398-41 11,00

Conversor USB/DMX512:- Disk, software del proyecto 060012-11 10,50- PIC16C745, programado 060012-41 14,00

E317 OCTUBRE 2006Temporizador de Cepillo de Dientes:

- Disco, software de proyecto 050146-11 10,50- AT90S2313-10PC, programado 050146-41 14,00

Sencillo Control Remoto Casero:- Disco, software de proyecto 050233-11 10,50- PIC16F84, programado 050233-41 20,50

Termómetro de un Hilo con Pantalla LCD:- Disco, software de proyecto 060090-11 10,50- PIC16F84A-04CP, programado 060090-41 21,00

E316 SEPTIEMBRE 2006Comprobador/Experimentador para Servo RC:

- Disco, software de proyecto 040172-11 11,00- PIC16F84 (A), programado 040172-41 21,00- Kit, Incl. PCB, controlador, all parts 040172-71 20,50

E315 AGOSTO 2006Transmisor de prueba FM estéreo:

- PCB 050268-1 24,00

Comprobador de Cable de Red:- PCB 050302-1 17,00- Disco, PIC código fuente 050302-11 11,00- PIC16F874-20/P 050302-41 34,00

E314 JULIO 2006Analizador OBD-2 en placa:

- LCD, 4x20 caracteres con luz de contraste 050176-73 S/P- Kit de partes, incl. 050176-1, 050176-2, 050176-42, todos los componentes, excl. LCD 050176-72 S/P- Caja, Bopla Unimas 160 050176-74 S/P- ATmega16, programado 050176-42 21,00- Kit de elementos, sin cable 050092-71 103,00- DB9 a OBD cable adaptador 050092-72 55,00

Mini Placa ATMega:- PCB, incluye adaptador PCB 0500176-2 050176-1 18,00

E313 JUNIO 2006Simple Caracterizador de Pilas AA Recargable:

- PCB, bare 050394-1 10,00- Disco, software de proyecto 050394-11 11,00

Caja SPI Universal:- AT89C2051-24PC, programado 050198-41 15,00

E312 MAYO 2006Placa de Aplicación para el R8C/13:

- Placa montada 050179-92 96,00- PCB 050179-1 27,35- LCD con contraluz 030451-72 14,39- Poly-LED display 030451-73 51,00

Placa de Prototipos para FPGA:- Placa montada 050370-91 S/P

Módulo FPGA Versátil:- Módulo montado plug-on 040477-91

• Suscriptores 342,00• No suscriptores 353,00

ENERO 2007

elektor 73

E311 ABRIL 2006Controlador de Motor sin Escobillas:

- ST7MC1, programado 050157-41 7,54

Un Tom Thumb de 16 Bits:- R8C Starter Kit 050179-91 16,45

E310 MARZO 2006Adaptador de Fuente de Alimentación para Portátil de 95 Vatios:

- PCB 050029-1 59,00

Controlador Automático para Ventana de Ático:- Disco, PIC código fuente y hex 050139-11 10,28- PIC16F84A-20I/P, programado 050139-41 26,00- Módulo LCD 2x16 caracteres 030451-72 14,00- Módulo PLED 2x16 caracteres 030451-73 51,00

Horno de Soldadura de Ola para SMD:- Disco, PIC código fuente y hex 050319-11 10,28- AT89C52/24JI, programado 050319-41 15,00- Módulo LCD 2x16 caracteres 030451-72 14,39- Módulo PLED 2x16 caracteres 030451-73 51,00

Conmutador Temporizado para Lavadora:- PCB 050058-1 18,00- Disco, PIC código fuente y hex 050058-11 12,44- PIC16F84, programado 050058-41 26,00

E309 FEBRERO 2006De la “A” a la “D” por medio del USB:

- PCB 050222-1 16,00- IOW24-P, programado 050222-41 19,00

Supervisor de teléfono:- PIC16F628-20/P, programado 050039-41 17,00- CD-ROM, PIC hex & source codes, LCM First Server 050039-81 14,00

E308 ENERO 2006Control remoto por teléfono móvil:

- PCB 040415-1 13,00- Disco, PIC código fuente y hex 040415-11 11,00- PIC16F84A-20/P, programado 040415-41 21,00

E307 DICIEMBRE 200527C512 Emulador:

- Disco, software de proyecto 030444-11 11,00- EPM7064SLC84-15, programado 030444-31 55,00- AT90S8515-4PC, programado 030444-41 30,00

Pequeño Coloso:- Disco, código fuente del PIC 040267-11 11,00- PIC12F675-C/P, programado 040267-41 6,00

Cerradura Flash para PCs:- PIC16F628A-I/SO, programado 050107-41 10,00- CD-ROM, software de proyecto 050107-81 14,00

E306 NOVIEMBRE 2005Medidor ESR/C:

- PCB, desnudo 040259-1 25,00- Disco, PIC código fuente y hex 040259-11 11,00- PIC16F877-20/P, programado 040259-41 31,00- PIC16F84A-20/P, programado 040259-42 21,00- Kits de piezas sin caja 040259-71 127,00- Caja 040259-72 14,00

Medidor de distancia manual:- ATmega8-16PC, programado 040015-41 31,00- Disco, software de proyecto 040015-11 11,00

E305 OCTUBRE 2005Adaptador MP3 para TV:

- PCB, desnudo 054035-1 8,00- Disco, software de proyecto 054035-11 10,50- EPM7064SLC44-10, programado 054035-31 55,00

Nombre

Domicilio

C.P.

Tel. Fax Fecha

Por favor envíen este pedido a:ADELTRONIKApartado de Correos 3512828080 MadridESPAÑATel. 91 327 37 97

Forma de pago (vea la página contigua para más detalles)Nota: Los cheques serán en euros y conformados por una entidad bancaria.

❏ Cheque (nominativo a VIDELKIT, S.L.)

❏ Giro postal. Cuenta Postal (BBVA)

Nº 0182-4919-74-0202708815

❏ Fecha de caducidad:

Número de tarjeta:

Firma:

Por favor envíenme los siguientes materiales. Para circuitos impresos, carátulas, EPROMs, PALs, GALs,microcontroladores y disquetes indique el número de código y la descripción.

Cant. Código Descripción Precio/unid. TotalIVA incl. €

Sub-totalGastos envioTotal

Los precios y las descripciones están sujetas acambio. La editorial se reserva el derecho de cam-biar los precios sin notificación previa. Los pre-cios y las descripciones aquí indicadas anulan lasde los anteriores números de la revista.

3

CUPON DE PEDIDO

Código Precio(€)

Código Precio(€)

elektor 74

INFORMACIÓN Y ENTRETENIMIENTO SERVICIOS DE LECTORES

Dado rodante:- Set de PCB’S (6 caras) 040248-1 26,00- Disco, código fuente y hex 040248-11 9,00- AT89C2051-12PI, programado 040248-41 16,00

Cuchillo del Ejercito Suizo:- Set de PCB’S: MCU, RS232, USB 030448-1 17,71- Set de discos (a+b), todo el software del proyecto 030448-11 12,12- AT89S8252-24PC, programado 030448-41 48,00

E293 OCTUBRE 2004Analizador R/C:

- Disco, PIC código fuente 030178-11 9,12- PIC16F627-4/CP, programado 030178-41 19,00

Convertidor USB Controlado a través de HTML:- Disco, programas ejemplo 044034-11 9,12

E292 SEPTIEMBRE 2004Micro Servidor Web con placa MSC1210:

- Placa microprocesador, ensamblada y comprobada 030060-91 119,00- Placa de expansión de red, ensamblada y comprobada 044026-91 78,00- Paquete combinado (incluyendo 030060-91+044026-91 y todos los artículos) 044026-92 195,00- Placa de expansión de red, sólo PCB 044026-1 20,00

E291 AGOSTO 2004Multi Programador:

- PCB 020336-1 16,45- Disco, firmware y código fuente 020336-11 9,12

Pocket Pong:- Disco, software PIC 030320-11 9,12

Router de vías:- PCB 030403-1 20,19- Disco, software PC Y PIC 030403-11 9,12- PIC16F877-20/P, programado 030403-41 40,02

Operador Silencioso:- Disco, PIC software 030209-11 9,12- PIC16F84-10P, programado 030209-41 27,41

E290 JULIO 2004Diseño de Nuestro Propio Circuito Impreso:

- PCB 030385-1 29,00

Preamplificador de Gama Alta Controlado Digitalmente (2):- PCB placa principal 020046-1 16,00- PCB placa de relés 020046-2 14,00- PCB placa de alimentación 020046-3 12,50- Disco 020046-11 9,00- PIC18LF452-I/L, programado 020046-41 52,00

Medidor de Velocidad y Dirección del Viento:- Disco, software del proyecto 030371-11 9,00- PIC16F871, programado 030371-41 33,00

E289 JUNIO 2004Construya su Propio Receptor DRM:

- PCB 020148-1 16,00- Disco, proyecto ejemplo 020148-11 9,12

Caja De Música y el Sonido de Pandora:- PCB 030402-1 20,00- Disco, código fuente y hex 030402-11 9,12- PIC16F871/P, programado 030402-41 38,50

Explorador de VHF de Banda Baja:- PCB 020416-1 16,50

E288 MAYO 2004Construya su Propio Receptor DRM:

- PCB 030365-1 17,00- Disco, programa DRM.exe 030365-11 9,00

Cerradura Codificada:- PCB 020434-1 14,40- Disco, código fuente y hex 020434-11 9,00- PIC16F84A-4P, programado 020434-41 27,41

Multicanal Seguro para Modelos Controlados por Radio:- Disco, código fuente 020382-11 9,00- AT89C52-24JI, programado 020382-41 16,24

Medidor de Frecuencia Multifunción:- PCB 030136-1 17,50- Disco, software del proyecto 030136-11 9,00- AT90S2313-10PC, programado 030136-41 15,00

E287 ABRIL 2004Reloj Digital con Alarma:

- Disco, PIC código fuente y hex 030096-11 9,11- PIC16F84-04/P, programado 030096-41 28,36

iAccess:- Disco set, código fuente y control 020163-11 14,02- AT89S8252-12PC, programado 020163-41 25,94

Sencillo Inversor de Tensión de 12V a 230V:- PCB 020435-1 16,00

Conmutador Controlado por Tacto:- Disco, PIC código fuente 030214-11 9,12- PIC12C508A04/S08, programado 030214-41 11,49

Cerradura codificada con un botón:- Disco, código fuente y hex 040481-11 10,50- PIC16F84, programado 040481-41 14,00

Contador de Frecuencia de 1 MHz:- Disco, software de proyecto 030045-11 10,50- AT90S2313-10PI, programado 030045-41 11,00

E304 SEPTIEMBRE 2005Placas de experimentación DIL/SOIC/TSSOP:

- PCB, for 20-pines DIL IC 040289-1 14,00- PCB, for 20-pines SOIC IC 040289-2 14,00- PCB, for 20-pines TSSOP IC 040289-3 14,00

Diagnóstico Del Vehículo Mediante OBD-2:- PCB, desnudo 050092-1 18,00

E303 AGOSTO 2005Comprobador de Contaminación Eléctrica:

- PCB, solo 050008-1 10,50- PCB, montado y comprobado 050008-91

Práctico Receptor GPS sobre USB:- PCB, solo 040264-1 9,00- Kit de componentes 040264-71 124,00

Registrador de temperatura manual- PCB, solo 030447-1 8,00- Disco, software de proyecto 030447-11 10,50- PIC16F676, programado 030447-41 11,00- Kit de componentes 030447-71 51,50

Sintonización de la Contaminación Electromagnética:- PCB 040424-1-1 7,00

E302 JULIO 2005Programador para Control DCC para Modelismo Ferroviario:

- PCB 040422-1 38,00- Disco, código fuente y Hex ATMega 040422-11 10,30- ATMega8515-8PI, programado 040422-41 33,00

Medidor de Densidad de Flujo Magnético- Disco, código fuente del PIC 040258-11 10,30- PIC16F876-20/SP, programado 040258-41 33,00

E301 JUNIO 2005Sistema de Desarrollo LPC210x “ARMee”:

- Placa procesador montada y comprobada 040444-91 40,00

Analizador SC 2005:- PCB 030451-1 11,00- Disco, software de proyecto 030451-11 10,50- PIC16F876-20/SP, programado 030451-41 27,50

E300 MAYO 2005Amplificador de Potencia de Altas Prestaciones:

- PCB Amplificador 040198-1 16,13- PCB Indicador 040198-2 13,29- PCB Alimentación 040198-3 13,29- PCB Fusible 040198-4 7,49

Comprobador de Amplificador Operacional:- PCB 030386-1 11,00

Medidor de Temperatura Remoto para Placa PIC18F:- Disco, software de proyecto 040441-11 10,28

Oscilador de Cristal Programable Vía Serie, Compacto y Universal:- Disco, software de proyecto 040351-11 10,28

E299 ABRIL 2005Detector RFID a 13,56 MHz:

- PCB 040299-1 19,00

Bicho Caminador:- Disco, código fuente y hex 040071-11 11,38- AT90S2313-10PI, programado 040071-41 17,29

E298 MARZO 2005Placa de desarrollo para PIC18Flash:

- PCB 040010-1 20,35- Disco, utilidades del software 040010-11 9,12

E297 FEBRERO 2005BUS casero-I2C:

- PCB 040033-1 22,56- Disco, código fuente y hex 040033-11 9,12

E296 ENERO 2005Filtros de Supresión de Ruido:

- PCB 030217-3 25,00

E295 DICIEMBRE 2004Amplificador de Clase T de 2 x 300 W ClariTy:

- PCB 030217-2 30,00

E294 NOVIEMBRE 2004Amplificador Clase-T 2x300 W:

- Placa amplificador con SMD premontado; núcleos para L1 y L2 030217-91 59,00

Código Precio(€)

Código Precio(€)