Escolar Documentos
Profissional Documentos
Cultura Documentos
www.elektorbrasil.com.br
www.elektorbrasil.com.br
Pré-divisor para
Receptor
de rádio SDR
Upgrade para sintonia
automática
9 771676 790007
Indice
Milton Oliveira milton.oliveira@editorialbolina.com
Wesley Costa wesley.costa@editorialbolina.com
PUBLICIDADE
Luciano Itamar – Tel./fax: (11) 4195-0363
luciano.itamar@editorialbolina.com
JORNALISTA RESPONSÁVEL
Fernando Gaio (MTB 32.960) HARDWARE & SOFTWARE
PRODUÇÃO GRÁFICA
Márcio Reginaldo marcio.reginaldo@editorialbolina.com
58 TinyBrick M16C
Rafael Gomes rafael.gomes@editorialbolina.com
MARKETING E INTERNET
Evelyne Guimarães evelyne.guimaraes@editorialbolina.com
36 Introdução ao C embarcado (III)
IMPRESSÃO
Van Moorsel MONTAGEM
Distribuição Nacional pela DINAP S/A
Distribuidora Nacional de Publicações 44 Medidor capacitivo para
EDITORIAL BOLINA BRASIL LTDA.
nível de líquido
Alamenda Pucuruí, 51-59 – Bl. B - 1º Andar
PORTUGAL
52 Gerador de sinais senoidais
Bolina Portugal, Lda.
Tel.: +351 21 413-1600 - Fax.: +351 21 413-1601 com lógica programável
Ed. Central Park - R. Alexandre Herculano, 3 - 3º B
2795-240 Linda-a-Velha - Portugal
PASSATEMPO E MODELISMO
ESPANHA
Editorial Bolina, S.L.
Rufino González, 13 - 4ª Planta - 28037 Madri
30 Dispositivo de monitorização
Tel. +34 91 327 07 02 – Fax +34 91 754 26 68 AC portátil
DIREITOS DE REPRODUÇÃO
©Elektor International Media BV, 2010
The Elektor House, Allee 1, Limbricht, the Netherlands IDEIAS PARA PROJETO
Tel +31 46 4389444
Fax +31 46 4370161 29 Proteção para reguladores
A revista Elektor Eletrônica & Microinformática também de tensão
possui edições na Holanda, Alemanha, França, Inglaterra,
E-LABS
Suécia, Finlândia, Grécia, Índia, Portugal, Polônia e Espanha.
QUESTÕES TÉCNICAS
Nós podemos responder apenas a questões relativas a proje-
automação doméstica
tos publicados há, no máximo dois anos, na Elektor Eletrônica
& Microinformática. Todas as dúvidas, questões e sugestões
devem ser encaminhadas ao Diretor Técnico da revista.
Para a compra de componentes e kits consulte o site
www.elektorbrasil.com.br. Apenas o componentes de projetos
publicados nos últimos dois anos são mantidos em estoque.
elektor 03-2010 3
4 03-2010 elektor
tRIO e ao
, o Com-
mercado
e menos
le-Board
ações de
mento e
necessá-
máquina
averme-
mmable
cesso de
e proces-
agens da
nologies.
lançou a
ns mono-
ar biblio-
mbiente
nt 2009,
ocurando
en Enge-
ataforma
nte e pre-
vídeo nos
ocesso. “
adores NI
arcados.
d/10867
microcon-
nsões de
elektor
6 03-2010 elektor
12 blocos
simultâ-
analógi-
o de 8 ou
dos siste-
tes PSoC
os, TQFP
to DIP24,
cnologia
nvencio-
m a capa-
correntes
o que os
ormidade
nos mais
remoto.
a tensão.
elektor
95
de energia solar
25
A Instrutherm lançou o medidor de energia
solar MES-100, que indica o nível de radiação 5
- Fornecidos: Estojo de transporte, manual de nosso modo de vida. A vantagem da utilização de motores elétricos é que estes são eficientes
75
operações, 4 Pilhas AAA independentemente do seu tamanho, ao contrário dos motores de combustão, que são menos
- Opcional: (Vendido Separadamente): eficientes quanto menores forem. Um avião elétrico seria capaz de gerar um poder de impulsão
Maleta para Transporte Mod.MA-800 e considerável. O Puffin permitiria levantar um indivíduo do chão com um motor de apenas 60
Maleta para Transporte Mod.MA-810 cavalos de potência. 25
www.instrutherm.com.br Fonte: Scientific American
5
8 03-2010 elektor
EURO_010_09-FEE
sexta-feira, 12 de fe
100 100
95 95
75 75
25 25
5 5
0 0
oba algo-
pment e
com este
ualidade
ando um
ndo ima-
l da ima-
em todos
parâme-
dade aos
titute of
OT Aeros-
essoal!
otores, é
aparelho
por fibra
locidade
ais, o seu
100 100
ASA, mas
alterar
95 o 95
ficientes
75 75
o menos
mpulsão
penas 60
25 25
American
5 5
0 0
elektor
EURO_010_09-FEEAI_Anuncio_205x285
sexta-feira, 12 de fevereiro de 2010 15:36:28
RÁDIO & TV
de rádio SDR
uma cap
pF até 5
geradas
analógic
automática! vés do s
uma qu
adiciona
Cada cir
(L1 a L4)
acoplad
dância A
softwar
Recepto
100 nF (
Em alter
antenas
apenas
estas es
assim co
que cad
Além di
do SDR c
+12V
Após alguns anos a sua publicação, o Rádio como In1 pelo software), um filtro passa- antenas de ferrite ou circuitos front-end.
de Elevada Qualidade da Elektor [1] é ainda baixa para recepção de onda-média (A1, As entradas têm uma alta impedância
um projeto com enorme sucesso, e aqui ou In2), e um filtro passa-alta para recep- de entrada, podendo assim ser também
na Elektor ficamos muito satisfeitos com ção de onda-curta (A2, ou IN3). A entra- usadas para ligar uma antena magnética
os comentários da comunidade radioama- em loop sintonizada, como se mostra nos
dora do tipo “um bom projeto para gastar Características técnicas exemplos da Figura 1. O problema quando
o nosso dinheiro” e “um projeto excelen- •Quatro circuitos front-end sintonizáveis. se usa estes circuitos com um rádio contro-
te para entrar na tecnologia SDR”. A publi- •Controlado pelo software gratuito SDR. lado por software é que os capacitores vari-
cação do hardware para o receptor SDR •Controlado através do barramento I2C. áveis têm que ser ajustados manualmen-
foi também seguida por um software de •Recepção de ondas-curtas, ondas-médias te, o que pode ser bastante cansativo. Por
controle e sintonia G8JCFSDR. e ondas-longas. esta razão desenvolvemos um pré-divisor
O SDR cobre praticamente toda a faixa •Díodos varicap de 500 pF. sintonizado automaticamente e controla-
de frequências de rádio até 30 MHz. No •Adequado para utilização com uma antena do via barramento I2C, usando díodos vari-
projeto, é usado um 74HC4051 como de fio, uma antena ou uma vara de ferrite. cap (com capacidade variável).
multiplexador de entrada, oferecendo um
total de oito entradas (A0 a A7). Através da A7 é usada para uma entrada de teste Quatro circuitos de entrada
de controle por software é possível usar de 5 MHz. Existem, assim, quatro entra- (front-end)
o multiplexador para comutar entre uma das disponíveis para o multiplexador que O circuito pré-divisor (Figura 2) supor-
entrada de banda larga (A0, apresentada podem ser usadas, por exemplo, para ligar ta até quatro circuitos front-end usando
vés D1 IC1
1N4001 78L05 +5V
a
K1
6 8
C1 C2
7
IC2.B IC2 IC2 = LM358N
5
100n 100n 4
+12V
GND
ont-end.
edância C9
ambém OUT1 OUT2 OUT3 OUT4
gnética 100n
16
stra nos VDD
R3 C3 C4 C5 C6
11 14 100k
quando SDA OSC VREF
100n 100n 100n 100n
contro- 9 IC3 15 3
SDA AOUT R1
res vari- SCL
10
SCL C8 IC2.A
1
100k
2 D2 D3 D4 D5
ualmen- 4 100n
tivo. Por 3
AIN3
7
AIN2 A2 L1 L2 L3 L4
-divisor 2
AIN1 A1
6
1A1 1A2 2A1 2A2 3A1 3A2 4A1 4A2
1 5 R2
ontrola- AIN0 A0 C7
100k
PCF8591
dos vari- 12
EXT 100n
1E1 1E2 2E1 2E2 3E1 3E2 4E1 4E2
VSS AGND
8 13
) supor-
usando Figura 2. Circuito do pré-divisor digital com quatro front-ends sintonizáveis através de um barramento I2C.
GND
SDA
SCL
+5V
cerâmico 090615-1 -divisor
V1.0
IC2
máximo
IC3
C8
C2
IC1
Semicondutores: R3
forte aq
C1
D1
(c) Elektor
090615-1
R2
C7
R1
IC1= 78L05 K1 larga, u
IC2= LM358N
D2
D3
D4
D5
sintoniz
OUT1
OUT2
OUT3
OUT4
IC3= PCF8591P
D1= 1N4001 C3 C4 C5 C6
tação à
L1 L2 L3 L4
D2a D5= 1SV149 (www.ak-modul-bus.de) ravelme
1E1
1E2
1A2
1A1
2E1
2E2
2A2
2A1
3E1
3E2
3A2
3A1
4E1
4E2
4A2
4A1
bandas
Diversos: Do mes
4 bobinas numa forma do tipo T1.4 Figura 3. Placa de circuito impresso para o pré-divisor. Todas as ligações
de onda
(www.ak-modul-bus.de). para as bobinas encontram-se numa das extremidades da placa.
Adaptador DC tipo NEB 21 R (Lumberg).
ma com
nar esta
onda-cu
0,2 mm. Neste caso não é necessário um ligação da alimentação de +5 V entre R4 do pré-divisor deve ser omitida por agora: de band
elevado fator Q, uma vez que será usado e a placa SDR e o ponto de +5 V na placa consulte a secção sobre a fonte de alimen- ções qu
para uma recepção de banda relativamen- tação mais abaixo. As ligações do barra- frequên
te larga. Para recepcionar sinais de onda- mento I2C (SCL e SDA) são soldadas a R2 e to pré-d
-longa entre 140 kHz e 450 kHz através da L4 R3. As saídas da placa do pré-divisor (OUT1 essas im
saída OUT1, utilize uma bobina com 170 4A1 4A2 a OUT4) são retiradas dos pontos indica- plo, a m
voltas de fio de cobre esmaltado com 0,2 dos na Figura 5 para as entradas A3 a A6 radioam
mm numa pequena barra de ferrite, entre do multiplexador (IC6). No software estas As mel
1E1 e 1A1; para recepcionar sinais de onda- 4E1 4E2 são selecionadas como In4 a In7 (Figura 6). quando
-média entre 550 kHz e 1600 kHz através de onda
da saída OUT2, utilize uma bobina com 40 Software e operação antena
voltas de fio de cobre esmaltado com 0,2 O software original para sintonia do recep- dade do
L3
mm sobre uma pequena barra de ferrite, tor SDR da Elektor foi alterado de forma a do é sem
entre 2E1 e 2A1. 3A1 3A2
incluir as funcionalidades necessárias para antena
As duas bobinas de acoplamento para a controlar os díodos varicap. A nova versão do ligad
antena de ondas-curtas, entre 4E2 e 4A2 (ElektorSDRpre.exe) pode ser obtida larga, m
3E1 3E2
e entre 3E2 e 3A2, podem ser ligadas em gratuitamente no site da Elektor. Como a velment
série, se desejar, e ligadas ao cabo da ante- 090615 - 13 Figura 6 mostra, existe agora um controle cia. Isto
na sem terra, como ilustrado na Figura 4. deslizante adicional que permite sintoni- da imag
Isto permite isolar a terra do PC (que está Figura 4. Ligação da antena para duas zar os circuitos de entrada. O valor digital maior f
ligada à massa do circuito) da terra da bandas de onda-curta. enviado, de 0 a 255, é apresentado numa da ante
antena, que pode ajudar a redu- janela. O conversor D/A transfor- a comp
zir consideravelmente a interfe- GND ma este valor numa tensão entre do sinal
rência. Essencialmente, não exis- 0 V e 5 V. A tensão é duplicada por melhor
te nenhuma perda de tensão no IC2.A, aparecendo uma tensão de interfer
sinal devido a esta ligação em sintonia de 0 V a 10 V aos termi- ambient
série, uma vez que as bobinas OUT3 nais dos diodos varicap. Existem
estão apenas em ressonância na OUT1 dois modos de operação: o modo Sinton
sua própria frequência seleciona- OUT2 manual (Man) e o modo automá- No mod
OUT4
da, e de outro modo apresentam tico (Auto). O software arranca no manual
uma baixa impedância. modo manual. circuito
SDA
Inicie o software como habitu- de estaç
Montagem e ligação SCL almente, junto com um decodi- matizad
Os furos de fixação da placa estão ficador como o Dream, SoDiRa, ajustand
posicionados de forma que possa G8JCFSDR ou SDRadio. Agora, que a ba
se montada diretamente sobre escolha a entrada In1 ou In2 para nia é m
a placa SDR usando espaçado- onda-média, ou In3 para onda- sintonia
res. Os fios necessários podem +5V * 090615 - 14
-curta. Ligue a antena aos termi- do. Os c
depois ser adicionados. A Figura nais ANT da placa SDR. Ajuste la de val
5 mostra os pontos de ligação na Figura 5. Pontos da placa do receptor SDR onde a frequência para uma estação e o soft
placa SDR; GND é ligada a C21. A o pré-divisor é ligado. conhecida, por exemplo, na faixa lector.t
Internet
[1] “Rádio de Elevada Qualidade”, Elektor Nº67 Outubro de 2007. [2] www.technick.net/public/code/cp_dpage.
php?aiocp_dp=util_inductance_circle
14 03-2010 elektor
putador
entação
SB pode
er parti-
quando
ia inter-
z que há
té cerca
quência
kHz esta
normal-
mas.
ição da
emos a
horar a
da placa
ando o
laca do
de +5 V
al como
modo a
pré-divi-
a tensão
orta USB
uir L1 na
1N4001,
é que a
laca do
imenta-
a forma,
uências
090615-1)
ktor SDR
ber 2009
elektor
automação doméstica
res dom
sa em Po
outros p
[4], com
KNX –
Ernst Krempelsauer (Elektor) A norma
sua orig
Tal como descreveremos em outro artigo sobre automação doméstica, na próxima edição, existem baseado
que foi e
várias normas e protocolos para automação doméstica, sendo que alguns deles merecem uma especial mentos
atenção por serem abertos. Isto significa que qualquer projetista pode desenhar o seu próprio dispositi- BUS e EH
entre vá
vo compatível com o protocolo em questão. E o fato de serem abertos significa que são suportados por das cara
• Norm
diferentes fabricantes.
• 174 em
As normas para automação doméstica mais comuns são essen- comunicações pela rede elétrica PLC (Power Line Communication) e • Mais d
cialmente três, embora todas elas sejam bastante diferentes entre enviam as suas mensagens pelos fios elétricos já existentes. A norma • Quatr
si: X10, KNX e DigitalSTORM. O X10 foi a primeira norma a surgir, KNX, pelo contrário, possibilita quatro formas de comunicação: um • Ampla
tendo sido desenvolvida nos anos 70; a KNX é baseada no EIB (Euro- par de fios entrelaçados convencional, como no sistema EIB original, • Ampla
pean Instalation Bus), desenvolvido no final dos anos 80, e a Digi- além da opção via rádio, PLC e Ethernet. • Caract
talSTORM é uma iniciativa recente para uma nova norma aberta, Apenas o KNX conseguiu até agora o estatuto de norma europeia • Três m
cujo desenvolvimento começou em 2008. Os principais mercados (EN) e internacional (ISO/IEC). • Indepe
de cada um dos sistemas são também geograficamente distintos, o
X10 encontra-se sobretudo localizado nos EUA sendo relativamente Trinta anos de X10 O KNX é
raro na Europa, enquanto que o KNX é claramente líder de merca- O X10 foi desenvolvido pela empresa escocesa Pico Electronics edifício m
do europeu. Espera-se que os primeiros produtos DigitalSTORM Limited [1] em 1976. Para o seu tempo este era um sistema revo- ligação d
cheguem ao mercado durante o próximo ano. lucionário, recorrendo a um dos primeiríssimos circuitos integra- quer edi
Apesar da diferença de idades, o X10 e o DigitalSTORM são basea- dos especializados de baixo custo. Vendido nas lojas Radio Shack dispend
dos no mesmo método de comunicação subjacente, ambos utilizam e Sears a partir do ano 1978, o X10 rapidamente se tornou popu- A norma
A - Bus
Power
AC power line Supply pelo outro. O dispositivo “em desvan-
30V
B - Bus tagem” pode detetar a ocorrência da
colisão e terminar a sua transmissão,
enquanto o “vencedor” continua trans-
TP-UART TP-UART TP-UART
mitindo. Assim, o barramento nunca fica
Optional
Electrical Isolation
IC IC IC
bloqueado, mesmo com uma forte utili-
RxD TxD RxD TxD RxD TxD
area 2
15.0.000
entrelaçado com a referência FZE1066.
Tem também disponível um controla-
area 1 1.0.000
1.0.000
main line 1.0
dor de barramento KNX, que pode ser
...
1.1.000 1.2.000 1.15.000
combinado com a TP-UART para cons-
1.1.001 1.2.001 1.15.001 1.0.001 truir um chipset KNX [8]. O controla-
1.1.002 1.2.002 1.15.002 1.0.002 dor consiste num microcontrolador
1.1.003 1.2.003 1.15.003 1.0.003
µPD78F053x da NEC, programado com
... ... ... ...
firmware certificado KNX (KNX System
1.1.252 1.2.252 1.15.252 1.0.252
uma nova reviravolta no antigo concei- UART Receiver UART Transmitter TSTIN_BDS
(Baud rate)
to de PLC. Em primeiro lugar, não exis- Digital Part TSTout
1 Bytebuffer
te portadora de alta frequência nem 64-byte
Controll-Logic State Byte
(receive) Mode 0
‘telegram’ Control Logic
modulação em frequência. Em segun- Tx buffer ACK Flags Mode 1
do lugar, o hardware foi encolhido para EIB Receiver 4.9152 MHz
caber num único circuito integrado EIB Transmitter Filter
0.05 %
(dSChip), que cabe numa pequena barra EIB Transmit RxD3 EIB ReceiveTxD3
Circuito de monitoração
para bateria
tudo sob controle
Steffen Graf (Alemanha)
bits. O c
tem um
é suficie
não par
mediçã
querem
de corre
e desca
Este circuito foi originalmente concebido para monitorar o estado A/D com
da carga de baterias num sistema alimentação por energia solar. No usamos
para efe
entanto, pode ser usado em qualquer aplicação onde um conjunto convers
ções de
de baterias é carregado e descarregado. O circuito utiliza um chumbo de 6 V, 12 V, 24 V ou 36 V. A faixa MCP355
microcontrolador LPC2103 ligado a um conversor A/D de 22 bits para de correntes também é suficientemente midame
elevada; e apesar disso, possui uma reso- 22 bits”
medir a corrente de carga e descarga, a tensão nas baterias, o estado lução elevada, com uma precisão de 1 mA Janeiro d
da carga (ou capacidade disponível) e a potência instantânea que está nas medições. Uma ponte de ligação SMD circuito
de 50 mΩ/2 W permite ter uma construção num con
sendo consumida ou entregue à bateria. compacta e correntes até 6 A. entradas
num enc
Existem vários métodos de disponibilizar bém a capacidade da bateria disponível. O Panorama fácil de s
uma indicação do estado da carga de um circuito que aqui descrevemos disponibiliza O microcontrolador utilizado é o LPC2103, Um asp
conjunto de baterias recarregáveis. O mais todas estas funcionalidades e pode ser uti- um dispositivo de 32 bits com um núcleo geração
conhecido utiliza o método de medição lizado para monitorar as baterias, ou mais ARM7, baseado em controladores RISC tação. O
da tensão da bateria, porém, as baterias precisamente medir as tensões, correntes e da NXP. Difere apenas em alguns peque- 3,3 V pa
de NiMH e NiCd têm uma tensão bastante potência num qualquer sistema de alimen- nos detalhes do dispositivo LPC2106 utili- lador, 1,
constante ao longo da curva de descarga, tação DC. O autor utiliza este circuito para zado na placa de desenvolvimento ARMee, lador e 1
pelo que este método não é muito preciso. monitorizar uma pequena instalação ali- publicada pela Elektor na edição de Feve- convers
Uma abordagem mais eficiente é medir mentada a energia solar. reiro de 2006, e no artigo “Bancada para ser gera
também a corrente que entra e sai da bate- Este circuito pode funcionar numa grande automação de motores de combustão” uma ele
ria. Isto permite calcular o fluxo de energia faixa de tensões de alimentação, que vai publicado na edição de Julho de 2009. ção variá
e a carga, e deste modo, caso o estado ini- desde os 6 V até aos 42 V, podendo assim Ambos os circuitos se baseiam num pro- usar um
cial da bateria seja conhecido, calcular tam- ser usado em aplicações com baterias de cessador com um núcleo ARM7TDMI de 32 tensão d
LED+
LED-
VDD
VSS
R/W
330μH
VO
RS
D7
D6
D5
D4
D3
D2
D1
D0
D1 C2
E
100μ GND GND
63V 3A 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
3 6 330μ C14 C15 C16 +5V
100V
25V
+1V8 100n 100n 100n
LCD_D7
LCD_D6
LCD_D5
LCD_D4
LCD_RS
LCD_E
P2
R2
10k
5 40 17 42 10k
+5V +3V3 T1
VDD(1V8) VDD(3V3) VDD(3V3) VDDA +3V3
CORE I/O I/O
L2 6 4 +5V
1 9 RST VBAT
VIN L
6 IC2 4 22μH C13 R9 2N7002 R6
ILIM PG 26 20 C17
8 5 RTCK IC5 RTXC1
*
10k
EN FB 27 25
100n DBGSEL RTXC2
C3 TPS62007 C4 100n
DGS Opcional B
8 18
7 2 P0.27/TRST/CAP2.0 P0.2/SCL0/CAP0.0
100μ SYNC FC 10μ +6V...+42V 9 21
16V P0.28/TMS/CAP2.1 P0.3/SDA0/MAT0.0 S1
GND PGND C5 10
P0.29/TCK/CAP2.2
3 10 R3 15 48 LCD_D7
P0.30/TDI/MAT3.3 P0.18/CAP1.3/SDA1 Opcional C
100n 16 47 LCD_D6
100k
P0.31/TDO P0.17/CAP1.2/SCL1
P0.16/EINT0/MAT0.2
46 LCD_D5 * ver texto
32 45 LCD_D4
P0.22/AD0.0 P0.15/RI1/EINT2 +5VUSB +3V3 +1V8
P1 33 41 LCD_RS
R8 P0.23/AD0.1 P0.13/DTR1/MAT1.1
34 39 LCD_E +3V3 IC3
* P0.24/AD0.2 P0.26/AD0.7 1 5
8k25
+6V...+42V 38 IN OUT
P0.25/AD0.6
30 R5 TPS79118
10k P0.9/RXD1/MAT2.2 DBVR
K2 35 29 3 4
K3
10k
P0.10/RTS1/CAP1.0/AD0.3 P0.8/TXD1/MAT2.1 EN BYPASS
1 36
P0.11/CTS1/CAP1.1/AD0.4 C6 C7 C8
+1V2 +3V3
37
P0.12/DSR1/MAT1.0/AD0.5 P0.0/TXD0
13 GND
O paine
2 14 100n 2 10n 1μ
LPC2103
FBD48
P0.1/RXD0
minação
Carga/
Fonte R7
22
P0.4/SCK0/CAP0.1 P0.14/DCD1/SCK1/EINT1
44
zir o co
23 1
24
P0.5/MISO0/MAT0.1 P0.19/MAT1.2/MISO1
2 pode se
10k
1 8 P0.6/MOSI0/CAP0.2 P0.20/MAT1.3/MOSI1
Série TTL
28 3
VREF VDD P0.7/SSEL0/MAT2.0 P0.21/MAT3.0/SSEL1 IC4
R4 MAX6520EUR-T
2 IC6 5 VSS VSS X1 X2 VSSA VSS
R1 VIN+ SCK +3V3 +1V2
K1
1k
7 19 11 12 31 43
50m Ω
6 X1
1 SDO/RDY
JP1
3 7 D2
2W VIN– CS C9 C10
2 MCP3550 C11 C12
O je
50E/SN Erro
VSS 100n 100n
22p 22p Bootloader
Bateria 4
X1 = 14.7456MHz 080824 - 11
Figura 1. Diagrama do circuito de monitoração para bateria. De um total de seis circuitos integrados,
quatro são reguladores de tensão. O circuito de medição propriamente dito consiste num microcontrolador
an
de 32 bits ARM7 (IC5) e o conversor A/D de 22 bits (IC6).
possa ser obtida a partir da interface de o circuito integrado IC1 apenas consome ria após a programação do microcontrola-
programação. Isto permite programar o uns poucos miliamperes dela: o resto do dor. Em alternativa, se a possibilidade de Ch
microcontrolador sem ser necessário ter circuito ainda vai consumir a sua energia a alimentar a unidade através da interface de
uma bateria ligada. Se estiver uma bate- partir da interface de programação. Não se programação não for necessária, o JP1 pode c
ria ligada enquanto a energia está sendo esqueça de voltar a mudar a ponte de liga- ser substituído por uma ligação por fio jun-
fornecida pela interface de programação, ção para o modo de alimentação via bate- tando as linhas +5 VBATT e +5 V.
che
revis
pro
R4
D2 K2
JP1 L1 Um
R5
C1
trab
K3
R1 JP2
C6
R7 C7
dú
6
IC
15
K1
C
co
C2
PR 16
C
IC3
IC
16
5
C10 X1 C8 IC2 L2 D1
14
C3
R3 IC4 R9
C9
RE
12
R8 R2
C
C5 C4
11
P2 S1
C
P1 C13 T1
IC1 C17
R10
K4 R6
L+
A
Figura 2. A placa de circuito impresso está populada na sua maioria com componentes SMD e tem a mesma dimensão
que o painel LCD.
24 03-2010 elektor
C7 C8
O painel LCD usado possui uma luz de ilu- ao pino P0.2 do microcontrolador, con- FET T1 forneça uma iluminação de fundo
10n 1μ
minação de fundo. No interesse de redu- trola uma rotina do software que faz ajustável. Se a capacidade de desligar
zir o consumo de potência a iluminação aparecer um sinal PWM no pino P0.9. a iluminação de fundo não for neces-
pode ser desligada. O botão S1, ligado Isto, por sua vez, faz com que o MOS- sária, a resistência R10 pode ser substi-
1V2
10
080824 - 11
agilidade e precisão.
MCP3550
Um conversor A/D delta-sigma simples
e preciso
se maior
mpresso
e popu-
Figura 3. O nosso protótipo montado.
o exige
de sol-
rata do mostra o nosso protótipo, que difere em bits de dados podem ser lidos. Existe um
amento pequenos detalhes da montagem final total de três blocos de dados com oito bits,
o de 0,5 apresentada na Figura 2. que são colocados nas variáveis adequa-
o do dis- das. O vigésimo segundo bit dá-nos a pola-
istas na Software ridade da tensão medida na entrada do dis-
compli- O núcleo ARM usado no LPC2103 oferece positivo: se o bit tiver o valor lógico um o
m em si. uma elevada capacidade de processa- valor da tensão é negativo e o valor lido
positivo mento para que se possa expandir as capa- deve ser devidamente modificado, o com-
de solda cidades do módulo. O firmware foi escrito plemento para dois é obtido calculando
ados de em C e o código fonte está disponível gra- o complemento de cada bit (ad_current
eventu- tuitamente no site da Elektor. O programa = ~ad_current;) e depois incrementado
cesso de é muito fácil de perceber e modificar. Ape- por um. Uma vez que apenas queremos os
excesso nas o código de arranque tem que estar 22 bits menos significativos do resultado,
ocontro- escrito em assembly (pelo qual agradece- usamos uma máscara para eliminar os res-
s outros mos a Alexander Graf, que escreveu essa tantes usando uma função lógica AND: ad_
tes não parte do código). Foi usado o compilador current & = 0x3fffff;.
s circui- C GCC gratuito. Agora podemos calcular o fluxo de cor-
estantes O microcontrolador executa um ciclo infi- rente real. Para evitar efetuar operações
monte os nito, e uma vez por segundo chama uma em vírgula flutuante trabalhamos com
igura 3 função que executa o processo de medi- valores de corrente em nA, e de tensão
ção e apresenta os resultados. Para obter em µV. O erro decorrente do resultado da
o período de um segundo, o temporizador medida é insignificante, desviando-se o
Timer 0 está configurado de maneira que o valor exato por menos do que a tolerân-
seu contador é incrementado a cada milis- cia da tensão de referência ou do divisor
segundo. O ciclo infinito verifica se o con- de tensão.
tador chegou a 1000 (1000 x 1 ms = 1 s).
A rotina de cálculo primeiro lê um valor Toda a informação apresentada é também
do conversor A/D para obter uma leitura enviada através da saída pela porta série no
da corrente. Isto é relativamente simples, seguinte formato:
uma vez que não há necessidade de enviar
dados para o MCP3550: simplesmente é Tensão: 12599 mV
necessário colocar o seu sinal /CS (chip Corrente: -0050 mA
enable) ao nível lógico baixo. É então Potência: -0629 mW
necessário esperar enquanto a conver- Capacidade: -0035 mAh
são decorre. O MCP3550 sinaliza o final Os dados de saída podem ser enviados para
da conversão forçando a linha de saída de um registrador de dados para posterior
rias dados ao nível baixo. Precisamos de alte- análise. Se forem usados dois módulos, é
egar rar o modo da porta para o valor correto possível efetuar medições simples e preci-
se quisermos detectar esse evento. sas da eficiência de fontes de alimentação
Assim que a conversão esteja terminada os comutadas.
Programação
O circuito de monitoração de bateria tem
uma interface série que utiliza níveis de
tensão TTL, em vez de níveis de tensão
RS232. Apesar de ser alimentado a 3,3 V,
as portas do LPC2103 são compatíveis com
lógica alimentada a 5 V.
A interface série é usada para efetuar o car-
regamento do firmware para o dispositivo,
assim como para enviar as leituras realiza-
das. Para programar o dispositivo num bar-
ramento USB pode usar o cabo série USB-TTL
publicado na edição portuguesa de Setembro
de 2008 da Elektor [1]: disponível no Serviço
Elektor (Refª 080213-91). A configuração dos
pinos do cabo é compatível com o conector
Figura 5. O painel LCD funcionando normalmente.
K3 na placa de circuito impresso. Claro que,
pode também ler os pinos do conector na
Figura 1 e usar o seu próprio cabo série adap- mensagem e, em seguida, exibir os valo- LPC2103:
tador, desde que use níveis lógicos de 5 V. res medidos. Se não aparecer nada no LCD, www.nxp.com/acrobat/datasheets/
Quando a montagem do circuito estiver verifique o contraste do painel ajustando LPC2101_02_03_3.pdf
concluída o firmware deve ser carregado na novamente P2. Se a mensagem de boas- MCP3550:
memória do microcontrolador. Coloque a -vindas não desaparecer do LCD, é provável http://ww1.microchip.com/downloads/en/
ponte de ligação em JP1 e depois alimente que exista uma falha na ligação ao circuito DeviceDoc/21950D.pdf
o circuito. Se o circuito for para ser alimen- integrado IC6. TPS62007:
tado através do cabo USB-TTL, a ponte Se tudo estiver funcionando corretamente, www.ti.com/lit/gpn/tps62007
de ligação JP2 deve estar na posição 2-3 o painel LCD deve apresentar o consumo TPS79118:
(ligar +5 V a +5 VUSB). Nesta altura ape- de corrente do módulo e a tensão de ali- www.ti.com/lit/gpn/tps79118
nas a primeira linha do LCD deve aparecer mentação na linha superior. A segunda MAX6520:
no mostrador: se esta não estiver visível, linha mostra a carga (em Ah) que foi trans- http://datasheets.maxim-ic.com/en/ds/
ajuste o contraste através de P2. O firm- ferida e o consumo de energia (em mW ou MAX6520.pdf
ware pode ser carregado usando o soft- W): veja a Figura 5. O consumo de corrente DEM16217:
ware gratuito Flash Magic [2]. A Figura 4 depende fortemente da tensão de alimen- www.display-elektronik.de/DEM16217SYH-
LY.PDF
mostra como este programa deve ser con- tação; com 12 V temos um consumo de
figurado: apenas a porta COM a usar e o cerca de 15 mA.
caminho precisam de ser definidos. Se P1 estiver montado, este deve ser agora
Se não quiser programar o microcontrola- ajustado para que a tensão apresentada no
dor, pode adquiri-lo já programado através LCD esteja em concordância com a tensão
Sobre o autor
do Serviço Elektor (Refª 080824-41). real em K1 (medida pelo seu multímetro). Steffen Graf tem 20 anos e frequenta o seu
(080824-1) segundo semestre do curso de Engenharia
Arranque Artigo original: Battery monitor – september 2009 Eletrônica e Tecnologia da Informação, na
Quando a programação estiver concluída, Universidade Técnica de Darmstadt, Ale-
remova a ponte de ligação JP1 e verifique Internet manha. A eletrônica tem sido um dos seus
se JP2 está corretamente configurado (+5 V [1] http://www.elektor.com.pt/revistas/
principais passatempos durante muitos anos.
ligado a +5 VBATT). Ligue a bateria (recarre- 2008/setembro/cabo-serie-usb-ttl.665066.
Em 2008, entrou num concurso regional de
gável ou não), ou uma fonte de alimentação lynkx
ciência para jovens, na Alemanha, com um
de bancada com uma tensão de saída entre [2] http://www.flashmagictool.com/
6 V e 40 V, ao conector K1. Se uma fonte de download.html circuito de monitoração de capacidade para
tensão já estiver ligada aos terminais de K1, baterias, premiado com o segundo
vai ser necessário desligá-la por breves ins- Datasheets lugar na categoria “Mundo do Trabalho”. Ga-
tantes para efetuar o reset do circuito. TL2575HV-05: nhou também um prémio especial para uma
O LCD deve agora mostrar uma breve www.ti.com/lit/gpn/tl2575hv-05 invenção prática e útil.
28 03-2010 elektor
Proteção para
reguladores
de tensão
µA78Lxx
VI VO D1
µA78Lxx
D1
Comunicações
VI VO
Módulo SCO-0601
Dispositivo de
monitoração AC portátil
Fiz a minha mochila, e lá dentro pus…
Figura 1
a dificul
Ton Giesberts (Elektor)
Todos os leitores que têm por hábito de viajar já passaram certamente pela experiência de ligarem demasia- As toma
nos elet
dos aparelhos elétricos ao mesmo tempo. Liga-se a placa elétrica quando a frigideira está ligada, e o fusível tivos qu
têm nor
da tomada funde-se. Segue-se o aborrecimento de ter substituir o fusível, ou ainda quando danifica-se a rente lim
rede elétrica do local, o que normalmente tem custos elevados. Este dispositivo de vigilância de tensão pode é exced
norma t
tornar estes desagradáveis acontecimentos uma coisa do passado. do. Par
s… F1
10A
-VS
C4 C5
L1
R1 R2 D1 220u P1 275V 220n
25V X2
4k7 4k7 22u
R6
1N4007 100k 11A
5
100k
TRI1
-VS
R3 R4
7 6
330k 330k VSYNC IC1 RPHASE
U2008B R5
3 8
CONTROL OUT 100R
BTA16-600BW
CPHASE
R26
ISENSE
GND
1k
R7 R8 R9
D7 C3 C1 C2
20k0
0R1
0R1
100n 1u 10n
BAT85 63V
R22
1M R10
C8 10k0
2
1n D3
5 1
-VS R25 R23 D4 IC2A
7 3
820k 100R IC2B BAT85
6
BAT85 R11
30k1
22u
40V BF245A R21 -VS
D6
3k3
LIMITING D2
C10
JP1 4V7
-VS R20 R19 100n
0W5
10
12
14
2
4
6
8
10k 100k C7
D5 4 C6
10u
5V6 63V IC2
1
3
5
7
9
11
13
8 100n
0W5
tivos eletrônicos como televisões, rádios tra sobrecargas. A inclusão de um meca- corrente pode ser calculada pela seguinte seguida
ou lâmpadas não devem ser ligados a este nismo de (re)disparo automático significa fórmula: tensões
controlador. O circuito é principalmente que as cargas indutivas não vão levantar tando m
destinado a eletrodomésticos sedentos problemas. Este circuito integrado oferece (Umains – Usupply) × √2 / [π (R1+R2)] relevant
de energia, tais como fornos e fogões elé- também uma função de arranque suave Optou-
tricos (sem controle eletrônico) e panelas (soft-start), basta ligar um capacitor entre Para facilitar os cálculos ignorou-se a rente aj
de pressão elétricas. O consumo destes o pino 1 e a massa, ou detecção da cor- queda de tensão em D1. Esta fórmula é placa qu
eletrodomésticos pode chegar aos 3 kW, rente na carga através de uma resistência muito semelhante à que pode encontrar limites a
pelo que a ligação de apenas um deles de amostragem em série com o triac (tam- no datasheet do U2008B para calcular a com 14
pode traduzir-se numa queda imediata da bém entre o pino 1 e a massa). Neste caso, resistência. sibilidad
tensão da rede. optou-se pela função de arranque suave. O valor eficaz da tensão de meia onda tivo) par
Figura 2. Nesta figura pode observar que a disposição dos componentes e o traçado das pistas (verde claro) da secção de potência
ocupa o maior espaço de modo a cumprir todos os requisitos de segurança elétrica.
Lista de componentes
Atenção: Este circuito foi desenhado para R26= 1 kΩ Semicondutores:
utilização direta na rede elétrica de 230 V. P1= ajustável de 100 kΩ D1= 1N4007
Consulte a descrição do circuito no texto D2= Diodo zener 4,7 V/0,5 W
tudo, é para fazer as adaptações necessárias de Capacitores: D3;D4;D7= BAT85
de meia modo a convertê-lo para uma tensão da rede C1= 1 µF/63 V, radial, separação entre pinos D5= Diodo zener 2,7 V/0,5 W
ncias R1 de 110-117 V. 2,5 mm, diâmetro 6,3 mm D6= LED vermelho, baixo consumo
C2= 10 nF, separação entre pinos 5 mm ou T1= BF245A
superior Resistências: 7,5 mm TR1= BTA16-600BWRG (TO220AB isolado)
ontínua R1;R2= 4,7 kΩ/5 W, separação entre pinos C3;C6;C10= 100 nF, separação entre pinos 5 (Farnell #1175636)
médio da 30 mm mm ou 7,5 mm IC1= U2008B (Atmel)
vista de R3;R4= 330 kΩ C4= 220 µF/25 V, radial, separação entre pi- IC2= TS922IN (ST)
as resis- R5;R23= 100 Ω nos 2,5 mm, diâmetro 8,5 mm
R6;R24= 100 kΩ C5= 220 nF/275 VAC X2, separação entre pi- Diversos:
pesar da
R7;R8= 0,1 Ω/5 W, separação entre pinos nos 22,5 mm K1= Bloco de terminais de 14 vias (2×7) +
apenas 30 mm C7= 10 µF/63 V, radial, separação entre pinos jumper
R9= 20 kΩ 2,5 mm, diâmetro 6,3 mm F1= 10A (1¼” x ¼”, Farnell #1175149 + 2 su-
racional R10= 10 kΩ C8= 1 nF, separação entre pinos 5 mm ou portes fusível 15 A, Farnell # 1175125)
ado um R11= 30,1 kΩ 7,5 mm Quatro conectores AMP, fixação por parafuso
R12= 1,91 kΩ C9= 22 µF/40 V, radial, separação entre pinos M4, quatro parafusos, porcas, anilhas e
nsão de
R13;R14;R17= 698 Ω 2,5 mm, diâmetro 6,3 mm anilha autoblocante M4 de 10 mm.
o dentro R15;R16= 715 Ω Isolador cerâmico 4,5 mm (AOS220SL,
R18= 1,40 kΩ Bobinas: Fischer Elektronik).
R19= 100 kΩ L1= 22 µH/11 A (por exemplo, 1422311C da Dissipador de calor para 10 A: Rth < 3,7 K/W
R20= 10 kΩ Murata, Farnell 1077056), ou 22 µH/10,3 (< 9,4 K/W para corrente máxima 6 A).
ma ten- R21= 3,3 kΩ A (por exemplo, 2205-V-RC da J.W.Miller PCI (Refª 060316-1).
R22= 1 MΩ Magnetics, Digi-Key # M8868-ND)
a acima
R25= 820 kΩ
ver em
Introdução ao C embarcado
• Ativaç
gir ime
por exe
Quando
47k
à linha de alimentação
mas não afetem a temporização geral do P1.6 através de resistências
sistema. Além disso, a brevidade de exe- S2 0V de pull-up e produzem
cução torna possível a execução sequen- um nível lógico baixo
cial de várias ISR sem graves impactos no quando pressionados.
programa principal. Quando for regis- 090252 - 12
74HC4094 GND
ciada à disposição das pis- TACTL é um registro de controle de 16 bits "
090252 - 15 tas na placa, e pode ser associado ao temporizador TimerA, utili-
Figura 5. O display de 7-segmentos é excitado por ajustada ligando os capa- zado para configurar o seu modo de funcio-
um circuito integrado de registro de deslocamento citores internos do proces- namento. Neste caso, utilizamos o modo
74HC4094. sador. Para mais detalhes UP (contagem ascendente).
consulte a nota de aplica-
ções do SLAA322 da Texas Uma vez que se divide sempre por dois, o
Instruments. O cristal é resultado final é o número exato (em biná-
ligado ao temporizador rio) de pulsos contabilizados. Quando se faz
interno de 16 bits TimerA; reset à contagem (TACTL I = TACLR;) este vai
consulte o diagrama de contar de 0 a 65536 em dois segundos. Uma
blocos na Figura 4. vez que se dispõe do valor binário corres- }
O contador divide con- pondente ao número de pulsos contados,
tinuamente o sinal de pode-se também gerar uma interrupção Figura 7
entrada por dois. Após para qualquer valor arbitrário deste conta-
16 estágios de divisão dor. Para tal deve guardar o valor preten- cer. Por e
obtém-se a frequência: dido no registro CCR0. Se CCR0 for igual a que o cr
32768 vai haver uma interrupção ao fim de vez que
f = 32768 / 216 = 0.5 Hz exatamente cada segundo. Esta é chamada muito fin
a interrupção do comparador associado ao larment
O que significa que vai temporizador TimerA (TimerA Compare súbitos,
ser gerada uma transi- Interrupt), onde o valor do TimerA é com- Logo, an
Figura 6. O registo de deslocamento de 8 bits 4094 ção ascendente a cada 2 parado com o valor do registro CCR0. quer tipo
possui um registro de deslocamento, um registro segundos. Escrevemos um programa que testa regar o a
de armazenamento e um registro de saída tampão. este tipo de interrupção (associada a testar o
Isto pode ser utilizado um temporizador), consulte o arquivo
pela interrupção TimerA TimerInterruptDemo.c, nos arquivos dis- Displa
function overflow (fim da contagem do tempori- ponibilizados gratuitamente no site da Antes
{ zador TimerA) em software para incre- Elektor (090252-11.zip). Ao programar Game2
P1OUT |= (BIT11 + BIT2); mentar um contador, e assim manter uma este arquivo na placa e executar o pro- velocid
// turn on contagem de minutos, horas, e até dias e grama, o LED D1 vai piscar a cada dois faz-se u
LEDs 1 and 2 meses. Um dia tem 24 × 60 × 60 = 86400 segundos, e a cada minuto a sirene produz e softw
P1IFG &= ~BIT5; // reset segundos. Se pretender uma precisão de 1 um breve apito. Se arrancar o programa 7-segm
interrupt flag segundo por dia, o desvio máximo de fre- exatamente no início da hora e o deixar Na Figu
} quência é de (1/86400) × 106 = 12 ppm ligado durante um dia inteiro, pode depois do circ
(partes por milhão). A frequência do cris- comparar o resultado com o de um relógio com o d
Nesta interrupção é necessário limpar o tal deve portanto ser igualmente precisa, DCF para determinar quantos segundos o linhas q
valor da flag no final da própria rotina de justificando-se assim a necessidade de um cristal desvia por dia (e eventualmente uti- linhas q
serviço de interrupção, porque de outra ajuste fino da frequência do cristal através lizar essa informação para fazer uma corre- método
forma o processador iria imediatamente de software. ção ao programa). cessado
reiniciar essa mesma ISR assim que a Existe também a possibilidade de gerar Nesta fase, tenho todo o gosto em dar alguns linhas de
tivesse terminado. períodos ainda mais longos através da adi- conselhos gerais aos entusiastas e estudan- compon
ção de dois estágios adicionais (ID0 e ID1, tes que desenham o seu próprio hardware pinos, t
Em seguida vamos examinar a impor- dividir por 2, 4 ou 8) à entrada do tempori- e software: ao criar software para um novo os LEDs
tante interrupção associada ao tempori- zador, através do seguinte código: hardware é importante partir de código que softwar
zador TimerA. Uma vez que a placa inclui já se sabe que funciona. É uma pena quando os oito b
um Clock a cristal bastante preciso, pode- TACTL = TASSEL0 + TACLR; se perdem vários dias a programar mas nada formato
se interromper o programa automatica- // TimerA clock parece funcionar devido a vários erros no requer c
mente em intervalos fixos, para executar is ACLK + clear código, sem que se perceba exatamente o adiciona
uma rotina de serviço de interrupção, por TACTL |= MC1; // TimerA in que está mal ou sequer o que está a aconte- uma vez
camento, assim como o sinal de clock, resolution of 0.05 s contagem de 65536 / 40 = 1638. Chamou-se
à medida que se vai colocando o sinal if(c>15) { c=-1;dp=1;} a esta constante reslow (1638). Para pessoas
de clock alternadamente a um e a zero. else dp=0; com um tempo de resposta extremamente
Quando os oito bits são todos enviados P1OUT &=~BIT4; rápido o tempo que vai aparecer na tela será
para o registro de deslocamento, o valor delay(65000); de 1, ou seja, um tempo de reação inferior
final pode ser copiado para o registro de P1OUT |= BIT4; a 0,2 segundos. Adicionou-se também um
memória utilizando o sinal strobe. set_7segment(c,dp); // clear modo de alta resolução utilizando a variável
O ciclo externo faz cada segmento ilumi- 7-segment display reshigh (½ × 1638 = 819), com o qual se con-
nar-se sequencialmente. Execute o arquivo segue medir em unidades de 0,05 s.
demodisplay para verificar que tudo fun- O temporizador começa a contar a par- Neste programa utiliza-se algum código
ciona conforme o esperado! tir de zero. O registro TAR do TimerA vai fonte do segundo artigo, mas para uma
ter então um valor de zero e dá-se início a referência mais rápida combinou-se todo o
Teste as suas reações uma contagem de sentido ascendente. O código num único arquivo. Não se utilizou
Vamos agora analisar o código no arquivo programa não avançou para além do ciclo um arquivo de biblioteca, mas essa é uma
Game2Elektor_080558.c. Este programa gera while(!ready). Este ciclo consiste numa única possibilidade que se pode tornar útil quando
um número aleatório, que é utilizado para declaração, uma vez que existe um ponto e se dispõe de um número de funções bem
gerar um apito num instante aleatório após vírgula (;) imediatamente a seguir à instru- documentadas já disponível. Apresentam-
S1 ser pressionado. Isto pode ser de 0,25 s ção while(). Desde que ready=0 esta linha vai se na Figura 8, a título de resumo, as três
a 2 segundos depois, no máximo. A seguir continua sendo executada indefinidamente. interrupções estudadas neste último artigo.
ao apito deve carregar em S3 o mais rápido Quando S3 for pressionado a interrupção Vale a pena notar que é sempre necessário
possível. O TimerA está ligado ao cristal de associada à mudança de valor numa entrada limpar a flag de interrupção na rotina ISR,
32 kHz e é limpo no instante em que o apito é chamada, e no interior dessa mesma ISR a com a excepção da interrupção de compa-
é gerado (TATCL I = TACLR;). O código rele- variável ready é colocada a 1. O ciclo while() ração associada ao TimerA0, onde o hard-
vante do arquivo acima mencionado é o é então terminado, e o valor do contador é ware faz ele próprio o reset à flag assim que
seguinte: armazenado na variável t. Este valor é pro- a interrupção termina.
porcional ao tempo decorrido desde que foi É muito útil percorrer o programa no modo
TACTL |= TACLR; // TimerA gerado o apito. É aplicado um divisor adicio- passo-a-passo, para perceber de forma
clear(TAR=0), nal (× ½) após o cristal de 32.768 Hz, utili- mais clara como são utilizadas as várias
// start zando a instrução TACTL I = ID0. Isto signi- instruções, para que seja mais fácil pensar
measuring fica que vão agora passar 4 segundos até o e conceber os seus próprio programas.
while(!ready); // wait contador atingir o seu limite. Pode-se agora Como é habitual, aprende-se melhor
for S3 calcular o fator de conversão necessário para quando se pratica por si próprio!
t=TAR; // read mostrar o tempo até às décimas de segundo. (090252-1)
contents of TimerA Quatro segundos correspondem a 65536, Artigo original: Getting Started with Embedded
c=t/reshigh; // pelo que 0,1 s correspondem a um valor de C (III) – September 2009
#pragma vector=PORT1_VECTOR
__interrupt void buttonactive(void)
{
ready=1;
P1IE = 0; // turn off port interrupts
P1IFG = 0; // reset interruptPort flag
}
40 03-2010 elektor
elektor 03-2010 41
+9V Felizme
IC1A
C3 1
tensões
C2 3 2 BAT85
BT1 1 acontec
9V
IC1
100n 100u 8 IC1 = 4050 IC1C mais len
40V D1 T1
7 6 de tensã
1 220R
R4 corrente
IC1B IC1D C7 sumo d
C1 R2 IRFU9120 L1 1000u
10k
5
1 4 9
1 10 nando p
40uH
10u IRLU120 R6 25V pilhas do
63V IC1E o consu
8R2
R1 R5 C5 LS1
C4 11 12 No enta
1 220R
470k
8Ω
330n C6 circuito
270p D2 T2
IC1F
220n
na faixa
14 15
1 BAT85 9,5 V, o
080277 - 11 pouco m
mentaçã
Figura 2. O circuito é de dimensões muito modestas, pelo que pode ser montado numa placa de circuito impresso muito compacta. para 60
-3
-4
Artigo original: Power in the Pocket (1) – June 2009
-5
-6
10 20 50 100 200 500 1k 2k 5k 10 k 20 k 40 k - BT1 + S1 C7
Hz 080277 - 13
C1 C2 R5
o sinal
+
Figura 3. A resposta em frequência depende da carga ligada. Nesta figura apresenta-se R6
R1R2 C3 LS1
R4 D2
as curvas para uma resistência de 8 Ω (azul) e para um alto-falante (vermelho). L1
C5 C6 -
IC1
entrada
T1 T2
R3
C4
que não práticos, parece-nos que as placas de som abaixo dos 5 V dá um sinal de controle da
D1
quando típicas provavelmente não conseguem unidade insuficiente (o nível de tensão não
cuito já fornecer um sinal suficiente para obter um é suficiente para o controle das gates).
-falante, sinal de saída completo no amplificador. Com 9 V a potência máxima de saída, para Figura 4. Apesar de se usarem
e ligado Mas, não se preocupe: na 2ª parte vamos uma carga de 8 Ω, é de 1 W; para 4 Ω quase componentes convencionais, a placa de
ma resis- descrever uma placa do mesmo tamanho, que duplica para 1,7 watts. O nível de ten- circuito impresso é bastante compacta
s termi- que contém um pré-amplificador e um são cai ao longo da bobina e do capacitor (os componentes são montados muito
próximos uns dos outros).
controle de tonalidade. de saída, por exemplo, começa a ter um
efeito significativo no valor máximo de
te com- Resultados tensão de saída. Lista de componentes
dutivas O consumo de corrente de 44 mA no
Resistências:
anho do modo de espera é claramente demasiado Com uma tensão de alimentação de 9 V,
R1= 470 kΩ
a de rea- elevado para utilizar uma bateria, ainda este amplificador já produz um pouco de R2= 10 kΩ
es sele- mais se for usada mais do que uma placa. ruído, mesmo quando se usa um pequeno R3= 12 kΩ
amente Este consumo é causado maioritaria- alto-falante. Com 1 mW a distorção é infe- R4;R5= 220 Ω
entação mente pela frequência de comutação de rior a 0,5%. Para uma carga de 8 Ω a largura R6= 8,2 Ω
nos uma 660 kHz, relativamente elevada, com uma de banda situa-se numa faixa que vai dos Capacitores:
e testes tensão de alimentação de 9 V, e devido à 18 Hz aos 40 kHz (curva em azul na Figura C1= 10 µF/63 V, radial, 6 mm
ausência de um adequado controle de 3). O ponto de corte de frequência mais C2= 100 nF, cerâmico, passo 5 mm
tempo morto (o valor de 220 Ω para R4 e baixa é determinado pelo capacitor C7, e C3= 100 µF/40 V, radial, 8 mm
R5 é um compromisso). o ponto de corte de frequência mais ele- C4= 270 pF, cerâmico, passo 5 mm
vada pelo filtro passa-baixa (L1/C5). Para C5= 330 nF, MKT, passo 7,5 mm
C6= 220 nF, MKT, 7,5 mm
Felizmente, a frequência reduz-se para pequenos alto-falantes isto é mais do que C7= 1000 µF/25 V, radial, 10 mm
tensões de alimentação mais baixas (isso suficiente, uma vez que é mais do que estes
acontece porque os buffers usados ficam pequenos alto-falantes conseguem na Bobinas:
mais lentos à medida que se baixa os níveis maior parte das vezes reproduzir. L1= 40 µH/2 A, axial (montagem vertical,
de tensão), o que beneficia o consumo de Como já foi mencionado anteriormente, a Epcos B82111EC23; Farnell # 9753354)
corrente. Para 6 V (FS de 510 kHz), o con- curva a azul (Figura 3) representa a carac-
Semicondutores:
sumo de corrente desce para 10 mA, tor- terística de amplitude para uma carga de
D1;D2= BAT85
nando possível usar um conjunto de quatro 8 Ω pura. Quando se liga um alto-falante T1= IRFU9120NPBF (TO251AA/I-PAK,
pilhas do tipo AA. Para 5 V (FS de 450 kHz), pode ser observado um ligeiro incre- International Rectifier;
o consumo de corrente é de apenas 6 mA. mento (cerca de 1 dB) da tensão de saída Farnell # 8659206)
No entanto, recomendamos que utilize o em torno do ponto de ressonância (curva T2= IRLU120NPBF (TO251AA/I-PAK,
International Rectifier;
circuito com uma tensão de alimentação em vermelho). Na frequência de corte do
Farnell # 8651345)
na faixa dos 6-9 V. O máximo absoluto é de filtro (cerca de 40 kHz) pode ocorrer um IC1= 4050
9,5 V, o que consiste numa sobretensão de pico de vários dB. Isto acontece porque o
pouco mais de 5%. Para esta tensão de ali- filtro Butterworth já não está terminado Diversos:
mentação o consumo de corrente aumenta corretamente. Na figura pode dar a sensa- S1= Botão de 1 contato
ompacta. para 60 mA. Uma tensão de alimentação ção que este pico é bastante elevado, mas
A maior parte das pessoas, quando quer saber a quantidade de líquido que tem numa garrafa, olha
para a mesma, mas nós, que gostamos de eletrônica, somos um pouco diferentes, queremos mes-
mo medir essa quantidade.
imersos
eles alte
constan
medida
Sensor
Como já
método
que já e
com cap
simples
vista. V
matemá
sensor c
do por R
oscilado
de medi
process
a inspira
ATM18.
tema po
farads (n
rad são
de um p
Claro esta, não tem necessa- Métodos de medição resistência dá-nos a indicação da quantidade gir uma s
riamente de ser uma garrafa. Existem vários métodos para este fim. Mui- de combustível. Todavia, a precisão deste sis- no fato d
Existem imensas áreas onde é tas das cisternas existentes possuem uma tema é muito fraca. ponente
necessário medir o nível de um bóia que fecha a válvula de entrada quando Existem, hoje, métodos mais modernos, uti- no oscila
líquido existente num determi- a água atinge um certo nível. Neste caso, a lizados em várias situações. Incluem a medi- cia de os
nado depósito, como na indús- bóia não só serve de sensor, como também ção diferencial da pressão hidrostática, medi- influênc
tria de bebidas ou petrolífera. de atuador, controlando a válvula através ção de condutividade, medição da absor- a frequê
Certamente, o leitor encontra de uma alavanca. Apesar de ser um método ção de luz, ultra-sons e mesmo medição por maior fo
outras situações onde um sis- muito confiável, não pode ser utilizado para radar. será a ca
tema deste tipo pode ser útil. medir a quantidade de líquido. Este princí- Do ponto de vista eletrônico, a medição uti- frequên
Vamos ver primeiro como se pio era, e ainda é, usado para medir a quan- lizando um método capacitivo é também sente na
pode medir a quantidade de tidade de combustível no depósito de um interessante. O método baseia-se na medi- ponsáve
um líquido com precisão e automóvel. Neste caso, a bóia faz mover uma ção da capacidade entre dois eletrodos. Se dade, em
confiabilidade. alavanca ligada a um reostato. A alteração da estes eletrodos estiverem mais ou menos uma ind
Oscilador
100k
1k8
14 mm, passo 5 mm
mes- O próprio circuito do oscilador pode afetar a R3
Indutância: 10,0 mH (a 20 kHz) malha ressonante, quer devido à capacidade 100k
Sensor C
16V 3
R5
Resistência: 35 Ω tação baixo. É também importante escolher L1
4
10mH 1
47k
Tolerância: ± 5% a indutância mais adequada.
No nosso caso, optou-se por utilizar uma
Q (min): 70 bobina fabricada pela Fastron. Esta bobina, R2
C2
com a referência 09 P-103 J-50, possui uma
100k
10μ GND
indutância de 10 mH, uma resistência DC 16V
Listagem 1.
Medição da capacidade.
od2
2⋅ π ⋅ ε0 ⋅ εr ⋅l
od1 c=
od Tabela 2.
Ci id2 LN
id Tubo sensor (Figura 6).
id1 Diâmetro exterior: 12 mm
Cx ε0 = constante dielétrica no vácuo e no ar
(8,854 x 10-12 As/Vm) Diâmetro interior do tubo
Co εr = constante dielétrica relativa (depen-
exterior: 8,5 mm
dente do material)
l = comprimento do cilindro Comprimento: 300 mm
od = diâmetro do eletrodo exterior (no Diâmetro do condutor
nosso caso é od2)
interno: 0,4 mm
id = diâmetro do eletrodo interior (no nosso
caso é id1) Diâmetro exterior do condutor
Combinando as duas constantes e conver- interno: 0,6 mm
tendo os metros para milímetros, obtém-
Constante dielétrica do tubo
se a seguinte fórmula: Figura 7
exterior: 3,0
0.0556⋅ εr
c= ⋅l pF/mm
od Constante dielétrica
080707 - 12 LN Pode us
id do tubo interior: 2,3
zir um g
Figura 4. Os capacitores concêntricos da Se o capacitor cilíndrico consistir em várias Constante dielétrica do líquido: 83 cidade t
estrutura do sensor. camadas concêntricas, cada uma formará o líquido
um capacitor separado (no nosso caso Co, zada um
Cx e Ci). A capacidade total é então deter- conforme o tipo de material. água. A
CiL CxL CaL minada pela combinação em série destes Estes valores são vantajosos para a nossa função d
capacitores individuais (Figura 4). Se divi- aplicação, porque a diferença entre as as dime
dirmos o capacitor em duas partes, uma constantes dielétricas relativas dos mate- Agora, o
preenchida com água ou outro líquido riais e da água são bastante diferentes, sig-
CiW CxW CaW (Cw), e outra com ar (Ca), a capacidade nificando que vai existir uma grande dife-
total no tubo será Ct = Cw + Ca (ligação em rença entre as capacidades da parte do
080707 - 13
paralelo). O comprimento da porção pre- tubo com líquido e a restante.
enchida com água é h e a da outra parte A capacidade da parte com ar é dada por:
Figura 5. Esquema equivalente das L-h. O circuito equivalente é apresentado 0.0556⋅ 2.3⋅(l − h )
capacidades presentes no tubo. na Figura 5. CiA =
id 2
A constante dielétrica relativa (εr) do ar é LN
id1
ligada a um fio, com um pouco de fita iso- 1, enquanto a da água depende da tempe-
lante. Este fio e o fio interior constituem ratura, variando entre 55 e 88 (cerca de 83
os terminais do sensor. a 10 °C). A constante dielétrica do plástico 0.0556⋅1⋅(l − h )
Cxl =
Um capacitor cilíndrico possui uma forma transparente é de 3, no caso de policarbo- od1
rotacional simétrica, pelo que a sua capa- LN
nato ou poliestireno, e de 3,2 no caso de id 2
cidade se pode calcular facilmente através acrílico. A constante dielétrica do isola-
da seguinte fórmula: mento do fio pode ser de 2,3 ou de 4 a 5,
0.0556⋅ 3⋅(l − h )
CoA =
od 2
LN
od1
350
Enquanto que as capacidades da parte pre-
300
enchida com líquido são dadas por:
Altura do líquido (mm)
250
0.0556⋅ 2.3⋅ h
CiW =
200
id 2
LN
150 id1
100
0.0556⋅ 83⋅ h
CxW =
50
od1
LN
0 id 2
0.000 10.000 20.000 30.000 40.000 50.000 60.000
Capacidade (pF) 080707 - 14
0.0556⋅ 3⋅ h
CoW =
Figura 6. A capacidade aumenta linearmente em função da altura do líquido no sensor. od 2
LN
od1
48 03-2010 elektor elektor
Sensor C
fout
Ci id1
GND
LCD 20 x 4 Cx
DATA
CLK
+5V
GND 080707 - 15
Pode usar uma folha de cálculo para produ- zado com uma bobina, para formar uma Tubo de aço inoxidável 080707 - 17
zir um gráfico com a relação entre a capa- malha ressonante. A sua frequência de
cidade total e a da parte preenchida com ressonância é dada por uma fórmula bem
o líquido. Esta relação é linear, se for utili- conhecida: Figura 8. Construção simplificada de
zada uma constante dielétrica fixa para a 1 um sensor, utilizando um tubo exterior
f 0= de aço inoxidável ou cobre e um tubo
água. A Figura 6 mostra a capacidade em 2⋅ π ⋅ ( L ⋅C )
interior também de cobre, isolado com
a nossa função da altura do líquido, num tubo com
manga térmica.
entre as as dimensões da Tabela 2. A frequência gerada pelo circuito osci-
os mate- Agora, o sensor está pronto para ser utili- lador vai-nos permitir calcular a capaci-
tes, sig- dade e determinar a altura do líquido no
de dife- sensor.
arte do Primeiro mede-se a capacidade com o
Listagem 2. sensor vazio (h=0), obtendo-se C min. De
da por: Calibração é cálculo da altura do líquido seguida, sabendo-se o calor da capaci-
no sensor ‘Calibrate Minimum Value
dade com o liquido já no sensor, obtém-
Sub Calibmin
-se a altura:
Hmin = 0.0 Print “Minimum
L ⋅(Cmeasured − Cmin )
Hmax = 300.0 Calibration” h=
Cmax − Cmin
Getminmax Bitwait Pind.7 , Set
If Cmax <= Cmin Then Cmin = Cap A precisão mecânica da construção do
Cmin = 7.0 Print “Cmin” ; Cfix ; “ sensor e a tolerância da indutância não são
Cmax = 52.0 importantes, nem a precisão da medição
pF”
End If da frequência ou os materiais usados na
Eadr = Eadrcmin
… construção. É medida apenas a diferença
Writeeeprom Cmin , Eadr entre dois estados.
Sub Calclevel End Sub O oscilador (Figura 2) deve ser colocado
‘ensure that: Hmax>Hmin tão próximo do sensor quanto possível, de
and Cmax>Cmin ‘calibrate Maximaum Value modo a minimizar capacidades parasitas
arte pre- If Cap < Cmin Then Cap = do cabo e reduzir possíveis interferências.
Sub Calibmax
r: Cmin
Print “Maximum
K = Hmax - Hmin Software
D = Cmax - Cmin Calibration” O programa Level.bas utiliza a interface
If D = 0 Then D = 0.01 Bitwait Pind.6 , Set série e o display LCD. Além disso, é apre-
‘avoid division by zero Cmax = Cap sentada a frequência e a capacidade, além
K = K / D Print “Cmax” ; Cfix ; “ da altura do líquido no sensor. Um par de
D = -k pF” botões, ligados a PD6 e PD7, podem ser
D = D * Cmin utilizados para calibração, cujo resultado se
Eadr = Eadrcmax
Y = Cap * K armazena na EEPROM. Os valores padróes
Y = Y + D Writeeeprom Cmax , Eadr indicam uma altura de 0 para uma capaci-
Yfix = Y End Sub dade de 7 pF e uma altura de 300 mm para
End Sub uma capacidade de 52 pF. Se ajustar o nível
do líquido para zero e pressionar o primeiro
botão (PD7), a capacidade medida pelo cir- Se esta diferença não for aceitável, terá de Será ainda mais fácil se permitir que o
cuito nessa altura é copiada para a variável se medir a temperatura do líquido, encon- líquido fique em contacto com o tubo (ele-
Cmin e armazenada na memória. Se depois trar a constante dielétrica numa tabela e efe- trodo exterior) no caso do líquido ser con-
encher o sensor até à altura de 300 mm e tuar as correções necessárias. Infelizmente, dutor (como acontece com a água normal).
pressionar o segundo botão, a capacidade o processo de calibração deixa de ser útil Neste caso, o líquido vai atuar como o ele-
medida nessa condição é copiada para a neste caso, obtendo-se a altura com base trodo exterior do capacitor (Figura 8). Aqui
variável Cmax. Estes dados são armazena- apenas em cálculos teóricos. Nesta situação, existe também uma relação linear entre a
dos na EEPROM, para que não se percam a precisão da construção, os valores exatos capacidade e o nível do líquido. A tempe-
quando se desliga o circuito (Listagem 2). das constantes dielétricas e a precisão da ratura é irrelevante, desde que a condu-
Se a capacidade parasita do cabo (tipica- bobina de referência e da medição de fre- tividade do líquido seja muito superior à
mente da ordem dos 33 pF) for tomada em quência passam a ter um papel importante. condutividade do isolamento do eletrodo
conta, os valores medidos aproximam-se Também a capacidade parasita do cabo deve central, tal como acontece com a água das
bastante dos valores teóricos. Isto signi- ser mediada exatamente. torneiras.
fica que se forem tidas em conta as capa- A construção do sensor pode ser compli-
cidades parasitas e a dependência da Escolha dos materiais cada, pois o eletrodo interior não pode ser
temperatura é possível implementar uma Um fio com isolamento em poliestireno preso dos dois lados. A melhor alternativa é
medição baseada em cálculos, sem cali- (PE) será a melhor escolha para o condutor utilizar um tubo de cobre fino e isolá-lo com
bração, e mesmo assim obter resultados interno, comparado com um cabo isolado manga térmica, para que não fique em con-
satisfatórios. com PVC, pois a constante dielétrica no pri- tato com o líquido. Para manter o eletrodo
Como já foi referido, esta abordagem apenas meiro caso varia pouco, situando-se entre os central centrado no eletrodo exterior, for-
é possível assumindo que a constante dielé- 2,28 e os 2,3. Este cabo pode ser obtido uti- mado por exemplo por um tubo de aço ino-
trica do líquido, neste caso água, se mantém lizando o condutor e isolamento interno de xidável ou cobre, podem ser utilizadas rolhas
constante após a calibração. um cabo coaxial. Se o dielétrico for transpa- de garrafas de espumante. Não se esqueça
O erro devido à variação com a tempera- rente o seu valor relativo será de 2,3. Pode de fazer um furo para a ventilação.
tura depende das dimensões do sensor, e também ser utilizado um tubo de vidro para
deve ser de aproximadamente 1 mm por o eletrodo central. Neste caso, a constante (080707-1)
cada 20 ºC. dielétrica relativa será entre 6 e 8. artigo original: Brim Full – May 2009
50 03-2010 elektor
Um Celular
muito barato
Jens Nickel
Quando pensávamos que os celulares não podiam ser menores, eis ria, um alto- falante e um microfone. Nesta altura, Antoine parecia
que os nossos colegas do laboratório da Elektor conseguem “deitar realmente surpreendido: “Uau, isto é mesmo pequeno”. Apesar do
as mãos” a um do tamanho de um cartão de crédito por um preço de seu reduzido tamanho, o microfone fornece uma qualidade de voz
pouco menos de 25 dólares (não incluindo as taxas de importações). surpreendentemente boa.
Sem contrato, sem bloqueio do cartão SIM ou qualquer restrição! O A iluminação de fundo do teclado é essencial durante a noite e neste
Simvalley RX-80 Pico vem com um LCD de 1,2 polegadas, suporta caso a iluminação é fornecida por alguns LEDs. Tivemos a oportuni-
mensagens SMS, lista telefônica, e até mesmo um teclado com ilumi- dade de alimentar o telefone com uma fonte de tensão de 3 V (ver
nação de fundo. Intrigado? Vamos dar uma “espiada” no seu interior! foto de cima à direita).
Não é apenas o preço, mas também o tamanho e o peso do Simvalley O restante do circuito está escondido atrás de uma placa que serve
RX-80 Pico da Pearl Diffusion que é espantoso. Com 50 x 80 x 10 mm e para blindagem RF. A pistola de ar quente não resultou muito bem
apenas 44 g, este celular pode ser facilmente guardado numa carteira neste caso, tivemos que usar uma ferramenta Dremel.
ou bolsa. Heiko Loy, porta-voz da Pearl para a imprensa, disse-nos que O grande circuito integrado é uma memória Flash produzida pela
este telefone de 25 dólares é produzido em massa na China. empresa Eon Silicon Solution [2], de Taiwan. O mais provável é que
Antoine Authier, responsável do nosso laboratório, investigou com seja usada para armazenar as mensagens de texto SMS, a lista telefô-
mais detalhe o aparelho. Com uma ferramenta de plástico desenhada nica, a informação das chamadas e as várias versões do menu de texto
para abrir iPods, rapidamente separou as duas metades da caixa. A para cada opção de linguagem.
placa de circuito impresso está fixada por clips na parte inferior da O segundo circuito integrado possui a inscrição SKY77518-21 identi-
caixa (os parafusos seriam muito caros!). ficando-o como um módulo GSM dual-band produzido pela Skyworks
Solutions [3]. O terceiro circuito integrado (7880 1.3G FC GO914) é
Um pequeno pedaço de fita adesiva segura o LCD à placa de circuito provavelmente uma versão do antigo processador de banda base GSM
impresso, este é facilmente removido enquanto Antoine segura uma 7880, comercializado pela Infineon.
pistola de ar quente. O display de 1,5 mm de espessura está ligado à (090502-1)
placa de circuito impresso através de 14 pinos. Procuramos algum Artigo original: A dirt cheap mobile phone – September 2009
tipo de marca de identificação neste componente, mas infelizmente
não tivemos sorte desta vez. [1] www.pearl.fr
Na placa de circuito impresso podemos ver o suporte para o cartão [2] www.eonssi.com
SIM, o conector USB para carregar a bateria, as ligações para a bate- [3] www.skyworksinc.com
elektor 03-2010 51
mentada com outros dispositivos FPGA, 1 14 IC2 100n 100n 10μ Tant. 33p 1μH
33p
1μH
10n
VCC
VCC
VCC
VCC
Diagrama de blocos Oscilador 43
E_CLK S_OUT7
17
R5
4k7
C3
C9
4k7
4k7
+5V R6 R7 10n
470 Ω
470 Ω
IC1
1M
1M
4k7
4k7
R1 R2 R9 R10
1k
+5V R11
constante a uma velocidade fixa predeter- 20
10n
10k
10k
K1 S_OUT5 4k7
4k7
4k7
R12 R13
10 9 7 R14
em overflow, completa-se um período 8 7
TDI
S_OUT4
24
4k7
4k7
4k7
TMS R15 R16
4 3 38 R17 27.12 MHz
njar a atua assim como uma função de reset para
TD0 26
2 1 32 S_OUT3 4k7
TCK
4k7
4k7
R3 R18 R19
4k7
4k7
R21 R22
vel
EPM70SLC44-7
R4 R23
29
se de uma forma ciclica, e é este ciclo que S_OUT1 4k7
10k
esis),
4k7
4k7
gera a frequência do sinal de saída. Esta Entrada modulação
FSK 4 31
R26
R24 R25
de de
GND
GND
GND
GND
GND
GND
S1 GND
cia, com uma resolução que depende da R27
4k7
Interruptor
de frequência 1 2 10 22 30 42 44
frequência =1 / (2 π (LC ))
por uma porta de 8 bits sendo, por isso, parece muito como uma onda senoidal
necessário um conversor D/A para con- (Figura 3), pelo que é necessário um filtro Em que L representa a indutância e C a
verter esse sinal numa onda senoidal para melhorar a sua forma. Como temos, capacidade. Com um valor de 33 pF para o
analógica. Para evitar ter que se usar um em média, apenas 2,6 amostras por ciclo, capacitor (C) e 1 μH para a bobina (L), con-
dispositivo especial, usamos uma malha são geradas montes de frequências har- seguimos obter uma frequência central de
de resistências, com uma estrutura R-2R. mônicas indesejadas que precisam de 27 MHz.
Cada uma das oito saídas gera um nível de ser eliminadas. Esta tarefa fica a cargo de Código VHDL
tensão que contribui para o total da ten- dois filtros LC em série. O dispositivo CPLD é programado em lin-
são de saída. A filtragem faz uso de transistores JFET guagem VHDL. O programa divide-se em
O sinal de saída do conversor D/A não se J310, bem conhecidos na eletrônica das dois processos.
LIBRARY ieee;
USE ieee.std_logic_1164.all;
USE ieee.std_logic_unsigned.all;
ENTITY sine_dds IS
END PROCESS;
--//-- end of phase accumulator process
SIG_ESIN(3 downto 0) <= SIG_CPT(15 downto 12); -- only the 4 MSBs are retained
ntral dos
alculada --//-- start of memory process
PROCESS (E_CLK)
BEGIN
IF (E_CLK’EVENT AND E_CLK = ‘1’) THEN – clock rising edge
CASE SIG_ESIN IS
WHEN “0000” => SIG_SSIN <= “01111111”; --127
WHEN “0001” => SIG_SSIN <= “10110000”; --176
ia e C a WHEN “0010” => SIG_SSIN <= “11011001”; --217
F para o WHEN “0011” => SIG_SSIN <= “11110101”; --245
(L), con- WHEN “0100” => SIG_SSIN <= “11111111”; --255
WHEN “0101” => SIG_SSIN <= “11110101”; --245
ntral de
WHEN “0110” => SIG_SSIN <= “11011001”; --217
WHEN “0111” => SIG_SSIN <= “10110000”; --176
END CASE;
END IF;
END PROCESS;
--//-- end of memory process
Figura 4. Protótipo do circuito montado numa placa perfurada para protótipos (esquerda). A malha R-2R é montada na face das
soldaduras da placa (direita).
loscópio digital. pequena pesquisa na Internet mostrou que fases, por exemplo, dois sinais sinusoidais
Programação de outras frequências a idéia de o construir usando um disposi- em quadratura.
A frequência mais alta que podemos obter tivo programável não está muito difun- (080750-1)
é cerca de 40% do valor da frequência de dida. No entanto, esta é uma solução Artigo original: Sinewaves in programmable Logic –
entrada. No nosso caso, 40% de 70 MHz muito simples que pode ir até frequên- March 2009
corresponde a 28 MHz. Qualquer frequên- cias RF, como neste caso até 28 MHz, utili-
cia pode ser calculada do seguinte modo: zando um dispositivo que não é, de forma
alguma, o dispositivo de lógica programá- Referências
frequência desejada vel mais rápido. [1] Cyberclocks USB, Elektor Nº 244, Abril
incremento= 65536 ×
70 MHz Não vale o esforço tentar encontrar o dis- de 2005.
positivo DDS que precisa e depois codifi- [2] Oscilador a cristal programável, Elektor
Que, para uma frequência de 12 MHz, por car o software para o configurar. É muito Nº 249, Setembro de 2005.
exemplo, dá um incremento de 11.235 mais simples construí--lo usando dispositi- Leitura adicional
(arredondando). vos mais acessíveis. A literatura que existe Folha de características do dispositivo DDS,
O filtro usado não permite um funciona- sobre este tema é imensa e muitas vezes por exemplo, o AD9851 da Analog Devices.
mento numa elevada gama de frequên- emprega grandes quantidades de informa-
cias. Para adaptar este circuito a uma fre- ção, conceitos teóricos e cálculos de aná-
quência de 12 MHz, o filtro LC correspon- lise de sinais que não seriam úteis para a
dente deverá ser: compreensão deste artigo.
Neste caso, o dispositivo CPLD apenas
está utilizado até 48% da sua capacidade.
12 MHz = 1 / (2 π ( LC )) Isto deixa espaço suficiente para que o
leitor possa adicionar um outro gerador
DDS, ou então melhorar este que aqui é
Que (quase) que acontece quando, por apresentado (por exemplo, aumentando
exemplo, C = 180 pF e L = 1 μH. o número de bits do registo de fase, ou
Conclusão aumentar a tabela com os dados da onda
O circuito que apresentamos neste artigo sinusoidal digital), ou ainda para gerar dois
não é nenhuma nova invenção, mas uma sinais de saída sinusoidais com diferentes O autor
Jean Christophe Humez é engenheiro
eletrônico, graduado na faculdade EN-
A B
SEEIHT em Toulouse, França. Ele passa
o seu tempo livre tirando fotografias
aéreas a partir de um papagaio, num
clube em França. Esta atividade, agora
com mais de 120 anos, envolve o dis-
paro remoto do obturador de uma câ-
mara instalada no próprio papagaio. É
uma atividade que se presta facilmente
a todos os tipos de soluções eletrônicas
para o controle da câmea. A câmera é
apontada e disparada através de uma
Figura 5. Saída de sinal após a filtragem: 27,120 MHz (A) e 27,125 MHz (B). ligação rádio.
A frequência é apresentada no canto inferior direito.
56 03-2010 elektor
usoidais
080750-1)
ble Logic –
arch 2009
44, Abril
, Elektor
vo DDS,
Devices.
elektor
TinyBrick M16C
Programável
em BASIC
Dr Uwe Altenburg (Alemanha)
Foi por volta da década de 1980 que a rapidamente encontrou imensos amigos
Intel integrou no interior do microcon- no mundo semi-profissional e na comu- Especificações
trolador 8052 um interpretador BASIC. A nidade de amadores. O sucesso deste
Elektor foi uma das primeiras a testar este módulo incentivou muitas outras empre- do projeto
microcontrolador em aplicações concre- sas a produzir dispositivos equivalentes. Placa TinyBrick com processador:
tas. O circuito integrado tinha a referên- Um exemplo é a popular gama de contro- • Microcontrolador Renesas M16C29. Figura 1
cia 8052-AH-BASIC, e o interpretador que ladores C-Control produzida pela Conrad • 128 + 4 kB memória Flash, 12 kB
ficou conhecido como BASIC-52 tornou-se Electronics [3], Alemanha. RAM.
lendário como resultado das publicações O módulo TinyBrick usado neste artigo • 1 interface RS485/RS232 (TTL). dezas,
da Elektor. Muitas empresas independen- pode ser visto como um complemento • 1 interface RS232 (V24). Certam
tes rapidamente reconheceram o poten- a esta lista, mas com a vantagem de • 1 interface ISP. da Elek
• 8 saídas PWM (16 bits).
cial deste circuito integrado, entre elas, ter um potente microcontrolador de sic que
• 8 conversores A/D (10 bits).
a Micromint incorporou a memória RAM 16 bits. O M16C é um irmão maior do ladora c
• 2 entradas de interrupção (INT), 1
necessária, interfaces para comunicação popular R8C, que deve ser bem conhe- interface SPI, 1 interface I2C. de 2008
e lógica suplementar nos seus módulos cido dos leitores assíduos da Elektor. Um zada pa
Domino [1]. Em meados dos anos noventa, interpretador TinyBasic [4] vem já pré- Kit de componentes disponível, disponi
a Parallax [2] introduziu o módulo BASIC instalado no microcontrolador, criando inclui placa com componentes este pro
Stamp que utiliza um microcontrolador desse modo um ambiente de desen- SMD previamente instalados e e os ou
PIC ou um Parallax SX. volvimento simples e compacto, ideal microcontrolador com interpretador dos. Os
Enquanto que o conceito original do 8052 para o desenvolvimento de soluções de BASIC já carregado. Também conecto
BASIC se destinava a profissionais, o BASIC controle, especialmente para questões disponível uma placa de avaliação. que tam
Stamp (apesar da sua memória limitada) relacionadas com a medição de gran- Serviço
R1 R7 VCC
C6
1
10k
100k
R
100n 6 TX-
TX/RX 2
3
7 TX+
RESET 62 12 11 10
P84/ P85/ TXD2 4
AVCC VCC D
C5 RESET 6 INT2/ZP NMI/SD 61 VREF R3
RESET VREF
GND
10k
100n
P0.0 60 2 5 75176
P100/AN0 P90/TB0IN
P0.1 58 1
P101/AN1 P91/TB1IN
P0.2 57 64
P102/AN2 P92/TB2IN +5V
P0.3 56 63
P103/AN3 IC1 P93/AN24
K1 P0.4 55 K2
P104/AN4/KI0
1 RXD P0.5 54 36 +5V 1
P105/AN5/KI1 P60/RTS0/CTS0
2 TXD P0.6 53 35 CLK0 P0.0 2
P106/AN6/KI2 P61/CLK0
3 DTR P0.7 52 34 RXD0 P0.1 3
P107/AN7/KI3 P62/RXD0
4 P1.5 33 TXD0 P0.2 4
P63/TXD0
5 P1.6 51 28 P6.4 P0.3 5
P00/AN00 P64/RTS1/CTS1
6 P1.7 50 27 P6.5 P0.4 6
P01/AN01 P65/CLK1
7 SSO 49 26 P6.6 P0.5 7
P02/AN02 P66/RXD1
8 SSI 48 25 P6.7 P0.6 8
P03/AN03 P67/TXD1
9 SCL P0.7 9
10 SDA P1.5 47 16 VREF 10
P15/INT3/ADTRG/IDV P80/TA4OUT/U
11 RXD2 P1.6 46 15 P7.4 11
P16/INT4/IDW P81/TA4IN/U
12 TXD2 P1.7 45 14 INT0 P7.6 12
P17/INT5/INPC17/IDU P82/INT0
13 CLK2 13 INT1 P2.0 13
P83/INT1
14 INT0 P2.0 44 P2.1 14
P20/OUTC10/INPC10/SDA
15 INT1 P2.1 43 P2.2 15
P21/OUTC11/INPC11/SCL
16 TX+ P2.2 42 24 TXD2 P2.3 16
P22/OUTC12/INPC12 P70/TXD2/SDA/TA0OUT
17 TX- P2.3 41 23 RXD2 P2.4 17
P23/OUTC13/INPC13 P71/RXD2/SCL
18 RESET P2.4 40 22 CLK2 P2.5 18
P24/OUTC14/INPC14 P72/CLK2/TA1OUT
19 NMI P2.5 39 21 TX/RX P2.6 19
P25/OUTC15/INPC15 P73/CTS2
20 GND P2.6 38 20 P7.4 P2.7 20
P26/OUTC16/INPC16 P74/TA2OUT/W +5V
+5V P2.7 37 19 INT0
P27/OUTC17/INPC17 P75/TA2IN/W
18 P7.6
P76/TA3OUT C4
SCL 32
P30/CLK3
M16C29 P77/TA3IN
17 INT1
R4 R5 R6 SSI 31
P31/SIN3 100n
K3 SSO 30 2
10k
10k
10k
P32/SOUT3
1 SDA 29 3 CNVSS C1 1 V+ 16
P33 CNVSS 100n C1+
2 P6.4 P87/ P86/
AVSS XIN XOUT XCIN XCOUT VSS
3 P6.5 3 IC3
59 9 7 4 5 8 C1–
4 P6.6 X1 X2 TXD0 11 14 TXD
T1IN T1OUT
5 XCOUT XCOUT CLK0 10 7 DTR
T2IN T2OUT
6 RXD0 12 13 RXD
R1OUT R1IN
7 9 8
C8 C7 C11 C10 R2OUT R2IN C9
8 RESET 4
C2+
9 CNVSS 22p 22p 15p 15p 100n
MAX202
10 P6.7 C2 5 15
C2–
R2 X1 = 18.432kHz X2 = 32.768kHz 100n V-
6
10k
C3
100n
080719 - 11
RXD(V24) +5V
TXD(V24) P0.0/ADC0
DTR(V24) TinyBrick16 P0.1/ADC1
LCD_CS/P1.5 P0.2/ADC2
LCD_RES/P1.6 P0.3/ADC3
LCD_MODE/P1.7 P0.4/ADC4/COL0
SOUT/P3.2 P0.5/ADC5/COL1
SIN/SCL /P3.1 P0.6/ADC6/COL2
SCLK/P3.0 P0.7/ADC7/COL3
CARD/SDA/P3.3 VREF
RXD1(TTL)/P7.1 P7.4
TXD1(TTL)/P7.0 P7.6/SOUND
CLK1(TTL)/P7.2 P2.0/PWM0
INT0/CNT0/P8.2 P2.1/PWM1
INT1/CNT1/IRIN/P8.3 P2.2/PWM2
TX+ P2.3/PWM3
TX- P2.4/PWM4/ROW0
RESET P2.5/PWM5/ROW1
NMI P2.6/PWM6/ROW2/DIR0
GND P2.7/PWM7/ROW3/DIR1
TinyBrick16 080719 - 14
Figura 2. Placa de circuito impresso do Figura 3. Disposição dos pinos de saída do TinyBrick.
módulo TinyBrick.
Lista de componentes
Lista de componentes Semicondutores: K3= Suporte Micromatch 10 vias
Módulo TinyBrick IC1= M30291FC-U5 JP1= Ponte de ligação
IC2= SN75176 PCI (Ref.ª 080719-1).
Resistências: IC3= MAX202CSE Placa de Circuito impresso com microcon-
R2a R7= 10 kΩ trolador* e componentes SMD instalados,
R1= 100 kΩ Diversos: incluindo também os outros componentes
X1= Cristal quartzo de 18,432 MHz (Refª 080719-91).
Capacitores: X2= Cristal quartzo de 32,768 kHz
C10;C11= 15 pF K1;K2= Barra de terminais SIL de 20 vias, * programado com bootloader e interpreta-
C7;C8= 22 pF com pinos dobrados, passo 2,54 mm dor BASIC.
C1a C6;C9= 100 nF
para gerar um sinal de clock com uma fre- Esta porta é usada para carregar as apli- ou modem. Para esta última aplicação, o
quência de um segundo, o que pode ser cações em BASIC. As rotinas BASIC podem sinal DTR está também disponível, para
muito útil para aplicações em tempo-real. também usar esta porta para, por exem- além dos sinais TXD e RxD.
Ambos os cristais são instalados com os plo, enviar/receber mensagens ou imple- A segunda interface utiliza os pinos P6.4
respectivos capacitores de adaptação. A mentar a interface série com um display a P6.7, em conjunto com os sinais de con-
frequência de oscilação do cristal para o Figura 5
sinal do clock depende particularmente
do valor dos seus capacitores de adap-
tação (C10 e C11), e pode afastar-se em trole (/R
algumas ppm do seu valor nominal. Para match d
produzir um sinal de clock de maior pre- a progr
cisão, a contagem dos segundos pode ser ming). Q
corrigida periodicamente através do soft- em con
ware, através da sincronização deste com volvime
uma fonte de referência de clock via rádio descarr
externo. O interpretador TinyBasic suporta mas esc
esta função. em que
E8, foi d
Interface gramaç
O microcontrolador M16C29 possui três prefere
interfaces universais assíncronas (UART). sentado
A primeira destas três interfaces série uti- A tercei
liza os pinos P6.1 a P6.3, que se encontram meiro,
ligados a um MAX202 (IC3), e depois aos TTL dire
pinos 1 a 3 do conector K1, de modo a K1, que
garantir um nível de sinais na interface de equipam
comunicação série compatível com V24. Figura 4. Placa de avaliação do TinyBrick. recepto
P2.1 14 BC548
1
R/W
E
VIN
D0
D1
D2
D3
D4
D5
VOUT
TX+ 16 16 P2.3 P1.5 4 CSB 38 1
CSB A1 100 Ω
TX- 17 17 P2.4 P1.6 5 RES 40
RES LCD1 R2
RESET 18 18 P2.5 P1.7 6 RS 39 20
K5 RS A2 100 Ω
NMI 19 19 P2.6 SSO 7 SSO 28
D7 LCD- DISPLAY
+9V GND 20 20 P2.7 SSI 8 EA DOGM 16 x 3 2
C1
20
21
SCL 9 SCL 29 19
D6 C2
GND SDA 10
VSS PSB CAP1N CAP1B
RXD2 11
27 23 21 3
TXD2 12
IC1 CLK2 13
K4 2
INT0 14
D1 7805 +5V
1 INT1 15
TX+ 16
1N4004
TX- 17
3
cação, o C1 C2 C3
RESET 18
NMI 19
el, para 20 GND
100µ 16V 100µ 16V 100n K6
GND
nos P6.4
080719 - 12
de con-
Figura 5. Diagrama do circuito da placa de avaliação do TinyBrick.
trole (/RESET e CNVSS) no conector Micro- Os sinais estão também ligados ao exci- tuadas ligando o módulo a uma placa
match de 10 vias. Esta porta é usada para tador de linha diferencial SN75176 (IC2), para protótipos. Uma solução mais sim-
a programação ISP (In System Program- de modo a disponibilizar os sinais TX+ e ples consiste em encomendar a placa de
ming). Quando é usado um emulador E8, TX- para um barramento RS485 em K1. avaliação do TinyBrick disponível no Ser-
em conjunto com um sistema de desen- Isto permite que vários módulos Tiny- viço Elektor; o produto final fica com uma
volvimento HEW (da Renesas), é possível Brick possam ser ligados em conjunto a apresentação muito mais profissional.
descarregar, executar e depurar progra- um barramento para formar uma rede, A placa de circuito impresso precisa de
mas escritos em C. Mesmo para os casos uma característica muito útil para aplica- muito poucos componentes para funcio-
em que não é possível usar um emulador ções de automação domésticas. O Tiny- nar e não é necessário possuir conheci-
E8, foi desenvolvido um adaptador de pro- Basic inclui suporte para um protocolo de mentos especiais sobre soldagem. A placa
gramação adicional para os leitores que rede simples. de avaliação é apresentada na Figura 4,
preferem a linguagem C, que será apre- esta possui conectores para uma fonte de
sentado brevemente na Elektor. Placa de avaliação alimentação externa e comunicações série
A terceira interface tem duas funções: pri- O circuito mínimo necessário para por cabo.
meiro, envia e recebe sinais com níveis colocar um módulo TinyBrick funcio- A porta série utiliza um conector sub-D de 9
TTL diretamente nos pinos do conector nando é uma fonte de alimentação vias. Isto simplifica a tarefa de ligar periféri-
K1, que são normalmente utilizados por regulada de 5 V (adaptador de rede ou cos à placa de avaliação, como modems ou
equipamentos como receptores GPS ou fonte de bancada) e um cabo de inter- módulos de displays. Para carregar os pro-
receptores de rádio para sinais horários. face série. As ligações podem ser efe- gramas na placa é preciso um cabo null-
Diversos:
K1;K2= Suporte SIL de 20 vias, passo 2,54 O bási
mm Muitas v
K3= Conector sub-D de 9 vias, fêmea TinyBasi
K4= Conector para adaptador de o estado
alimentação Muitas v
K5= Bloco de terminais PCI de 2 vias, um único
passo 5 mm
K6= Pinos de soldagem
Suporte de 2x20 pinos para módulo Tiny- Port2.0
Brick, passo 2,54 mm inverte
Placa breadboard adequada (protoboard, que é e
84x54 mm) sempre
Dissipador de calor SA220 dar num
Figura 6. Placa de circuito impresso da placa de avaliação do TinyBrick.
PCI (Ref.ª 080719-2)
program
modem, mas se o leitor não tiver acesso [4], que consiste numa das línguas mais #define
a um computador com porta série vai ser simples para os principiantes entrarem para expansões futuras. Estão disponí- #define
necessário fazer um cabo ‘null-modem para neste “mundo”. Os programadores mais veis 32 kB para o programa BASIC utili- Isto per
USB’ (use um cabo USB-TTL mais um chip experientes vão certamente também con- zar. O programa é armazenado na forma motor q
para conversão dos níveis RS232). siderar que este sistema tem muito a ofe- de tokens, sendo que isto deve ser mais usando
A construção de um cabo deste tipo está recer, permitindo implementar pequenas do que suficiente. Os restantes 32 kB
descrita em detalhe num documento que tarefas num curto período de tempo. O estão livres para serem usados como se Motor =
se encontra disponível gratuitamente no microcontrolador M16C29 está equi- pretenda, por exemplo, para armaze- Quando
site Elektor. pado com uma memória Flash de 128 kB, nar dados úteis. Por último, existe uma todos o
12 kB de RAM e 4 kB de memória Flash memória Flash de 4 kB para dados onde configu
Software para dados, 64 kB reservados para o boo- são colocados os valores de inicialização dância).
Tal como já foi mencionado anterior- tloader e interpretador TinyBasic. A ver- e outros parâmetros. A memória Flash flito com
mente, os módulos TinyBrick são progra- são corrente do TinyBasic utiliza cerca para os dados pode ser apagada e repro- dware q
mados maioritariamente em TinyBasic de 40 kB, visto que existe muito espaço gramada até 10.000 vezes, enquanto que controla
a memória Flash normal pode ir até cerca configur
de 1.000 ciclos de apagamento/reprogra- das com
mação. O bootloader é iniciado imediata- podem
mente após o reset do sistema. Se não for comand
detectado nenhum carregamento de soft-
ware nos primeiros dois segundos, o setport
interpretador TinyBasic começa a exe- vai conf
cutar o programa BASIC mais recente entrada
que se encontra armazenado. O bootlo- pinos P2
ader pode também ser usado para car- tências d
regar o interpretador TinyBasic resi- Uma ca
dente, o que garante que todas as futu- é que su
ras versões do interpretador, com novas de texto
funcionalidades mais recentes, pos- Electron
sam ainda ser utilizadas pela placa Tiny- série de
Brick. Enquanto o TinyBrick está exe- displays
cutando um programa BASIC é possí- de uma
vel iniciar um reset no sistema através apenas
do envio de uma sequência de reset na trolador
primeira interface série. Depois desta gráfico
ser recebida, é gerado um reset por soft- publicad
ware e o bootloader começa a ser execu- É neces
tado outra vez. Isto permite carregar um indicar a
Figura 7. O TinyEditor, usado para gerar e descarregar o programa TinyBasic. novo programa a qualquer altura. display e
O básico do TinyBasic
Muitas variáveis de sistema estão definidas no
TinyBasic. Usando as variáveis port0 a port9
o estado das portas pode ser lido e alterado.
Muitas vezes, é necessário acender apenas a
um único pino de uma porta. A linha:
64 03-2010 elektor
elektor
mais algumas linhas E/S não utilizadas do processador, que podem recem inúmeras possibilidades para testar e desenvolver as suas
ser usadas para conectar os seus protótipos. próprias aplicações!
Também existe uma carta de expansão multi-funções (MultiFunc- Artigo original: Review: PSoC kit with RF module – October 2009
tion Expansion Card) – que, como o nome sugere, executa múltiplas
funções. Ela contém um controlador de deslizamento CapSense www.cypress.com/cyfi
66 01-2010
11-2009 elektor
Obtenha feedback
instantâneo através de
instrumentos virtuais
integrados
Plataforma Educacional para A plataforma educacional para ensino de eletrônica da National Instruments oferece um
Ensino de Eletrônica
conjunto de ferramentas para auxiliar os estudantes a conectarem a teoria de circuitos com
NI Multisim aplicações reais. Com o NI Multisim, estudantes podem explorar conceitos teóricos e
Software interativo para projeto e
simulação de circuitos eletrônicos entender o comportamento de circuitos utilizando simulação SPICE e recursos interativos.
NI ELVIS Eles podem construir protótipos físicos no protoboard da plataforma NI ELVIS que possui
Estação educacional para projeto e
instrumentação integrada e instrumentos virtuais do NI LabVIEW. Por fim, eles podem
protótipo com 12 instrumentos integrados
comparar dados simulados com medições reais com um simples clique utilizando
NI LabVIEW
Software de desenvolvimento gráfico instrumentos do NI ELVIS dentro do ambiente Multisim.
>> Faça o download dos recursos para ensino em ni.com/academic/eep (11) 3149 3149
©2009 National Instruments. Todos os direitos reservados. LabVIEW, Multisim, National Instruments, NI, e ni.com são marcas registradas
da National Instruments. Os outros nomes de produtos e das empresas mencionadas são marcas registradas e nomes comerciais das
respectivas empresas. 46