Home

Intercomunicador Digital de Imagem e Som sem Fios

image

Contents

1. 840 840 Socket p os Circuitos Integrados 0 08 0 56 TOTAL 187 58 IV 35 64 Prego cl IVA 22322 Tabela 16 Or amento do receptor Os pre os apresentados dos componentes s o para ser considerados como valores m dios e est o o mais aproximado do valor comercial poss vel contudo uma vez que a maior parte deste material foi adquirido no armaz m do DET n o podemos apresentar o custo real dos componentes O valor total dos 3 m dulos implementados 386 26 trezentos e oitenta e seis euros e vinte seis c ntimos Este valor parece muito elevado comparando com outros produtos de id ntica utiliza o mas temos de considerar que estamos a falar de pre os para um prot tipo Todos os valores foram consultados como se tratasse duma compra unit ria e como sabido o pre o diminui consoante a quantidade do material que se adquire Quer se com isto dizer que estes pre os diminuem significativamente com constru o em s rie do modelo Tamb m se deve ter em considera o que os intercomunicadores que se encontram venda nos supermercados s o sistemas fechados e apenas servem para recep o envio de imagens e som n o havendo possibilidades para upgrades No caso do sistema que se implementou o utilizador tem a potencialidade de funcionar com o intercomunicador numa pequena LAN podendo utilizar o PC como receptor Para al m disso o GameBoy usado na implementa o do receptor mant m as suas propriedades de consola
2. O interface com o GameBoy feito pelo PIC18F458 atrav s do porto D que programado no modo PSP Parallel Slave Port Nesta configura o o GameBoy pode ler e escrever no PIC18F458 em modo ass ncrono e aleat rio comportando se o PIC18F458 como escravo na leitura e na escrita podendo ser visto do lado do GameBoy como um simples acesso a uma posi o de mem ria O udio reposto para o dom nio anal gico atrav s de uma DAC0832 de interface paralelo com 8 bits de resolu o O porto B do PIC18F458 usado como barramento de udio para a DAC Ap s a convers o A D necess rio transformar a sa da da DAC de corrente para tens o e em seguida filtrar o sinal de udio com um filtro passa baixo que rep e a banda original do sinal Para estas tarefas s o necess rios dois OP AMP s um a funcionar como buffer e o outro como filtro passa baixo Foi escolhido o integrado MC602 da Microchip que apresenta no seu interior dois OP AMP s do tipo rail to rail ou seja com uma nica tens o de alimenta o Nesta altura o sinal est preparado para ser amplificado Esta tarefa fica a cargo de um amplificador de udio TBA820 de 1 2W de pot ncia o que satisfat rio j que se pretende excitar com o sinal um altifalante de pequenas dimens es 3 2 1 Microcontrolador PIC18F458 Tal como no emissor o PIC18F458 e o c rebro do receptor A escolha de um microcontrolador igual nos dois n s da comunic
3. Na implementa o do protocolo das comunica es foi essencial definir uma estrutura de dados dedicada manipula o dos dados relativos ao GBD Protocol A estrutura que define o protocolo apresentada em seguida e visa o agrupamento dos dados relativos a uma frame do protocolo na mesma estrutura typedef struct Campo unsigned char sync 1 Al Byte de sincronismo 1 unsigned char sync 2 A2 Byte de sincronismo 2 unsigned char cam B Identificador de camera 4bits unsigned char gb C Identificador de GB 4bits unsigned char type D Tipode frame 4bits unsigned char vers l E Vers o do GBDTP 4bits unsigned int audio I F Comprimento do campo de dados do audio unsigned int image 1 G Comprimento do campo de dados do video unsigned char free H Byte livre unsigned char cheksum I Byte de Checksum controlo de erros GBDTP Para melhor entender esta estrutura de dados aconselh vel consultar o ponto 4 2 deste documento Neste ponto est especificada a defini o do GBDT Protocol com detalhe facilitando assim o entendimento desta estrutura de dados 5 2 udio Interrupt O som adquirido no emissor a uma frequ ncia de amostragem de 8KHz sendo depois reposto mesma frequ ncia no receptor Em ambos programa se o TIMERO para gerar uma Rotina de Servi o Interrup o a essa frequ ncia A RSI que processa uma amostra de udio gerada pela interrup o do overflow do T
4. DATASHEETS BA820 1 2W AUDIO AMPLIFIER ADC0820 8 Bit High Speed uP Compatible A D Converter Mitsubishi Integrated Circuit M64282FP Image Sensor Artificial Retina LSI DAC0830 DAC0832 8 Bit uP Compatible Double Buffered D to A Converters 4HC HCT373 Octal D type transparent latch with 3 state MAX232 DUAL EIA 232 DRIVERS RECEIVERS 4HC HCT10 Triple 3 input NAND gate MCP601 2 3 4 2 7V to 5 5V Single Supply CMOS Op Amps PIC18FXX8 28 40 Pin High Performance Enhanced FLASH Microcontrollers MC7800 Series VOLTAGE REGULATOR TL431 ADJUSTABLE PRECISION SHUNT REGULATORS Am29F040B 4 Megabit 512 K x 8 Bit CMOS Flash Memory HY6264A Series 8Kx8bit CMOS SRAM Radiometrix BiM2 433 160 transceiver 67 10 Sites relevantes e Sites de componentes de electr nica http forum microchip com http www microchip com http www devrs com pic http www analog com http detua doc det ua pt http www microchip com http www national com http www ti com http www amd com us en http www leiritronica com http www cec coimbra pt http www semiconductors philips com http www mikroelektronika co yu e Sites relacionados com as comunica es http www radiometrix eu com html products bim2 6 html http www lextronic fr Hybrides Radiometrix bim2 htm http www hoeft wessel com en products HW86910 htm http www dectweb com http www aurelwireless com http www mipot com http
5. brilhante e funciona com um espelho Figura 51 Interface com o utilizador do GameBoy o4 p Como a ideia do projecto criar uma pequena LAN dom stica considerou se uma mais valia desenvolver uma aplica o em Visual Basic para a recep o da imagem num ou em v rios PC s Esta aplica o visa uma utiliza o bastante simples por parte do utilizador O PC nesta fase assume apenas o papel dum receptor passivo isto apenas recebe os pacotes enviados da c mara n o podendo enviar qualquer comando de configura o para alterar os par metros de dos registos do emissor 5 6 Software do Interface para o PC Em seguida apresentado o diagrama de fluxo do software da aplica o que serve de interface entre o m dulo do emissor e o PC Figura 52 Diagrama de fluxo da aplica o para o PC No software desenvolvido quando a USART recebe um byte gerada uma interrup o que origina o processamento desse byte No caso de ainda n o se ter recebido nenhum valor v lido na porta s rie o programa fica espera de receber o dos bytes de sincronismo do GBDTP Depois de interpretados com sucesso os bytes de sincronismo o programa passa a actualizar os dados do GBDTP na estrutura interna Se o destino do pacote for o PC em quest o os dados s o ent o colocados no ecr e a imagem come a a surgir Quando a imagem terminar o programa fica espera de receber um novo pacote repetindo se todo o procedi
6. o dos 8 registos do sensor Aqui necess rio enviar em primeiro lugar o endere o do registo 3 bits e em seguida o valor a programar no registo 8 bits Finalmente este valor validado com um sinal de Load 19 M O diagrama seguinte ilustra a programa o de um registo na AR Ad NER DEN TIT T An Au Ao D7 De Ds D4 Da D Di Do ESSs ll LEFTTYYYY E 3 bit address 2 bit data LOAD Figura 10 Programa o de um registo da AR Depois de programar todos os registos tempo de exposi o ganho etc o in cio da captura iniciado com um sinal de Start Logo a seguir ao sinal de Start necess rio esperar que passe o tempo de exposi o que se encontra nos registos dedicados que foram programados previamente Um n mero de ciclos de rel gio correspondentes ao tempo de exposi o fornecido ao sensor pelo PIC Ap s esse tempo o pino Vout come a a debitar valores anal gicos sincronizados com a subida autom tica do sinal de Read O diagrama seguinte representa o in cio de captura de uma frame no sensor Ack START N i 0 IS ef Exposure Time j READ Vout 0 0 01 002 0973 05 12 7 000 191 1 start sensing 1st frame start 1st frame start exposra image data output Fig ura11 Inicio da captura de uma imagem Na tabela 5 est o descritos os pinos o respectivo dom nio do sinal e a indica o de Entrada Sa da dos mesmos
7. EEPROM j256byes 1 1 0 UO PORTS PORTA gt 6 bits PORTB gt 8bits PORTC gt 8bits 33 general I O pins PORTD gt 8bits PORTE 5 3bits INTERRUPS 14 interrup sources TIMERS Serial USART 115200bps Communications SSP com SPI e I2C CAN module Parallel Parallel Slave Port PSP 8 bits wide with external Communications RD WR and CS controls Wide operating voltage range 2 0V to 5 5V Low power consumption 20 uA typical 3V 32 kHz lt 1 pA typical standby current Tabela 3 Caracter sticas principais do PIC18F458 Como foi apresentado na tabela anterior o PIC18F458 apresenta 5 portos o que resulta num total de 33 pinos dispon veis para uso geral de entrada sa da digital Todos os portos podem ainda ser multiplexados com outras func es As fun es que cada porto executa a dado momento s o programadas por software podendo um porto ser reconfigurado no decorrer da execu o do programa para executar outra tarefa Como f cil de perceber o PIC18F458 torna se um microcontrolador de certa forma mutante cuja utiliza o pode ser moldada de acordo com as especifica es desejadas Para desenvolver o hardware do emissor foi necess rio um pormenorizado estudo de todos os perif ricos que se pretendiam implementar j que era 16 necess rio gerir o n mero de pinos dispon veis Na figura seguinte est apresentado o esquema de liga es do PIC18F458 no emissor D VDD p VDD 51
8. Transistor BC5b57C n 1 1 2 0 06 0 12 Regulador de tens o TLA31C 1 DI O75 ADCOB20CNEN 1 24168 168 Diodo 24 Z2 o 2 J 012 d 024 Bot o de Reset o o 1 025 X 025 PIC Microchip 8F458 1 658 X 658 CMOS SRAM 8k 8bit HY6260A l 1 2481 346 CMOS OpAmp MCP602 0 51 0 51 Regulador de Tens o MC7805C 1 030 030 SNZ4HC373N LI 2301 X 0930 Ficha9 pinos p c mara macho 1 A 019 X 049 Ficha 9 pinos p c mara f mea LI 017 047 MAX232 1 1 o 1 16 X 162 Placa de Circuito Impresso 2 A A 840 X X 1680 nje NIe NI sch Ni l sch l sech sech l Caixa Acr lico 13 5x7 3x10cm NEN NEN 10 50 10 50 O T N Socket p os Circuitos Integrados TOTAL 90 94 17 28 108 22 Pre o c IVA Tabela 14 Or amento do emissor Or amento do interface para o PC Designa o Transceiver BiM2 433 160 5V MAX 232 1 62 0 03 0 19 63 TOTAL 46 06 Pre o c IVA Tabela 15 Or amento do interface para o PC Or amento do receptor Designa o Quantidade Pre o Unit rio Pre o Consola Game Boy Spil 413900 13900 Transceiver BiM2 433 160 5V 1 23 36 23 36 Resistencia 1 4 W 12 0 36 Amplificador Audio TBAB2ON 1 042 oa DAcOS32 Lil 16 165 Diodo1NA148 4 012 Gan Placa de Circuito Impresso 1
9. er IC Ze ADDY O 6 1 MCLR S THV PGD RB7 RAD ANO PGCIRES RATAN RBS RADIAN RB4 RA3 AN3 PGMIRB3 RAA TOCKI RB2 RASIAN4 RB REG RDSEANS INTIRBO RE1ANRYIANG REZ CSHIAN7 PSPT RD7 PSP amp RD6 2 OSC1ICLKIN PSPS RDS ALA 10Mh OSC2 CLKOUT PSP4 RD4 ES RCO T1OSO RX RC7 2 J RCATIOSI TXIRCE RC2ICCP1 SDO RC5S Q AX aal RC3 SCK SDURCA C1 c2 RDO PSPO RD3 PSP3 RD1 PSP1 RD2 PSPa 22pF 22pF PIC18F458P D GND _GND Figura 4 Esquema de liga es ao PIC18F458 no emissor DAT A 0 7 Para melhor entender as liga es efectuadas no PIC18F458 elaborou se uma tabela que sintetiza toda a informac o relevante para todos os portos o dom nio do sinal Anal gico Digital a respectiva direc o Entrada Sa da e claro a fun o do respectivo pino para a arquitectura proposta PORTO Pino Nome AD VO Fun o Audio N vel de tens o nas baterias Detec o de portadora Selecciona modo de RX TX do transceiver Chip Select da ADC Fim de convers o da ADC Latch Enable 373 da RAM Externa DUUUIP gt P Barramento da RAM Extrerna RX da USART TX da USART Inicia a Conversao da ADC Inicia a Exposi o da AR Sa da s rie para programar a AR Programa os registos da AR Reset da AR Clock da AR Barramento de dados geral je Select da RAM Externa Write na RAM externa Read da RAM externa Tabela 4 Fun o direc o e dom nio dos pinos do PIC18F458 do emissor D
10. o relativa a cada biblioteca e respectivas fun es BIBLIOTECA FUN O DESCRI O put CBDTP Envia pela USART o cabe alho do GBDTP que se encontra nesse instante na estrutura FRAME do tipo GBDTP GBDTP h Recebe via USART o cabe alho do GBDTP faz sincronismo de get GBDIP i J frame e depois dos dados do cabe alho se encontrarem validados actualiza a estrutura FRAME do tipo GBDTP init comms Inicializa a USART tendo em conta a Baud Rate defenida e o respectivo modo de comunica o putch char Coloca um byte em TXREG da USART para envio char Faz polling em RCREG da USART para recep o de um byte ME Espera x microsegundos delay h ME Espera n milisegundos Tabela 8 Descri o das Bibliotecas globais implementadas 5 4 Software do Emissor O software desenvolvido no emissor foi escrito no modo compat vel ou seja apesar de ter sido orientado para o PIC18F4X8 pode tamb m ser aplicado num PIC16F877 isto porque os n veis de prioridade n o s o utilizados e est o desactivados por software A nica aten o a ter em conta ser na baud rate m xima que no caso do PIC16F877 de 57600bps e no caso do PIC18F4X8 115200bps 46 Como n o existe no receptor mem ria suficiente para fazer buffering de dados o algoritmo implementado usa pacotes independentes para o udio e para uma imagem A principal caracter stica deste algoritmo consiste em enviar os dados que num dado instante de
11. 13 SN ON e HR 14 3 1 1 Microcontrolador PIC18F458 a 15 3 1 2 Bloco de Imagem do Emissor erre 18 3 1 3 Bloco de udio do Emtssor ceeace 23 3 1 4 RAN Externa 8 RDI sagas assa ea doi qaad ada d IPOD Pad SN P da aaa Egas 24 3 1 5 Transceiver no emissor BiIM2 433 100 esee 25 3 1 6 Driver RS232 MAAT 21 9 ale FIle AC O GO SHINS SON sans siso SOS ol i aaa lila 21 Su e E 29 3 2 1 Microcontrolador PIC18F458 eee 30 3 2 2 GameBoy H 33 3 2 3 Bloco udio do receptor ceea eee eee 36 3 2 4 Transceiver no receptor DIM ZA33T1o0 eee 37 4 PFOLOCOIOS das COMUNICA ES EEN 39 4 1 O standard R8232 E 39 4 2 GameBoy Data Transfer Protocol GBDTP eee 40 4 3 Comunica o entre os Iransceiverg eee eee eee 42 M Projecto Ree TT Em ETT 43 9 1 I SIr turds de Re e surto om dad STO ea tii O dd FINIS 44 5 2 udio Interrupt aaa eee tanar 45 5 3 Bibliotecas Implementadas eee eee eee 46 0 4 SONWANE do A En WEE 46 5 4 1 Bibliotecas Locais Implementadas no emissor 48 5 4 2 Interface com o utilizador do Emissor esses 49 D OIN albedo ME e EE 50 5 5 1 Software para o PIC18F458 do receptor 50 0 9 1 1 Bibliotecas Locais Implementadas no receptor 51 5 5 1 2 Dimensionamento do Buffer Circular 52 0 9 2 DOMWale pard GameBoy E
12. GOTO 30 get byte l um byte do PIC incrementa o contador de bytes Nbytes Nbytes lt image length ent o GOTO 30 40 put image coloca a imagem na VRAM START foi pressionado Ent o GOTO 20 inicializa o contador de bytes e GOTO 30 As fun es implementadas para desenvolver o software do GameBoy s o apresentadas na seguinte tabela 53 universidade de aveiro hid EA Fun o Descri o load pal Carrega para a VRAM as paletes de cor usadas os 16 tons de cinza e as paletes para o interface gr fico UA logo Envia para a VRAM o logo da Universidade de Aveiro start fonts Inicializa o sistema de fontes Carrega para a VRAM o menu principal help Carrega para a VRAM o menu de help Inport L um byte do PIC neste caso da zona que se fez a descodifica o de endere os de A000 at BFFF outport data Escreve o byte data no PIC neste caso da zona que se fez a descodifica o de endere os A000 at BFFF put image Coloca a imagem que foi lida do PIC byte a byte na VRAM Tabela 13 Fun es implementadas para o software do GameBoy 5 5 2 1 Interface com o utilizador O interface com o utilizador nesta fase muito simples dados os objectivos propostos As teclas de Start e Select do GameBoy correspondem a in cio da comunica o e menu de ajuda respectivamente Estas imagens foram captadas com recurso ao simulador No gmb j que se tornou imposs vel fotografar o display do GB este
13. N 1 R8 C9 R9 C10 1686Hz No 2 andar necess rio reforcar a filtragem efectuada no primeiro andar para garantir que frequ ncia de 4KHz o sinal j est bastante atenuado O filtro implementado um passa baixo de 2 ordem numa configura o do tipo Sallen and Key cujas especifica es s o demonstradas em seguida O ganho neste andar unit rio j que a malha de realimenta o 1 sendo a frequ ncia de corte dada pelos p los dominantes do circuito representado na figura anterior Assim para R12 R13 39K e C11 1nF C12 2 2nF temos que Fc 1 2 V 1 R13 R12 C12 C11 2751Hz A resposta em frequ ncia aproximada dada no gr fico de bode seguinte IHI dB 7 56dB 28 08dB 8 76 1686 2751 4000 f Hz Figura 17 Resposta em frequ ncia do filtro Como se pode observar na figura 17 o sinal de udio a 4KHz j se encontra cerca de 28dB atenuado o que em termos de energia bastante permitindo a amostragem sem problemas quanto ao fen meno do aliasing 3 1 4 RAM Externa 8 KBytes Para o armazenamento de dados recorreu se a uma SRAM de 8KB 8192 8bits com um tempo de acesso de 7Ons Como o PIC tem um tempo de instruc o de 100ns teoricamente poss vel com esta SRAM garantir dois acessos mem ria externa em duas instruc es seguidas Na pr tica isto n o se verifica j que o PIC n o possui um BUS de endere os Ent o necess rio multiplexar um porto gen rico de 8 bi
14. com o receptor No fundo temos um cabo virtual a ligar o emissor ao receptor atrav s de RS232 Para o armazenamento de dados no emissor foi adicionada uma SRAM de 8192 Bytes e um tempo de acesso de 70Ons cuja refer ncia HY5254A Isto permite o armazenamento de uma imagem na qualidade m xima sem compress o ou de pelo menos duas imagens se for aplicado algum tipo de compress o como por exemplo o c lculo da diferen a de duas imagens consecutivas O acesso SRAM controlado pelo microcontrolador o qual gera os sinais correspondentes para o barramento de endere os e os respectivos sinais de controlo da SRAM O tempo de instru o do PIC18F458 de 100ns logo a SRAM escolhida ter de ter um tempo de acesso menor que o respectivo tempo de instru o Para a aquisi o de udio usa se uma entrada anal gica do PIC programada para o efeito com uma frequ ncia de amostragem de 8kHz e uma resolu o de Obits por amostra especifica es id nticas s da rede fixa RDIS que poder ser diminu da por software a quando da transmiss o O sinal sonoro captado com recurso a um microfone de electreto O amplificador de udio composto por dois andares no primeiro temos o andar de ganho e em seguida o andar de filtragem anti aliasing Os OP AMP s utilizados s o do tipo rail to rail j que o circuito est pensado para ser port til sendo nesse caso alimentado por baterias onde apenas estar dispon vel uma uni
15. complementares sendo assim poss vel utilizar apenas uma linha para seleccionar o modo de funcionamento do transceiver Uma solu o simples ver figura seguinte inverter o sinal de selec o disponibilizado pelo PIC atrav s de um inversor feito com um transistor eliminado assim o uso de uma gate externa Figura 21 Esquema do inversor de RF SEL O sinal de detec o de portadora CD um sinal de status e so est em funcionamento quando o transceiver est a funcionar como receptor Nesta situa o modo RX quando detecta uma portadora CDY vai a zero 26 BiM2 433 160 Figura 22 Esquema de liga es do BiM2 433 160 do emissor A ideia fazer polling em CD e perceber quando estamos a receber dados no canal de transmiss o O transceiver do emissor sempre o slave na transmiss o por isso ir funcionar num modo intermitente ou seja envia uma trama e logo em seguida fica um tempo pr definido escuta no canal fazendo polling a CD isto para verificar se existe a inten o de enviar um pacote de controlo por parte do receptor Este m todo ser descrito com mais pormenores aquando da descri o do funcionamento do protocolo 3 1 6 Driver RS232 MAX232 Para criar uma liga o f sica entre o emissor e um PC para futura reprogramac o do c digo ou por ventura para este funcionar como uma Web cam implementou se um circuito baseado num MAX232 que tem como finalidade funcionar como drive
16. e 4 D converter is included in the sensor External A D converter is required 9 Digital Interface e Analog Interface Others e Multiple data output modes e Complex control circuits Total Cost O Lower 10 25 e Higher 325 Tabela 1 Sensor CMOS Vs CCD O uso de um sensor de imagem CMOS simplifica e vai de encontro ao que se pretende para especificar a aplicac o como se pode observar na tabela de cima as vantagens s o enormes sendo de salientar o baixo consumo de energia e claro o custo do sensor O sensor de imagem CMOS escolhido da Mitsubishi M64282FP sendo a base de todo o funcionamento do emissor a preto e branco apresenta uma resolu o de 128x128 pixeis e uma profundidade de cor de 8 bits ou seja poss vel representar uma palete de 256 gamas de cinza Se tivermos em conta que a imagem colocada num display pequeno devido portabilidade do receptor a resolu o satisfat ria 2 2 Receptor Para implementar o receptor ser necess ria uma plataforma que apresente um LCD a funcionar como display com pelo menos 128x128 pixeis Como o sistema a implementar um sistema digital ser necess rio para alem do LCD hardware dedicado para o controlar Construir um sistema com um LCD e respectivo controlador uma tarefa que consome tempo na sua implementa o Assim optou se por implementar o receptor com recurso a um equipamento j existente e comercializado em qualquer superf cie comercia
17. e que qualquer valor inferior seria aceit vel O pressuposto anterior foi comprovado na pr tica e o sinal de xck acaba por n o apresentar uma frequ ncia exacta de 500kHz mas sim a frequ ncia poss vel mais pr xima que o algoritmo do software e o microcontrolador permitem de notar que se diminuirmos demasiado o valor de xck acabamos por n o ter uma imagem instant nea assim necess rio arranjar um compromisso entre a frame rate pretendida e o xck cedido AR Para amostrar os valores anal gicos da sa da da AR apresentados anteriormente recorremos a uma ADC0820 do tipo Half Flash j que a ADC que o PIC18F458 cont m demasiado lenta A ADCO0820 devido sua rapidez tempo de convers o de 1 5us n o limita o funcionamento da AR ou seja teoricamente poss vel funcionar com 31 imagens por segundo O controlo do emissor fica a cargo de um PIC18F458 da Microchip que ir funcionar a 40MHz Este apresenta portos digitais e anal gicos em n mero suficiente para implementar o emissor para al m das interfaces s rie USART SPI CAN e I2C este ltimo compat vel com o m dulo DECT estudado o 14 M HW86010 A escolha deste microcontrolador foi estrat gica ja que permite v rios tipos de interface para comunica es s rie sendo algumas delas amplamente difundidas A interface s rie escolhida para implementar o sistema foi a USART j que permite comunicar via RS232 atrav s do m dulo de RF
18. estando o valor de Vref directamente relacionado com a amplitude do sinal de sa da Dada esta situa o poss vel controlar o volume do som atrav s do controlo por software do duty cycle da onda quadrada Figura 35 Circuito que gera uma tens o de refer ncia negativa Na sequ ncia do circuito da DAC0832 temos os dois OP AMP s encapsulados num chip o MCP602 rail to rail onde o primeiro funciona como buffer que permite converter a corrente de sa da da DAC numa tens o correspondente e o segundo como um filtro passa baixo As especifica es do filtro s o id nticas as do filtro anti aliasing implementado no emissor j que o sinal ser reposto para o dom nio anal gico tamb m a uma frequ ncia de convers o de 8KHz 36 ou seja pelo teorema da amostragem temos uma largura de banda desde DC at aos 4KHz O filtro passa baixo tem como fun o rep r a banda que o sinal tinha antes de ser amostrado e assim eliminar o ru do de quantifica o colocado pela DAC O filtro passa baixos de 2 ordem com uma configura o do tipo Sallen and Key e tem as seguintes especifica es gt Ganho unit rio gt Frequ ncia de corte dada pelos p los dominantes Com R9 R10 39K e C20 1nF C21 2 2nF temos e Fc 1 21 N 1 R9 R10 C20 C21 2751Hz Ap s a filtragem o sinal de udio est pronto para ser amplificado Para executar esta tarefa foi escolhido o amplificador de udio TBA820 de 1 2W de pot nc
19. s estruturas de dados que controlam a Artificial Retina e frame do GBDTP ou alterar a resolu o utilizada Para aceder ao menu principal basta enviar via RS232 para o emissor o car cter m EB I IZIIIIIEIIEIDIIEDDNIgEIIREDIREDifbhilbifiksffih LCE EE EE EE EE PP rr PPP EE EE EE EE EECH LE Cm 3 3 HEHU E d AR Setup F PEPE EEE DEE E EEE E EE A PAE E AEE E AE E Ee E AAEE EEE E E EEE A EEE E E Fun o Tecla Valor Bas F E Fun o Tecla Lero calibration z im q ES R setup G F ffmet voltage E GBDTP setup gt g D E n i E Resolu o 5 r ari haros ZL d Quit g f in e z F Expos hial E E TTT TTT TT OTTTTT ET OTTEN TTT TTT ZE aA F Exposure EE E BIBEISSBBIBSIBPSBISBSIBIBBIBNSBIDIDZIBIGRIBD EE er z z tte INE P one PPBPIPSSBIBPIBSRBIBBSIBSBSIBSIBISSISBPSISBBIIDIG ep l D D rz e AR E D f zb F i F d Tipo de f i F Vers EDIE f i asda sten e I IRRITAR RI IRIRI I A IRI A A IREA O LENS h Bytes i f FEE EEE EEE ere L Fesolution Setup i f ETC EE TLR ERT RTE PLR ET EI eee Pee Pee a ee Fun o Tecla i F Tecla Li d bits pixel B Le p i f Li 4 bitg pixel A E P 2 bite pizel nl e fIr GE E Li Sair e Resolucao actual H bits D SPSITLILT LILLIE TES EI LET L TET ELT erage rere ress Figura 47 Menus de interface via RS232 do emissor 49 M Para implementar o receptor foi
20. ver figura 7 s o apenas utilizados na pr tica apenas 9 pinos A representa o gr fica apresentada em seguida cont m ambas as numera es Na figura 7 temos a numera o de todos os pinos do sensor estando na figura 8 a numera o dos pinos dispon veis no PCB e que ser o utilizados sendo esta a defini o que ser seguida ao longo deste documento 18 universidade de aveiro hid 30 anos a pro Figura 7 Frente do PCB que contem a AR Figura 8 Verso do PCB que contem a AR A descri o e fun o destes 9 pinos feita em seguida na seguinte tabela Pin Nome DIA WO Fun o 1 Vee T Alimenta o 5V 0 0 0 2 Stat D 1 Iniciodecapturadeimagem _3 Sin D Entrada serie para programarosregistos 4 Load D Valida os par metros de entrada Sin 5 Reset D Resetglobaldosensor 6 Xck D Entrada de rel gio parao MUX 7 Read D O Indica quando o sensor est a ler uma imagem 8 Vout A O Sinalanal gico correspondente imagem 9 Gnd Massa J Tabela 5 Pinos dispon veis da AR f VDD AR 1 AR e AR START AR DR SN pi E A pr R SE AR RESET AR E R SCH AR T wa READ ARE NIT AR D Krieg Figura 9 Esquema de liga es da AR O sinal Sin uma entrada s rie de dados para programa
21. www aurel it e Sites relacionados com a c mara do emissor http www geocities com siliconvalley park 1302 gbcam html http www Ih co nz resources ar techinfo htm http www soundvisioninc com howdcw htm e Sites relacionados com o GameBoy http www devrs com gb http www ziegler desaign de http www bung com hk porducts xchanger htm http n64 icequake net mirror www bung com hk porducts xchanger htm 68 universidade de aveiro 30 anos a projectar futuros 11 Cartaz sk universidade de aveiro O anos a projectar future igeta E 2003 2004 Intercomunicador de Imagem e Som sem Fios Alunos S rgio Ivan Lopes n 18238 Femando Jorge Ventura n 13246 Orientadores Prof Ru Escadas Prof Armando Pinto Projectar o hardware de um intercomunicador de som e imagem sem fios Desenvolver um sistema port til e de baixo custo baseado num Gameboy TM Implementar um protocolo de comunica es para o sistema Criar software de interface grafoo com o utikzador Arquitectura do Sistema Sstema pensado para um ambiente multi utlizador em que cada elemento da rede tem uma identidade pr pria Rede composta por dois ou mais eismentos C maras Displays PC s Comunica es sustentadas por um sistema de comunica o local LAN Local Area Network sem fios Gest o das comunica es atrav s do Protocolo implementado GEOT GameBoy Data Transfer Protocol cc mm mm mm mm mm mm c cm m cm o c c mic
22. COM 2 Sub Rotina de configura o da Baud Rate Private Sub baudrate click Rotina que configura o formato e a velocidade de recep o dos dados recebidos pela porta s rie Na aplica o h a possibilidade de escolher a Baud Rate Esta rotina tem a fun o de actualizar os par metros de recep o para essa nova Baud Rate Sub Rotina de abandono da aplica o Private Sub Form Unload Cancel As Integer Esta rotina tem a fun o de prevenir que a porta s rie n o fique activa no caso dum abandono secund rio da aplica o ou seja cada vez que se fechar a janela da aplica o sem ser atrav s do bot o correspondente bot o QUIT n o se corre o risco de se ficar com a porta s rie activa Sub Rotina de sa da da aplica o Private Sub sair Click Rotina que tem como fun o desactivar a porta s rie e abandonar a aplica o quando o utilizador clica no bot o QUIT 57 T e i universidade de aveiro 5 6 2 Interface com o utilizador Apresentac o e descric o dos v rios campos do layout da interface da M aplicac o com o utilizador Nome da Aplicac o Ecr onde apresentada a imagem recebida Bot o que serve para ligar desligar a recep o dos dados da porta s rie Sp CAMERA IMAGE Serial Port te COM 1 C COM 2 Selec o da Porta S rie Baud Rate Baud Rate escolhida para recep o dos dados 57600 M Kbps
23. D D D D D D D O O O O O O 2 17 E h all J e E a ola universidade de aveiro hid 3 1 2 Bloco de Imagem do Emissor Como foi dito anteriormente optou se por desmantelar uma GameBoy Camera da Nintendo dado o facto de esta j incluir a parte optica ou seja a lente Na figura 5 podemos observar o culo que foi usado no emissor Este culo cont m no seu interior o PCB figura 6 onde est soldado o sensor M64282FP uma lente que colocada sobre o PCB e uma socket onde temos dispon veis os pinos necess rios para o controlo da AR it lu FI DE P exi DES gt weg gt Figura 6 Interior do Oculo M64282FP As caracteristicas principais da AR sao gt Resolugao 128 128 pixeis a preto e branco gt Alimentagao 5 0V single supply gt Consumo baixo tipicamente 15 mW gt Clock Foock 500KHz gt Controlo de ganho e luminosidade gt Sensibilidade luz vis vel e infravermelhos O sensor apresenta no seu interior 8 registos que t m de ser programados previamente Estes registos controlam v rios par metros desde tempos de exposi o ganho extrac o de contrastes invers o de imagem calibra o etc Assim antes de adquirir uma imagem necess rio calibrar o sensor atrav s da programa o dos seus 8 registos Esta tarefa feita atrav s dos pinos dedicados SIN e LOAD que o sensor apresenta Apesar do sensor apresentar 16 pinos
24. G n zS Se _ IRES e aan c e 8 ONS U ONS en LIT y ucc DIA o eT JH o 0 2 ZOGdDW H YLI 2 NI Ol 7 Ely ZLY 83 T o a i 3 1 ADM ONS Soper a e em ni 7 MOO EDM oo Si Gon d z My ep ooifio eue euis op gry tu LS e Em tH 5 Z gan 7 Burseipg nuy oy a ong soprou so o 44oo 44001 E uds O OUA C EH ha LAS 8 O XH ctc Ge GE XI ctc og cweug Je Y VIVO Fr F OW LYU 7 LL gVlvi ce LC FULLY UNO VIVO BE fer VIA Rep CH va My VIVI i 7L UVIWVU 7 Guy ONE or EONS CONO NOU 51 o LNON eT UJ iu E oN Ls ISuv S3 ri IHVIS Hw Oz Hd 7 XH CC ct I La A J zi LL NIS NV WON NV EM co osteerana SoN s 35 39 O SUVOT NV 13534 HV a XI cee vb Lene bol ES Ta E SIS HV OT HV iv TES IS GI KEE s E O HJIIVH s gt HON HV NISE Tas Jo e in JSXY D e ENS JE TOM DO ISVIS Lavis a Cong mm CH e E O PIA CI T E PIRES TT Lay ON Oa PONE UNO di aia a AN O OA LINY c oujeuueuieju ps Oy eiuaiajai ap oesua My Ep 194205 33 npo p T o DEER SNE x 3 Ld f e 73 Lia aua LILLII Cal It IK NH ctc q GE X E a VIVO 2 EE SVIVU a VIVO zz uz FVIVU Gei wWIWL nz BL VIV VIVI FL 7L OULU NOU sr ZI OO muy S3 ri HIT sy duDOL JUDOL V M EL LL Hv H DL ELST av a E f e eg m VU E E X ay MILL LNOLL HO STA DV LUV xd g MEL L1nOcl HUM UO z E UNS a m a TU a q D KS universi 8S c1 zz voaz ce s hypo L T R S AOS amp Wo LP EM LE CEA
25. Op o para receber a imagem em tamanho real de transmiss o Identificador da c mara que est e enviar os dados i Eicommunicator Identificador da do Game Authors Fernando Ventura amp S rgio Lopes Boy a que se destinam Coordinators Prof Rui Escadas amp Prof Armando Pinto os dados enviados MEN Vers o do protocolo GBDTP Bot o para sair da aplica o Identifica o dos autores que est a ser utilizado na da aplica o e comunica o Orientadores do projecto Figura 53 Aplica o para o PC Na interface da aplica o de recep o de dados do emissor pelo PC com o utilizador tem se uma janela como a que apresentada na figura anterior onde se pode encontrar o cabe alho GB COMMUNICATOR for PC version 1 nome da aplica o Nesta interface com o utilizador encontra se um campo onde se pode escolher a porta s rie qual est ligado o receptor As portas podem ser ou a COM 1 ou a COM 2 Pode tamb m escolher se qual a Baud Rate a que se pretende receber os dados ela pode ser de 9600 19200 38400 57600 ou 115200 Kbps tem de ter se em aten o que esta aplica o funciona apenas em modo passivo ou seja n o comunica com o emissor por isso a Baud Rate escolhida tem de ser igual do emissor Outra das possibilidades a da escolha da recep o da imagem em tamanho real isto receber a imagem tal como ela enviada pela c mara tamanho 128 pixeis x 128 pixeis para tal basta seleccionar
26. PIC norecepntor 50 Figura 49 Dimensionamento do Buffer Circular eee 52 Figura 50 Diagrama de fluxo do software do GB no receptor 53 Figura 51 Interface com o utilizador do GameBoy Figura 52 Diagrama de fluxo da aplica o para o PC OD Fig ra 53 Aplica o Dara O T E 58 Lista de Tabelas Tabela 1 Sensor CMOS Vs CCD eee eee ne 10 Tabela 2 Especifica es T cnicas do GameBoy 11 Tabela 3 Caracter sticas principais do PIC18F458 16 Tabela 4 Fun o direc o e dom nio dos pinos do PIC18F458 do emissor 17 Tabela 92 ue ege VOIS da E EE 19 Tabela 6 Fun o direc o e dom nio dos pinos do PIC18F458 do receptor 31 Tabela 7 Tabela dos registos internos da Artificial Retina 44 Tabela 8 Descri o das Bibliotecas globais implementadas 46 Tabela 9 Descri o das Bibliotecas locais do emissor 49 Tabela 10 Tabela de prioridades das tarefas no emissor 51 Tabela 11 Descri o das Bibliotecas locais do receptor PIC implementadas51 Tabela 12 Per odo de Interrup o da USART rsrs 52 Tabela 13 Fun es implementadas para o software do GameBoy H 54 Tabela 14 Or amento do emissor nnne 63 Tabela 15 Or amento do interface para o PC rrenan 64 Tabela
27. a op o Image without zoom Por defeito a aplica o mostra ao utilizador uma imagem ampliada quatro vezes Em seguida podem encontrar se tr s campos um que identifica a c mara que est a enviar os dados CAM ID outro para que consola a c mara est a enviar GB ID e um terceiro que identifica qual a vers o do protocolo que a c mara est a utilizar Estes campos s o interessantes uma vez que o intercomunicador implementado tem a potencialidade de funcionar com v rias c maras e v rios receptores Game Boys e assim fica a saber se quem s o os intervenientes da comunica o que se est a efectuar 58 pd A aplica o tem o bot o QUIT que serve para o utilizador sair da aplica o e o bot o POWER ON POWER OFF que serve para o utilizador come ar terminar a recep o dos dados do emissor Se no bot o se ler POWER ONT significa que a aplica o n o est a receber dados e que passa a receb los no caso de se clicar em cima dele caso contr rio ou seja no caso em que se l POWER OFF significa que se est o a receber dados do emissor No caso de se querer deixar de receber dados basta clicar em cima do bot o e volta a aparecer POWER ON Como campo principal da aplica o tem se a moldura onde se recebem as imagens enviadas pelo emissor Finalmente no canto inferior esquerdo temos a identifica o dos autores da aplica o projecto bem como o nome dos orientadores do
28. a um dos principais objectivos deste projecto construir um intercomunicador de baixo custo 65 pd Tendo em conta que o projecto desenvolvido uma disciplina anual faz sentido relacionar os resultados obtidos com os objectivos iniciais propostos No geral pode afirmar se que todos os objectivos foram alcan ados com relativo sucesso Passa se a descriminar com brevidade os mais importantes 8 Conclus es e Recomenda es gt O principal objectivo do intercomunicador era criar um setup do tipo emissor receptor ideia essa que foi alargada acabando por se desenvolver um sistema que permite v rias comunica es ponto a ponto e comunica es ponto multi ponto gt Construiu se o prot tipo do Emissor do intercomunicador Este cumpre as especifica es inicialmente propostas com algum ru do sistem tico na aquisi o da imagem Este ru do dever ter origem na ADC utilizada O protocolo GBDTP aplicado no emissor para a comunica o com os n s do sistema PC e receptor A taxa de transmiss o m xima em RF conseguida sem introdu o de erros foi de 57600bps j que para taxas superiores existe perda de sincronismo em algumas frames corrompendo assim os dados gt Construiu se o hardware para um interface com o PC O emissor comunica via RF com o PC sem problemas na resolu o m xima 8bits pixel e com uma taxa de transmiss o de 5 600bps Foi desenvolvida uma aplica o para o PC que interpreta o pr
29. c cc c c cic ccm mm Prot tipo Todos os elementos do sistema s o controlados pelo microcontrolador PICTBF458 da Microchip O emissor foi projectado com recurso a um sensor digital de imagem CMOS o M64282FP da Mitsubishi O receptor desenvolado faz o interface com o Gameboy M As COMUNICA ES ficam a cargo de um m dulo de RF digital da RADIOMETRIX CAM ID 1 CAM ID 2 hall duplex com uma taxa de d bito m xima de 160kbps TA A Si Foi desenvolvido um interface para o PC com aplica o gr fica Especifica es t cnicas Imagem Cor Proto e Branco Fasciu o to A bis poul Ornenado 128x128 pees Frame Rote 2 a 5 frames segundo Audio Mane Resolu o Abesyamosra Amostagem oo Ph Comunica es Tx Transmiss o de 57600 m 115200bp5 i i 200m am extanores reps M pie i er RPE INEL Sa Ede i i Resultados e conclus es O emissor cumpre os objectivos com exist ncia de algum ru do sistem tico na aquisi o da imagem comunica o com o PC foi conseguida com sucesso com a resclu o masons 8 bits pixel a uma taxa de 57600 hits por segundo O GBDTP melhorou significatvamente a comunica o com garantias de sincronismo confidenciakdade e fiablidade O receptor cumpre as objectivos apresentados para o udio e para uma imagem com profundidade de cor de 2 bits por pixel Para resolu es mais baixas Profundidade de Cor um pr processamento com um fitro d
30. cima Vista de baixo T e e p P C Lu a o 2 oO o o a O A o E O O a o C MAX2321 L2 EO LE LE CO D EE EB NE Pa LI 14148 len ao RADIOMETRIX BiM2 433 150 Componentes 09900000 EE PIC18F448P 79 PCB do interface para o PC Vista de baixo X1 DOC DEI GG Q6 oem C Componentes BiM2 433 160 RADIOMETRIX 80
31. conta a largura de banda dispon vel na transmiss o de dados Assim para a aplica o em quest o ver fig 9 o sinal quantizado em 16 n veis ou seja 16 cores ficando assim com os respectivos 4 bits por pixel A figura 13 representa quatro instantes de amostragem seguidos em que o sensor l uma sequ ncia de pixeis invulgar ou seja Preto Branco Preto Branco Este caso na realidade tem uma probabilidade muito baixa de acontecer durante a captura de uma imagem por isso esta sequ ncia usada para o sincronismo de in cio de imagem Mais frente ser descrito com mais pormenor aquando da descri o do protocolo das comunica es Pixel Pinel Pinel Pinel preto branco preto branco CIK 500 KHz Figura 13 Din mica do sinal anal gico de sa da da AR Para amostrar o sinal anterior recorreu se a uma ADC externa A escolhida foi a ADC0820 do tipo half flash com uma resolu o de 8 bits e um tempo de convers o de 1 5us A ADCO820 feita para interfaces directos com microcontroladores j que apresenta um pino de Chip Select o que elimina logo partida o uso de um buffer no caso de um interface com o barramento de dados 21 Neste caso ser o necess rios os seguintes sinais digitais de controlo da ADC gt CS ADOC CSV que selecciona a ADC gt START ADC RD que inicia a convers o gt DONE INT sinaliza o fim de convers o mi DATA 0 7 Figura 14 Esquema de liga es da ADC0820 RD
32. dos conhecimentos adquiridos e desenvolvidos ao longo dos ltimos anos As reas tem ticas de abrang ncia deste projecto Electr nica digital e anal gica Arquitectura de Computadores Interfaces e Perif ricos Sistemas de Comunica es Processamento digital de Sinal s o alguns exemplos da transversalidade dos conhecimentos aplicados VP EX FP PY 2 Arquitectura do Intercomunicador O intercomunicador foi pensado para um ambiente multi utilizador em que cada elemento da rede tem uma identidade pr pria A LAN que sustenta as comunica es composta por dois ou mais elementos podendo cada um deles ser observado como um n do sistema Esta configurac o permite estabelecer uma liga o ponto a ponto entre duas entidades da rede e assim a troca de pacotes de dados Numa configurac o simples o intercomunicador um sistema que permite criar a comunica o entre uma c mara e um equipamento de display A liga o entre ambos bi direccional o que resulta num sistema interactivo em rela o ao utilizador Dado este facto poss vel que o utilizador atrav s do receptor possa controlar os par metros da emiss o dos dados Os par metros podem ser muito variados desde par metros de controlo do sensor de imagem at ao controlo da posi o f sica do emissor com recurso por exemplo a motores servos que controlam a posi o da c mara Nesta aplica o como se trata de um intercomunicador
33. inalter vel 1111 0000 1111 0000 que significa uma sequ ncia de pixeis preto branco preto branco identificador da C mara permite utilizar no futuro uma rede com um m ximo de 16 c maras identificador do GameBoy Y permite utilizar no futuro uma rede com um m ximo de 16 receptores identificador do tipo de trama permite decidir qual o tipo de dados da trama 0000 trama de dados de imagem 0001 trama de dados de som 0010 trama de dados de imagem som 0011 trama de controlo ieee 12 comandos nao usados vers o do GBDTP indica qual a vers o do protocolo que est a ser usada indica o comprimento do campo de dados relativos ao som em bytes Tem 16 bits para permitir enviar um segundo de som ou seja 2 8192bytes indica o comprimento do campo de dados relativos imagem em bytes Tem 16 bits para permitir transmitir uma imagem com a m xima resolu o byte livre para futuras aplica es byte de Check Sum o somat rio de todos os bytes que comp e o cabe alho do GBDTP Permite detectar se existem dados corrompidos no cabe alho campo de dados em primeiro lugar v m os dados relativos ao som e em seguida os dados relativos imagem cada uma das componentes tem um m ximo de 8192 Bytes 41 p Na realidade devido ao facto de se estarem a utilizar m dulos de RF do tipo half duplex necess ria alguma organiza o nas comunica es do sistema Cada m dulo de RF numa d
34. jitter m ximo de Bus que corresponde no pior caso a um tempo de 3584 5us 17 9ms como este valor menor que o tempo que o buffer demora a encher para uma Baud Rate igual a 115200bps 22 3ms pode garantir se que o tamanho do buffer suficiente para garantir que o GB leia uma imagem sem problemas A figura seguinte representa a solu o encontrada ISR RCIE ISR PSPIE pnt pnt2 zz Buffer Cirular R523260115200kbps 256 bytes Figura 49 Dimensionamento do Buffer Circular 5 5 2 Software para o GameBoy O software desenvolvido para o GameBoy foi escrito em C e compilado com o GBDK GameBoy Development Kit para DOS Como este compilador relativamente rudimentar optou se por escrever o c digo e respectivas fun es no mesmo ficheiro O algoritmo implementado no GameBoy est direccionado para a aplica o sendo privilegiada a rela o com o utilizador atrav s de menus A aquisi o de uma imagem por parte do GB est sinalizada no diagrama de fluxo pelo picotado a vermelho 52 START Figura 50 Diagrama de fluxo do software do GB no receptor Para descrever o funcionamento do algoritmo do software implementado no GB aplicou se mais uma vez a nota o usada anteriormente para gerar o seguinte pseudo c digo 10 init arranque com o logo da UA 20 main menu menu principal no caso do utilizador pressionar em START GOTO 30 no caso do utilizador pressionar em SELECT
35. mode Esta ADC pode funcionar em dois modos distintos o RD Mode e o WR RD Mode tendo sido configurada para esta aplica o no RD Mode Neste modo com o pino MODE massa a ADC0820 funciona no modo de READ A convers o iniciada quando o pino RD sinal START ADOY vai a zero Nesta configura o uma convers o completada mantendo o pino RD a zero at que os dados apare am na sa da Quando os dados est o dispon veis uma interrup o gerada atrav s do pino INT sinal DONE de modo a sinalizar o microcontrolador que os dados est o validos e prontos para serem lidos RD Mode Pin 7 is Low e_n Figura 15 Diagrama de funcionamento da ADC0820 RD Mode A solu o encontrada passa pelo m todo acima descrito Como necess rio ler a um ritmo constante que representa a resolu o m xima de cada imagem o nosso sinal de START_ADC um sinal sincronizado pelo microcontrolador ficando em seguida o PIC a fazer pooling no sinal INT DONE at que haja dados v lidos Na figura 15 est representado o diagrama temporal da ADC0820 neste modo de opera o onde se pode observar que uma amostra est convertida quando est o passados 800ns desde o inicio da convers o 22 ps O som adquirido com recurso a um microfone de electreto Considerando o esquema da figura 16 tem se que no 1 andar o sinal amplificado sendo o 2 andar usado para o filtro anti aliasing No andar de amplifica o tem se
36. necess rio desenvolver um algoritmo de interface entre o PIC e o GB A principal dificuldade residiu no facto de que ambos os processadores s o aut nomos e independentes No arranque do sistema cada um come a a executar as suas tarefas de um modo completamente ass ncrono A solu o foi a implementa o de um sistema concorrente em que diferentes tarefas s o lan adas por interrup o 5 5 Software do Receptor 5 5 1 Software para o PIC18F458 do receptor O software desenvolvido para o PIC do receptor foi tamb m escrito no modo compat vel O algoritmo implementado baseado num sistema concorrente cujas tarefas s o lan adas por interrup o num sistema de prioridades fixas Esta solu o imposta pelo tipo de comunica o utilizado entre o emissor receptor As comunica es estabelecidas atrav s da USART s o ass ncronas o que coloca problemas quanto recep o dos dados devido sua imprevisibilidade O diagrama de fluxo seguinte ilustra o algoritmo implementado no controlo do emissor Rx Interrupt PSP Intermupt vaza Gutter Hinter upt get GBDTP put GBDTP Rz mode PSPIE OFF N THROIE 0FF TIMERO Interrupt Figura 48 Diagrama de fluxo do software do PIC no receptor 50 p i As tarefas concorrentes podem ser ordenadas quanto sua prioridade da seguinte maneira Prioridade RSI Fun o Chega de dados da USART Leitura de dados
37. no ap ndice B no final deste documento A solu o encontrada para o hardware de interface entre o PIC18F458 e o GameBoy teve origem no estudo e an lise cuidadosa da organiza o do mapa de mem ria do GB Interrupt Enable Register Internal RAM Empty but unusable for vo Vo ports Empty but unusable for vo Sprite Attrib Memory OAM Echo of 8kB Internal RAM Ap Internal RAM Banks 0 E op switchable RAM bank 8kB Video RAM 16kB switchable ROM bank 4000 Be 32kB Cartrigbe 16kB ROM bank ap Figura 30 Mapa de mem ria do GameBoy Color A figura anterior representa o espa o de endere amento dispon vel no GameBoy Color onde se destaca uma zona de extrema import ncia na soluc o encontrada A zona assinalada a vermelho corresponde a um espaco dispon vel para colocac o de uma poss vel RAM externa Normalmente num cartucho de um jogo esta zona utilizada para enderecar uma RAM externa que associada a uma pilha funciona como uma memoria de massa ou seja destinada a guardar dados vital cios como por exemplo o High Score de um jogo Neste caso este espa o n o utilizado sendo poss vel fazer nesta zona I O mapeado em memoria Para isso necess rio recorrer a l gica adicional que far a descodifica o do respectivo endere o Depois de efectuar alguns testes de I O no GameBoy foi observado um fen meno de grande import ncia que inviabilizava a solu
38. o proposta anteriormente Este fen meno que pode ser observado no diagrama da figura seguinte consiste no facto de que o GB para m ltiplas leituras seguidas num endere o o sinal respectivo de RD fica eternamente a LOW O problema que esta situa o implica grave j que o PIC18F458 no modo de PSP necessita de uma transi o de High to Low para gerar uma interrup o que sinaliza a inten o por parte do GB de leitura de dados A solu o para este problema consistiu em fazer um OR l gico do respectivo sinal de RD com o sinal de CLK disponibilizado pelo GB Assim gerou se um novo sinal PSP RD que agora for ado pelo sinal de CLK a subir ao estado de HIGH e assim permitir gerar a interrupc o necess ria aquando da descida de HIGH LOW para a sinaliza o do PIC 34 Figura 31 Diagrama de WR e RD do GameBoy Na figura seguinte est representada a l gica necess ria para obter os sinais de PSP CS e PSP RD respectivamente O sinal de PSP CSV gerado atrav s de descodifica o de endere os e mapeado na zona de mem ria reservada pelo GB para uma RAM externa como foi dito anteriormente estando esta zona compreendida entre os endere os A000 e BFFF A15 A14 A13 A12 A11 A10 1 1 1 0 0 0 BFFF gt A000 gt PSP CSI RE PSP RD CLK Figura 32 L gica para gerar os sinais PSP CSY e PSP RD Na pr tica foi usado um chip que cont m tr s NAND s o 74HC10 para descodificar os endere os
39. projecto 59 universidade de aveiro hid 30 anos a projectar futuros Neste ponto pretende se apresentar o prot tipo implementado com o intuito de descrever as suas funcionalidades e relatar o respectivo modo de funcionamento Pode se considerar a seguinte descric o como um pequeno manual do utilizador dos v rios elementos constru dos 6 Prot tipo 6 1 Emissor Microfone Bot o de RESET Comutador de comunica o RS232 RF Liga o RS232 Comutador de ON OFF Ficha de alimenta o 9V 60 6 2 Receptor Cartucho de desenvovimento universidade de aveiro Bot o de RESET 61 universidade de aveiro pid 30 anos a projectar futuros 6 3 Interface para o PC omutador de ON OFF Liga o RS232 d 62 M Um projecto tem na fase de desenvolvimento custos acrescidos isto porque nessa fase s o normalmente tentadas v rias solu es Este or amento tem como principal objectivo listar o material usado e controlar os custos de implementa o do prot tipo Optou se por dividir os custos pelos tr s elementos implementados o emissor o interface para o PC e o receptor dando origem aos tr s or amentos apresentados a seguir 6 4 Or amento do prot tipo Or amento do emissor Designa o C mara CCD M64282FP Transceiver BiM2 433 160 5V LI 2336 23 36 Comutador ON OFF o 2 e 092 L t LED LI J 2 009 0 09 Cristal de 10Mhz o LI 3 23A 050 X 050
40. sem fios a dist ncia entre dois elementos prende se apenas com o alcance dos componentes que est o encarregues por manterem a comunica o Contudo fica se com a liberdade de dentro do raio do alcance dos componentes transportarmos tanto o emissor como o receptor para onde pretendermos O diagrama apresentado na figura seguinte representa de uma forma simplificada a arquitectura do sistema que se pretende implementar GBDTProtocol V4 0 LAN CAM ID 2 GB ID 1 Figura 1 Arquitectura do Sistema EE Uma Web Cam actualmente constitu da internamente por um sensor de imagem que pode ser do tipo CCD ou CMOS No primeiro caso necess rio um interface anal gico complicado e um circuito de controlo mais complexo Os sensores de imagem CMOS pelo contr rio s o pensados para interfaces digitais A tabela seguinte ilustra as diferen as mais acentuadas entre ambos os tipos de sensores gt CMOS Image Sensor CCD Charge Coupled Device e Larger dynamic range 60 100dB Large dynamic range 60 dB 2 1 Emissor Image Quality e Lower S N gt 50 dB e Larger S N 760 dB e Single supply voltage 3 3 or 5 04 e Multiple supply voltage Consumption z ppiy vonage q i E B vorag Power TS i T Tm E STEE E TT O Lower consumption power 100 mW Larger consumption power z 100 mw wc VCL is able i SS vice is requirec System e Low cost MCU is able to handle 9 ASSP device is required Requirements Mn
41. tempo que s o considerados mais relevantes Para isso partiu se do princ pio que na aus ncia de som n o faz sentido estar a enviar dados relativos ao udio o que evita uma sobrecarga da rede Nesta circunst ncia a frame rate m xima e constante Quando a energia relativa a uma janela de som superior a um dado limiar ent o s o enviados pacotes de som enquanto a energia estiver acima do limiar Quando a energia da janela desce abaixo do limiar enviada uma imagem Este algoritmo tem uma vantagem j que se adapta em termos probabil sticos a um sinal de voz Um sinal de voz caracterizado por paragens entre as palavras Se tivermos em conta que o tempo entre duas palavras uma eternidade quando comparado com o tempo de instru o do PIC podemos inferir que teoricamente poss vel ler uma imagem e envia la nos tempos de pausa do som O diagrama de fluxo seguinte ilustra o algoritmo implementado no controlo do emissor TIMERO Interrupt put GBDTP put mage put GBDTP wet SBDTF mp umm Ooo oa mmm mm Im mg mm mm Wm Wm Wm mmm mm mm Im mmm mmm SED ee mm mmm Wm Im mmm mm mm nar Ip Im mm mm mo m mm mm mm Im m mm mm Ae mm mm E A mp EMO mm c EA Ae Im mm mm Figura 46 Diagrama de fluxo do software do emissor 47 pi Para descrever o funcionamento do algoritmo do software do emissor a que o diagrama de fluxo diz respeito usou se uma nota o na optica do pr
42. um OP AMP do MCP602 a funcionar no modo n o inversor cuja tens o de refer ncia dada por Vref Neste caso importante trabalhar com uma Vref aproximadamente igual a 2 3V j que estes OP AMP s n o possuem uma sa da din mica de O a 5V mas sim entre O e 4 6V 3 1 3 Bloco de udio do Emissor Figura 16 Esquema de liga es do amplificador e filtro de udio O ganho DC Gain R8 R7 para R8 100K e R7 1 2K temos que DC Gain 100 1 2 83 33 Neste caso para um sinal de 50mv na entrada do 1 andar tem se na sa da desse mesmo andar 4 2V o que satisfat rio j que a tens o m xima de sa da do microfone de electreto testada ronda os 50mV A entrada anal gica do PIC utilizada ANO sendo programada para uma frequ ncia de amostragem de 8KHz Na passagem do dom nio anal gico para o digital necess rio ter em considera o a frequ ncia de amostragem que se pretende utilizar para que antes de amostrar o sinal se eliminem as componentes de frequ ncia que provocam o fen meno do aliasing Neste caso pretende se uma frequ ncia de amostragem de 8KHz ou seja pelo teorema da amostragem temos uma largura de banda desde DC at aos 4KHz Na filtragem do sinal temos um filtro passa banda no primeiro andar cujas frequ ncias de corte Fc e Fcy s o calculadas a seguir Assim para R6 33K R7 1 2K C7 10nF e C9 1nF temos que 23 pd Fen 4 2 V 4 R6 C7 8 76Hz Fc4u7 1 2717
43. 0070 6E67CD7E00E12318FIDICIFIEID9E9FF ng f E cd ROMO 0080 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF c sc c ROMO 0090 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF c c e ROMO O0A0 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF c ROMO 00B0 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF c c ROMO OOCO FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF ROMO 00D0 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF wu nb EE ER op ROHO GOEO FFFFFFFFFFFFFFFFFFFFFFFFFFFFFEEF edu ve EK EIER ROMO ODFO FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF cc RAMl DFD3 E600 ROMO 0100 OO0C35001CEED6666CCODOO00B03730083 P ff s V RAM1 DFD1 A900 Y Running ROM 01 DI 1 1 RAMl1 DFDHNCOCI RAMl1 DFDD 0015 RAMl DFDB E604 RAMl DFD9 C813 RAMl DFD7 5415 RAMl DFD5 E615 Figura 42 No GMB simulador do GameBoy para o Windows Em seguida foi desenvolvido o software relativo aos microcontroladores tendo por base o compilador PICC 18 da HIGH TECH amp SOFTWARE que pode ser utilizado com um editor e simulador de software de ambiente gr fico o Hl TIDE Este simulador permite compilar o c digo escrito e corr lo passo a passo o que facilita o debugging e permite ao programador atrav s da simulac o entender e perceber como se comporta o hardware 3 HI TECH C demo18 Jog File Edit Project Build views Debug Help SBB BEE urusa O e aaa Project gt xl piczue 8 x Cl demo18 hex CG D I C Files l d 4 Univ
44. 16 Or amento do receptor eee eee eee eee 64 Tabela 17 Calendariza o das tarefas do projecto 65 pd No ambito deste projecto pretende se implementar um intercomunicador de som e imagem aut nomo m vel e de baixo custo Um intercomunicador numa configura o b sica n o mais do que um conjunto de dois elementos que t m como fun o trocar informa o dum ponto para o outro O objectivo principal desenvolver o hardware e respectivo software para uma configura o b sica do tipo emissor receptor Um dos pressupostos do projecto foi o receptor de imagens ser um Gameboy da marca nip nica Nintendo por se apresentar como uma consola de arquitectura aberta port til e com caracter sticas ideais para uma aplica o deste g nero tanto ao n vel do pre o como no seu desempenho Uma das aplica es poss veis deste projecto poder ser por exemplo a vigil ncia de beb s 1 Introdu o Dada a vulgariza o das redes locais sem fios prudente pensar priori na versatilidade da aplica o no que diz respeito ao uso de diferentes tecnologias de transmiss o de dados Assim a arquitectura do sistema foi pensada tendo em conta os diferentes sistemas de transmiss o sem fios deixando em aberto a utiliza o de outras tecnologias de transmiss o existentes no mercado Este projecto pode ser encarado como um ptimo exerc cio para sedimentar muitos
45. 433 160 da Radiometrix Estes m dulos permitem a transfer ncia em Half Duplex na banda FM a 433 92 MHz O BiM2 433 160 tem como mais valia para esta aplica o um baixo consumo de energia lt 20 mA e facilidade de interface com a USART do PIC j que este aceita n veis l gicos entre O e 5V sendo assim dispens vel um conversor de n veis de tens o para o protocolo RS232 MAX232 Os pinos e os respectivos sinais podem ser vistos na figura seguinte 25 BEN E Se CT LIT ad XANA OL OR OEC LL a gp E i Figura 19 Radiometrix BiM2 433 160 O BiM2 33 160 est fisicamente dividido RF do lado esquerdo dados e controlo do lado direito Existem dois pinos de controlo RX select TX select e um de status CD As combina es poss veis s o controladas pelo PIC e podem ser as seguintes Pinl5 TX Pin 16 RX Function power down lt 1uWA receiver enabled transmitter enabled self test loop back Figura 20 Modos de funcionamento do BiM2 433 160 O m dulo RF apresenta quatro modos de funcionamento Nesta aplicac o o modo de power down e o modo de self test loop back n o s o necess rios Como se pode observar na tabela 4 o transceiver est no modo de recep o quando TX e RX s o respectivamente 1 e O e no modo de emiss o quando TX e RX s o respectivamente O e 1 Como foi demonstrado anteriormente para os dois diferentes modos de funcionamento o transceiver apresenta os sinais TX e RX
46. E 52 5 5 2 1 Interface com o utlGador eee eee eee 54 5 6 Software do Interface para o PC eee eee eee 55 5 6 1 Rotinas implementadas errar 55 5 6 2 Interface com o utilizador eee eee eee eee 58 EE DU 6 1 pn EE DU 0 2 ees ss 61 Dio ue e PALO PO 62 5 4 Orcarmento do DFOLOBDO ae sean a azi aaa sand Linea ds nada UR rAnd ae PRU VERE nda 63 7 Calendariza o das tarefas do projecto erre 65 o Concldsoes enne E Lee 66 S RE jo o s fz NETTE RAS NR PARIS N PERIE RR T 67 TOSS IOS TOO VAIO S mend amdusui e pacea ci a tari atu bai asta peace iapa deiude 68 11 Cartaz Ap ndice A An lise qualitativa de uma imagem 128x128 pixeis 70 Ap ndice B Dithering examples Lesser 11 APSndice C ESQUEMAS e aim ee men sia a ate aaa il al lu 73 APACS D POD T POES do VN E 77 POB S dO RECEPTOR m 79 PCB doJHteraece Dara PO EE 80 Lista de Figuras Figura 1 Arquitectura do Sistema eee eee nnns 9 Figura 2 Diagrama de blocos do Intercomunicador nenea 13 Figura 3 PIC18F458 package PDIP eee 16 Figura 4 Esquema de liga es ao PIC18F458 no emissor 17 Figura 5 culo da GameBoy Camera 18 Figura 6 Interior do Oculo M64282FP nns 18 Figura 7 Frente do PCB que contem a AR eee eee 19 Figura 8 Verso do PCB ouecon
47. IMERO A figura seguinte ilustra como foi programado o TIMERO para obter a frequ ncia de amostragem de 8KHz Clock interno Es 8Kh 10Mhz pre scaler 1 25Mhz main counter DI 1156 Figura 44 Programa o do TIMERO Iniciou se o TIMERO como um contador de 8 bits em que a fonte de rel gio o clock interno do PIC com um prescaler de 8 Nestas circunst ncias o valor que deve ser contado pelo TIMERO antes de ocorrer uma interrupc o 156 O TIMERO gera uma interrupt sempre que chega a 255 ent o necess rio iniciar o TIMERO com o valor complementar de 156 ou seja o registo de contagem do timer TMROL deve ser inicializado sempre com 99 255 156 99 45 M A estrutura seguida no projecto de software permitiu desenvolver bibliotecas globais e locais Bibliotecas Globais s o bibliotecas que poder o ser utilizadas em ambos os n s do sistema permitindo assim a reutiliza o do c digo e optimiza o do software As Bibliotecas Locais foram desenvolvidas para um n em espec fico sendo utilizadas apenas nesse n A figura seguinte representa as bibliotecas implementadas e adaptadas no desenvolvimento do software 5 3 Bibliotecas Implementadas PIC18F458 EMISSOR PIC18F458 RECEPTOR Figura 45 Bibliotecas Globais e Locais Optou se por fazer neste ponto a descri o das bibliotecas ditas globais evitando assim a descric o das mesmas sempre que utilizadas Na tabela 8 est agrupada a informa
48. MILA NI a g IEuDO Jossiwz CECS e 3IEHajul L olv va LAS Cadsdi ce Eds aec Led di iay JMS g ZI OCT av SIJSJH HW 3 LOWIXMH Yap SL _ CV FOI Sr MOL SOHISaSa NDITOIOSO fer Hlp i Lili dsd NYAS ACY be d gM Le NO E Kid ONS d NECEIHPE Denn SNVIWONIOSY Jk GE LEM FNY SYM P TOTO cas Moore PF CT MOL CAME ENWEVH fe j E rey ENvzve E La bai LN VI EH irs28 DEE ONvIOVM E LL weet 9 ology ZB PH Lit TON e AL 74 gar d Euia3 Wy 95 18 LOld 1ope ojuo20421 z EA lc 20 tOOZ 0 SI L Joyde2e 5 I401de538 4 ictus S azo a EE RI Jul E e _ 5 20949 o NI olan Z d e ve Une Sue geo 3 6E AGE DI aau La a TEM i momy a 333 SR e geg 7 20 10 ron THC T SI 510 LO 5 SSG ng za FOTIN E 0 aa TO m q UNO Qq zi VA a p EOI vd am 3s lt a bs E UNO U P BFLFNI Br 2 HS Eva Wn E aa pn A r UNO oO SFIFNI pd a 2 oipmg op ODIO Tei Tr LIDIO J0s18Au0 tu B ui hes Eu sojsJapua ap ogSeoyipoasa ov ive dskF38LOld 19 ELUB SIS op sau 2wg e eed eajeBap eroussajay ap sopesag Cadsdiecc E dsaditQ FOIS SAACH e pi did i PUS Suissa Bludd 04 tae gan LS LU OAs dioc IE Zid AI IEI ISO L E OSOLL O2 JI OM INCISO MIMI LIS ZNWVIESOE 8 Lud hd LM pem DL i ooo Qe 9 SNVHMEIAN IH mae TOMO e CBN sNwQNO3H Eres roam re 22 PME 4 p COMTE SE z _ II ENE 5 o omy
49. Temos assim que todos os sinais s o de dom nio digital excepto Vout que anal gico Todos s o entradas excepto Vout e Read que s o sa das Todos os sinais digitais que s o entradas s o fornecidos pelo microcontrolador restando apenas os dois sinais de sa da Vout e Read O sinal de Read n o ser utilizado j que por software poss vel medir o tempo de exposi o pr programado e assim estimar o numero de ciclos que necess rio fornecer AR para que o tempo de exposi o seja cumprido Neste caso liberta se um pino digital do microcontrolador e juntando o til ao agrad vel utiliza se este sinal como interruptor no circuito de alimenta o de led de infravermelhos ver figura 12 colocando assim o sensor num modo de vis o nocturna Neste caso o led est apenas aceso quando a frame est a ser lida o que ptimo em rela o ao consumo de energia j que cada frame tem 20 um tempo de amostragem de 29ms estando o led de infravermelhos o resto do tempo desligado Figura 12 Interruptor do LED de Infravermelhos O sinal anal gico de sa da do sensor apresenta uma gama din mica de 2Vpp podendo ser quantizado em 256 n veis Neste caso estamos na resolu o m xima ou seja 8 bits pixel Para a aplica o em quest o apesar do sinal ser amostrado na resolu o m xima de 8 bits no emissor a resolu o ser diminu da por software para que seja poss vel satisfazer o compromisso tendo em
50. a o importante Isto permite estabelecer uma liga o entre ambos atrav s de uma interface s rie espec fica ou seja neste caso estamos a utilizar a USART mas poderia ser utilizada outra como por exemplo no caso do m dulo DECT estudado HW86010 que usava uma interface s rie 12C No receptor tamb m necess rio controlar v rios perif ricos sendo impostas restri es quanto velocidade do sistema determinantes na escolha de um microcontrolador id ntico ao do emissor Neste caso como as dimens es finais do sistema ter o de ser muito reduzidas o package ideal seria o TQFP j que o receptor ter de ser implementado dentro de um cartucho id ntico ao de um vulgar jogo Nesta fase em que se pretende elaborar um prot tipo as dimens es n o s o um problema e assim us mos o mesmo package do emissor o PDIP Na figura seguinte est apresentado o esquema de liga es do PIC18F458 no receptor 30 22DF HOMbz PIC 18F448P JDATA O0 7 Figura 27 Esquema de liga es ao PIC18F458 no receptor Para melhor entender as liga es efectuadas no PIC18F458 no receptor elaborou se uma tabela que sintetiza toda a informa o relevante para todos os portos o dom nio do sinal Analogico Digital a respectiva direc o Entrada Sa da e claro a fun o do respectivo pino para a arquitectura proposta AD NC Detec o de portadora no Transceiver Selector TX do Transceiver Selector RX do Transceive
51. a todo o LCD do GameBoy onde poss vel observar a divis o segundo o sistema de tiles acima descrito A imagem apresenta 160x144 pixeis o que corresponde a 20x18 tiles Ao lado est o representadas as paletes de cores correspondentes apenas ao background estando ainda mais 8 paletes dispon veis Neste caso ser o apenas usadas estas 8 paletes de cor j que o objectivo principal ter uma profundidade de cor de 4 bits por pixel o que resulta num universo de 16 cores ou mais propriamente tons de cinza As primeiras quatro paletes apresentam o gradiente de cinzentos que ira ser usado para indexar os pixeis de uma imagem estando as restantes quatro paletes dispon veis para o ambiente gr fico do sistema Partindo desta organiza o da VRAM poss vel comprimir os dados em termos de paletes de cor e tiles ptimas no emissor e em seguida envi los para o receptor j num formato compat vel Um algoritmo que optimize o n mero de tiles de uma imagem e extraia da mesma as suas paletes de cor ptimas bem vindo ja que permitiria poupar na largura de banda ocupada na transmiss o e assim aumentar a frame rate Esta compress o teria for osamente de ser acompanhada por uma filtragem de diethering que consiste basicamente na redu o da resolu o de uma imagem atrav s de um filtro de duas dimens es sem que haja forma o de grandes reas de cor na 33 Gal imagem Exemplos acerca do dithering s o apresentados
52. abela 7 Segundo esta divis o podem considerar se um total de 14 registos internos que necess rio programar Decidiu se agrupar os dados relativos aos registos numa estrutura permitindo assim ter associado a um registo o endere o o valor actual o valor m ximo e o seu nome pn Com Pa Por Por of z d Pau Pete Pe Pee PP ETE IF i W Jalal Tabela 7 Tabela dos registos internos da Artificial Retina A estrutura foi defenida como o tipo AR typedef struct unsigned char bitmask Mascara ao registo unsigned char offset Offset relativo ao registo de 8 bits unsigned char value Valor inicial unsigned char max Valor maximo permitido char key Tecla de interface char name 6 Nome do registo JAR Finalmente foi criado um array de estruturas do tipo AR que representam todos os registos da Artificial Retina sendo inicializada com os seguintes valores AR ARreg 14 bitmask offset value max key name OxCO 6 0x02 0x03 a Z E Ox3F 0 OxIF Ox3H o O i 0x80 7 0x00 0x01 n N E 0x60 5 0x00 0x03 aa VE E Ox1F 0 0x04 OxlF e G da OxFF 0 0x03 0x0F n Sib OxFF 0 0x00 OxFF T CO OxFF 0 0x01 OxFF p p t OxFF 0 0x00 OxFF m M OxFF 0 0x01 OxFF Xx X Hh NI 44 0x00 0x01 3 ES v 0x80 A 1 0x70 4 0x00 0x07 e IEY 0x08 A 0x00 0x01 i xps 0x07 0 0x01 0x07 v m h
53. ada inst ncia temporal encontra se num modo de transmiss o ou a emitir ou a receber dados Partindo do principio que o transceiver do receptor sempre o master na comunica o se o utilizador quiser enviar um comando para a c mara tem de alterar o modo de funcionamento do transceiver de RX para TX o que sem aviso pr vio ir causar uma colis o de dados no canal de transmiss o Esta colis o s existe enquanto o emissor estiver a transmitir e acaba enquanto este ficar escuta 4 3 Comunica o entre os transceivers EMISSOR RECEPTOR gt DADOS cois o gt OPCODE gt COMANDO Figura 41 Comunica o entre os transceivers Para garantir que o comando n o se perde na colis o temos que estimar um tempo m nimo para que a liga o esteja estabelecida e s depois enviar o pacote correspondente ao comando Ou seja podemos por exemplo enviar um opcode pr estabelecido durante um tempo superior a duas escutas consecutivas do canal por parte do emissor e s depois de termos a certeza que se estabeleceu a liga o enviamos o pacote de controlo Nesta configura o ver figura anterior podemos dizer que os transceivers est o a funcionar num modo intermitente estando a LAN limitada pelo facto de n o existir multiplexagem temporal ou em frequ ncia e assim permitir estabelecer v rias liga es ponto a ponto 42 5 Projecto de Software A estrutura do software desenvolvida no mbito deste pro
54. ags apresentam um comportamento aleat rio que n o d garantias em rela o ao tipo de opera o que foi efectuada na PSP O bug observado foi constatado no f rum da microchip ver no site http forum microchip com tm asp m 21301 onde foram encontrados v rios textos sobre o problema Como esta situa o foi descoberta numa fase avan ada do projecto n o houve tempo para tentar outras alternativas procedendo se apenas documenta o do mesmo 32 universidade de aveiro hed j O estudo da arquitectura interna do GameBoy foi crucial para especificar n o s o projecto do receptor mas tamb m o projecto do emissor A VRAM do GameBoy funciona com um sistema de tiles array de 8 por 8 pixeis que podem ser guardados de uma forma desordenada sendo depois ordenados no momento em que se coloca a informa o no LCD atrav s de um mapa de tiles Este sistema muito til quando se pensa em aplica es gr ficas repetitivas caso dos jogos j que permite indexar tiles iguais no mapa e assim poupar espa o na VRAM A cada tile pode ser atribu da uma palete de 4cores num universo de 16 paletes Na realidade o GBC pode representar imagens de 56 cores de uma palete de 32 768 usa o sistema RGB com 32 n veis de gradiente para cada 3 2 2 GameBoy Paletes da imagem Paletes auxiliares Figura 29 Sistema de tiles e paletes do GameBoy Color Na figura anterior est apresentada uma imagem que ocup
55. amentar e satisfazer os requisitos desses elementos Para facilitar a descri o e organizar a documenta o do projecto de hardware dividiu se o emissor e o receptor em blocos Empiricamente entendeu se colocar a imagem e o udio em blocos distintos j que estes podem ser vistos nesta fase como blocos completamente independentes Esta divis o est directamente ligada ao elevado n mero de componentes de cada um destes blocos Os outros elementos do intercomunicador apesar de cada um deles formar um novo bloco s o descritos pelo seu nome real o que facilita partida o seguimento desta fase do projecto O diagrama seguinte apresenta a divis o em blocos escolhida estando os restantes elementos chave identificados pelo seu pr prio nome PIC18F158 RAM Externa TRANS C EMER CORAL TTT M64282FP JOSSIANI guess o dOLdIdVIS Figura 2 Diagrama de blocos do Intercomunicador 13 pd O emissor baseado no funcionamento da Artificial Retina AR da Mitsubishi M64282FP Este chip um sensor de imagem CMOS de baixo consumo com resolu o de 128x128 pixeis e uma profundidade de cor m xima de 8 bits por pixel 256 tons de cinzento O sensor para al m de adquirir imagem tem tamb m capacidade de processamento simult neo e em tempo real da imagem que est a adquirir comportamento similar retina humana da o nome Artificial Retina 3 1 Emissor O objectivo do emissor ter capacida
56. ansceiver digital FM e half duplex que pode debitar uma taxa de transmiss o m xima de 160kbps o que para as especifica es pretendidas satisfat rio O m dulo em quest o o BiM2 433 160 da Radiometrix que para al m das caracter sticas j descritas ptimo para aplica es port teis dado o seu baixo consumo de energia Nestes m dulos o alcance m ximo ou seja a dist ncia m xima entre o emissor e o receptor de 200 em campo aberto e 50m em interiores Este alcance deve se s normas impostas para as comunica es de R dio Frequ ncia que limitam a pot ncia que se pode radiar Este transceiver tem uma grande vantagem permite trabalhar directamente com n veis l gicos compat veis com TTL 0 a 5V o que facilita a liga o a qualquer microcontrolador O protocolo RS232 foi usado na transmiss o dos dados devido simplicidade de implementa o e ao facto de quase todos os microcontroladores apresentarem j no seu interior uma USART Para estabelecer uma comunica o fi vel e organizada entre o emissor e o receptor foi criado um protocolo de comunica o designado por GBDTP GameBoy Data Transfer Protocol que ser descrito em pormenor mais frente neste documento 12 3 Projecto de Hardware A escolha do hardware de suporte ao sistema foi crucial para especificar o intercomunicador Os elementos principais est o escolhidos e s o os apresentados anteriormente Nesta fase pretende se fund
57. ca e positiva tens o de alimenta o 5V Assim foi escolhido o integrado MC602 que apresenta no seu interior dois OP AMP s do tipo rail to rail um para o andar de ganho e o outro para implementar o filtro anti aliasing 3 1 1 Microcontrolador PIC18F458 O PIC18F458 da MICROCHIP o c rebro do emissor A necessidade de controlar os v rios perif ricos do emissor e as restric es impostas quanto velocidade do sistema levaram escolha deste modelo Este dispositivo apresenta se sob a forma de um chip de 40 pinos em v rios packages com diferentes dimens es O package usado PDIP o que apresenta maiores dimens es dai que seja mais f cil de utilizar na fase de prot tipo Isso n o invalida que no futuro se possam utilizar outros como por exemplo PLCC ou mesmo TQFP com dimens es muito mais reduzidas 15 Figura 3 PIC18F458 package PDIP A escolha deste microcontrolador n o foi imediata numa primeira fase decidiu se usar uma gama mais baixa da mesma marca o PIC16F877 que apresenta a mesma configura o f sica mas com diferen as em termos de velocidade nomeadamente da USART e na dimens o da memoria dispon vel RAM e ROM menores A desist ncia do uso deste microcontolador n o invalida a sua aplica o j que o hardware desenhado equivalente e o software desenvolvido compativel As caracter sticas principais que levaram escolha do PIC18F458 est o sintetizadas na tabela seguinte
58. das em seguida foram desenvolvidas especificamente para o PIC do receptor A biblioteca rdrivers h apresenta todos os device drivers utilizados para controlar e aceder aos respectivos perif ricos EH ween FUN O mme init portos Inicializa todos os portos rdrivers h init TIMERO Inicializa o TIMERO para alimentar a DAC Tabela 11 Descri o das Bibliotecas locais do receptor PIC implementadas 51 5 5 1 2 Dimensionamento do Buffer Circular Como estamos perante um sistema concorrente em que as tarefas s o lan adas por interrup o indispens vel fazer buffering dos dados j que as interrup es ocorrem a ritmos diferentes A solu o encontrada consistiu em implementar um buffer circular que permita a uma tarefa escrever no buffer enquanto outra l em posi es diferentes O dimensionamento do buffer consistiu em estimar o pior caso correspondente leitura de uma imagem completa Em seguida temos uma tabela que apresenta o per odo de interrup o para as duas taxas de transmiss o mais importantes Baud Rate TX Real B R 0 8 T de Interrupt Enche o buffer 256Bytes 57600bps 5760Bytes s 173ys 115200bps 11520Bytes s Tabela 12 Per odo de Interrup o da USART A solu o implementada parte do per odo de interrup o da USART para taxas de transmiss o pr defenidas Sincronizou se o GB para uma frequ ncia de leitura aproximadamente igual da chegada de dados pela porta s rie com um
59. de jogos para isso basta substituir o cartucho Receptor por um cartucho de jogos 64 E da af universidatc M 7 Calendariza o das tarefas do projecto De seguida apresentam se as v rias fases de desenvolvimento e implementa o dos m dulos e do software do intercomunicador Esta apresenta o tem como objectivo identificar de grosso modo a sequ ncia dos trabalhos para a elabora o do sistema Fases do Projecto Set Out Nov Dez Jan Fev Mar Abr mai Jun su o LM Dimensionamento do projecto HA LO Estudo da Arquitectura e Protocolo DECT HE OK Estudo da Arquitectura PIC 18F4x8 LL o K Estudo do Transceiver Bim2 433 160 NEN OK implementa o do Cartucho de desenvoimentd EM OK implementa o do hardware do Emissor OK implementa o do hardware do Receptor 1 J E OK I OX Desenvolvimento do Software do Receptor GB NENNEN ia Desenvolvimento do Software do Emissor PIC f OK PIC EE Desenvolvimento do SoftwaredoPe jon Desenvolvimento do PCB do Emissor ei LO Desenvolvimento do PCB do Receptor S Desenvolvimento do PCB do PC adapter Desenvolvimento do Software do Receptor PIC OK Testes de Integra o Optimiza o do Software Tabela 17 Calendariza o das tarefas do p
60. de Imagem pelo GB TIMERO Alimenta a DAC a 8KHz Tabela 10 Tabela de prioridades das tarefas no emissor Para descrever o funcionamento do algoritmo do software do receptor a que o diagrama de fluxo diz respeito aplicou se a mesma nota o usada anteriormente para gerar o seguinte pseudo c digo 10 init inicia todos os Portos 20 get GBDTP extrai o header do GBDTProtocol no caso de se tratar de dados da IMAGEM GOTO 30 no caso de se tratar de dados do AUDIO GOTO 50 no caso de se tratar de dados de CONTROLO GOTO 70 30 PSPIE ON Liga as interrup es da PSP N de Interrup es lt Image length N o ent o GOTO 30 40 PSPIE OFF Desliga as interrup es da PSP e GOTO 20 50 TMROIE ON Liga as interrup es do TIMERO N de Interrup es lt Audio length N o ent o GOTO 50 60 TMROIE OFF Desliga as interrup es do TIMERO e GOTO 20 70 TX mode altera o transceiver para o modo de emiss o 80 put GBDTP coloca o header do GBDT Protocol para a udio envia o respectivo comando 90 RX mode altera o transceiver para o modo de recep o e GOTO 20 RSI1 enche buffer enche o buffer circular com os dados que chegam via RS232 RSI2 vaza buffer o GB l um byte do buffer circular Incrementa o contador de interrup es RSIS vaza buffer colocado um byte do buffer circular na DAC Incrementa o contador de interrup es 9 9 1 1 Bibliotecas Locais Implementadas no receptor As bibliotecas locais apresenta
61. de de ler imagens da Artificial Retina AR e envi las para o receptor atrav s do m dulo de RF O n mero de imagens por segundo frame rate est directamente relacionada com a taxa de transmiss o suportada pelos m dulos de RF respons veis pelas comunica es Contudo este sensor permite teoricamente obter no m ximo uma frame rate de 31 imagens por segundo o que ser imposs vel nesta aplica o devido largura de banda que seria necess ria no canal de transmiss o A Artificial Retina AR por si s n o cont m nenhum acess rio ptico o que torna imposs vel a sua aplica o numa fase de prot tipo Devido a esta raz o foi usada uma Gameboy Camera poupando nos assim a tarefa de escolher a lente apropriada e tamb m a tarefa de soldar os micro pinos do tipo SMD que comp em a AR Devido ao seu funcionamento a AR despeja na sua sa da anal gica uma s rie de 16 384 valores anal gicos 1 valor por pixel 128x128 pixeis quando estes dados s o lidos da AR necess rio satisfazer certos requisitos temporais inerentes ao funcionamento da mesma Cada valor anal gico na sa da da AR tem uma vida muito curta sendo o tempo dispon vel para ler cada um desses valores muito pequeno Devido a este factor recomendado pelo fabricante da AR que xck sinal de rel gio cedido AR tenha uma frequ ncia exacta de 500 KHz Por princ pio foi assumido que os 500 KHz s o apenas a frequ ncia m xima de rel gio
62. e diethering 20 melhora significativamente a qualidado da imagem 69 Ili e uma imagem niver Ap ndice A An lise qualitativa d 128x128 pixeis A qualidade do servico dever ser um compromisso entre a largura de banda dispon vel no canal e a respectiva qualidade de imagem Para analisar a imagem necess ria uma abordagem qualitativa Para isso recorreu se manipulac o de imagem no matlab como mostrado na figura seguinte As imagens que se seguem servem como refer ncia para a compara o com as diferentes resolu es e para justificar a escolha da respectiva resolu o relativa ao numero de bits por pixel Partiu se de uma imagem cuja dimens o 128 128 pixeis foi escolhida esta dimens o devido ao sensor de imagem que se pretende utilizar na aplica o As imagens seguintes s o apresentadas sem compress o e todas apresentam diferentes profundidades de cor x d UD M m t um B E E HESSE b apvd es BL N Cores 2cores 4coes Scores X 16cores 8192 Bytes Observando a figura a resoluc o mais satisfat ria est associada resoluc o de 4bits pixel a qual corresponde a uma palete de 16 cores Nestas circunst ncias tem se uma imagem que ocupa 8192 Bytes ou mais propriamente 8KBytes Esta an lise fundamenta o objectivo que se tentou alcan ar no decorrer do projecto j que garante que uma imagem com 4bits pixel tem qualidade suficiente para o fim espe
63. ecifica es T cnicas do GameBoy O Gameboy foi feito para funcionar como consola de jogos da apresentar um acesso directo aos barramentos isto porque cada jogo colocado num cartucho independente fisicamente da consola ou seja a aplica o a desenvolver seguir o mesmo conceito e ser totalmente independente do Gameboy Isto permite que n o haja viola o da consola e nenhuma altera o da mesma em fun o da aplica o em quest o Assim poss vel desde j viabilizar este projecto em termos comerciais j que o produto que se est a desenvolver funcionar como um mero acess rio podendo ser removido do Gameboy a qualquer momento sem apresentar danos para o mesmo 2 3 Comunica es Nas comunica es dado o prop sito do projecto necess rio um sistema de transmiss o digital sem fios Existem in meros sistemas de transmiss o sem fios utilizados em redes dom sticas tais como o protocolo IEEE802 11b Wi Fi ou o protocolo DECT O primeiro usado para aplicac es de redes de computadores wireless sendo o DECT usado principalmente para transmiss o digital de dados de voz nunca descartando a hip tese de transmitir outro tipo de dados A soluc o DECT foi estudada e sem duvida uma boa op o para o sistema que se pretende desenvolver o impedimento reside no facto desta tecnologia n o ser a mais barata do mercado 11 Optou se ent o por uma solu o mais econ mica um tr
64. eek pos que se encontra na posi o pos Programa o registo da AR CUJO edrivers h setReg address value endere o address e valor value Devolve o bit correspondente a offset bit add address offset de address para a programa o s rie da do endere o do registo da AR Devolve o bit correspondente a offset bit val value offset de value para a programa o s rie do valor do registo da AR Devolve um pixel na resolu o m xima in pix 8 bits Devolve um Byte de pixeis inport_Byte res correspondente resolu o res Detecta uma portadora no transceiver 48 menu Devolve atrav s da USART o menu principal de interface com o utilizador menu AR Devolve atrav s da USART o menu com o actual setup dos registos da AR permitindo altera es menu GBDIPT Devolve atrav s da USART o menu correspondente aos dados do protocolo que se encontram na estrutura de dados FRAME do tipo GBDTP menu_res Devolve atrav s da USART o menu correspondente resolu o actual utilizada permitindo altera es Gere o acesso aos menus em rvore atrav s do interface com o utilizador Tabela 9 Descri o das Bibliotecas locais do emissor 5 4 2 Interface com o utilizador do Emissor Este interface permite atrav s da USART alterar v rios par metros do emissor Utilizando um vulgar terminal de RS232 e utilizando a porta de s rie dispon vel no emissor poss vel aceder directamente
65. efectivos igual a TxReal BaudRate 0 8 57600 0 8 TxReal 46080 bps 4 2 GameBoy Data Transfer Protocol GBDTP Este protocolo foi elaborado a pensar nesta aplica o espec fica mas n o descarta outras aplica es futuras Como todos os protocolos este visa a identifica o dos dados formata o e elimina o de falhas de comunica o Assim foram criados um campo de sincronismo de trama um de Check Sum vital para a detec o erros no Header do GBDTP Para aplica es multi utilizador existem um identificador de c mara e um identificador de GB tendo sido implementado tamb m um campo que identifica o comprimento de bytes referentes aos dados do som e outro que identifica o comprimento relativo aos dados da imagem O tipo de trama distinguido num campo dedicado que identifica se uma trama de configura o ou se uma trama de dados O GBDTP apresenta os seguintes campos A B C D E F G H J 2 Byte Bte 1 Byte 2 Byte 2 Byte 1 Byte 1 Byte max 15384 bytes Figura 40 Cabegalho do GameBoy Data Transfer Protocol GBDTP 40 TM Ao todo o GBDTP apresenta 10 campos dos quais 9 s o o cabe alho O cabe alho apresenta 10 bytes de comprimento Em seguida s o descritos todos os campos que comp em o cabe alho e Campo A e Campo B e Campo C e Campo D e Campo E e Campo F e Campo G e Campo H e Campo l e Campo J sincronismo de trama dado pela sequ ncia
66. ersidade de Aveiro Go Ge SE 2 Projecto 5 ano 3 PROGRAMA DE INTERFACE COM O GB e delay c 4 S rgio Ivan Lopes e Fernando Ventura Ic lcd c 5 e serial c 6 include picl8 h 33 Assembler Files 7 include lt stdio h gt E Object Files a Iginclude seria kd picrt82l obj ginclude delay h Libraries include drivers h pic86l c lib include GBDTP h Vari veis globais Signed char buffer 256 data buffer 0 ponteiro para buffer enche pnt2 0 ponteiro para buffer baza cbuffer 8 control buffer bpnt 0 ponteiro para buffer de controlo Contador de bytes signed int countl6 0 Contador de n de bytes signed int x 0 auxiliar para a rampa vol 0 Volume do som lOniveis aux 0 Target 18F 458 Xtal Freq 4 0 MHz Peete pend Ss 5 Total ROM 32768 Inicializa o da estrutura de dados do GBDTProtocol gt Used ROM O 0 0 4 gt New processor selected 18F 4458 Cycles O Insert Figura 43 Hi Tide com PICC 18 editor simulador e compilador 43 Por fim desenvolveu se uma aplica o gr fica que pudesse ser utilizada como consola de visionamento de imagem num vulgar PC O c digo desta aplica o foi escrito em Visual Basic sendo a aplica o pensada para correr nos sistemas operativos Windows 95 NT 98 2000 XP da Microsoft 5 1 Estruturas de Dados A Artificial Retina cont m oito registos internos de 8 bits que se encontram divididos como mostra a t
67. este caso bvio que imposs vel comunicar de um modo ass ncrono atrav s de um c digo NRZ puro Surge ent o o protocolo RS232 que mistura c digo NRZ com bits de sincronismo Para isso inclui um start bit oito data bits em NRZ e um stop bit Um bit de paridade e um stop bit adicional podem ser tamb m inclu dos O diagrama seguinte ilustra o protocolo s rie RS232 oo IT ri Start bit Data bits Party bit Stop bits Figura 39 Protocolo RS232 39 O n mero de bits transferidos por segundo dado pela baud rate que inclui todos os bits de sincronismo dados e paridade No modo assincrono um byte transmitido deve ser identificado pelos start e stop bits em que o start bit indica quando o byte de dados est a come ar e o stop bit indica que o byte de dados j foi transferido A configura o usada no protocolo RS232 a seguinte Baud Rate 0 600 ou 115200 bps Data Bits 8 bits Paridade None ou seja desactivada Stop Bits 1 bit Comparando as configura es anteriores com a estrutura protocolar representada na figura anterior temos que para cada Byte de dados efectivo existe um overhead de 2 bits sendo um o start bit e o outro o stop bit Nesta configura o para uma Baud Rate de 115200bps temos na realidade uma transmiss o de dados efectivos igual a TxReal BaudRate 0 8 115200 0 8 TxReal 92160 bps Para o caso em que a Baud Rate 5 600bps temos na realidade uma transmiss o de dados
68. g emer enveya E ogee i Ic tn E gids PONY LE do i F mE o MN ony e 988 54 own E TO e Sg Lec o a AUSSO TITIES Joydasay ap jopejogjuoao421 S EN I T 19945 E OBZ 20 ST d Z Joydeoey Z 401de 2aA4 3 I un e m mou Ei ONS C4 t Apar MILA 5 NIZY er a CECXVIN dd id zezss puepueis oeSeBr o 29 m a a aa o 5 D EIER HT COND ZONE sOn E ja Ho WP FON E T TE a SL CX KN A t ONS d dv PPb TIAI ZON E E EL 09L E F ZMIIg 5 ONS d SC OxL ONS 7 i T TE Co 153135X3 SON dM me ee T DA VNNSLNY F IRT SCH PONS ONS J4 STO AN LAS LIN CNS d Ft E UNO CO a4 opo VIA CE mee EEE WIWVLI DE 6c SV LV E 2VIVL Sc ico PRIVU _ ONS ONS O ONS ONS C zz TVIVU ango VIVO Fe tz UwlwL ELF TUI Fe if FRUTO Mu D EL BIS OLD OCI si it DLC RISCH SL SKI UV st Fer SOU JUN CL LL SCHT ON LUV Gr amp FITI Z E Caen 31Nv Wilt D IE NI oon V i T a F E d 3 d ala F T ale 7 U ojuaunjoAuasa ap OYINHES o Woo s5euaju ap jayoos MEL 9p oipny ap Jope2utdumg 16 Ap ndice D PCB s PCB s do EMISSOR Placa Anal gica Vista de cima Vista de baixo 0 o 2 a o m Componentes Eild2 433 150 RAD OME TRI I Placa Digital Wir 2 Vista de cima Vista de baixo Componentes 78 PCB s do RECEPTOR o0 O 0000000 4 00000000 So 000000000 Vista de
69. i mem ria de massa dedicada a armazenar o c digo desenvolvido no mbito do projecto Assim para poder desenvolver o prot tipo do receptor construiu se um cartucho de desenvolvimento 3 2 Receptor Para construir o cartucho de desenvolvimento recorreu se a um velho jogo e substituiu se a ROM que continha o jogo por uma ROM do tipo FLASH A ROM escolhida foi uma AMD 29F040J que permite com o recurso a um programador enviar o c digo desenvolvido para o cartucho e assim testar no hardware Iul mia ommunicator development card 8 lt sl ji S vs Figura 25 Cartucho de desenvolvimento No cartucho de desenvolvimento foi colocada uma ficha de 32 pinos que reproduz exactamente os pinos disponibilizados pelo GB para I O ou seja DATA bus D7 DO ADDRESS bus A15 A0 GND CSV RD WR RST CLK e Vcc que ser a alimenta o do receptor amp E A Figura 26 X CHANGER programador de cartuchos 29 p i O controlo do receptor para garantir compatibilidade de interfaces entre emissor e receptor fica a cargo do mesmo microcontrolador o PIC18F458 da Microchip que ir funcionar tamb m a 40MHz Assim garantimos que o sistema possa usar uma das interfaces s rie dispon veis USART SPI CAN e I2C para estabelecer as comunica es entre dois n s do sistema Neste caso usou se tamb m a interface s rie USART para comunicar via RS232 atrav s do m dulo de RF com o emissor
70. ia O circuito implementado foi o recomendado pela datasheet do fabricante tendo sido apenas alterada a resist ncia de feedback R5 1K para aumentar o ganho do amplificador para 5 isto para o caso de estar a atacar um altifalante de 80 e E Cd i LP Li 2 Ap 100ur A ND J GNU A MD A GNOD Figura 36 Circuito do amplificador de pot ncia do udio 3 2 4 Transceiver no receptor BiM2 433 160 O m dulo RF apresenta quatro modos de funcionamento Nesta aplica o o modo de power down e o modo de self test loop back n o s o necess rios Como se pode observar na figura 20 o transceiver est no modo de recep o quando TX e RX s o respectivamente 1 e 0 e no modo de emiss o quando TX e RX s o respectivamente O e 1 Como no receptor existem pinos digitais em numero suficiente optou se por utilizar dois diferentes pinos para controlar o modo de funcionamento do transceiver O sinal de detec o de portadora CD um sinal de status e so est em funcionamento quando o transceiver est a funcionar como receptor Nesta situa o modo RX quando detecta uma portadora CDY vai a zero 3 AMT 1 Es D GND BIM2 433 160 Figura 37 Esquema de liga es do BiM2 433 160 do receptor Neste caso o transceiver do receptor o master na transmiss o por isso funciona no modo que o utilizador define Este m todo ser descrito com mais pormenores aquando da descri o do funciona
71. jecto foi dividida em v rias etapas Na primeira etapa como consequ ncia do estudo da arquitectura interna do GameBoy foi desenvolvido e implementado o c digo a pensar na aplica o partindo do receptor O estudo da arquitectura interna fez com que as especifica es do intercomunicador fossem de encontro s caracter sticas do receptor No desenvolvimento do c digo para o GameBoy foi usado o compilador GBDK GameBoy Development Kit para DOS cuja distribui o gratuita O compilador baseado em linguagem C contendo v rias bibliotecas implicitamente dedicadas ao hardware GameBoy O c digo foi testado num simulador ver figura seguinte existente para o Windows o NO GBM que permite executar o c digo com facilidades para o debugging al ROMO 1926875 HERE ROMO 1927 Cl pop bc Z 3 ROMO 1928 C9 ret 8 4 ROMO 1929 CD FC 18 call 18FC 714 6 ROMO 192C A0 and b 215 I ROMO 192D 28 FA jr z 1929 718 2 3 ROMO 192F C9 ret 722 4 mM ROMO 0000 COFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF ROMO 0010 80402010080402010102040810204080 B g ROMO 0020 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF s a ROMO 0030 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF af 3080 ROMO 0040 E521A8D7C36700FFE521B8D7C36700FF g g be 00C1 nm ROMO 0050 E521C8D7C36700FFE521D8D7C36700FF g g de FF40 h ROMO 0060 E521E8D7C36700F5C5D52AB6280BES3A g hl DFES Te ROMO
72. l que venda artigos dedicados aos fan ticos dos videojogos O equipamento uma vulgar consola de videojogos o Gameboy Color que apresenta uma 10 T arquitectura aberta e amig vel indo de encontro s especifica es do sistema que se pretende implementar O Gameboy Color uma consola comercializada pela marca nip nica NINTENDO port til e de simples utiliza o O interface com o utilizador composto por quatro bot es um cursor um ecr a cores e um altifalante Som est reo est dispon vel no jack dos auscultadores O hardware interno inclui um derivado do velhinho Z80 em conjunto com uma RAM Mais detalhes s o apresentados em anexo atrav s do esquema que apresenta a arquitectura interna neste caso do Gameboy cl ssico j que esta informa o n o est dispon vel para o Color o que irrelevante j que este se trata de uma evolu o do cl ssico e a compatibilidade est assegurada As especifica es t cnicas principais do Gameboy Color s o CPU 8 bit Z80 like CPU running at 8 494304MHz BUSES 8 bit data BUS 16 bit address BUS RAM 32kB internal also 8kB adressroom for external RAM Video RAM 8kB internal ROM 32kByte reserved in addressroom for external ROM Sound 4channels stereo Display Reflective LCD 160x144 dots physically Colors 56 of 32768 oprites 40 sprites 8x8 8x16 Com One serial port with 8kbps Ee Tabela 2 Esp
73. mento do protocolo 38 M Para estabelecer uma comunica o entre dois n s da LAN necess rio que exista uma organiza o dos dados Esta organiza o deve satisfazer v rios crit rios tais como formata o dos dados sincronismo identifica o e finalmente correc o de eventuais erros Para solucionar este problema foi implementado um protocolo para a transfer ncia de dados ao qual foi chamado GBDTP GameBoy Data Transfer Protocol O GBDTP permite a troca multi utilizador de pacotes de dados de um modo organizado e seguro Em termos protocolares temos o GBDTP ao n vel da camada da aplica o estando o protocolo RS232 no fundo a garantir sincronismo na transfer ncia das palavras R5232 amp 0115200HKbps half duplex Figura 38 Camadas protocolares usadas nas comunica es 4 Protocolos das comunicacoes Servidor de imagem 2 4 1 O standard RS232 O protocolo RS232 ainda um dos mais utilizados no que diz respeito a comunica es s rie devido sua simplicidade de implementa o O c digo usado pelo protocolo RS232 do tipo NRZ Non Return to Zero Este c digo apresenta um problema j que para uma longa sequ ncia de uns ou zeros deixa de existir sincronismo de bit o que dificulta na decis o de um s mbolo No caso de uma comunica o ass ncrona os elementos que se encontram a comunicar apresentam rel gios com frequ ncias id nticas mas n o iguais N
74. mento que foi descrito 5 6 1 Rotinas implementadas Passa se a apresentar as v rias rotinas implementadas para a recep o de dados da porta s rie seu processamento e apresenta o da imagem no ecr 55 pie Sub Rotina de arranque da aplica o Private Sub Form Load Esta rotina de arranque do programa tem como objectivo inicializar as vari veis necess rias para o arranque dos eventos Nela carregada toda a informa o do ecr de apresenta o ao utilizador bem como os valores iniciais das vari veis do programa tais como activar os valores desejados para a porta s rie inicializar a Baud Rate e definir que se pretende iniciar com a recep o de imagem com zoom de 4 vezes o tamanho da imagem captada Sub Rotina para iniciar e terminar a recep o dos dados pela porta s rie Private Sub botao click Esta rotina serve para no momento em que o utilizador carrega no bot o de POWER ON POWER OFF detectar se o computador tem a porte s rie aberta terminologia usada no Visual Basic isto se est a receber dados ou se est fechada isto n o recebe dados por imposi o do software No caso de ter a porta s rie activa esta rotina encarregue de a desactivar e vice versa Sub Rotina encarregue de processar os dados recebidos da porta s rie Private Sub MSComm1_OnComm Rotina encarregue da valida o de recep o e do processamento dos dados da porta s rie Es
75. ogramador de f cil entendimento para gerar o seguinte pseudo c digo 10 init inicia todos os Portos 20 RX mode altera o transceiver para o modo de recep o escuta o canal de transmiss o Polling a CD existem dados a chegar Sim ent o GOTO 90 30 TX mode altera o transceiver para o modo de emiss o 40 get image l uma imagem a Energia do udio gt Limiar Sim ent o GOTO 70 50 put GBDTP coloca o header do GBDTProtocol para a imagem 60 put image envia os dados da imagem e GOTO 20 70 put GBDTPY coloca o header do GBDTProtocol para o audio 80 put audio envia os dados do audio e GOTO 20 90 get GBDTP recebe um pacote de controlo e GOTO 20 RSI get audio l amostra de audio RSI peri dica T 125us 5 4 1 Bibliotecas Locais Implementadas no emissor As bibliotecas locais apresentadas em seguida foram desenvolvidas especificamente para o PIC do emissor A biblioteca edrivers h apresenta todos os device drivers utilizados para controlar e aceder aos respectivos perif ricos A biblioteca Ul h implementa um interface rudimentar com o utilizador atrav s da porta s rie permitindo aceder a v rios par metros que controlam o emissor BIBLIOTECA FUNCAO DESCRICAO init ports Inicializa todos OS portos init interrupts Inicializa as interrup es Acesso RAM Externa coloca memByte poke memByte pos na posi o de memoria pos Acesso RAM Externa devolve o byte p
76. otocolo GBDTP gt Para desenvolver o receptor foi necess rio construir um cartucho de desenvolvimento que permite ter acesso ao barramento da consola e acesso a mem ria de massa para armazenar o c digo gt Construiu se o hardware para o receptor que faz o interface do emissor com o Gameboy a taxa de transmiss o m xima conseguida entre o PC e o receptor foi de 5 600bps O protocolo funciona para pacotes alternados de udio e de imagem com garantias de fiabilidade As imagens enviadas do PC 2bit pixel para o Gameboy foram previamente filtradas com um filtro de dithering 2D gt Para resolu es mais baixas em rela o profundidade de cor um pr processamento com um filtro de dithering 2D melhora consider velmente a qualidade da imagem Para finalizar pedimos a palavra para dizer que estamos orgulhosos do trabalho desenvolvido durante este ano lectivo na disciplina mais exigente do nosso curso 66 pd Mitsubishi CMOS Image Sensors amp Digital Imaging Solutions 1998 Bibliografia JERKE NOEL 1999 The complete Reference Visual Basic 6 Berkeley Osborne McGraw Hill SCHILDT HERBERT 1991 C completo e total S o Paulo Osborne McGraw Hill KERNIGHAN BRIAN W amp RITCHIE DENNIS M 1988 The C Programming Language Second Edition New Jersey Prentice Hall SEDRA ADEL S amp SMITH KENNETH C 1998 Microelectronic Circuits Fourth Edition New York Oxford University Press
77. oy Color 33 Figura 30 Mapa de mem ria do GameBoy Oolor ee 34 Figura 31 Diagrama de WR e RD do GameBoy 35 Figura 32 L gica para gerar os sinais PSP CS e PSP RDY 35 Figura 33 Circuito que gera os sinais de PSP CS e PSP RD 35 Figura 34 Circuito de condicionamento e filtragem do sinal de audio 36 Figura 35 Circuito que gera uma tens o de refer ncia negativa 36 Figura 36 Circuito do amplificador de pot ncia do udio 37 Figura 37 Esquema de liga es do BiM2 433 160 do receptor 38 Figura 38 Camadas protocolares usadas nas comunica es 39 Wielt H PROIOCOIO KOZ OZ EE 39 Figura 40 Cabe alho do GameBoy Data Transfer Protocol GBDTP 40 Figura 41 Comunica o entre os transceivers sie 42 Figura 42 No GMB simulador do GameBoy para o Windows 43 Figura 43 Hi Tide com PICC 18 editor simulador e compilador 43 Figura 44 Programa o do TIMER ME 45 Figura 45 Bibliotecas Globais e Locais c eee eee eee 46 Figura 46 Diagrama de fluxo do software do emissor 47 Figura 47 Menus de interface via RS232 do emissor 49 Figura 48 Diagrama de fluxo do software do
78. r NC NC H Barramento do udio RX da USART TX da USART Gera onda quadrada para Vref negativa Write na DAC NC NC UO n Barramento da PSP UO Chip Select da PSP Write na PSP Read da PSP Tabela 6 Fun o direc o e dom nio dos pinos do PIC18F458 do receptor LI D D D D D D D D D D D D D D 31 No desenvolvimento do software para o PIC do receptor numa altura em que a arquitectura j estava decidida sucedeu se um problema de relativa import ncia j que inviabilizava a comunica o no sentido do GameBoy para o PIC18F458 Acontece que o porto D do PIC do receptor est programado para funcionar no modo PSP Parallel Slave Port Nesta configura o se for tido em conta o datasheet do PIC18F458 poss vel ler e escrever na PSP do PIC comportando se este como escravo na transfer ncia de dados Neste modo de funcionamento ver figura seguinte existem duas flags que sinalizam se a opera o foi de leitura ou de escrita Estas flags s o IBF Input Buffer Full OBF Output Buffer Full PARALLEL SLAVE PORT WRITE WAVEFORMS o o Tas ae Qi az os Q4 of a2 ae PARALLEL SLAVE PORT READ WAVEFORMS o a2 aa ae ai a2 as as ai a a3 o Figura 28 Diagramas de WR e RD na PSP Apos varias tentativas de comunicar usando as flags IBF e OBF chegou se a conclus o que o modo de funcionamento com o datasheet indica n o poss vel Na realidade as fl
79. r RS232 standard apresentado na figura seguinte L al Figura 23 Circuito do driver de RS 232 3 1 7 Alimenta o do emissor Para alimentar o emissor desenvolveu se um circuito que sugere a utiliza o de baterias recarreg veis este circuito apresentado na figura 24 A bateria a utilizar deve ser de 9V podendo ser carregada quando o emissor se encontra ligado a uma tens o externa entre 9 12V DC Quando a bateria se encontra carregada o d odo de zener d odo DZ da figura apresentada entra em condu o j que a bateria apresenta aos seus terminais uma tens o superior a 27 universidade de aveiro hid 9 6V Para monitorizar o n vel de tens o da bateria usou se um pino do PIC18F458 configurado como ADC para ler regularmente a tens o Vbattery Esta tens o metade da tens o aos terminais da bateria devido ao divisor de tens o a colocado Assim a bateria est carregada quando Vbattery igual ou superior a metade de 9 6V ou seja Vbattery gt 4 8V Para garantir um VDD com precis o de 5V usou se o regulador de tens o o MC7805 Figura 24 Circuito de alimenta o do emissor 28 universidade de aveiro hid 10 anos a No Receptor como j foi dito anteriormente foi escolhido o GameBoy como consola de visionamento das imagens sendo o seu display o destino das imagens vindas do emissor O GBC possui uma RAM interna de 32KB para dados din micos vari veis arrays etc mas n o possu
80. rado 70 universidade de aveiro bid i anos a orolectar fut Ap ndice B Dithering examples note the smoothness in the detail Figure 2 Original image using the web safe color palette with no dithering applied Note the large flat areas and loss of detail 7 HN o IN g TRE A i fe Je L E E x CR HA f i a E ME 3 MEA w H a e A ell v r r 1 de P D e LV a Ea T EN Ke i DI Ku E E i m D Bei a VE he d B Fr m a R x f d ae E Figure 3 Original image using the web safe color palette with Floyd Steinberg dithering Note that even though the same palette is used the application of dithering gives a better representation of the original 71 universidade de aveiro hid 10 anos a pri Figure 4 Here the original has been reduced to a 256 color optimized palette with Floyd Steinberg dithering applied The use of an optimized palette rather than a fixed palette allows the result to better represent the colors in the original image Figure 5 Depth is readies to a 16 color optimized palette in this image with no dithering Colors appear muted and color banding is pronounced Figure 6 This image Mo uses the 16 color optimized palette but the use of dithering helps to reduce banding 72 mheas 8P ET Zc v00c 20 SI Iros LL pueog Bojeue Joss QNS E JOSS way mi nz ra EH fiolvivo m 82 _ E LAOA Er e Um
81. rojecto Em seguida s o consideradas e descritas as fases consideradas mais relevantes no desenvolvimento do projecto Um dos pontos de partida do projecto a utiliza o do GameBoy por isso numa primeira fase pesquisaram se o tipo de ferramentas que existem para o desenvolvimento do projecto Procurou se todo o tipo de informa o acerca do hardware que constitui o GameBoy para se conhecerem as potencialidades e restri es desta consola Pesquisou se tamb m qual o software de desenvolvimento que se pode usar tais como simuladores compiladores e programadores de cartuchos para se poder programar a consola Uma vez que j se tinha conhecimento da arquitectura interna do GameBoy Y iniciou se a projec o e dimensionamento do sistema A constru o do cartucho de desenvolvimento consistiu no aproveitando de um cartucho da Nintendo que continha uma ROM com um jogo Foi lhe substitu da essa ROM por uma flash ROM AMD29F040 uma vez que iria ser necess rio carregar o GameBoy com o software da aplica o que se iria desenvolver Outra importante fase a considerar foi o estudo da arquitectura e protocolo DECT Digital Cordless Telephone Technology Este protocolo utilizado nos vulgares telefones port teis e as suas caracter sticas s o perfeitas para ser utilizado no mbito deste projecto O abandono deste sistema de comunica es foi o resultado do elevado pre o deste m dulo de comunica es indo de encontro directo
82. ta rotina a respons vel por todo o processamento dos bytes recebidos pela porta s rie identifica se s o bytes validos interpreta os segundo o GBDTProtocol e decide o que fazer com o byte recebido No caso do Byte pertencer a um comando de controlo guarda o na vari vel adequada no caso de ser um byte de imagem chama outra sub rotina para o enviar para o ecr No caso de ser um byte n o valido para o protocolo ele descartado e a sub rotina activada por interrup o aquando a recep o dum novo byte Sub Rotina de impress o da imagem no ecr com zoom Private Sub ecran pixel As Integer Esta rotina faz um zoom de quatro vezes da imagem que recebe isto cada byte que recebe referente imagem processa o como se tiv ssemos recebido 4 bytes e imprime os no ecr Sub Rotina de impress o da imagem sem zoom no ecr Private Sub ecransemzoom pixel As Integer Esta rotina est encarregue de imprimir no ecr a imagem recebida do emissor Imprime a imagem no tamanho com que e recebido pela Artificial Retina ou seja 128 x 112 pixeis Sub Rotina de configura o da COM 1 Private Sub COMI Click 56 p s Rotina de activa o da COM 1 esta rotina prepara a aplica o para receber os dados da porta s rie pela COM 1 Sub Rotina de configura o da COM 2 Private Sub COM2 Click Rotina de activa o da COM 2 esta rotina prepara a aplica o para receber os dados da porta s rie pela
83. tenmaAh eee 19 Figura 9 Esquema de liga es da AR eee eee 19 Figura 10 Programa o de um registo da AR eee 20 Fig ura11 Inicio da captura de uma imagem serra 20 Figura 12 Interruptor do LED de Infravermelhos 21 Figura 13 Din mica do sinal anal gico de saida da AR 21 Figura 14 Esquema de liga es da ADC0820 RD mode 22 Figura 15 Diagrama de funcionamento da ADCO820 RD Mode 22 Figura 16 Esquema de liga es do amplificador e filtro de udio 23 Figura 17 Resposta em frequ ncia dofitro eee eee 24 Figura 18 Esquema de liga es da RAM externa cccccceecceeeeeeseeeeeeeeeees 25 Figura 19 Radiometrix BIM2 433 160 erre 26 Figura 20 Modos de funcionamento do BiM2 433 160 26 Figura 21 Esquema do inversor de RF_SEL erraram 26 Figura 22 Esquema de liga es do BiM2 433 160 do emissor 2f Figura 23 Ceutododrtverdeht Z 21 Figura 24 Circuito de alimenta o do emissor re 28 Figura 25 Cartucho de desenmvohvimento eee eee 29 Figura 26 X CHANGER programador de Cartuchos eee 29 Figura 27 Esquema de liga es ao PIC18F458 no receptor 31 Figura 28 Diagramas de WR e RD na PSP eee 32 Figura 29 Sistema de tiles e paletes do GameB
84. ts atrav s de uma latch para escrever um endereco com mais de 8 bits Neste caso sempre necess ria mais do que uma instru o para aceder a um endere o de mem ria A figura seguinte apresenta a soluc o encontrada para ligar uma SRAM de 8KB ao PIC 24 pa L J EN A DA TALU Figura 18 Esquema de liga es da RAM externa O porto B do PIC do tipo latched escolhido como BUS de endere os sendo o seu bit mais significativo RB7 o sinal de Latch Enable LE Nesta configura o s o necess rias duas escritas no PORTB para aceder a uma posi o de mem ria sendo poss vel endere ar um m ximo de 2 Bytes ou seja 16KBytes A primeira escrita feita com a latch activada LE a zero aqui s o colocados os bits menos significativos do endere o na SRAM em seguida a latch desactivada LE a um e s o escritos os bits mais significativos na SRAM Nesta altura o endere o j est v lido sendo em seguida activado o sinal de Chip Select CS da SRAM e o respectivo sinal de leitura OE ou escrita WE A latch usada 74HC373 apresenta nas sa das buffers tri state que s o controlados pelo sinal Output Enable OE estes podem estar sempre ON ou seja massa porque neste caso n o h partilha do barramento por mais dispositivos 3 1 5 Transceiver no emissor BiM2 433 160 Para assegurar as comunica es sem fios foram escolhidos os m dulos transceivers BiM2
85. universidade de aveiro 30 anos a projectar futuros Intercomunicador Digital de Imagem e Som sem Fios Autores S rgio Ivan Lopes N 18238 Fernando Jorge Ventura N 13246 Orientadores Prof Rui Escadas Prof Armando Pinto p i A aplica o que se pretende implementar e um intercomunicador de som e imagem port til e de baixo custo As comunica es s o sustentadas por um sistema de comunica es local LAN Local rea Network sem fios Esta LAN permite que haja fluxo de informa o entre os v rios n s que a comp em C maras Displays PC s O custo do equipamento um dos factores que se pretende controlar por isso considerou se o uso de um Gameboy como terminal de recep o de imagem dado o seu baixo custo e a sua portabilidade No final o equipamento desenvolvido ter uma rela o qualidade pre o tentadora N o inten o deste projecto implementar uma aplica o que apresente imagem de alta resolu o e som de alta fidelidade o conceito base prende se com uma comunica o fi vel e eficaz entre dois ou mais elementos do sistema Resumo ndice gel PIQUIAS e et seta E a eta e Et a at ai e E DIEN NEM UIS a 5 LIS CEL ADE AS OD RED TETTE 4 TOOGUU O tusnad a al al n n a 8 2 Arquitectura do Intercomunicador eee eee 9 VA Rico MER T T m 10 22 cro 10 2 9 COMUNICA ES ebe 11 3 Projecto de Hardware
86. ver figura 33 tendo o OR sido gerado com dois d odos de sinal 1N4148 eliminando assim o uso de uma gate Figura 33 Circuito que gera os sinais de PSP CSY e PSP RD 35 M O som reposto do dom nio digital para o anal gico com recurso a uma DACO832 que apresenta uma resolu o de 8 bits e um tempo de convers o de tus Esta DAC optima para interface com microcontroladores j que apresenta linhas de selec o dedicadas para liga o a barramentos de dados gerais 3 2 3 Bloco udio do receptor A DAC0832 necessita de uma tens o de refer ncia negativa o que nesta fase um problema j que no receptor s temos a tens o de alimenta o do circuito disponibilizada pelo GameBoy que de 5V Para criar uma tens o de refer ncia negativa para a DAC usou se uma linha digital do PIC18F458 para gerar uma onda quadrada que por sua vez ser transformada numa tens o negativa atrav s de um circuito do tipo charge pump Figura 34 Circuito de condicionamento e filtragem do sinal de udio Como a DAC tem o seu pr prio barramento de dados n o necess rio utilizar o CS para a seleccionar aquando da escrita Os pinos de Input Latch Enable ILE e de Transfer Control Signal XFER n o s o utilizados no modo single buffer da que estejam eternamente ligados a Vcc e GND respectivamente O pino de Vref que correspondente tens o de refer ncia negativa alimentado pelo circuito da figura seguinte

Download Pdf Manuals

image

Related Search

Related Contents

Sartorius Data Input YDI150. Port Drivers for YDI 150  Sony MDR NC6 User's Manual  Massive Spot light 50209/11/10  Electric forklift truck Original instructions 335-03 series E16C  Manuel d`installation  DORELLA L8 – DORELLA L12  CAMS user manual  Multibrackets 7350073730292 flat panel ceiling mount  SBS TEBOOKUN50Y mobile phone case  Valueline VLAP21000B10  

Copyright © All rights reserved.
Failed to retrieve file