BRUNO WIEZEL LOPES DA SILVA MARTIN ROBERT HORST TRANSMISSOR DE ÁUDIO ESTÉREO EM FM COM FREQÜÊNCIA SELECIONÁVEL CURITIBA 2006 2 BRUNO WIEZEL LOPES DA SILVA MARTIN ROBERT HORST TRANSMISSOR DE ÁUDIO ESTÉREO EM FM COM FREQÜÊNCIA SELECIONÁVEL Trabalho de Conclusão de Curso apresentado ao Curso de Engenharia Elétrica - Ênfase em Eletrônica / Telecomunicações da Universidade Federal do Paraná, como requisito para aprovação na Disciplina de Projeto Final de Graduação. Professor Orientador: Márlio José do Couto Bonfim. CURITIBA 2006 3 Agradecimentos Gostaríamos de agradecer ao professor Márlio José do Couto Bonfim, por sua solicitude com relação às nossas dúvidas e dificuldades. 4 "A satisfação reside no esforço, não no resultado obtido. O esforço total é a plena vitória." Mohandas Gandhi 5 Resumo Este trabalho apresenta a teoria da codificação estéreo, da modulação FM e de sistemas de controle por PLL, bem como os procedimentos práticos para a implementação de um transmissor de áudio em FM estéreo microcontrolado, com freqüência selecionável e exibição da freqüência de operação em um display de LCD. Palavras-chave: Transmissor FM, Estéreo, PLL, microcontrolador, LCD. 6 Lista de Ilustrações Figura 1 – Diagrama Simplificado de funcionamento. ............................................... 12 Figura 2 – Circuito Estereofônico ............................................................................... 14 Figura 3 – Gráfico Ganho x Freqüência - Pré-Ênfase................................................ 15 Figura 4 – Circuito Pré-Ênfase ................................................................................... 15 Figura 5 – Espectro dos sinais modulantes estereofônicos....................................... 16 Figura 6 – Representação blocos internos CI1 BA1404 ............................................ 18 Figura 7 – Indicação ponto de teste da Codificação Estéreo .................................... 19 Figura 8 – Sinal Modulado em freqüência.................................................................. 20 Figura 9 – Espectro sinal FM...................................................................................... 22 Figura 10 – Gráfico dos coeficientes da Função de Bessel....................................... 23 Figura 11 – Tabela dos coeficientes da Função de Bessel ....................................... 23 Figura 12 – Faixa de ocupação de emissoras FM Comercial.................................... 25 Figura 13 – Esquemática do Circuito de Modulação FM ........................................... 25 Figura 14 – Esquemática do Circuito de Modulação FM NO SIMULADOR PSPICE 27 Figura 15 – ESPECTRO DO SINAL DE SAÍDA DO MODULADOR.......................... 27 Figura 16 – análise da onda portadora em osciloscópio, nos domínios do tempo e freqüência, para tensão de entrada igual a 0 V. ........................................................ 28 Figura 17 – análise da onda portadora em osciloscópio, nos domínios do tempo e freqüência, para tensão de entrada igual a 1,6 V. ..................................................... 28 Figura 18 – Estrutura Básica de um Elo de TRAVAMENTO DE Fase (PLL) ............ 29 Figura 19 – Pinagem do Circuito Integrado MC145170-2 ......................................... 30 Figura 20 – Estrutura Interna do CI3 – MC145170-2................................................. 31 Figura 21 – Resposta do MC145170-2 ...................................................................... 32 Figura 22 – Esquema do Circuito do PLL .................................................................. 32 Figura 23 – Análise dinâmica da resposta ao degrau unitário de um sistema de 2ª ordem. ................................................................................................................. 33 Figura 24 – Filtro passa-baixas genérico ................................................................... 34 Figura 25 – Esquema de um microcontrolador com os seus elementos básicos. .... 36 Figura 26 – Modelo simplificado Unidade de Memória .............................................. 37 Figura 27 – Esquema da unidade central de processamento – CPU........................ 38 Figura 28 – Unidade Lógica Aritmética ...................................................................... 39 Figura 29 – Arquitetura RISC do Microcontrolador PIC16F84................................... 40 Figura 30 – Diagrama simplificado do microcontrolador PIC16F84 .......................... 40 Figura 31 – Estruturas de pinos do PIC16F84........................................................... 40 Figura 32 – Acesso ao registro C............................................................................... 42 Figura 33 – Esquema de Interface com o PIC e Pinagem do display LCD ............... 43 Figura 34 – Inicialização do display LCD ................................................................... 44 Figura 35 – Interface de comunicação 4 bits ............................................................. 44 Figura 36 – Conjunto de Instruções para Operação do Display LCD........................ 45 Figura 37 – Fluxograma do Firmware Implementado ................................................ 47 7 Lista de Fórmulas Fórmula 1 – Cálculo do Ganho do circuito de pré-ênfase ......................................... 15 Fórmula 2 – Expressão do Sinal Modulado em FM ................................................... 21 Fórmula 3 – Índice de Modulação .............................................................................. 21 Fórmula 4 – Coeficientes da Função Bessel ............................................................. 22 Fórmula 5 – Cálculo da Largura de banda................................................................. 24 Fórmula 6 – Regra de Carson para cálculo da Largura de banda............................. 24 Fórmula 7 – Freqüência de oscilação da resposta ao degrau................................... 34 8 Lista de Abreviaturas RF – Rádio-freqüência MP3 – MPEG Áudio Layer 3 fm – Maior freqüência do sinal f(t) B – Largura de banda em Hz CI – Circuito Integrado ß – Índice de Modulação – Máximo desvio de freqüência m c – Freqüência Máxima da informação – Freqüência da portadora fFM(t) – Sinal Modulado em FM f(t) – Informação Sinal Modulante FM – Modulação em freqüência FCC – Federal Communication Comission l(t) – canal esquerdo r(t) – Canal direito AM-DSB/SC – Amplitude Modulation with Double Side-Band with suppressed carrier) W – Largura de Banda em rad/s nmax – número máximo de raias no espectro PLL – Phase-Locked Loop F – Faraday O – Ohm RISC – Reduced Instruction Set Computer LCD – Liquid Crystal Display 9 SUMÁRIO 1. INTRODUÇÃO ....................................................................................................... 10 1.1 MOTIVAÇÃO .................................................................................................... 10 1.2 OBJETIVOS ...................................................................................................... 10 1.3 METODOLOGIA ............................................................................................... 11 2 IMPLEMENTAÇÃO DO CIRCUITO ELETRÔNICO ............................................... 12 2.1 SINAL ESTÉREO ............................................................................................. 13 2.1.1 Breve Histórico da Radiodifusão em FM Estéreo...................................... 13 2.1.2 Conceitos de Sinal Estéreo........................................................................ 14 2.1.3 Implementação da Codificação Estéreo no Circuito Transmissor............. 17 2.1.4 Montagem e Teste Circuito de Codificação Estéreo ................................. 18 2.2 MODULAÇÃO EM FREQÜÊNCIA.................................................................... 20 2.2.1 Conceitos da Modulação em Freqüência .................................................. 20 2.2.1.1 FM de Faixa Estreita ............................................................................. 21 2.2.1.2 FM de Faixa Larga ................................................................................ 22 2.2.1.3 Largura de Banda do Sinal FM ............................................................. 24 2.2.1.4 FM Comercial no Brasil......................................................................... 24 2.2.2 Implementação do Circuito de Modulação e Transmissão........................ 25 2.3 ELO DE FASE TRAVADA OU PLL (PHASE LOCKED LOOP) ....................... 29 2.3.1 A Implementação no Circuito - O PLL MC145170-2 ................................. 30 2.3.2 Diagrama Esquemático do Bloco PLL ....................................................... 32 2.4 DISPLAY DE CRISTAL LÍQUIDO..................................................................... 35 2.5 MICROCONTROLADOR .................................................................................. 35 2.5.1 Introdução e Definições do Microcontrolador ............................................ 35 2.5.2 Microprocessador X Microcontrolador ....................................................... 36 2.5.3 Componentes do Microcontrolador............................................................ 36 2.5.3.1 Unidade de Memória............................................................................. 37 2.5.3.2 Unidade Central de Processamento (CPU).......................................... 38 2.5.3.3 Unidade Lógica Aritmética .................................................................... 39 2.5.4 Microcontrolador PIC16F84 ....................................................................... 39 2.5.4.1 Interface com o PLL MC145170-2........................................................ 42 2.5.4.2 Interface com o Display LCD ................................................................ 43 2.5.4.3 Interface de Controle – Botões de Sintonia .......................................... 45 2.5.5 O Firmware................................................................................................. 46 3 ANÁLISE DOS RESULTADOS .............................................................................. 48 4 CONCLUSÕES ....................................................................................................... 50 5 REFERÊNCIAS ....................................................................................................... 51 ANEXOS..................................................................................................................... 52 ANEXO A – Folha de especificações do CI1: BA1404....................................... 52 ANEXO B – Folha de especificações do diodo varicap D1 ................................ 53 ANEXO C - Folha de especificações do transistor BF199 ................................. 54 ANEXO D - Folha de especificações do display de LCD ................................... 55 ANEXO E – Folha de especificações do CI2: PIC14F84A ................................. 56 ANEXO F – Folha de especificações do CI3: MC145170-2 ............................... 57 ANEXO G – Código fonte do firmware implementado........................................ 58 ANEXO H – Layout da placa de circuito impresso do protótipo ......................... 66 ANEXO I – Esquemática do circuito eletrônico................................................... 67 10 1. INTRODUÇÃO 1.1 MOTIVAÇÃO Receptores de rádio em FM são amplamente utilizados nos dias de hoje, sendo, inclusive, o rádio o meio de comunicação mais popular no globo. Além disso, existe uma crescente difusão e popularização dos reprodutores de música, IPOD’s e MP3 players, que possibilitam aos seus usuários portar uma imensa quantidade de músicas em um dispositivo de tamanho reduzido. A idéia do projeto consiste em oferecer um produto que represente uma comodidade para esse crescente mercado de usuários. Essa comodidade consiste em, por exemplo, ouvir as músicas que estão em seu dispositivo durante uma viagem ou um passeio de carro, no aparelho de som do automóvel, ou em casa, transmitindo músicas de um PC para qualquer aparelho de som que possua um receptor de FM. Para isso, será implementado um transmissor com freqüência sintonizável, que recebe o sinal de áudio de qualquer fonte sonora e o transmite na faixa de FM Comercial. A freqüência de operação do transmissor poderá ser convenientemente sintonizada dentro de uma banda livre do espectro de FM comercial e visualizada num display LCD. 1.2 OBJETIVOS O objetivo deste trabalho é projetar e implementar um circuito transmissor de áudio estéreo com modulação FM e freqüência de operação sintonizável dentro da 11 faixa de FM comercial, com o uso de um microcontrolador e uma saída para um display LCD com informações, como a freqüência sintonizada. Para tanto, será necessária a escolha e especificação de componentes adequados para executar cada função do circuito transmissor, conhecimentos em radiofreqüência para operação em altas freqüências 88 MHz a 108 MHz, programação de microcontroladores, softwares para design de layout e esquemático de circuitos e conhecimentos práticos para a simulação do funcionamento em laboratório, utilizando equipamentos de testes como geradores de freqüência para simular um sinal de áudio na entrada, osciloscópio para analisar e medir sinais em diversos pontos do circuito e um analisador de espectro para medição e verificação do nível do sinal no domínio da freqüência. No final do projeto, esperamos obter um circuito transmissor de operação com alta estabilidade, boa qualidade de áudio, baixo custo, baixo consumo e um raio de alcance de aproximadamente 100 m. 1.3 METODOLOGIA Definimos algumas metodologias para execução do projeto. Este foi estruturado para a montagem de um circuito transmissor em partes e dentro do prazo estipulado. Para facilitar os testes e garantir o funcionamento na montagem final, o circuito transmissor foi subdividido em 4 partes, sendo elas: 1) Codificador Estéreo; 2) Modulador FM; 3) Realimentação por Elo de Travamento de Fase (PLL); 12 4) Microcontrolador e display de LCD. As partes serão implementadas e testadas individualmente. Garantindo o funcionamento das partes, elas finalmente podem ser integradas e validadas em um protótipo final. 2 IMPLEMENTAÇÃO DO CIRCUITO ELETRÔNICO A proposta do projeto é a montagem de um transmissor de áudio estéreo com modulação FM e freqüência de operação sintonizável exibida em um display LCD. À saída de áudio (direito + esquerdo) de qualquer reprodutor portátil de MP3, será conectado o transmissor e nele é feito o ajuste da freqüência que será sintonizada no receptor para receber as informações transmitidas, conforme a ilustração a seguir: FIGURA 1 – DIAGRAMA SIMPLIFICADO DE FUNCIONAMENTO. O desafio do projeto é a montagem de um circuito transmissor completo, que irá receber o sinal de áudio na faixa de 0 a 20 kHz, provenientes dos canais direito e esquerdo do reprodutor portátil de MP3, tratar e multiplexar em estéreo e em seguida, modular em freqüência dentro da faixa de FM comercial. 13 2.1 SINAL ESTÉREO 2.1.1 Breve Histórico da Radiodifusão em FM Estéreo A demonstração teórica da existência de ondas eletromagnéticas por James Maxwell, em 1863 e a apresentação do princípio da propagação eletromagnética por Heinrich Hertz (cujo sobrenome batizou a unidade de freqüência, ciclos/segundo), em 1887, abriu-se um amplo espaço para o desenvolvimento das telecomunicações através do espaço livre. Guglielmo Marconi, que ampliou as distâncias de transmissão de ondas eletromagnéticas, percebeu a importância comercial e apresentou o telégrafo sem fio, em 1896. No Brasil, o pioneirismo das telecomunicações é atribuído ao padrecientista Landell de Moura, cujos inventos foram patenteados em 1901. Com o advento das técnicas de modulação, tornou-se possível fazer com que as ondas eletromagnéticas carregassem informações de áudio. A primeira estaçãoestúdio de radiodifusão é inaugurada em 1916, nos EUA. Em 1922, é realizada no Brasil a primeira transmissão radiofônica oficial, no centenário da Independência. A técnica de modulação em freqüência (FM) é apresentada pela primeira vez em 1933 por Edwin Armstrong e em 1942 são produzidos os primeiros aparelhos comerciais de FM, que permitem uma transmissão de áudio com maior fidelidade. Atualmente, o rádio ainda é o meio de comunicação mais popular no mundo, apesar da forte concorrência com os televisores. No Brasil, de acordo com o Censo de 2000 do IBGE, 87,4% dos domicílios possuem pelo menos um aparelho de rádio (a televisão está presente em 87% dos domicílios). 14 2.1.2 Conceitos de Sinal Estéreo Ate 1961, toda a transmissão FM era monofônica, a partir dessa época, passaram a ser autorizada a transmissão FM comercial. O principal problema em introduzir transmissões estereofônicas era a compatibilidade com os receptores monofônicos. Partindo do princípio que os sinais l(t) (left = esquerdo) e r(t) (right = direito), que são as informações de estéreo, devem ser codificadas de tal forma que os receptores estéreos possam decodificá-las e os receptores monofônicos possam receber os dois canais misturados ou somados. FIGURA 2 – CIRCUITO ESTEREOFÔNICO Com o intuito de manter uma boa relação sinal/ruído ao longo de toda a faixa audível, é utilizada a técnica da Pré-ênfase que, sendo usada na transmissão do sinal, consiste em reforçar o sinal modulante na região de mais alta freqüência. 15 FIGURA 3 – GRÁFICO GANHO X FREQÜÊNCIA - PRÉ-ÊNFASE FIGURA 4 – CIRCUITO PRÉ-ÊNFASE Para cada faixa de freqüência pode-se calcular o ganho em decibel inserido pelo circuito de pré-ênfase, através da Fórmula: GV = 20 log [ 1 + (2 .p. f. R1. C)2 ] -1 FÓRMULA 1 – CÁLCULO DO GANHO DO CIRCUITO DE PRÉ-ÊNFASE Da mesma forma, na recepção do sinal será necessário desfazer esta enfatização que foi dada à informação, mediante o processo chamado de-ênfase. Sendo a curva de resposta da de-ênfase contrária à estipulada para a pré-ênfase. 16 O canal esquerdo l(t) e direito r(t) são pré-enfatizados e codificados matricialmente, gerando os sinais de soma l(t)+ r(t) e diferença l(t)- r(t). O sinal soma l(t)+ r(t) e diferença l(t)- r(t) ocupam o mesmo lugar no espectro. Desloca-se o espectro da diferença usando modulação DSB-SC para a freqüência de 38kHz. A F.C.C (Federal Communication Comission) padronizou a codificação de um sinal estereofônico segundo o espectro da figura a seguir: FIGURA 5 – ESPECTRO DOS SINAIS MODULANTES ESTEREOFÔNICOS A porção do espectro que vai de 0 a 15kHz é a soma l(t) + r(t) dos dois canais e a porção de 23kHz a 53kHz é a diferença l(t) – r(t) dos dois canais modulados, com um tom cossenoidal de 19kHz, chamado de “sinal piloto”, a partir do qual dobrando sua freqüência, recupera a portadora da modulação l(t) – r(t) em AMDSB/SC. 17 2.1.3 Implementação da Codificação Estéreo no Circuito Transmissor O primeiro passo realizado pelo circuito transmissor é o tratamento do sinal de áudio enviado pelo reprodutor portátil de MP3. Na implementação usada para o transmissor, foi utilizado o circuito integrado BA1404, que é um codificador matricial estéreo e modulador FM. O CI1 BA1404 recebe separadamente o sinal de áudio dos canais direito (R) e esquerdo (L), após passarem pelo circuito de pré-ênfase (constante RC adotada segundo a norma FCC, e igual a 50 µs) realizado por R10 e C11 para o canal direito e R12 e C16 para o canal esquerdo, nos pinos “1” e “18” respectivamente. As resistências R9 e R11 apresentam uma baixa impedância de entrada para o sinal de áudio, como se simulassem a impedância de um fone de ouvido. Os capacitores C12 e C17 servem para bloquear o nível DC dos sinais de áudio. Para a geração das sub-portadoras, um cristal com freqüência de oscilação de 38 kHz, é conectado nas portas “5” e “6”, e será dividida internamente por dois pelo CI para gerar o sinal piloto de 19 kHz no pino “13” que será somado com o sinal multiplexado da soma e diferença dos canais. O CI conta ainda com um modulador FM interno, que não foi utilizado devido sua baixa estabilidade. O CI é alimentado com a tensão de 1,5 V que é obtida através de uma pilha AAA. Os pinos não utilizados “7”, “10” e “12”, são ligados a tensão de alimentação positiva, os pinos “11” e “09” não são conectados e o pino “8” é ligado ao terra. 18 FIGURA 6 – REPRESENTAÇÃO BLOCOS INTERNOS CI1 BA1404 2.1.4 Montagem e Teste Circuito de Codificação Estéreo Para o teste do circuito de codificação estéreo foi utilizada uma placa para montagens de protótipo (ProtoBoard), na qual foi montada a configuração de acordo com a folha de especificações do CI1 BA1404. Para a simulação dos sinais de áudio (esquerdo e direito) foram utilizados dois sinais senoidais de 400 Hz e 2,1 kHz obtidos através de um gerador de sinais. A certificação do funcionamento do circuito montado foi feita utilizando-se um osciloscópio para análise do espectro do sinal de saída. FIGURA 6 – SINAL ESTÉREO NO DOMÍNIO DO TEMPO (CIMA) E NO DOMÍNIO DA FREQÜÊNCIA 19 FIGURA 7 – INDICAÇÃO PONTO DE TESTE DA CODIFICAÇÃO ESTÉREO O oscilador do CI1 BA1404 produz uma onda quadrada, a qual é utilizada para a geração do tom piloto. Esta onda possui componentes harmônicas ímpares, além da harmônica fundamental, e que adicionam distorção ao sinal estéreo multiplexado. Para contornar este problema, o sinal é passado por um filtro passabaixas, representado no esquema pelos componentes R17 e C20. O resistor R18 condiciona o nível de corrente para a entrada do modulador FM e também define o índice de modulação ß do modulador. Os indutores L5 e L6 atuarão como choque de RF para o sinal modulado, o acoplamento do sinal de RF com volta para a entrada de áudio será comentado oportunamente. 20 2.2 MODULAÇÃO EM FREQÜÊNCIA 2.2.1 Conceitos da Modulação em Freqüência A modulação em freqüência é uma forma de modulação na qual uma informação é representada através de variações na freqüência instantânea de uma onda eletromagnética portadora. Em aplicações analógicas, a freqüência da portadora é variada em proporção direta a mudanças na amplitude de um sinal de entrada. Em aplicações digitais, dados binários podem ser representados deslocando-se a freqüência da portadora por um conjunto de valores discretos, numa técnica denominada FSK (Frequency Shift Keying). A FM é utilizada em transmissões de áudio em alta-fidelidade e comunicações por voz. É também empregada para gravação de luminância (preto e branco) em sistemas de VHS, visto que apresenta alta imunidade ao ruído (em FM, a amplitude é constante) em uma ampla faixa de freqüências. Assumindo o conceito de modulação, que define como alterar a portadora proporcionalmente ao sinal modulante, teremos a freqüência linearmente proporcional à variação do sinal da informação. FIGURA 8 – SINAL MODULADO EM FREQÜÊNCIA instantânea 21 Observa-se que quando o valor instantâneo do sinal modulante é máximo positivo, a freqüência da onda FM também é máxima. Quando o valor instantâneo do sinal modulante é máximo negativo, a freqüência da onda FM é mínima. A expressão que define o sinal modulado em FM: f FM(t) = A.cos ( ct + kF f(t) dt) FÓRMULA 2 – EXPRESSÃO DO SINAL MODULADO EM FM KF : Constante que converte variações de volts do sinal do sinal f(t) em variações de velocidade angular (rad/s) da freqüência instantânea. Unidade = rad . V .s O sinal modulado em FM pode ser classificado em : - FM de Faixa Estreita - FM de Faixa Larga 2.2.1.1 FM DE FAIXA ESTREITA A classificação pode ser obtida com o cálculo de ß, que é o índice de modulação e representa o máximo deslocamento de fase do sinal em relação à portadora, é definido: ß= m FÓRMULA 3 – ÍNDICE DE MODULAÇÃO – Máximo desvio de freqüência m – Freqüência máxima da informação O sinal modulado em FM Faixa Estreita ocupa uma faixa restrita de freqüência e tem seu índice de modulação ß restringido. Na prática um sinal é definido como de faixa estreita usando o critério de ß<<1. 22 Devido à característica de banda limitada, que implica na perda de qualidade, este tipo de modulação não é utilizado em FM Comercial, porém, possui várias aplicações como: comunicação rádio policial, rádio amador, transmissão de dados, etc. 2.2.1.2 FM DE FAIXA LARGA No espectro FM, há infinitas raias laterais, cujo espaçamento entre si é igual à m, como mostra o exemplo da figura a seguir: FIGURA 9 – ESPECTRO SINAL FM Para definir cada coeficiente do espectro FM em relação ao parâmetro ß são usadas as “Funções de Bessel”, podendo ser escrita sob a forma: f FM(t) = A. Jn(ß).cos[( c + m)t] n FÓRMULA 4 – COEFICIENTES DA FUNÇÃO BESSEL 23 Os coeficientes que aparecem na equação podem ser obtidos através de uma tabela na figura 12 ou ainda por meio de um gráfico na figura 11, permitindo a procura dos coeficientes Jn(ß) para qualquer valor real positivo de ß. FIGURA 10 – GRÁFICO DOS COEFICIENTES DA FUNÇÃO DE BESSEL FIGURA 11 – TABELA DOS COEFICIENTES DA FUNÇÃO DE BESSEL 24 2.2.1.3 LARGURA DE BANDA DO SINAL FM Teoricamente a largura de banda ocupada pelo espectro de um sinal modulado em FM figura 8, tende ao infinito, pois é o resultado de uma série composta por infinitos termos. Uma possível aproximação seria usar a definição de que a largura de banda de um sinal é tal que contenha 98% da Energia / Potência do sinal. A modulação FM não altera a energia total do sinal da portadora, apenas sua distribuição espectral. Cálculo da largura de banda: B = 2.nmax.fm W = 2. nmax. m FÓRMULA 5 – CÁLCULO DA LARGURA DE BANDA Na prática, é utilizada uma aproximação que visa desprezar menos raiais espectrais, conhecida como Regra de Carson: nmax = ß + 2 W=2 +4 m FÓRMULA 6 – REGRA DE CARSON PARA CÁLCULO DA LARGURA DE BANDA 2.2.1.4 FM COMERCIAL NO BRASIL Foi definido por norma internacional (FCC – Federal Communication Comission): - Faixa de freqüências alocadas no Brasil: 88 MHz a 108 MHz - Banda de freqüência do sinal de áudio: 50Hz a 15Khz - Desvio de freqüência: f = 75KHz -ß=5 25 A faixa de 88 a 108MHz é dividida em porções de 200KHz, idealmente esta faixa permitirá um total de 100 estações de rádio: Na prática, são utilizadas no máximo 50 estações de rádio numa mesma região, pois não é permitido que duas emissoras ocupem faixas vizinhas, para prevenir interferências de uma estação na outra e para permitir transmissão de sinais de áudio estéreo. FIGURA 12 – FAIXA DE OCUPAÇÃO DE EMISSORAS FM COMERCIAL 2.2.2 Implementação do Circuito de Modulação e Transmissão FIGURA 13 – ESQUEMÁTICA DO CIRCUITO DE MODULAÇÃO FM O sinal de áudio modulante entra através catodo de D1, polarizando-o reversamente e variando sua capacitância. Essa capacitância, somada em série com a de C4 irá carregar-se e descarregar-se através da bobina L1, formando um 26 elemento de ressonância que irá definir a freqüência de oscilação do circuito. A bobina L1 possui uma derivação central para introduzir uma realimentação positiva do emissor para a base de Q2 (através de C6), tornando o circuito instável e fazendo-o oscilar. O resistor R6 fornece a corrente de polarização de base do transistor Q2. O sinal do modulador é então amplificado de modo a obter-se níveis suficientes para a transmissão e acionamento do PLL. Na bobina L2 é induzida uma tensão pelo campo magnético gerado por L1, que já é o sinal FM modulado. Esse sinal, após bloqueio DC por C5, será amplificado por Q1. L4 e CV1 irão compor um filtro passa-faixas com sintonizado no centro da banda de FM comercial (98 MHz). Do emissor de Q1, o sinal vai para a antena, que é o próprio cabo que conectará o dispositivo de som ao transmissor sintonizável. Os sinais de entrada de áudio, e saída FM não irão interferir entre si, pois possuem freqüências completamente distintas. Os capacitores C23 e C24 provêem uma maior estabilidade na alimentação dos transistores. A bobina L3 irá amostrar o sinal de FM modulado e, após ter seu nível DC bloqueado por C10, servirá de referência para a realimentação do PLL (circuito integrado MC145170-2), que irá proporcionar a seleção da freqüência de transmissão com alta estabilidade. Antes da implementação, verificamos seu funcionamento através do programa de simulação PSpice. 27 FIGURA 14 – ESQUEMÁTICA DO CIRCUITO DE MODULAÇÃO FM NO SIMULADOR PSPICE A fonte V1 é designada como uma fonte do tipo degrau, para permitir o início da oscilação através uma variação brusca do sinal. A resistência R3 serve para permitir a avaliação da freqüência de saída pela variação que C1 (Cbreak), que neste circuito representa a capacitância reversa do varicap. Quando a tensão reversa é 0 (nível mínimo, primeiro pico) e quando é 1,6V. FIGURA 15 – ESPECTRO DO SINAL DE SAÍDA DO MODULADOR 28 Pode-se observar, através da simulação, que poderemos obter um sinal de saída que excursiona de cerca de 87 a 109 MHz, através da variação da capacitância reversa do varicap, o que é suficiente para a cobertura de toda a banda de FM comercial. Na prática, obtivemos os seguintes gráficos (imagens de osciloscópio): FIGURA 16 – ANÁLISE DA ONDA PORTADORA EM OSCILOSCÓPIO, NOS DOMÍNIOS DO TEMPO E FREQÜÊNCIA, PARA TENSÃO DE ENTRADA IGUAL A 0 V. FIGURA 17 – ANÁLISE DA ONDA PORTADORA EM OSCILOSCÓPIO, NOS DOMÍNIOS DO TEMPO E FREQÜÊNCIA, PARA TENSÃO DE ENTRADA IGUAL A 1,6 V. 29 O que se observa é que há uma variação de cerca de 3 vezes da amplitude do sinal no fim da faixa em relação ao início. Para tanto, viu-se necessário a implementação de um controle automático de ganho, através do resistor R7, diodo D2 e C26. Quando o nível do sinal modulado em FM estiver muito alto, o diodo D2 realimenta o sinal para a base de Q1, de modo a diminuir o ganho do amplificador de RF. 2.3 ELO DE TRAVAMENTO DE FASE OU PLL (PHASE LOCKED LOOP) A técnica PLL (do inglês Phase Locked Loop, ou Elo da Fase Travada, em uma tradução livre) foi desenvolvida por volta dos anos 30 como uma alternativa aos receptores super-heteródinos, os quais precisavam de muitos circuitos sintonizados. Esta técnica se popularizou com os avanços da microeletrônica, que tornaram estes circuitos integrados e baratos. Hoje em dia, são amplamente utilizados em telecomunicações, como por exemplo, em moduladores e demoduladores de FM, sintetizadores de freqüência, regeneradores de portadora e circuitos de sincronismo. O PLL nada mais é do que uma estrutura realimentada com três blocos, demonstrada no esquema abaixo. FIGURA 18 – ESTRUTURA BÁSICA DE UM ELO DE TRAVAMENTO DE FASE (PLL) O PLL consiste em um sistema de controle que gera um sinal de saída proporcional à diferença de fase entre o sinal de um oscilador controlado por tensão 30 e um sinal de referência fixa. O comparador de fase pode ser baseado em uma porta lógica XOR ou circuitos mais complexos envolvendo lógica combinacional. Filtrando-se as componentes de alta freqüência do sinal do comparador de fase, obtemos um nível médio VO, que é proporcional à diferença de fase entre os sinais de entrada Vi e o sinal do oscilador controlado por tensão (VCO). Esse nível DC é realimentado negativamente para o VCO, o que proporciona uma correção da sua freqüência fosc, até que essa seja idêntica à freqüência do sinal de entrada, fi (ou freqüência de referência). Estando as freqüências idênticas, pode-se dizer que há uma diferença de fase constante, ou um travamento de fase. Daí o nome PLL. 2.3.1 A Implementação no Circuito - O PLL MC145170-2 O circuito integrado MC145170-2 é um sintetizador de freqüências com interface serial. A freqüência de referência para comparação de fase provém de um oscilador a cristal de quartzo associado a divisores de freqüência programáveis (registradores C, R e N). FIGURA 19 – PINAGEM DO CIRCUITO INTEGRADO MC145170-2 31 FIGURA 20 – ESTRUTURA INTERNA DO CI3 – MC145170-2 Através de uma interface serial, seus registradores internos C, R e N podem ser convenientemente configurados. O registrador R defiine o valor pelo qual será dividida a referência, e determinará passo da sintonia da freqüência da operação do transmissor. Utilizandose um cristal de 4MHz, devemos ter um valor de R=40 para se obter uma resolução de 100 kHz. O registrador N define o valor pelo qual será dividida a freqüência de uma amostra do sinal do oscilador. Alterando o valor de N, podemos fazer com que o MC145170-2 gere um sinal de erro de modo a definir a freqüência de operação do transmissor. Para valores de freqüência da faixa de FM comercial, ou seja, de 88.1 a 108.9 MHz, os valores do registrador N devem variar de 881 a 1089. O MC145170-2 irá, portanto, dividir a freqüência de operação do transmissor por N, o valor da freqüência de referência por R e irá comparar esses dois sinais, gerando no pino PDout um sinal de saída proporcional à diferença de fase entre eles, 32 como mostrado na figura 22. Esse sinal é filtrado e realimentado ao varicap do modulador FM, de modo a manter as duas freqüências idênticas. FIGURA 21 – RESPOSTA DO MC145170-2 2.3.2 Diagrama Esquemático do Bloco PLL FIGURA 22 – ESQUEMA DO CIRCUITO DO PLL O CI é operado pelo oscilador constituído pelo cristal X2, os capacitores C1 e C2 e o resistor R1. O capacitor C8 serve para desviar as altas freqüências indesejáveis e prover ao CI uma alimentação estável. 33 Um sinal de referência (4 MHz) é enviado para a operação do microcontrolador, através do pino REFout. A configuração da operação do circuito integrado é feita através das linhas digitais DIN, ENB e CLK, provenientes do microcontrolador. O sinal amostrado entra no pino FIN passando por um capacitor de acoplamento e o sinal de erro é tomado em PDout após seu devido condicionamento por um filtro passa-baixas. Os valores dos componentes desse filtro (R2, R3 e C3) são determinados, de acordo com a resposta ao degrau desejada. O resistor R4 adapta o nível do sinal para o modulador. O capacitor C3 é dimensionado de modo a se obter uma resposta lenta para o sinal modulante proveniente do bloco de multiplexação estéreo. Dessa forma, variações na freqüência da portadora causadas pelo sinal modulante não serão interpretadas como erros de freqüência pelo laço PLL. Da análise dinâmica de um sistema de controle de segunda ordem, sabemos que: FIGURA 23 – ANÁLISE DINÂMICA DA RESPOSTA AO DEGRAU UNITÁRIO DE UM SISTEMA DE 2ª ORDEM. Assim, para a determinação dos componentes de um filtro passa-baixas genérico, temos: 34 FIGURA 24 – FILTRO PASSA-BAIXAS GENÉRICO K KVCO n NC ( R1 R2 ) e 0 .5 n ( R2C N ) , onde: K KVCO FÓRMULA 7 – FREQÜÊNCIA DE OSCILAÇÃO E FATOR DE AMORTECIMENTO DA RESPOSTA AO DEGRAU DE UM SISTEMA DE 2ª ORDEM n como é a freqüência de oscilação da resposta ao degrau do sistema e escolhida 2 fR ; 50 é o fator de amortecimento da resposta ao degrau do sistema e escolhido como 0.7. K é o ganho do comparador de fase e igual a VDD (em V/rad); 4 KVCO é a constante de modulação do oscilador controlado por tensão e dada por 2 fVCO VVCO (em V/rad/s); N é o valor médio do divisor N utilizado. 35 2.4 DISPLAY DE CRISTAL LÍQUIDO O usuário poderá visualizar a freqüência de operação em um display de LCD. O display de cristal líquido (LCD) é um importante dispositivo em projetos de de eletrônica, pois permite visualizar diferentes tipos de caracteres. Em um LCD, a visualização ocorre pelo controle da reflexão da luz em cada um dos pontos (pixels) que formam o display. O LCD é composto por uma matriz de pontos, que devem ser combinados a fim de formar os caracteres. Como trabalham com a reflexão da luz, os displays necessitam de luz para que os caracteres possam ser visualizados, podendo esta luz ser ambiente ou proveniente de uma fonte colocada por trás do display (backlight). O controle dos pixels que devem ser visíveis para cada caracter é relativamente complexo, por isto, os displays possuem microcontroladores incorporados, que são responsáveis por este trabalho em linguagem de baixo nível junto ao display. Ao usuário, cabe a tarefa de comandar este microcontrolador. 2.5 MICROCONTROLADOR 2.5.1 Introdução e Definições do Microcontrolador Os microcontrolador teve seu desenvolvimento em paralelo com a tecnologia do circuito integrado, tornando-se possível armazenar centenas de milhares de transistores em um único chip. Isso constituiu um pré-requisito para a produção de microprocessadores e, os primeiros computadores foram construídos adicionando periféricos externos tais como memória, linhas de entrada e saída, temporizadores e outros. Um crescente aumento do nível de integração permitiu o aparecimento de 36 circuitos integrados contendo simultaneamente processador e periféricos. Foi assim que surgiu o conceito do microcontrolador.. 2.5.2 Microprocessador X Microcontrolador Um microcontrolador difere de um microprocessador em vários aspectos. Primeiro e o mais importante, é a sua funcionalidade. Para que um microprocessador possa ser usado, outros componentes devem-lhe ser adicionados, tais como memória e componentes para receber e enviar dados. Em resumo, isso significa que o microprocessador é o verdadeiro coração do computador. Por outro lado, o microcontrolador foi projetado para ter tudo em um só. Nenhum outro componente externo é necessário nas aplicações, uma vez que todos os periféricos necessários já estão contidos nele. 2.5.3 Componentes do Microcontrolador FIGURA 25 – ESQUEMA DE UM MICROCONTROLADOR COM OS SEUS ELEMENTOS BÁSICOS. 37 2.5.3.1 UNIDADE DE MEMÓRIA A memória é a parte do microcontrolador cuja função é guardar dados. Como a memória fabricada com tecnologia FLASH pode ser programada e limpa mais que uma vez ela torna-se adequada para o desenvolvimento de dispositivos. Para cada local de memória é associado um endereço físico, conhecido por endereçamento, que aponta para o conteúdo selecionado pelo endereço desejado. Além de ler um local de memória, ainda temos uma linha de controle (R/W = Read/Write) que permite selecionar a operação de escrita, usando a seguinte lógica: para R/W=1 é executado a operação de leitura, caso contrário uma operação de escrita é executada no endereço de memória. FIGURA 26 – MODELO SIMPLIFICADO UNIDADE DE MEMÓRIA 38 2.5.3.2 UNIDADE CENTRAL DE PROCESSAMENTO (CPU) A unidade central de processamento (CPU) é o cérebro de um microcontrolador. Essa parte é responsável por extrair a instrução, decodificar a instrução e, finalmente, executá-la. FIGURA 27 – ESQUEMA DA UNIDADE CENTRAL DE PROCESSAMENTO – CPU A unidade central de processamento interliga todas as partes do microcontrolador de modo que este se comporte como um todo. Uma das funções mais importante é decodificar as instruções do programa. Quando o programador escreve um programa, as instruções assumem um claro significado, para que um microcontrolador possa entendê-las esta forma escrita de uma instrução tem que ser traduzida numa série de zeros e uns que é o ‘opcode’ (código da operação). Esta passagem de uma palavra escrita para a forma binária é executada por tradutores assembler. O código da instrução extraído da memória de programa, tem que ser decodificado pela unidade central de processamento (CPU). 39 2.5.3.3 UNIDADE LÓGICA ARITMÉTICA A unidade lógica aritmética (ALU – Arithmetic Logic Unit) é responsável pela execução de operações de adição, subtração, deslocamento (para a esquerda ou para a direita dentro de um registro) e operações lógicas. O PIC16F84 contém uma unidade lógica aritmética de 8 bits e registros de uso genérico também de 8 bits. FIGURA 28 – UNIDADE LÓGICA ARITMÉTICA 2.5.4 Microcontrolador PIC16F84 O PIC 16F84 pertence a uma classe de microcontroladores de 8 bits, com uma arquitetura RISC (Reduced Instruction Set Computer), na qual a memória de dados está separado da memória de programa, maximizando a fluência de dados através da Unidade Central de Processamento. A separação da memória de dados da memória de programa, faz com que as instruções possam ser representadas por palavras de mais que 8 bits, usa-se 14 bits para cada instrução, o que permite que todas as instruções ocupem uma só palavra de instrução. 40 FIGURA 29 – ARQUITETURA RISC DO MICROCONTROLADOR PIC16F84 FIGURA 30 – DIAGRAMA SIMPLIFICADO DO MICROCONTROLADOR PIC16F84 O PIC16F84 tem um total de 18 pinos. Possui a versão com encapsulamento DIP18 e também a versão SMD de menores dimensões. FIGURA 31 – ESTRUTURAS DE PINOS DO PIC16F84 41 Os pinos no microcontrolador PIC16F84, têm o seguinte significado: Pino n.º 1, RA2 Segundo pino da porta A. Não tem nenhuma função adicional. Pino n.º 2, RA3 Terceiro pino da porta A. Não tem nenhuma função adicional. Pino n.º 3, RA4 Quarto pino da porta A. O TOCK1 que funciona como entrada do temporizador, também utiliza este pino. Pino n.º 4, MCLR Entrada de reset e entrada da tensão de programação Vpp do microcontrolador . Pino n.º 5, Vss massa da alimentação. Pino n.º 6, RB0, bit 0 da porta B. Tem uma função adicional que é a de entrada de interrupção. Pino n.º 7, RB1 bit 1 da porta B. Não tem nenhuma função adicional. Pino n.º 8, RB2 bit 2 da porta B. Não tem nenhuma função adicional. Pino n.º 9, RB3 bit 3 da porta B. Não tem nenhuma função adicional. Pino n.º10, RB4 bit 4 da porta B. Não tem nenhuma função adicional. Pino n.º 11, RB5 bit 5 da porta B. Não tem nenhuma função adicional. Pino n.º 12, RB6 bit 6 da porta B. No modo de programa é a linha de clock Pino n.º 13, RB7 bit 7 da porta B. Linha de dados no modo de programa Pino n.º 14, Vdd Pólo positivo da tensão de alimentação. Pino n.º 15, OSC2 para ser ligado a um oscilador. Pino n.º 16, OSC1 para ser ligado a um oscilador. Pino n.º 17, RA0 bit 0 da porta A. Sem função adicional. Pino n.º 18, RA1 bit 1 do porta A. Sem função adicional. 42 2.5.4.1 INTERFACE COM O PLL MC145170-2 O registrador C do PLL MC145170-2 é um registrador de configuração para ativação de pinos e polaridade do sinal de erro, e pode ser acessado da seguinte forma. FIGURA 32 – ACESSO AO REGISTRO C C7 – Polaridade do sinal em PDout . Quando em nível alto, inverte polaridade; C6 – Escolha da forma de saída do sinal de erro. Quando em nível alto, ativa a saída simples do pino PDout e desativa a saída dupla pelos pinos Re v; C5 – Habilita o detector de travamento de fase; C4 – C2 – Configuram o fator de divisão para REFout (freqüência que irá controlar a operação do microcontrolador); C1 – Ativa a saída fV; C0 – Ativa a saída fR. Os registradores R e N podem ser acessados de forma análoga, ou seja, baixando o nível lógico do pino ENB, pulsando o pino CLK a cada novo bit inserido no pino DIN, e elevando-o quando terminada a transferência. 43 O registrador R é configurado pelo PIC uma única vez (valor decimal fixo em 40), através de uma transferência serial de 3 bytes (sendo que os nove bits mais significantes não são considerados pelo CI). O registrador N é configurado por uma transferência de 2 bytes, e irá determinar a freqüência de operação do transmissor FM. As rotinas de controle do circuito integrado são apresentadas no arquivo de cabeçalho PLL.INC do programa do microcontrolador, que está anexo ao presente trabalho. 2.5.4.2 INTERFACE COM O DISPLAY LCD Para controlar o display, é utilizada uma interface de 4 bits, onde apenas os pinos RS, R/W, E e DB7 a DB4 são utilizados. FIGURA 33 – ESQUEMA DE INTERFACE COM O PIC E PINAGEM DO DISPLAY LCD Devido ao fato de o microcontrolador operar em uma freqüência mais alta que a do display, deve ser criada uma rotina de inicialização com tempos de espera adequados, conforme indicado pelo fabricante. 44 FIGURA 34 – INICIALIZAÇÃO DO DISPLAY LCD Na modo 4 bits, o envio de um byte (8 bits) de instrução ou de dados é feito através de um envio duplo de 4 bits. O arquivo de cabeçalho LCD.INC (incluído nos anexos) contém todas as instruções necessárias para a operação do display, de acordo com as seguintes especificações estabelecidas pelo fabricante: FIGURA 35 – INTERFACE DE COMUNICAÇÃO 4 BITS 45 FIGURA 36 – CONJUNTO DE INSTRUÇÕES PARA OPERAÇÃO DO DISPLAY LCD 2.5.4.3 INTERFACE DE CONTROLE - BOTÕES DE SINTONIA Através de dois botões de sintonia, o usuário poderá escolher a freqüência de operação do transmissor FM. Ao pressionar o botão “CIMA” o registrador N do PLL é incrementado em duas unidades e o valor exibido no display é incrementado em 0.2 MHz. Da mesma forma, ao se pressionar o botão “BAIXO”, o valor do registrador N é reduzido de duas unidades e o valor exibido subtraído de 0.2 MHz. Ao manter pressionado quaisquer dos botões, a freqüência vai sendo alterada automaticamente a cada cerca de 200 ms. Os botões representam para o microcontrolador um nível lógico baixo (0 V) quando ativos, e estão ligados com resistências de pull-up (R21 e R22) a tensão Vcc. A identificação do pressionamento dos botões é feita por um arquivo de 46 cabeçalho (BOTOES.INC) do programa do microcontrolador, para evitar múltiplas detecções quando da ocorrência de um pressionamento simples. O referido arquivo está anexo ao presente trabalho. 2.5.5 O Firmware O firmware (software embarcado no microcontrolador) foi desenvolvido em linguagem Assembler, que é uma linguagem de programação de baixo nível, ou seja próxima do hardware. Isso permite que se faça um programa mais rápido e mais eficiente, em contraponto a um maior tempo de programação. O arquivo MP3FM.ASM (nos anexos), contém o código fonte que representa o fluxograma abaixo. O programa é executado por macros, contidas nos arquivos de cabeçalho correspondentes a cada um dos periféricos comandados pelo microcontrolador (BOTOES.INC, LCD.INC E PLL.INC). 47 FIGURA 37 – FLUXOGRAMA DO FIRMWARE IMPLEMENTADO 48 3 ANÁLISE DOS RESULTADOS 3.1 RESULTADOS ECONÔMICOS Ao final do projeto, chegamos a uma lista final de componentes do produto final com os seus respectivos custos. O produto final poderia ser miniaturizado, através do uso de componentes SMD e ter um tamanho de 35 mm x 25 mm x 12 mm, e ser alimentado através de apenas uma pilha AAA. Apresentamos uma cotação comparativa para a produção do produto com os custos nos EUA, onde a maioria das partes são fabricadas, e no Brasil. PEÇA QUANTIDADE RESISTORES CAPACITORES INDUTORES DIODO VARICAP CRISTAIS TRANSISTORES CI1 BA1404F CI2 PIC16F54 CI3 MC145170-2 PCI (2,5 x 3,5 cm, face dupla) DISPLAY LCD PLUG BOTÕES TOTAL 24 23 4 1 2 2 1 1 1 1 1 1 2 VALOR NOS EUA VALOR NO BRASIL R$ 1,10 R$ 1,59 R$ 0,07 R$ 0,23 R$ 1,66 R$ 2,39 R$ 0,11 R$ 0,32 R$ 3,45 R$ 0,92 R$ 3,34 R$ 1,01 R$ 5,29 R$ 5,12 R$ 1,19 R$ 4,72 R$ 1,43 R$ 7,49 R$ 0,92 R$ 4,35 R$ 0,28 R$ 0,18 R$ 22,72 R$ 1,42 R$ 6,57 R$ 0,47 R$ 0,27 R$ 33,17 Nota-se que o preço de produção no Brasil acaba ficando cerca de 50% mais caro do que nos EUA, devido à cobrança abusiva de impostos de importação pelo governo federal. Abaixo, o gráfico mostra as porcentagens de taxas arrecadadas pelo governo sobre cada item do projeto. 49 O preço do produto no Brasil poderia ser otimizado, utilizando-se componentes aqui fabricados, porém, não interfeririam muito no custo final, visto que são itens de baixo valor agregado (placa, plug, botões, indutores...). O Brasil atualmente não dispõe de uma fábrica sequer de semicondutores, o que nos coloca como dependentes dos países desenvolvidos. Este fato, somado às taxas abusivas, impede o desenvolvimento da tecnologia nacional. 50 4 CONCLUSÕES Na implementação prática de circuitos de rádio-freqüência enfrentamos várias adversidades na qual está sujeita à ação de efeitos indesejáveis, devidos a nãoidealidades de componentes (capacitâncias e indutâncias parasitas, que alteram a freqüência de operação do circuito), comprimentos e proximidade de trilhas (as quais podem induzir campos elétricos umas nas outras), entre outros. Porém, as situações podem ser contornadas, nem que sejam à custa de algum prejuízo. Ou, se mais vantajoso for, serem absorvidas. A teoria nos fornece a base para achar com bom senso a melhor solução para cada caso prático, pois sabemos que a teoria é que sustenta a prática, e não o contrário. A prática nos põe frente a frente com os problemas reais da engenharia, e nos obriga a desenvolver uma sistemática para sua resolução. Na busca de um erro, sempre é mais sensato isolá-lo em partes cada vez menores, até identificá-lo e corrigi-lo. Entretanto, muitas vezes o método “tentativa-e-erro” acaba sendo a melhor solução. A prática da eletrônica, em particular, é uma atividade que desenvolve virtudes como persistência, concentração e capacidade de improviso. Vimos ainda que a atual política brasileira impõe uma trava ao nosso desenvolvimento científico, seja através da cobrança abusiva de impostos ou pela excessiva burocracia (para liberação de materiais para pesquisa em alfândegas, por exemplo). Dessa maneira, o que se vê é uma restrição de oportunidades e uma conseqüente “fuga de cérebros” para o exterior. Finalmente, pudemos observar durante ao longo do desenvolvimento deste trabalho, duas nobres atribuições da engenharia: - buscar sempre fazer melhor, ou mais, e com menos; - fazer uso da ciência para produzir alguma comodidade para o ser humano. 51 5 REFERÊNCIAS GOMES, Alcides Tadeu. Telecomunicações: Transmissão e Recepção. Editora Érica 9ª Edição. São Paulo, 1990. LAMAR, Marcus V. Apostila da disciplina de Princípios da Comunicação – Capítulo 3. Curitiba, 2003. PASTRO, Ademar L. Apostila do curso de Microcontroladores. Curitiba, 2005. Sites da Internet: All Datasheet http://www.alldatasheet.com Eletrospec – Venda de componentes eletrônicos http://www.eletrospec.com Livro on-line sobre microcontroladores. Disponível em: http://www.mikroelektronika.co.yu Microfone: O Site do Radialista. A História do rádio: Disponível em: http://www.microfone.jor.br/historia.htm PLL http://paginas.terra.com.br/lazer/py4zbz/teoria/pll.htm USBID – Cotações de componentes eletrônicos http://www.usbid.com Wikipedia http://www.wikipedia.org 52 ANEXOS ANEXO A – Folha de especificações do CI1: BA1404 53 ANEXO B – Folha de especificações do diodo varicap D1 54 ANEXO C - Folha de especificações do transistor BF199 55 ANEXO D - Folha de especificações do display de LCD 56 ANEXO E – Folha de especificações do CI2: PIC14F84A 57 ANEXO F – Folha de especificações do CI3: MC145170-2 58 APÊNDICES APÊNDICE A – Código fonte do firmware implementado MP3FM.ASM ;*************************************************************************** ; FIRMWARE DO MP3FM ; PIC 16F84A ;*************************************************************************** #INCLUDE "P16F84A.INC" __CONFIG _CP_OFF &_WDT_OFF &_PWRTE_ON &_HS_OSC ;DESLIGA A MENSAGEM DE AVISO Nº 302: ;"Register in operand not in bank 0. ERRORLEVEL CONSTANT CONSTANT CONSTANT CONSTANT CONSTANT CONSTANT CONSTANT Ensure that bank bits are correct" -302 LCDEM8 = b'00110000' LCDHOME = b'00000010' LCDPISCA = b'00001111' LCDON = b'00001100' LCDCLR = b'00000001' LCDLINHA1 = b'10000000' LCDLINHA2 = b'11000000' CBLOCK 0X0C PLLfreqbyte1 PLLfreqbyte2 PLLtemp LCDfreqfrac LCDfreqint LCDfrequnidade LCDrot LCDtemp CONTA8 LCDenviar DELAY X_DELAY FLAGS ENDC #DEFINE LCDPORT PORTB #DEFINE LCDTRIS TRISB #DEFINE LCD_RS PORTB,0 #DEFINE LCD_EN PORTB,3 #DEFINE PLL_ENB PORTA,3 #DEFINE PLL_DIN PORTA,2 #DEFINE PLL_CLK PORTA,4 #DEFINE BOTAOS PORTA,1 #DEFINE BOTAOD PORTA,0 #DEFINE LIM_inf 0 #DEFINE LIM_sup 1 #DEFINE BOT_sob 2 #DEFINE BOT_des 3 ; DECLARAÇÃO DE CONSTANTES ; MODO 8-BITS, 2 LINHAS ; CURSOR NA PRIMEIRA POSIÇÃO ; LIGA E PISCA O CURSOR ; LCD LIGADO, SEM CURSOR ; LIMPA O DISPLAY ; ESCOLHE LINHA 1 ; ESCOLHE LINHA 2 ; DECLARAÇÃO DE VARIÁVEIS ; DECLARAÇÃO DE HARDWARE ORG 00H ;VETOR DE RESET GOTO INICIO #INCLUDE "LCD.INC" ; INCLUI ARQUIVOS DE CABEÇALHO AUXILIARES #INCLUDE "PLL.INC" #INCLUDE "BOTOES.INC" INICIO LCDini LCDcmd LCDCLR LCDcmd LCDON ; MACRO PARA INICIALIZAÇÃO DO DISPLAY 59 LCDddend 0x43 LCDcar '.' LCDddend 0x46 LCDcar 'M' LCDcar 'H' LCDcar 'z' MOVLW d'113' MOVWF PLLfreqbyte1 MOVLW d'3' MOVWF PLLfreqbyte2 MOVLW d'1' MOVWF LCDfreqfrac MOVLW d'88' MOVWF LCDfreqint CLRF FLAGS GOTO ATUALIZA CHECAsob BOTsob TESTA SE O BOTÃO SOBE FOI PRESSIONADO. BTFSS FLAGS,BOT_sob ; SETA UM BIT DE FLAG CASO POSITIVO. GOTO CHECAdes ; NÃO: VAI CHECAR SE O BOTÃO DESCE FOI PRESSIONADO. LIMsup ; SIM: MACRO PARA TESTE DO LIMITE SUPERIOR BTFSS FLAGS,LIM_sup ; SETA UM BIT DE FLAG EM CASO POSITIVO GOTO FREQsob ; NÃO: SOBE A FREQUENCIA GOTO INIseta ;SIM: EXECUTA MACRO PARA CONFIGURAÇÃO DO INÍCIO DA BANDA DE FM FREQsob PLLfreqsob ; MACRO PARA SUBIR O VALOR DO DIVISOR N EM DUAS UNIDADES LCDfreqsob ; MACRO PARA SUBIR 0.2 MHz NO DISPLAY LCD GOTO ATUALIZA CHECAdes BOTdes BTFSS FLAGS,BOT_des GOTO CHECAsob LIMinf ; MACRO PARA TESTE DO LIMITE INFERIOR BTFSS FLAGS,LIM_inf ; VERIFICA SE LIMITE FOI ATINGIDO. GOTO FREQdes ; NÃO: DESCE A FREQUENCIA GOTO FIMseta ; SIM: EXECUTA MACRO PARA CONFIGURAÇÃO DO FIM DA BANDA DE FM FREQdes PLLfreqdes ; MACRO PARA DIMINUIR O VALOR DO DIVISOR N DE DUAS UNIDADES LCDfreqdes ; MACRO PARA DESCER 0.2 MHz NO DISPLAY LCD GOTO ATUALIZA INIseta INIset ; SETA VALORES INICIAIS DA BANDA. GOTO ATUALIZA FIMseta FIMset ; SETA VALORES FINAIS DA BANDA. GOTO ATUALIZA ATUALIZA PLLNatu LCDfreqatu ; ENVIA AO MC145170-2 O NOVO VALOR DO DIVISOR N. ; ENVIA AO DISPLAY O NOVO VALOR DA FREQUENCIA DE OPERAÇÃO. CLRF FLAGS GOTO CHECAsob ; LIMPA FLAGS PARA A PRÓXIMA VERIFICAÇÃO. ; VOLTA PARA A CHECAGEM DOS BOTÕES. END BOTOES.INC ;********************************************************************************** ;* MP3FM ;* CONTROLADOR PARA BOTÔES ;********************************************************************************** 60 BOTsob macro CALL BOT__sob endm BOT__sob BTFSC BOTAOS GOTO BOT_sobfim MOVLW d'170' CALL X_DELAY500 BTFSC BOTAOS GOTO BOT_sobfim BSF FLAGS,BOT_sob ; BOTÃO SOBE FOI PRESSIONADO? ; NÃO. TERMINA MACRO ; CONTINUA PRESSIONADO APÓS 50ms? ; NÃO. TERMINA MACRO ; SETA FLAG BOT_sobfim RETURN BOTdes macro CALL BOT__des endm BOT__des BTFSC BOTAOD GOTO BOT_desfim MOVLW d'170' CALL X_DELAY500 BTFSC BOTAOD GOTO BOT_desfim BSF FLAGS,BOT_des ; BOTÃO DESCE FOI PRESSIONADO? ; NÃO. TERMINA MACRO ; CONTINUA PRESSIONADO APÓS 50ms? ; NÃO. TERMINA MACRO ; SETA FLAG BOT_desfim RETURN LCD.INC ;********************************************************************************** ; MP3FM ; CONTROLADOR PARA LCD SEIKO L2432 ;********************************************************************************** LCDcmd macro LCDcomando MOVLW LCDcomando CALL LCDcomd endm ; ENVIA UM COMANDO AO LCD LCD_ini CLRF LCDPORT ; PREPARAR O PORT DO LCD BSF STATUS,RP0 ; SELECIONA BANCO 1 CLRF OPTION_REG ; PULL-UPS ATIVADOS, INTERRUPÇÃO NA BORDA DE DESCIDA DE RB0,TMR0 NO CLK INTERNO, PRESCALER EM TMR0 1:2 CLRF LCDTRIS ; SETA PORT DO LCD COMO SAÍDA BCF STATUS,RP0 ; VOLTA AO BANCO 0 MOVLW d'100' ; DELAY DE 50 ms (DATASHEET PEDE 40 ms) CALL X_DELAY500 CALL LCD_EM8 CALL LCD_EM8 ; TEMPOS DE ESPERA JÁ ESTÃO EMBUTIDOS NA ROTINA LCD_enviar CALL LCD_EM8 MOVLW b'00100000' ; MODO 4-BITS CALL LCD_enviar ; INICIALIZAÇÃO DE ACORDO COM DATASHEET DO HD44780 LCDcmd b'00101000' ; MODO 4-BITS, 2 LINHAS, CARACTER 5X8 LCDcmd b'00001000' ; DESLIGA O DISPLAY (2 INSTRUÇÕES) LCDcmd b'00000001' ; LIMPA O DISPLAY (2 INSTRUÇÕES) LCDcmd b'00000110' ; ENTRY MODE: COM INCREMENTO, SEM DESLOCAMENTO (2 INSTRUÇÕES) LCDcmd LCDHOME ; CURSOR NA 1a. POSIÇÃO LCDcmd LCDON ; DISPLAY LIGADO RETURN 61 LCD_EM8 MOVLW LCDEM8 CALL LCD_enviar RETURN ; INICIAÇÃO NO MODO 8-BITS ; SUB-PROGRAMAS LCDini macro CALL LCD_ini endm LCDcar macro LCDarg MOVLW LCDarg CALL LCDdados endm LCDddend macro enddram MOVLW enddram CALL LCD_ddend endm LCD_ddend ADDLW b'10000000' CALL LCDcomd RETURN LCDcomd CLRF LCDrot CALL LCDe RETURN LCDdados CLRF LCDrot BSF LCDrot,0 CALL LCDe RETURN LCDe MOVWF LCDtemp ANDLW b'11110000' IORWF LCDrot,W CALL LCD_envia SWAPF LCDtemp,W LCD_enviar ; ESCREVE UM CARACTER NO LCD ; SELEÇÃO DO ENDEREÇO DE POSIÇÃO DO CARACTER ; LIMPAR FLAG DE DADOS. LCD_RS = 0 E LCD_RW = 0 ; CHAMA ROTINA PARA ENVIO 4-BIT ; SETA LCD_RS ; SALVA COMANDO OU DADO EM LCDTEMP ; ISOLA 4 BITS MAIS SIGNIFICATIVOS ; IDENTIFICA O BYTE COMO SENDO DADO OU INSTRUÇÃO ; TROCAR OS 4 BITS MAIS SIGNIFICATIVOS COM OS MENOS ANDLW b'11110000' ; ISOLAR OS 4 BITS MENOS SIGNIFICATIVOS IORWF LCDrot,W ; IDENTIFICA O BYTE COMO DADO OU INSTRUÇÃO CALL LCD_enviar RETURN ; HABILITAR ENTRADA DE DADOS/COMANDOS MOVWF LCDenviar ; ARMAZENA BYTE A ENVIAR AO LCD CALL LCDespera ; ESPERA O LCD SAIR DO ESTADO OCUPADO MOVF LCDenviar,W ; RECUPERA BYTE A ENVIAR MOVWF LCDPORT ; ENVIA OS 4 BITS MAIS SIGNIFICATIVOS PARA O PORT DO LCD BSF LCD_EN BCF LCD_EN CLRF LCDPORT RETURN LCDespera INSTRUÇÃO/ ENTRADA DE DADOS MOVLW d'10' CALL X_DELAY500 RETURN ; LIMPA PARA PRÓXIMA OPERAÇÃO ; AGUARDA 5 ms PARA FINALIZAÇÃO DE LCDfreqsob macro CALL LCD_freqsob Endm LCD_freqsob BCF STATUS,Z ; SOBE A FREQUENCIA EXIBIDA NO LCD MOVLW d'9' SUBWF LCDfreqfrac,W ; TESTA SE BYTE DO DECIMO É IGUAL A 9 BTFSS STATUS,Z GOTO LCD_freqsob1 ; NÃO GOTO LCD_freqsob2 ; SIM LCD_freqsob1 62 MOVLW d'2' ; NÃO. SOMA 2 ADDWF LCDfreqfrac,F ; ALTERA APENAS PARTE FRACIONÁRIA RETURN LCD_freqsob2 ; SIM MOVLW d'1' ; DECIMO SOBE PARA 1 MOVWF LCDfreqfrac INCF LCDfreqint,F ; INCREMENTA PARTE INTEIRA DA FREQUENCIA RETURN LCDfreqdes macro CALL LCD_freqdes endm LCD_freqdes BCF STATUS,Z MOVLW d'1' ; TESTA SE BIT DO DÉCIMO É 1. SUBWF LCDfreqfrac,W BTFSS STATUS,Z GOTO LCD_freqdes1 ; NÃO GOTO LCD_freqdes2 ; SIM LCD_freqdes1 MOVLW b'11111110' ; NÃO. SOMA -2 BINÁRIO ADDWF LCDfreqfrac,F ; ALTERA APENAS DÉCIMO RETURN LCD_freqdes2 MOVLW d'9' ; SIM. DIGITO DESCE PARA 9 MOVWF LCDfreqfrac DECF LCDfreqint,F ; DECREMENTA A PARTE INTEIRA DA FREQUENCIA RETURN LCDfreqatu macro ; ATUALIZA O VALOR DA FREQUENCIA NO DISPLAY CALL LCD_freqatu endm LCD_freqatu BCF STATUS,C MOVLW b'10011100' ; -100 BINÁRIO ADDWF LCDfreqint,W MOVWF LCDfrequnidade ; SALVA A UNIDADE PARA POSTERIOR ENVIO BTFSS STATUS,C ; NÚMERO É MAIOR QUE 100? GOTO LCD_freqatu1 ; NÃO. NÚMERO É MENOR QUE 100. LCDddend 0x40 ; SIM. SETA ENDEREÇO INICIAL DE ESCRITA LCDcar '1' ; IMPRIME ALGARISMO DAS CENTENAS LCDcar '0' ; IMPRIME ALGARISMO DAS DEZENAS GOTO LCD_freqatu3 ; VAI PARA ENVIO DE UNIDADE E DÉCIMO LCD_freqatu1 BCF STATUS,C MOVLW b'10100110' ; -90 BINÁRIO ADDWF LCDfreqint,W MOVWF LCDfrequnidade ; SALVA A UNIDADE BTFSS STATUS,C ; NÚMERO É MAIOR QUE 90? GOTO LCD_freqatu2 ; NÃO. ENTÃO SÓ PODE SER 80 E TANTOS. LCDddend 0x40 ; ENDEREÇO INICIAL DE ESCRITA LCDcar ' ' ; ESPAÇO LCDcar '9' ; DEZENA GOTO LCD_freqatu3 LCD_freqatu2 BCF STATUS,C MOVLW b'10110000' ; DIMINUI DE 80 PARA OBTER ALGARISMO DA UNIDADE ADDWF LCDfreqint,W MOVWF LCDfrequnidade LCDddend 0x40 ; ENDEREÇO INICIAL DE ESCRITA LCDcar ' ' ; ESPAÇO LCDcar '8' ; DEZENA LCD_freqatu3 MOVF LCDfrequnidade,W ; UNIDADE ADDLW 0x30 CALL LCDdados LCDcar '.' ; ESPAÇO PARA O PONTO MOVF LCDfreqfrac,W ; PARTE FRACIONARIA ADDLW 0X30 63 CALL LCDdados RETURN DELAY500 MOVLW MOVWF DELAY500_LOOP DECFSZ GOTO DELAY500_END RETURN X_DELAY500 MOVWF X_DELAY500_LOOP CALL DECFSZ GOTO RETURN D'165' DELAY DELAY, F DELAY500_LOOP X_DELAY DELAY500 X_DELAY, F X_DELAY500_LOOP ; DELAY DE 500 us COM CRISTAL 4 MHz ; +1 1 CICLO ; +2 1 CICLO ; PASSO 1 ; PASS O2 1 CICLO 2 CICLOS ; +3 2 CICLOS ; DELAY DE W * 500 us ; +1 1 CICLO ; PASSO 2 ; PASSO 3 ; +2 1 CICLO 2 CICLOS 2 CICLOS PLL.INC ;********************************************************************************* ; MP3FM ; CONTROLADOR PARA PLL MC145170-2 - FAIXA DE FM 88.1 - 108.9 MHz ;********************************************************************************* PLLini macro CALL PLL_ini endm PLL_ini MOVLW b'01100100' ; SETA REGISTRADOR C BCF PLL_ENB ; ENVIA 1 BYTE CALL PLLenv BSF PLL_ENB MOVLW d'0' ; SETA REGISTRADOR N (DIVISOR DA REFERENCIA) BCF PLL_ENB ; ENVIA 2 BYTES CALL PLLenv MOVLW d'40' ; PASSO SERÁ DE REF/40 = 100 KHz CALL PLLenv BSF PLL_ENB RETURN PLLfreqsob macro CALL PLL_freqsob endm PLL_freqsob ; SOBE A FREQUENCIA EM UM PASSO BCF STATUS,C MOVLW d'2' ADDWF PLLfreqbyte1,F; AUMENTA EM 2 O DIVISOR N (= +200 kHz) BTFSC STATUS,C ; AUMENTA O BYTE SUPERIOR DE N, CASO NECESSÁRIO INCF PLLfreqbyte2,F RETURN PLLfreqdes macro CALL PLL_freqde ; DIMINUI A FREQUENCIA EM UM PASSO . endm PLL_freqdes BCF STATUS,C MOVLW b'11111110' ; -2 EM BINÁRIO ADDWF PLLfreqbyte1,F; DIMINUI EM 2 O DIVISOR N (= -200 kHz) BTFSS STATUS,C ; DIMINUI O BYTE SUPERIOR DE N, CASO NECESSÁRIO 64 DECF PLLfreqbyte2,F RETURN PLLNatu macro CALL PLL_Natu endm PLL_Natu MOVLW d'0' ; ENVIA BYTE ZERADO (DON´T CARES) BCF PLL_ENB CALL PLLenv MOVF PLLfreqbyte2,W ; ENVIA BYTE SUPERIOR CALL PLLenv MOVF PLLfreqbyte1,W ; ENVIA BYTE INFERIOR CALL PLLenv BSF PLL_ENB RETURN PLLenv MOVWF PLLtemp MOVLW d'8' MOVWF CONTA8 RLF PLLtemp,W RLF PLLtemp,W ; VARIAVEL AUXILIAR PARA ROTAÇÃO DO BYTE ; CONTADOR DE CLOCKS ANDLW b'00000001' MOVWF PORTA BSF PLL_CLK BCF PLL_CLK DECFSZ CONTA8,F ; ISOLA O BIT EM PORTA,0 PLLenv1 ; DIMINUI UM NO CONTADOR. SE 0, ENCERRA O ENVIO GOTO PLLenv2 RETURN PLLenv2 RLF PLLtemp,W GOTO PLLenv1 ; ROTACIONA O BYTE A ESQUERDA ; VOLTA PARA NOVO ENVIO DE BIT LIMsup macro CALL LIM__sup endm LIM__sup BCF STATUS,Z MOVF PLLfreqbyte1,W SUBLW d'65' SO PODE SER 108.9 BTFSC STATUS,Z BSF FLAGS,LIM_sup RETURN LIMinf macro CALL LIM__inf endm LIM__inf BCF STATUS,Z MOVF PLLfreqbyte1,W SUBLW d'113' 88.1 BTFSC STATUS,Z BSF FLAGS,LIM_inf RETURN FIMset macro CALL FIM_set endm FIM_set MOVLW b'00000100' (-2= 108.9) MOVWF PLLfreqbyte2 MOVLW b'01000001' MOVWF PLLfreqbyte1 ; TESTA SE FREQUENCIA É 108.9 MHz ; SE BYTE INFERIOR É 65, ENTÃO A FREQUENCIA ; TESTA SE FREQUENCIA É 88.1 MHz ; SE BYTE INFERIOR É 113, FREQUENCIA SO PODE SER ; SIM. FREQUENCIA É 88.1 . SETA FLAG. ; VOLTA PARA O FIM DA FAIXA. BYTE SUPERIOR DE 1091 ; BYTE INFERIOR DE 1089 65 MOVLW d'108' MOVWF LCDfreqint ; VOLTA PARA O FIM DA FAIXA TAMBÉM NO DISPLAY (108.9 MHz) MOVLW d'9' MOVWF LCDfreqfrac RETURN INIset macro CALL INI_set endm INI_set MOVLW b'00000011' FAIXA. BYTE SUPERIOR DE 881 MOVWF PLLfreqbyte2 MOVLW b'01110001' MOVWF PLLfreqbyte1 MOVLW d'88' MOVWF LCDfreqint (88.1 MHz) MOVLW d'1' MOVWF LCDfreqfrac RETURN ; SIM. FREQUENCIA É 108.9 . VOLTA PARA INICIO DA ; BYTE INFERIOR DE 881 ; VOLTA PARA O INÍCIO DA FAIXA TAMBÉM NO DISPLAY 66 APÊNDICE B – Layout da placa de circuito impresso do protótipo 67 APÊNDICE C – Esquemática do circuito eletrônico This document was created with Win2PDF available at http://www.win2pdf.com. The unregistered version of Win2PDF is for evaluation or non-commercial use only. This page will not be added after purchasing Win2PDF.