Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Jaguarina 2008
Monografia apresentada disciplina Trabalho Graduao III, do Curso de Cincias da computao da Faculdade de Jaguarina, sob orientao do Prof. Dr. Andr Mendeleck, como exigncia parcial para concluso do curso de graduao.
Jaguarina 2008
COSTA, Danilo Siqueira. Painel Visual Usando Microcontrolador. Monografia defendida e aprovada na FAJ em 29 de julho de 2008 pela banca examinadora constituda pelos professores:
___________________________________________________________________
Prof. Dr. Andr Mendeleck FAJ orientador
___________________________________________________________________
Prof. Ms. Peter Jandl Junior FAJ
Dedico este trabalho aos meus familiares, esposa e a todos que sempre estiveram ao meu lado incentivando e dando todo apoio e respaldo necessrio para que me dedicasse aos estudos.
AGRADECIMENTOS
A realizao deste TCC s foi possvel em primeiro lugar com a graa de Deus, que me deu forca nos momentos difceis. E o apoio de algumas pessoas especiais. A todos manifesto minha gratido e de modo particular: Agradeo aos meus pais e parentes que sempre estiveram do meu lado me orientando e apoiando para que eu pudesse estar atingindo meus objetivos. Aos meus professores que souberam com maestria trazer-me conhecimentos tcnicos que contriburam para o incio da minha carreira profissional. Ao Dr. Andr Mendeleck pela orientao dedicada e pelo constante estmulo em todas as fazes de realizao deste trabalho. Ao meu amigo Rogrio Pimentel pelo apoio e pelas discusses crticas que, em muito, enriqueceram a realizao desta pesquisa. A minha esposa Mara Rbia e ao meu filho, ainda no ventre, que aguardo com ansiedade e felicidade seu nascimento, pois, so eles que me fornecem fora, esperana e motivao para enfrentar as dificuldades da vida.
COSTA, Danilo Siqueira. Painel Visual Usando Microcontrolador. 2008. 81 f. Monografia (Bacharelado em Cincia da Computao) Curso de Cincia da Computao da Faculdade de Jaguarina, Jaguarina.
RESUMO
A presente pesquisa pretende demonstrar que a utilizao de micro controlador em painel visual pode ser extremamente interessante, haja vista a facilidade de sua utilizao e o baixo custo que proporcionar aos usurios. O projeto inicia-se com uma breve introduo onde esclarece o conceito de comunicao e explana sobre os diversos tipos de painis de mensagens existentes hodiernamente. H neste captulo ainda a explicao do que vem a ser persistncia retiniana e fenmeno Phi, conceitos importantes para a compreenso plena da pesquisa em todas as suas particularidades. No segundo captulo, esclarecem-se os objetivos da pesquisa, quais seja a implementao de um sistema de texto criativo e de baixo custo, combinando funcionalidade e preo baixo, visando satisfao do usurio. A metodologia da pesquisa est no terceiro captulo e a descrio detalhada, atravs de imagens e quadros encontra-se no quarto captulo, onde cada componente descrito com mincia, esclarecendo-se a sua utilizao no desenvolvimento do projeto. Por fim, h a definio das etapas do projeto e a descrio dos resultados esperados e obtidos quando da utilizao do microcontrolador em painel visual. Espera-se que a pesquisa tenha chegado ao final cumprindo sua tarefa primordial, isto , a contribuio esperada para o maior desenvolvimento e divulgao da cincia da computao, melhorando e facilitando, atravs de sua ideal utilizao, a vida de todas as pessoas direta ou indiretamente. Palavras-chave: MICROCONTROLADOR, PIC, PERSISTNCIA RETINIANA, FENMENO PHI, PAINEL VISUAL.
COSTA, Danilo Siqueira. Visual Board Using Microcontroller. 2008. 81 f. Monografia (Bacharelado em Cincia da Computao) Curso de Cincia da Computao da Faculdade de Jaguarina, Jaguarina.
ABSTRACT
This research aims to demonstrate that the use of microcontroller in visual board can be extremely interesting, due to ease of use and low cost that will provide users. The project begins with a brief introduction explains where the concept of communication and explained about the different types of bulletin boards existing. There is still a chapter explanation of what are being retinal persistence and Phi phenomenon, concepts important to understanding the full search in all their particularities. In the second chapter, it is clarified the objectives of the research, namely, the implementation of a system of creative text and low cost, combining functionality and low price, seeking user satisfaction. The methodology of the survey is the third chapter and detailed description, through pictures and paintings is at the fourth chapter, where each component is described in detail, explaining itself to its use in developing the project. Finally, there is the definition of the stages of the project and the description of the results expected and obtained when the use of a microcontroller. Finally, there is the definition of the stages of the project and the description of the results expected and obtained when the use of a microcontroller visual panel. It is expected that the search has reached the end fulfilling its primary task, that is, the expected contribution to the further development and dissemination of science of computing, improving and facilitating, through its optimal use, the life of all persons directly or indirectly. Word-key: MICROCONTROLLER, PIC, RETINAL PERSISTENCE, PHI PHENOMENON, VISUAL BOARD.
LISTA DE FIGURAS
FIGURA 01:- Diagrama explicativo do projeto consolidado.................................................. 27 FIGURA 02:- Layout do PIC16F628A .................................................................................. 28 FIGURA 03:- Programa em linguagem Basic do Painel FAJ TCC-2 .................................... 33 FIGURA 04:- Hardware painel visual IR-RX propeller........................................................ 33 FIGURA 05:- Leds de alto brilho .......................................................................................... 34 FIGURA 06:- Circuito do microcontrolador / IR .................................................................... 34 FIGURA 07:- Esquema eltrico do painel IR-RX.................................................................. 35 FIGURA 08:- Diagrama de bloco do painel IR-RX ............................................................... 36 FIGURA 09:- Hardware da placa interface IR TX.............................................................. 37 FIGURA 10:- Ligao do cabo serial.................................................................................... 38 FIGURA 11:- Esquema eltrico da placa interface IR-TX..................................................... 38 FIGURA 12:- Diagrama de bloco da placa interface IR-TX .................................................. 39 FIGURA 13:- Hardware gravador JDM ................................................................................ 40 FIGURA 14:- Esquema eltrico do gravador JDM................................................................ 41 FIGURA 15:- Cabealho Microcode Studio.......................................................................... 43 FIGURA 16:- Exemplo da estrutura do uso dos devices ...................................................... 43 FIGURA 17:- Instruo do uso do comando LOOKUP2....................................................... 44 FIGURA 18:- Instruo para ativar a velocidade da taxa de transmisso serial ................... 45 FIGURA 19:- Programa em linguagem Basic do painel visual IR-RX................................... 48 FIGURA 20:- Autor do programa IRSEROUT ...................................................................... 49 FIGURA 21:- Descrio dos caracteres da tabela................................................................ 50 FIGURA 22:- Programa em linguagem Basic da placa de interface IR-TX........................... 62 FIGURA 23:- Layout do editor Basic Microcode Studio........................................................ 64 FIGURA 24:- Layout do compilador IC-PROG ..................................................................... 65 FIGURA 25:- Estrutura da compilao dos cdigos para o PIC ........................................... 66 FIGURA 26:- Arquivo do projeto e as extenses usadas ..................................................... 67 FIGURA 27:- Software para comunicao serial.................................................................. 68 FIGURA 28:- Painel de mensagem acabado com o efeito das luzes flutuando.................... 72
LISTA DE TABELAS
TABELA 01:- Cronograma das aes na realizao do projeto ........................................... 25 TABELA 02:- Tabela dos caracteres.................................................................................... 81
10
11
SUMRIO
1. 1.1. 1.2. 1.3. 1.3.1. 1.3.2. 1.3.4. 1.3.5. 1.3.6. 1.3.7. 1.4. 1.5. 1.6. 1.6.1. 1.6.2. 2. 3. 3.1. 4. 4.1. 4.1.1. 4.1.2. 4.1.3. 5. 5.1. 5.1.1. 5.1.2. 5.2. 5.2.1. 5.2.2. 5.2.3. 5.2.4. 6. 6.1. 6.2. INTRODUO............................................................................................................ 13 Comunicao ........................................................................................................... 13 Comunicao humana ............................................................................................. 14 Painel de mensagem................................................................................................ 14 Painel eletrnico................................................................................................... 15 Painel indicador de senha .................................................................................... 15 Painel terminal de passageiros............................................................................. 16 Painel eletrnico de votao................................................................................. 17 Painel eletrnico esportivo.................................................................................... 17 Painel de bolsa de mercadorias ou aes ............................................................ 17 Relgios digitais ....................................................................................................... 18 Outdoor eletrnico.................................................................................................... 18 Introduo ao projeto ............................................................................................... 18 Persistncia retiniana e fenmeno phi.................................................................. 19 Computao e microcontroladores ....................................................................... 20
OBJETIVOS ............................................................................................................... 22 METODOLOGIA ......................................................................................................... 23 Cronograma ............................................................................................................. 24 PROJETO................................................................................................................... 26 Hardware ................................................................................................................. 26 Hardware parte 01: Painel visual IR-RX propeller .............................................. 28 Hardware parte 02: Placa interface IR-TX ............................................................ 36 Hardware parte 03: Gravador PIC JDM ................................................................ 39 Firmware .................................................................................................................. 42 Firmware parte 01: Painel IR-RX propeller......................................................... 42 Firmware parte 02: Placa interface IR-TX............................................................. 49 Softwares ................................................................................................................. 63 Editor microcode studio ........................................................................................ 63 Programador IC-Prog ........................................................................................... 64 Compilador Picbasicpro........................................................................................ 65 Interface micro serial RogerCom ....................................................................... 67 Estudos e pesquisas ................................................................................................ 69 Implementao do projeto ........................................................................................ 69
PROGRAMAS ............................................................................................................ 42
12
RESULTADOS ........................................................................................................... 71 Planejamento ........................................................................................................... 71 Resultados esperados.............................................................................................. 71 O efeito do painel visual ........................................................................................... 71 CONCLUSO ............................................................................................................. 73 REFERNCIAS BIBLIOGRFICAS ........................................................................... 74 ANEXOS..................................................................................................................... 76 APNDICE ................................................................................................................. 78
13
1. INTRODUO
Os sistemas de textos usualmente utilizam matrizes de leds, painis luminosos, plasma ou outros tipos de mecanismos de alto custo. O objetivo da presente pesquisa demonstrar a implementao de um sistema mais simples, de baixo custo, criativo e conveniente, utilizando-se para isso a combinao de um microcontrolador com as teorias da fsica. Ao combinar funcionalidade com menor preo, os microcontroladores esto se tornando um componente cada vez mais comum em nossas vidas. A flexibilidade e a versatilidade de implementao deste componente so imensas, bem como a fcil interao com os microcomputadores atuais e inmeros programas e softwares dedicados para este tipo de aplicao. Os microcontroladores em conjunto com circuitos eletroeletrnicos possuem a propriedade de interpretar sinais, nveis de tenses e sensores externos e respond-los prontamente, em conseqncia, executar alguma tarefa pr-estabelecida. Em razo disso, dispositivo de comando e circuitos de interao tem incorporado freqentemente o uso dos microcontroladores nos projetos eletroeletrnicos.
1.1. Comunicao
A comunicao sempre foi uma necessidade e uma caracterstica da espcie humana, destarte surgiram em princpio os gestos, os rudos e a fala e com o desenvolvimento desta ultima deu-se incio a formao do vocabulrio, da linguagem e dos dialetos. Desta forma, a capacidade de comunicao juntamente com o raciocnio lgico se tornou o grande diferencial da nossa espcie em relao s outras. Com o desenvolvimento da humanidade o registro dos fatos tornou-se necessrio, surgindo ento linguagem escrita. Os primeiros meios de linguagem escrita conhecidos foram os desenhos deixados pelos homens pr-histricos nas cavernas - figuras rudimentares que retratavam sua rotina, a caa e a organizao dos grupos naqueles tempos. Ao evoluir, o homem desenvolveu outros tipos de mecanismos de registros, chamados smbolos, que passaram a ser usados na linguagem escrita, desenvolvendo a criao de palavras, frases e textos escritos. Assim, cada civilizao acabou por desenvolver seu prprio alfabeto, temos como exemplo dentre vrios, os antigos egpcios, que criaram os hierglifos, os smbolos da escrita oriental, bem como os alfabetos atuais provenientes do latim, do romano e do hebraico oriundos dos povos europeus e do oriente mdio.
14
A importncia da comunicao evidencia-se com o advento da propaganda e da publicidade e conseqentemente com a sua explorao econmica. Tal evidencia d-se igualmente em sua utilizao para fins militares, na disseminao e imposio de determinada cultura a outros povos. O domnio do poder atravs da comunicao fez com que alguns povos se destacassem em detrimento de outros que tiveram sua cultura, linguagem oral e escrita dizimadas. Assim, com a natural evoluo da comunicao, o homem passou a se dedicar ao aprimoramento da linguagem para a explorao comercial, surgindo, em conseqncia, veculos de comunicao como o Correio, a Imprensa, o rdio, o telefone, a televiso, a Internet, a comunicao via satlite, o telefone celular e mais recentemente nas indstrias: conceitos de Visual Factory e Andon. Em conseqncia desse desenvolvimento, surgiram especialistas nas diversas reas de comunicao, estudiosos do tema e empresas especializadas, vez que, nos encontramos em uma poca em que a informao de fundamental importncia para todos os setores sendo a comunicao essencial no nosso dia a dia para o desenvolvimento de qualquer atividade.
15
1.3.1.Painel eletrnico
Os painis eletrnicos de mensagem so sistemas de informao automatizados que possibilitam diversas aplicaes nos setores: industrial, comercial, empresarial e pblico. utilizado flexivelmente em ambiente externo e interno, so produzidos com leds de alta luminosidade ou matrizes modulares, podendo utilizar software dedicado para edio e aplicao em rede. Tambm se caracteriza por possuir diversas configuraes, baixo consumo de energia e dispensa mo-de-obra especializada para sua operao.
1.3.3.Painel industrial
Os painis industriais so dispositivos desenvolvidos para facilitar a comunicao e as informaes para os funcionrios e clientes de empresas, estabelecimentos comerciais ou rgos pblicos na utilizao dos seguintes sistemas:
16
17
As caractersticas tcnicas desse sistema so evidenciadas quando da atualizao das informaes atravs de um software dedicado em conjunto com o sistema de logstica e banco de dados. O sistema opera em ambientes informatizados de rede/Internet e tem dimenses e recursos variveis, podendo ser facilmente configurados de acordo com as caractersticas de cada terminal. No requer mo-de-obra especializada para operao.
18
19
20
Este autor descobriu que um fenmeno de ordem psquica ocorre quando duas imagens so expostas aos olhos humanos em diferentes etapas, uma aps a outra e com pequenos intervalos de tempo, sendo que a percepo somente em relao a um nico estmulo que se move da primeira etapa para segunda. Alguns autores consideram um engano comparar o fenmeno Phi com o da persistncia retiniana, pois seriam duas anlises, com interpretaes diferentes, do mesmo fenmeno. Porm o fenmeno Phi no invalida o da persistncia retiniana, cujo fenmeno psquico e no fsico, podendo ser ainda considerado um fenmeno complementar, ao qual, a sensao idntica ao da persistncia retiniana.
1.6.2.Computao e microcontroladores
Atualmente quando se fala em computao primeira imagem que vem mente da maior parte da populao aquela figura do homem sentado em frente ao seu desktop computador (PCs), Internet, impressora, etc. Para os indivduos que possuem um pouco mais de conhecimento alm do que foi escrito acima se devem citar tambm as linguagens computacionais como Java, C++, C, Delphi, Pascal, Basic etc, os servidores, notebook, sistemas operacionais, antivrus, webdesigner e etc. Todavia no se pode ignorar a linguagem computacional presente no cotidiano no relacionado diretamente ao microprocessador (computador) e seus perifricos, como o caso dos microcontroladores. Os microcontroladores so circuitos integrados (CI) reprogramveis, capazes de armazenarem de pequenos a grandes programas, dependendo da necessidade do usurio, alm de dados de acordo com a otimizao correlacionada. O seu uso est a cada dia mais comum e pode se dar na execuo de tarefas simples e complexas agrega conforto e facilidade ao dia-a-dia, sendo perfeitamente adequado para as mais variadas aplicaes nos diversos setores, tais como, em residncias, na instalao de alarmes, de portes eletrnicos, de fechaduras eltricas, de mquina de lavar roupas, de mquinas de lavar louas, geladeiras, microondas e com a conseqente evoluo do seu uso poder estar em um futuro bem prximo no controle total de uma casa. Na rea industrial existe uma ampla variedade de microcontroladores, os quais viabilizam o desenvolvimento de solues personalizadas, adequando-se a diversas aplicaes tais como, por exemplo, em sensores, robs, avies, radares, arsenal blico, coletores de dados, mquinas, bancadas, testadores, esteiras, etc.
21
No setor de comrcio, a sua aplicao se d em lojas, elevadores, sistemas de segurana, cartes inteligentes, interfaces de sistemas, cancelas, etc. O baixo consumo de energia do microcontrolador, vez que se utiliza at de baterias e a flexibilidade de reprogramao consiste em imensas vantagens para a utilizao e aprimoramento desse programa. Os profissionais que desenvolvem aplicaes baseadas neste componente normalmente utilizam linguagem assembly para o desenvolvimento dos seus programas. Entretanto, atualmente existem outras opes utilizando linguagem de alto nvel como C, Pascal e BASIC, que possuem excelente custo-benefcio no tempo de desenvolvimento e facilidade de aprendizado. Nesse sentido, optou-se pela linguagem BASIC na elaborao deste trabalho. O BASIC uma linguagem, que significa Beginners All-Purpose Symbolic Instruction Code, criada por Kemeny e Kurtz em 1.963 com o objetivo de facilitar o ensino de programao. Foi uma linguagem muito difundida nos anos 80, reaparecendo recentemente como uma linguagem de programao de alto nvel. Estes cdigos de instrues so muitos utilizados pelos programadores nos projetos em que utilizam microcontroladores, juntamente com a linguagem Pascal e C, por ser de fcil integrao a editores, compiladores e gravadores de PIC.
22
2. OBJETIVOS
O primordial objetivo da presente pesquisa projetar e implementar um sistema de texto em movimento criativo, de baixo custo e de fcil comercializao, combinando funcionalidade e preo baixo. Para o alcance da finalidade do projeto essencial a pesquisa e o uso da tecnologia dos microcontroladores juntamente com a teoria da multiplexao e algumas leis da fsica. Igualmente importante se faz o aproveitamento da inrcia visual humana, a fim de criar iluso espacial, onde os caracteres parecem que esto flutuando no espao. Fundamentais para o desenvolvimento do projeto os estudos da tecnologia envolvida nos microcontroladores, programao e gravao dos mesmos, estudos dos princpios fisiolgicos e tambm psicolgicos, nos quais o instrumental se apia: persistncia retiniana e o fenmeno Phi alm de outras teorias da fsica. Alm disso, sero necessrios estudos e pesquisas na rea de eletrnica e de telecomunicaes, para por fim realizar a aplicao de conceitos tericos adquiridos em diversas matrias de forma prtica e eficiente.
23
3. METODOLOGIA
Esse trabalho foi elaborado conforme a metodologia descrita a seguir:
1. Levantamento bibliogrfico: Nesta etapa foi realizados, pesquisas em livros, sites da internet, artigos e revistas tcnicas sobre os painis de mensagens, meios de comunicao e microcontroladores. 2. Estudo sobre microcontroladores: Foi realizado um estudo sobre conceitos, definies sobre microcontroladores, sua funo, bem como suas vantagens e desvantagens. 3. Levantamento de produtos existentes: Foi realizada uma pesquisa buscando os produtos existentes no mercado no que dizem respeito aos painis visuais e meios de comunicao do mercado e suas funes e caractersticas. 4. Estudo detalhado dos softwares: Foram realizados estudos sobre os editores, compiladores, programadores e gravadores existentes no mercado, bem como seu funcionamento e vantagens e desvantagens. Para a escolha posterior. 5. Experimentos computacionais: Nesta etapa foram realizados testes prticos, verificando o desempenho dos softwares, firmwares e hardware do painel visual usando microcontroladores. 6. Desenvolvimento do Projeto: Desenvolvimento prottipo, onde foram realizados testes e implementao e o levantamento dos elementos necessrios para a concepo do mesmo. 6. Resultados: Foram descritos os resultados obtidos e os esperados da implementao do projeto e seus benefcios. 7. Monografia: Escrita da monografia foi desenvolvida desde o decorrer dos estudos dos painis e meios de comunicao e o incio do levantamento dos softwares, firmwares e programas continuidade na mesma com o decorrer dos estudos.
24
3.1. Cronograma
Abaixo podemos observar detalhadamente todas as etapas do cronograma da a elaborao da monografia e juntamente com a execuo do projeto com e apresentao final do trabalho de graduao do curso:
Jun./2007 Discusso do tema da pesquisa com o professor orientador; Ago./2007 Realizao do plano de estudo junto ao coordenador do curso; Ago./2007 Anteprojeto consensuado / assinado / atualizado junto ao orientador; Ago./2007 Entrega do anteprojeto no ncleo de estgio; Ago./2007 Reviso do TCC / Objetivos do Projeto; Ago./2007 Introduo ao tema; Ago./2007 Reviso Bibliogrfica; Set./2007 Pesquisas / Estudos; Set./2007 Incio do TCC com embasamento terico; Set./2007 Descrio do projeto; Out./2007 Incio do Projeto / Discusso com o orientador; Nov./2007 Resultados / Concluso e Reviso Bibliogrfica; Dez./2007 Anexos / Fluxogramas; Dez./2007 Desenvolvimento da apresentao em PowerPoint; Dez./2007 Entrega do TCC-2 no ncleo de estgio; Dez./2007 Apresentao do resultado parcial do TCC-2; Fev./2008 Pesquisas / Estudos; Mar./2008 Implementao do projeto e do programa; Mar./2008 Programa Comentado / Revisado; Abr./2008 Entrega do prottipo do projeto; Maio/2008 Ajustes / Funcionamento do projeto; Jun./2008 Entrega do projeto ao orientador; Jun./2008 Entrega do TCC-3 no ncleo de estgio; Jun./2008 Apresentao Final.
25
Atividade / Data Escolha do tema Plano de Estudo Incio do Anteprojeto Reviso Anteprojeto Avaliao do Anteprojeto Entrega do Anteprojeto Incio do TCC Pesquisas / Estudos Entrega do TG2 Apresentao - TG2 Avaliao - TG2 Implementao / prtica Testes Melhorias Entrega do TG3 Apresentao - TG3 Avaliao - TG3 ndice Fechado Andamento Atrasado
Jun
Ago
Set
Out
Nov
Dez
Jan
Fev
Mar
Abr
Mai
Jun
26
4. PROJETO
O presente projeto visa, atravs da utilizao do microcontrolador no painel visual, transmitir informaes, propagandas e mensagens de forma criativa e atrativa, gerando impacto visual nas pessoas que o observarem. O painel visual rotativo est dividido em trs partes bsicas: hardware, software e firmware que sero descritos detalhadamente ao longo do trabalho.
4.1. Hardware
O hardware compe as partes fsicas, concreta e visual do projeto, consiste na estrutura onde estaro acondicionados os componentes eletrnicos responsveis pela sustentao, proteo e ligaes eletrnicas. Divide-se em trs partes: painel IR-RX, placa de interface IR-TX e gravador PIC. A placa de interface IR-TX responsvel por capturar os dados digitados no computador pelo usurio e envi-los via infravermelho ao painel IR-RX, que por sua vez responsvel por plotar os dados no painel visual. O gravador o hardware responsvel pela gravao dos microcontroladores - PIC. Segue o diagrama explicativo a seguir: A figura 01 corresponde ao diagrama geral consolidado do projeto:
27
INFRAVERMELHO
PLACA IR-TX SINAL INFRA PIC-2 VIA SERIAL INTERFACE EDITOR DE TEXTO VIA SERIAL
SERIAL
ICPROG
a.)
PIC16F628A:
O microcontrolador escolhido foi o PIC16F628A, fabricado pela Microchip Technology
disponvel em: http://ww1.microchip.com/downloads/en/DeviceDoc/40044F.pdf, e por se tratar de um microcontrolador de baixo custo. O microcontrolador escolhido rene os mesmos recursos do PIC16F84, com encapsulamento e pinos compatveis, invariavelmente no requer nenhuma alterao de hardware em um upgrade ou substituio. Segue as caractersticas do PIC16F628A: - 18 pinos; - 35 instrues; - Memria tipo flash 2048 palavras (1 palavra 32 bits); - 224 bytes de memria RAM; -128 bytes de memria EEPROM; - 8 bits por endereo de memria; - 16 pinos para entrada e sada; - outras caractersticas como comparador interno, clock interno, WDT, proteo, etc.
28
29
A pilha est acoplada na placa do circuito, e tambm ser aproveitada para realizar o balanceamento da rotao da haste, a fim de minimizar os efeitos dos solavancos e conseqentemente evitar possveis danos ao circuito. Desta forma, a haste presa no eixo do motor, que por sua vez, fixado na estrutura de madeira e alimentado por uma fonte de tenso 12V. Durante o funcionamento do circuito, com a haste parada, observam-se os leds ascendendo e apagando, contudo ainda no se pode visualizar qualquer mensagem, porm assim que a haste comea a girar, a mensagem por trs dos leds se decodifica, devido aos princpios da persistncia retiniana. A rotao do motor influencia diretamente nos caracteres plotados no painel, pois quando em rotao maior da haste, os caracteres ficam mais longos, e em rotao menor, os caracteres ficam mais curtos. Fato este de extrema importncia, vez que dependendo da rotao / alimentao do motor, a leitura da mensagem poder ficar impossibilitada. O microcontrolador - PIC deste circuito ser programado (firmware) para monitorar um sinal codificado em seu port A1 - pino 18 - atravs do sensor infravermelho, e uma vez recebido este sinal, o PIC far uma tratativa interna de decodificao, e enviar os sinais aos leds - polarizados pelos resistores nos seus ports RB0 a RB6 para plotar a mensagem, esta mensagem ficar escrita at que outro sinal / mensagem seja recebido. Caso um novo sinal no seja recebido, o microcontrolador continuar a exibir a mesma mensagem nele gravada e identificada anteriormente, ficando em loop, a monitorar novo sinal, e caso no identificado, a escrever a mensagem anterior. Este fato devido ao programa no PIC gravado e em virtude da estrutura do projeto, pois a haste possui um sensor reed switch fixado na sua placa, que ininterruptamente quando completa a volta passa pelo campo magntico do im fixado na estrutura de madeira, enviando um pulso para o port A0 - pino 17 (RA0) executando o PIC novamente sua tarefa, assim sucessivamente, do que se percebe que sempre teremos o sinal de sincronismo do circuito. O sinal utilizado o infravermelho, o circuito do painel possui um sensor capaz de identificar e receber este sinal e envi-lo ao PIC, no h a necessidade de uma tratativa especial para este sinal, pois o microcontrolador possui robustez e confiabilidade para tratlo. Este sinal composto por um vetor com os cdigos que sero interpretados pelo programa (firmware) dedicado ao painel. Segue o exemplo do firmware desenvolvido para a apresentao do TG2, onde fora apresentada a mensagem FAJ TCC 2, ao qual podemos interpretar claramente a rotina do circuito, alinhando o delay do circuito para que possamos notar a mensagem e assim aproveitando os efeitos da persistncia retiniana.
30
Nota-se que a seqncia dos caracteres est invertida justamente para se obter o efeito de uma palavra acima, no sentido horrio, e outra abaixo, no anti-horrio. FAJ 2 CCT. A figura 03 corresponde ao programa explicativo do funcionamento do projeto:
'********************************************************************************* '* Author : Danilo Costa '* Notice : Copyright (c) 2006 [select VIEW...EDITOR OPTIONS] '* '* Date '* Notes : All Rights Reserved : 08/12/07 : 16F628A daniloblick * * * * * *
'******************************************************************************** * 'Definio das variveis e declaraes CMCON = 7 TRISA.1 = 1 TRISA.2 = 1 TRISB = %00000000 OPTION_REG = $7f DELAY CON 600 PORTB = 0 'ROTINA PRINCIPAL INICIO: if PORTA.2 = 0 then MSG GOTO INICIO MSG: PORTB = %01111111 PAUSEUS DELAY PORTB = %01001000 PAUSEUS DELAY PORTB = %01001000 PAUSEUS DELAY PORTB = %01001000 PAUSEUS DELAY PORTB = %01000000 PAUSEUS DELAY PORTB = %00000000 PAUSEUS DELAY PORTB = %00111111 PAUSEUS DELAY PORTB = %01001000 PAUSEUS DELAY 'A 'F 'ZERA PORTB 'DEFINE PORTA COMO DIGITAL (COMP. ANAL. :OFF) 'PORTA.1 COMO ENTRADA P/ RECEPTOR IR 'PORTA.2 COMO ENTRADA P/ SENSOR MAGNTICO / REED 'SETA TODOS OS PINOS COMO SADA 'HABILITA PULLUP DO PORTB
31
PORTB = %01001000 PAUSEUS DELAY PORTB = %01001000 PAUSEUS DELAY PORTB = %00111111 PAUSEUS DELAY PORTB = %00000000 PAUSEUS DELAY PORTB = %00000110 PAUSEUS DELAY PORTB = %00000001 PAUSEUS DELAY PORTB = %00000001 PAUSEUS DELAY PORTB = %01000001 PAUSEUS DELAY PORTB = %01111110 PAUSEUS DELAY PORTB = %01000000 PAUSEUS DELAY PORTB = %00000000 PAUSEUS DELAY PORTB = %00000000 PAUSEUS DELAY PORTB = %00000000 PAUSEUS DELAY PORTB = %00000000 PAUSEUS DELAY PORTB = %00000000 PAUSEUS DELAY PORTB = %00000000 PAUSEUS DELAY PORTB = %01100111 PAUSEUS DELAY PORTB = %01001001 PAUSEUS DELAY PORTB = %01001001 PAUSEUS DELAY PORTB = %01001001 PAUSEUS DELAY PORTB = %01110011 PAUSEUS DELAY '2 'J
32
PORTB = %00000000 PAUSEUS DELAY PORTB = %00000000 PAUSEUS DELAY PORTB = %00010000 PAUSEUS DELAY PORTB = %00010000 PAUSEUS DELAY PORTB = %00000000 PAUSEUS DELAY PORTB = %00000001 PAUSEUS DELAY PORTB = %01000001 PAUSEUS DELAY PORTB = %01000001 PAUSEUS DELAY PORTB = %01000001 PAUSEUS DELAY PORTB = %01000001 PAUSEUS DELAY PORTB = %01111111 PAUSEUS DELAY PORTB = %00000000 PAUSEUS DELAY PORTB = %00000001 PAUSEUS DELAY PORTB = %01000001 PAUSEUS DELAY PORTB = %01000001 PAUSEUS DELAY PORTB = %01000001 PAUSEUS DELAY PORTB = %01000001 PAUSEUS DELAY PORTB = %01111111 PAUSEUS DELAY PORTB = %00000000 PAUSEUS DELAY PORTB = %00000001 PAUSEUS DELAY PORTB = %00000001 'T 'C 'C '-
33
PAUSEUS DELAY PORTB = %00000001 PAUSEUS DELAY PORTB = %01111111 PAUSEUS DELAY PORTB = %00000001 PAUSEUS DELAY PORTB = %00000001 PAUSEUS DELAY PORTB = %00000001 PAUSEUS DELAY PORTB = %00000000 PAUSEUS DELAY GOTO INICIO '---------------------------------------------------------------------------------------------------------------FIGURA 03:- Programa em linguagem Basic do Painel FAJ TCC-2
As figuras 04, 05 e 06 correspondem os detalhes da haste, dos leds e do circuito controlador do hardware do painel visual IR-RX propeller:
34
35
IR
b.)
7 leds de alto brilho 1 PIC16F628A 7 resistores de 360 1 resistor de 10K 1 bateria 1 fonte 12V 1 Motor CC 1 Sensor IR-RX - infravermelho 1 Reed switch 1 Chave tipo pino 1 Im Placa, fios, sustentao de madeira, solda etc. A figura 08 mostra o diagrama do projeto painel IR-RX: 1/8 watts 1/8 watts
36
FONTE 12V
EIXO
HASTE
MOTOR
LED 01 LED 02
PIC -16F828A
PILHA
37
telefone, onde em uma das extremidades ser ligado num conector DB9 macho no pino terra - pino 5 - e outro no sinal - pino 3, sendo que na extremidade oposta estar um conector de telefone macho conectado placa do circuito atravs de um outro conector tipo fmea. Quando detectado o sinal, o PIC far uma tratativa interna (decodifica) e executar sua tarefa programada, ou seja, enviar o sinal ao painel IR-RX propeller, atravs do port RB7 - pino 13 - que polarizar o transistor BC548 emitindo assim o sinal trabalhado ao transmissor do sinal infravermelho. Percebe-se que o envio deste sinal da porta serial atravs do led amarelo ligado no pino 10, indicar o envio do sinal vindo do microcomputador e tambm o funcionamento do programa (firmware) da placa. Deve-se ressaltar que o transmissor infravermelho IR utilizado opera na freqncia de 36 KHz tornando o circuito estvel e imune interferncia externa. Para este hardware no ser usado o oscilador interno do PIC, mais sim um cristal oscilador de 4 MHz, pois dar mais estabilidade para o sinal, e ser ligado porta 15 e 16 junto com os capacitores (conforme o diagrama eltrico). As figuras 09 e 10 correspondem os detalhes da placa do circuito controlador do hardware placa interface IR-TX.
38
a.)
2 leds simples 1 PIC16F628A 2 resistores de 360 1 resistor de 1K 1 resistor de 22K 1/8 watts 1/8 watts 1/8 watts
39
1 cristal 4M 1 conector DB9 1 transistor BC548 1 Sensor IR-TX - infravermelho 1 Chave tipo push-boton 2 capacitores de 33pf 1 conector e fio tipo telefone Placa, fios, sustentao de madeira, solda etc.
PIC -16F828A
40
serialmente, utilizando os dados codificados pelo programador IC-PROG - sinal hexadecimal que codificaro em impulsos eltricos seriais para possibilitar a transferncia dos cdigos para a memria interna do PIC. Os nveis de tenso e os pulsos eletrnicos da porta serial podero ser aproveitados, caso o projeto utilize alimentao externa de fonte de tenso com voltagem entre 13V e 15V, para gerar os sinais / comandos no pino 5 MCLR (memory clear) necessrios gravao do microcontrolador PIC. Esclarece-se que no projeto faz-se uso do diodo zener para controlar as tenses nos pinos SDA e SDL e na alimentao do PIC. O gravador JDM (ou ludipipo) foi uma adaptao do gravador PICSTART da Microchip, o qual se tornou bastante popular. A figura 13 mostra os detalhes da placa do circuito do gravador PIC JDM.
41
FIGURA 14:- Esquema eltrico do gravador JDM FONTE: Disponvel em: http://www.jdm.homepage.dk/newpic.htm
a.)
1 diodo 1N4148 ou 1N4448 1 diodo zener 5,1V, watts 1 diodo zener 8,2V, watts 1 capacitor eletroltico de 100 f 25V 1 capacitor tntalo de 22 f ou 47f 16V 2 transistores BC547B NPN 1 conector para o PIC; 1 conector DB25, serial 1 conector e fio tipo telefone Placa, fios, solda etc.
42
5. PROGRAMAS
Os programas esto divididos em duas partes: firmwares e softwares. Os firmwares so os programas desenvolvidos para as instrues dos microcontroladores PIC, j os softwares so as ferramentas utilizadas para edio, compilao e programao dos microcontroladores PIC, alm do envio e recebimento de dados RS232 da porta serial. Os softwares utilizados no projeto so "free", quais sejam: Microcode Studio, PICBASIC PRO 2.47 e ICPROG 1.06A e RcomSerial.
5.1. Firmware
Os firmwares consistem em programas contidos internamente nos PICs, ou seja, so os dados (seqncia em cdigos de mquina) gravados no PIC para realizao de uma determinada tarefa. Portanto teremos os firmwares divididos em duas partes: um firmware para os microcontroladores-PIC do painel visual IR-RX propeller e outro para a placa interface IR-TX serial.
43
FIGURA 15:- Cabealho Microcode Studio FONTE: Microcode Studio - Disponvel em: http://www.picbasic.com/resources/win_ide.htm#Studio
Os includes permitem acessar sub-rotinas, definies ou outros arquivos que desejamos manter separado do programa, neste circuito estamos utilizando o include "Modedefs.Bas", que uma sub-rotina / programa desenvolvido por Leonard Zerman, Jeffrey Schmoyer Copyright (c) 2001 microEngineering Labs, Inc. All Rights Reserved, o qual permite definir a velocidade da taxa de transmisso dos dados do sinal serial. Alguns programadores, como o IC-PROG, possuem janelas para habilitar ou desabilitar os fusveis / caractersticas no momento da programao do microcontrolador. Como nem todos os programadores possuem esta caracterstica, a opo para contornar este problema definir diretamente no programa, atravs dos smbolos @ device e o comando desejado, como por exemplo, na figura 16:
A seguir sero definidas as configuraes das portas e as variveis, como por exemplo, a varivel D, que guardar os dados do vetor recebidos da interface IR-TX. O
44
programa ir iniciar com uma pausa de 500 micros segundos e aps rpido sinal (ascender dos leds) o painel mostrar o funcionamento do microcontrolador, e em seguida a esta mensagem o painel mostrar os smbolos definidos '???', indicando que esta pode ser enviada, caso no haja o recebimento, ficar em loop. Na rotina Main utiliza-se for de 0-29, definidos para receber os dados na velocidade de transmisso de 2400, estes dados so compostos pelos dados de IR_ID = 1 (chip select), pelo cdigo de sincronismo IR_Rcv (#OK) e pelos dados IR-TX - uma palavra de 6 caracteres. A funo da rotina inicio iniciar a rotina MSG quando detectado um de nvel baixo no port A2 que ir iniciar a mensagem. A rotina MSG utilizada para incrementar o dado e assim proporcionar a corrida da mensagem no painel, possuindo for com as funes LOOKUP das variveis para o uso do vetor na "plotagem" da mensagem. Por fim, h o retorno do programa e o reset das variveis. Em anexo encontram-se os detalhes das funes como definido na ajuda retirada do help topics do software Microcode Studio ou disponvel no site http://www.picbasic.com.br/man_port.pdf. Como podemos verificar nas figuras 17 e 18 abaixo.
FIGURA 17:- Instruo do uso do comando LOOKUP2 FONTE: Disponvel em: http://www.picbasic.com.br/man_port.pdf
45
FIGURA 18:- Instruo para ativar a velocidade da taxa de transmisso serial FONTE: Disponvel em: http://www.picbasic.com.br/man_port.pdf
46
A figura 19 a seguir corresponde ao programa explicativo do funcionamento do programa painel visual IR-RX:
'Program Daniloblick_IR-RX.BAS '********************************************************************************* '* Author : DANILO COSTA '* Notice '* '* Date '* Notes '* : Copyright (c) 2006 [select VIEW...EDITOR OPTIONS] : All Rights Reserved : 20/06/08 : 16F628A daniloblick REED SWICHT COMO SENSOR E IR P/ RECEBER MSG * * * * * * *
'********************************************************************************* '-----------------------------------------------------------------------------------------------Include "Modedefs.Bas" 'Define CHAR_PACING 1000 'Device Programming Options @ DEVICE pic16F628a, INTRC_OSC_NOCLKOUT ' System Clock Options @ DEVICE pic16F628a, WDT_OFF @ DEVICE pic16F628a, PWRT_OFF @ DEVICE pic16F628a, BOD_OFF @ DEVICE pic16F628a, MCLR_OFF @ DEVICE pic16F628a, LVP_OFF @ DEVICE pic16F628a, CPD_OFF @ DEVICE pic16F628a, PROTECT_OFF 'Definio das variveis e declaraes CMCON = 7 TRISA.1 = 1 TRISA.2 = 1 TRISB = %00000000 OPTION_REG = $7f PORTB = 0 '** Declare Variables ** DELAY CON 600 B0 VAR BYTE B1 VAR BYTE B2 VAR BYTE B3 VAR BYTE AUX VAR BYTE I VAR BYTE symbol IR = PORTA.1 'ENTRADA DO SINAL DE IR 'DEFINE PORTA COMO DIGITAL (COMP. ANAL. :OFF) 'PORTA.1 COMO ENTRADA P/ RECEPTOR IR 'PORTA.2 COMO ENTRADA P/ SENSOR MAGNTICO 'SETA TODOS OS PINOS COMO SADA 'ENABLE PORTB PULLUPS 'ZERA PORTB ' Watchdog Timer ' Power-On Timer ' Brown-Out Detect ' Master Clear Options (Internal) ' Low-Voltage Programming ' Data Memory Code Protect ' Program Code Protection
47
IR_ID
Var
Byte Byte 'RECEIVED VALUE 'VETOR QUE GUARDAR DADOS RECEBIDOS DA INTERFACE_IR
IR_Rcv Var
D VAR BYTE[30] PAUSE 500 b2 = 0 B3 = 29 aux = 0 portb = 127 pause 100 portb = 0 '? D[0] = 48 D[1] = 64 D[2] = 69 D[3] = 72 D[4] = 48 D[5] = 0 D[6] = 0 D[7] = 0 D[8] = 0 D[9] = 0 D[10] = 0 D[11] = 0 D[12] = 48 D[13] = 64 D[14] = 69 D[15] = 72 D[16] = 48 D[17] = 0 D[18] = 0 D[19] = 0 D[20] = 0 D[21] = 0 D[22] = 0 D[23] = 0 D[24] = 48 D[25] = 64 D[26] = 69 D[27] = 72
48
D[28] = 48 D[29] = 0 Main: FOR I = 0 TO 29 Serin2 IR,396,10000,INICIO,[ wait ("#OK"),IR_ID,IR_Rcv] ' RECEIVE THE DATA FROM THE IR-SENSOR ' AND SEARCH FOR THE THREE BYTE HEADER "#OK" D[I] = IR_Rcv NEXT PORTB = 1 PAUSE 1000 PORTB = 0 INICIO: if PORTA.2 = 0 then MSG GOTO INICIO MSG: AUX = AUX + 1 IF AUX = 3 THEN INC_MSG for B0 = B2 to B3 LOOKUP2 B0,[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,D[0],D[1],D[2],D[3],D[4],D[5],D[6],D[7],D[8],D[9],D[10],D[11],D[12], D[13],D[14],D[15],D[16],D[17],D[18],D[19],D[20],D[21],D[22],D[23],D[24],D[25],D[26],D[27],D[28],D[29],0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],B1 PORTB = B1 pauseUS DELAY PORTB = 0 next goto INICIO '------------------------------------------------------------------------------INC_MSG: B2 = B2 + 1 B3 = B3 + 1 AUX = 0 IF B3 > 80 THEN RESET GOTO INICIO '------------------------------------------------------------------------------RESET: B2 = 0 B3 = 29 AUX = 0 GOTO MAIN '------------------------------------------------------------------------------FIGURA 19:- Programa em linguagem Basic do painel visual IR-RX
49
Aps a definio das funes bsicas, o programa tem incio com o comando FOR para os leds indicarem que o programa / PIC comeou a funcionar, como a rotina MAIN possui a funo de reconhecer o sinal da serial do micro, no padro 9600 invertido de acordo com o serin2, verifica-se o cdigo # para entrada no FOR onde h o reconhecimento dos caracteres (5 letras) para a construo da palavra a ser escrita, ainda necessria consulta das letras maisculas na tabela pr-definida em binrio, a qual armazena o cdigo no vetor e us-lo na rotina GOSUB ENVIO. A rotina ENVIO utiliza a sub-rotina include "Irserout.Inc", do comando IRserout para enviar os bytes para IR-RX. O cdigo (# OK) fundamental para evitar que qualquer sujeira enviada para a serial seja interpretada e conseqentemente enviada para o IR-RX, e ainda por questes de segurana. Por fim, os leds amarelos piscaro para indicar o envio dos dados. Abaixo
50
obtemos a explicao dos padres dos vetores e os bytes definidos para o reconhecimento das letras para o envio e plotagem no painel visual IR-RX, atravs da figura 21 apresentada.
Plotagem da letra A
Decimal = 0 a 128 Ex: Byte = 1+2+4+8+16+0+0
Variavl Caractere
Caractere
"A" D0[0] = 31 D0[1] = 40 D0[2] = 72 D0[3] = 40 D0[4] = 31 D0[5] = 0 1 0 0 0 1 0 1 0 0 0 1 0 1 0 0 0 1 0 1 2 4
Binrio
2^0 2^1 2^2 2^3 2^4 2^5 2^6 8 1 1 1 1 1 0 16 1 0 0 0 1 0 32 0 1 0 1 0 0 64 0 0 1 0 0 0
Bit
D[0...4] = vetor que determina a plotagem dos caracteres = decimal
' Program Interface_IR-TX.BAS '********************************************************************************* '* Author : DANILO COSTA '* Notice : Copyright (c) 2006 [select VIEW...EDITOR OPTIONS] '* '* Date : All Rights Reserved : 20/06/08 * * * * * *
51
'********************************************************************************* '-------------------------------------------------------------------------------------------------------------------------------------------' **************************************************************************************************** ' * For use with EXPERIMENTING WITH THE PICBASIC PRO COMPILER '* ' * This source code may be freely used within your own programs. ' * However, if it is used for profitable reasons, please give credit where credit is due. ' * And make a reference to myself or Rosetta Technologies '* '* ' ' Send Asyncronous Serial Data over an Infra-Red Link ' At Various Baud Rates and Inverted Mode ' An Infra-Red LED should be Connected to PORTA.1 ' If longer range is required and NPN transistor could be employed as an amplifier ' ' Place Include "IRSEROUT.INC" ' At the front of the Program to load the new subroutine in ' ' To Use the IRSEROUT subroutine, Load the Variable:' IR_BYTE with the appropriate value (0-255) ' And Call the Subroutine:' GOSUB IRSEROUT ' ' Five New Defines have been added:' IRSEROUT_PORT.....Selects the Port for sending (ie PORTB) ' IRSEROUT_BIT......Selects the Pin for sending (ie 7) ' IRSEROUT_BAUD.....Selects the Baud Rate (ie 300,600,1200,2400) ' IRSEROUT_PACING...Selects the delay inbetween bytes sent. ' IRSEROUT_HEADER...Turns ON or OFF the 3-character header "#OK" ' ' IRSerout works with 4mHz, 8mHz, 10mHz and 12mHz Xtals ' This routine is for the 16F84, but any 14bit core PIC could be used '-------------------------------------------------------------------------------------------------------------------------------------------Include "Modedefs.Bas" Include "Irserout.Inc" @ DEVICE pic16F628a, WDT_OFF @ DEVICE pic16F628a, PWRT_OFF @ DEVICE pic16F628a, BOD_OFF @ DEVICE pic16F628a, MCLR_OFF @ DEVICE pic16F628a, LVP_OFF @ DEVICE pic16F628a, CPD_OFF ' Load in the New Subroutine ' Watchdog Timer ' Power-On Timer ' Brown-Out Detect ' Master Clear Options (External) ' Low-Voltage Programming ' Data Memory Code Protect , Default PortA , Default 1 , Default 1200 baud , Default 1ms , Default OFF Les. Johnson * * * * * * *
' ****************************************************************************************************
52
@ DEVICE pic16F628a, PROTECT_OFF ' ** Set Xtal Value in mHz ** Define OSC 4
CMCON = 7 TRISA.2 = 1 TRISB.4 = 0 TRISB.7 = 0 Define Define Define Define Define Define
'DEFINE PORTA COMO DIGITAL (COMPARADORES ANALGICOS:OFF) 'DEFINE PORTA.2 (PINO 1) COMO ENTRADA SERIAL DO PC 'DEFINE PORTB.4 COMO SADA P/ LED_AMARELO 'DEFINE PORTB.7 COMO SADA P/ IR (VIA BC548) 1000 PortB 2400 1 0 'Serout character pacing in us ' Set IRSEROUT Port ' Set IRSEROUT Pin ' Set IRSEROUT Baud Rate ' Set the delay between bytes sent (in ms) ' Turn on/off the three byte header "#OK"
CHAR_PACING
' ** New Defines for IRSEROUT ** IRSEROUT_PORT IRSEROUT_BIT 7 IRSEROUT_BAUD IRSEROUT_PACING IRSEROUT_HEADER
' ** Declare Variables ** V0 D0 IR_ID B0 VAR BYTE B2 VAR BYTE I VAR BYTE SYMBOL LED_AM rajada de ir symbol SI = PORTA.2 'SERIN PC = PORTB.4 'led indicador de que recebeu dados seriais do pc p/ iniciar Var Var Byte[5] Byte[30] Con 1 ' Transmitter number
' ** Start of Program ** Pause 500 FOR B0 = 0 TO 2 LED_AM = 1 PAUSE 50 LED_AM = 0 PAUSE 50 NEXT Main: serin2 SI,16468,[WAIT ("#"),STR V0\5] FOR B2 = 0 TO 4 IF V0[B2] = "A" THEN D0[0] = 31 D0[1] = 40 D0[2] = 72 ' aguarda "#" e guarda 5 caracteres no vetor ' n9600 ' Wait For the Pic to Initialize
53
D0[3] = 40 D0[4] = 31 D0[5] = 0 GOSUB ENVIO ENDIF IF V0[B2] = "B" THEN D0[0] = 127 D0[1] = 73 D0[2] = 73 D0[3] = 73 D0[4] = 54 D0[5] = 0 GOSUB ENVIO ENDIF IF V0[B2] = "C" THEN D0[0] = 62 D0[1] = 65 D0[2] = 65 D0[3] = 65 D0[4] = 34 D0[5] = 0 GOSUB ENVIO ENDIF IF V0[B2] = "D" THEN D0[0] = 127 D0[1] = 65 D0[2] = 65 D0[3] = 34 D0[4] = 28 D0[5] = 0 GOSUB ENVIO ENDIF IF V0[B2] = "E" THEN D0[0] = 127 D0[1] = 73 D0[2] = 73 D0[3] = 73 D0[4] = 65 D0[5] = 0 GOSUB ENVIO ENDIF
54
IF V0[B2] = "F" THEN D0[0] = 127 D0[1] = 72 D0[2] = 72 D0[3] = 72 D0[4] = 64 D0[5] = 0 GOSUB ENVIO ENDIF IF V0[B2] = "G" THEN D0[0] = 62 D0[1] = 65 D0[2] = 73 D0[3] = 73 D0[4] = 46 D0[5] = 0 GOSUB ENVIO ENDIF IF V0[B2] = "H" THEN D0[0] = 127 D0[1] = 8 D0[2] = 8 D0[3] = 8 D0[4] = 127 D0[5] = 0 GOSUB ENVIO ENDIF IF V0[B2] = "I" THEN D0[0] = 0 D0[1] = 65 D0[2] = 127 D0[3] = 65 D0[4] = 0 D0[5] = 0 GOSUB ENVIO ENDIF IF V0[B2] = "J" THEN D0[0] = 2 D0[1] = 1 D0[2] = 65
55
D0[3] = 126 D0[4] = 64 D0[5] = 0 GOSUB ENVIO ENDIF IF V0[B2] = "K" THEN D0[0] = 127 D0[1] = 8 D0[2] = 20 D0[3] = 34 D0[4] = 65 D0[5] = 0 GOSUB ENVIO ENDIF IF V0[B2] = "L" THEN D0[0] = 127 D0[1] = 1 D0[2] = 1 D0[3] = 1 D0[4] = 1 D0[5] = 0 GOSUB ENVIO ENDIF IF V0[B2] = "M" THEN D0[0] = 127 D0[1] = 32 D0[2] = 16 D0[3] = 32 D0[4] = 127 D0[5] = 0 GOSUB ENVIO ENDIF IF V0[B2] = "N" THEN D0[0] = 127 D0[1] = 16 D0[2] = 8 D0[3] = 4 D0[4] = 127 D0[5] = 0 GOSUB ENVIO ENDIF
56
IF V0[B2] = "O" THEN D0[0] = 62 D0[1] = 65 D0[2] = 65 D0[3] = 65 D0[4] = 62 D0[5] = 0 GOSUB ENVIO ENDIF IF V0[B2] = "P" THEN D0[0] = 127 D0[1] = 72 D0[2] = 72 D0[3] = 72 D0[4] = 48 D0[5] = 0 GOSUB ENVIO ENDIF IF V0[B2] = "Q" THEN D0[0] = 62 D0[1] = 65 D0[2] = 65 D0[3] = 66 D0[4] = 61 D0[5] = 0 GOSUB ENVIO ENDIF IF V0[B2] = "R" THEN D0[0] = 127 D0[1] = 72 D0[2] = 76 D0[3] = 74 D0[4] = 49 D0[5] = 0 GOSUB ENVIO ENDIF IF V0[B2] = "S" THEN D0[0] = 50 D0[1] = 73 D0[2] = 73
57
D0[3] = 73 D0[4] = 38 D0[5] = 0 GOSUB ENVIO ENDIF IF V0[B2] = "T" THEN D0[0] = 64 D0[1] = 64 D0[2] = 127 D0[3] = 64 D0[4] = 64 D0[5] = 0 GOSUB ENVIO ENDIF IF V0[B2] = "U" THEN D0[0] = 126 D0[1] = 1 D0[2] = 1 D0[3] = 1 D0[4] = 126 D0[5] = 0 GOSUB ENVIO ENDIF IF V0[B2] = "V" THEN D0[0] = 124 D0[1] = 2 D0[2] = 1 D0[3] = 2 D0[4] = 124 D0[5] = 0 GOSUB ENVIO ENDIF IF V0[B2] = "X" THEN D0[0] = 99 D0[1] = 20 D0[2] = 8 D0[3] = 20 D0[4] = 99 D0[5] = 0 GOSUB ENVIO ENDIF
58
IF V0[B2] = "Y" THEN D0[0] = 96 D0[1] = 16 D0[2] = 15 D0[3] = 16 D0[4] = 96 D0[5] = 0 GOSUB ENVIO ENDIF IF V0[B2] = "W" THEN D0[0] = 126 D0[1] = 1 D0[2] = 6 D0[3] = 1 D0[4] = 126 D0[5] = 0 GOSUB ENVIO ENDIF IF V0[B2] = "Z" THEN D0[0] = 67 D0[1] = 69 D0[2] = 73 D0[3] = 81 D0[4] = 97 D0[5] = 0 GOSUB ENVIO ENDIF IF V0[B2] = "0" THEN D0[0] = 62 D0[1] = 69 D0[2] = 73 D0[3] = 81 D0[4] = 62 D0[5] = 0 GOSUB ENVIO ENDIF IF V0[B2] = "1" THEN D0[0] = 17 D0[1] = 33 D0[2] = 127
59
D0[3] = 1 D0[4] = 1 D0[5] = 0 GOSUB ENVIO ENDIF IF V0[B2] = "2" THEN D0[0] = 33 D0[1] = 67 D0[2] = 69 D0[3] = 73 D0[4] = 49 D0[5] = 0 GOSUB ENVIO ENDIF IF V0[B2] = "3" THEN D0[0] = 66 D0[1] = 65 D0[2] = 81 D0[3] = 105 D0[4] = 70 D0[5] = 0 GOSUB ENVIO ENDIF IF V0[B2] = "4" THEN D0[0] = 12 D0[1] = 20 D0[2] = 36 D0[3] = 127 D0[4] = 4 D0[5] = 0 GOSUB ENVIO ENDIF IF V0[B2] = "5" THEN D0[0] = 122 D0[1] = 73 D0[2] = 73 D0[3] = 73 D0[4] = 70 D0[5] = 0 GOSUB ENVIO ENDIF
60
IF V0[B2] = "6" THEN D0[0] = 62 D0[1] = 73 D0[2] = 73 D0[3] = 73 D0[4] = 38 D0[5] = 0 GOSUB ENVIO ENDIF IF V0[B2] = "7" THEN D0[0] = 64 D0[1] = 71 D0[2] = 72 D0[3] = 80 D0[4] = 96 D0[5] = 0 GOSUB ENVIO ENDIF IF V0[B2] = "8" THEN D0[0] = 54 D0[1] = 73 D0[2] = 73 D0[3] = 73 D0[4] = 54 D0[5] = 0 GOSUB ENVIO ENDIF IF V0[B2] = "9" THEN D0[0] = 48 D0[1] = 73 D0[2] = 73 D0[3] = 74 D0[4] = 60 D0[5] = 0 GOSUB ENVIO ENDIF IF V0[B2] = "=" THEN D0[0] = 0 D0[1] = 34 D0[2] = 34
61
D0[3] = 34 D0[4] = 0 D0[5] = 0 GOSUB ENVIO ENDIF IF V0[B2] = "?" THEN D0[0] = 48 D0[1] = 64 D0[2] = 69 D0[3] = 72 D0[4] = 48 D0[5] = 0 GOSUB ENVIO ENDIF IF V0[B2] = "-" THEN D0[0] = 0 D0[1] = 8 D0[2] = 8 D0[3] = 8 D0[4] = 0 D0[5] = 0 GOSUB ENVIO ENDIF IF V0[B2] = "$" THEN D0[0] = 18 D0[1] = 42 D0[2] = 127 D0[3] = 42 D0[4] = 36 D0[5] = 0 GOSUB ENVIO ENDIF IF V0[B2] = "%" THEN D0[0] = 98 D0[1] = 100 D0[2] = 8 D0[3] = 19 D0[4] = 35 D0[5] = 0 GOSUB ENVIO ENDIF
62
IF V0[B2] = "*" THEN D0[0] = 42 D0[1] = 28 D0[2] = 127 D0[3] = 28 D0[4] = 42 D0[5] = 0 GOSUB ENVIO ENDIF IF V0[B2] = " " THEN D0[0] = 0 D0[1] = 0 D0[2] = 0 D0[3] = 0 D0[4] = 0 D0[5] = 0 GOSUB ENVIO ENDIF NEXT LED_AM = 1 PAUSE 50 LED_AM = 0 Goto Main ENVIO: FOR I = 0 TO 5 IR_BYTE="#":Gosub IRSerout IR_BYTE="O":Gosub IRSerout IR_BYTE="K":Gosub IRSerout IR_BYTE=IR_ID:Gosub IRSerout IR_BYTE= D0[I] Gosub IRserout next RETURN '-------------------------------------------------------------------------------------------------------------------------------------------FIGURA 22:- Programa em linguagem Basic da placa de interface IR-TX ' Send a 3 byte header ' to syncronise the receiver ' with the actual byte sent ' Send out the transmitter number ' Send out the data byte ' Infinite Loop
'--------------------------------------------------------------------------------------------------------------------------------------------
63
5.2. Softwares
Os softwares consistem em programas e na interface utilizada no projeto. Destarte os softwares de programao so as ferramentas relacionadas edio, compilao e programao do PIC. O software de interface o programa disponvel no microcomputador para o usurio redigir e enviar a mensagem para o painel visual.
64
5.2.2.Programador IC-Prog
No presente projeto o IC-PROG 1.06A o software utilizado para a programao do Microcontrolador - PIC. Destarte, seu uso consiste no envio de arquivo hexadecimal compilado pelo PICBASIC PRO para a porta de comunicao a qual est conectado o dispositivo de gravao, no caso, o JDM. Este software est entre os mais utilizados, e um software para programao de PICs em ambiente Windows, pode trabalhar com diversos circuitos gravadores, por exemplo, JDM e o TAIT SERIAL. O IC-PROG foi criado por Bonny Gijzen e um programa free, ou seja, de livre distribuio, disponvel no site http://www.ic-prog.com/index1.htm, porm, caso deseje incorporar este programa a um produto comercializado voc deve solicitar a permisso ao fabricante. Pode-se dizer que ele no menos importante que o hardware de gravao. Apresentado na figura 24.
65
5.2.3.Compilador Picbasicpro
O PICBASIC PRO 2.47 um compilador utilizado para gravao do PIC, sua funo interpretar o programa digitado no editor na linguagem Basic e transform-lo para a linguagem que ser identificada pelo gravador e enviada para o PIC, ou seja, em linguagem de mquina (assembly/Hex). Foi desenvolvido pela empresa Micro Engineering Labs INC. Suporta o PIC que ser utilizado no projeto, tambm possui ferramenta para interao com os outros programas ICPROG e Microcode Studio. um dos compiladores mais utilizados no mercado e neste projeto ser utilizado o compilador PIC Basic Pro verso free, disponvel livremente no site http://www.picbasic.com/pbpdemo.htm, salientando que esta verso possui algumas limitaes em relao verso original, mas de livre distribuio, especialmente desenvolvido para fins estudantis e no comerciais, caso haja a incorporao do compilador a um produto comercializado h a necessidade de solicitar a permisso ao fabricante. Segue abaixo as figuras 25 e 26 com a estrutura de funcionamento e o layout do software.
66
EDITOR
.PBP
.ASM
.INC
COMPILADOR ASSEMBLER
.COD
.LST
.ERR
.HEX
PROGRAMADOR
FIGURA 25:- Estrutura da compilao dos cdigos para o PIC FONTE: Disponvel em: http://www.picbasic.com/pbpdemo.htm
67
68
FIGURA 27:- Software para comunicao serial FONTE: Disponvel em: http://www.rogercom.com/PortaSerial/PortaSerial.htm
69
70
A juno do software com o hardware ocorreu atravs da implementao dos programas e dos testes no microcomputador, alm dos testes com a sada serial. Foi necessria a gravao no PIC, testes com o microcontrolador, alm de testes dos programas com o hardware. A finalizao do projeto deu-se com a escolha do texto a ser escrito, e atravs das pesquisas e testes como mencionado acima, operaram-se os ajustes finais.
71
72
mnimo possvel, assim no notaremos o disparo (o apagar e o acender) dos leds e os caracteres ficaram "suspensos" no ar. Podemos visualizar o efeito na figura 28.
FIGURA 28:- Painel de mensagem acabado com o efeito das luzes flutuando
73
8. CONCLUSO
Este trabalho de concluso de curso tem como objeto a utilizao de microcontrolador em painel visual, no obstante os microcontroladores serem usados com freqncia em produtos e dispositivos de controle automtico, tais como sistemas de controle em motores de automveis, controles remotos, mquinas de escritrio, ferramentas e brinquedos. Assim, ao reduzir o tamanho, custo e consumo de energia em comparao com um projeto que usa microprocessador, memria e dispositivos de E/S separados, microcontroladores tornam vivel economicamente no controle eletrnico de muitos processos. Eles foram to ou mais importantes para a revoluo dos produtos eletrnicos que os computadores, permitiram a evoluo de equipamentos que h anos no evoluam, como por exemplo, os motores a combusto, que agora com o novo controle eletrnicos podem funcionar com sistema bi-combustvel, poluindo menos. Os PICs podem ser programados em linguagem baixo nvel (assembly) ou usando-se compiladores de linguagem de alto nvel (Pascal, C, Basic) que geram um cdigo em formato hexadecimal (Intel Hex format ou linguagem de mquina) que so usados para serem gravados na memria de programa desses microcontroladores. Dessa forma, no decorrer da pesquisa percebe-se que existem diversas maneiras de se programar o PIC, sendo visvel que as linguagens de alto nvel, como o Basic - usado no projeto -, ou mesmo, C e Pascal, por exemplo, em conjunto com os compiladores, programadores e gravadores, nos oferece maior flexibilidade e agilidade do que as linguagens de baixo nvel. Consideramos que a finalidade do trabalho foi alcanada haja vista que a possibilidade de utilizao do microcontrolador foi plenamente demonstrada, de forma clara e acessvel, e pode ser facilmente colocada disposio de qualquer usurio. Assim, desejamos ter chegado ao final deste trabalho com o sentimento de misso cumprida e com a pequena pretenso de ter contribudo ainda que pouco, para os desenvolvimentos incessantes da computao, cujo objetivo maior facilitar cada vez mais, a vida das pessoas.
74
9. REFERNCIAS BIBLIOGRFICAS
ASSOCIAO BRASILEIRA DE NORMAS TCNICAS. NBR 6023: norma ABNT sobre documentao. Rio de Janeiro, 1989. ASSOCIAO BRASILEIRA DE NORMAS TCNICAS. NBR 14724: norma ABNT sobre documentao. Rio de Janeiro, 2006. FRANA, J. L. Manual para normalizao de publicaes tcnico-cientficas. 3. ed. rev. aum. Belo Horizonte: UFMG, 1996. 191p. NICOLOSI, D. E. C. Microcontrolador 8051 detalhado. 2. ed. So Paulo: rica, 2000. PEREIRA, F. Microcontroladores PIC Programao em C. 3. ed. So Paulo: rica. SILVA JUNIOR, V. P. Microcontroladores PIC: teoria e pratica. So Paulo: Do autor, 1998. SOUZA, D. J. Desbravando o PIC. 3. ed. So Paulo: rica, 2001. TAVERNIER, C. Microcontroladores PIC. 2. ed. Madrid: Paraninfo, c2001. SOARES, M. J. Robo IR infravermelho. Revista Mecatrnica Fcil. So Paulo, v. 02. n. 11, p.42, 2008. FAJ Faculdade de Jaguarina. BIBLIOTECA, Orientaes para Apresentao de Trabalhos Acadmicos e Monografias. Disponvel via URL em: http://bibdig.faj.br/document/?code=147&tid=18. Acesso em 01 de Julho de 2008. BLICK, Bob. Propeller Clock: Disponvel via URL em: http://www.bobblick.com/techref/projects/propclock/propclock.html. Acesso em 15 outubro de 2004. MADSEN, Jens Dyekjr. JDM PIC-Programmer: Disponvel via URL em: http://www.jdm.homepage.dk/newpic.htm. Acesso em 26 dezembro de 2004. Microchip. PIC16F628A: Disponvel via URL em: http://ww1.microchip.com/downloads/en/DeviceDoc/40044F.pdf. Acesso em 20 junho de 2005. MicroEngineering Labs. PICBASIC PRO: Disponvel via URL em: http://www.picbasic.com/pbpdemo.htm. Acesso em 15 outubro de 2005.
75
GIJZEN, Bonny. IC-Prog Prototype Programmer: Disponvel via URL em: http://www.ic-prog.com/index1.htm. Acesso em 23 dezembro de 2006. MicroEngineering Labs. MicroCode Studio: Disponvel via URL em: http://www.picbasic.com/resources/win_ide.htm#Studio. Acesso em 17 setembro de 2006. MESSIA, Antonio Rogrio. RcomSerial verso 1.2: Disponvel via URL em: http://www.rogercom.com/PortaSerial/PortaSerial.htm. Acesso em 30 de setembro de 2007. MicroEngineering Labs. PICBASIC PRO, Manual em Portugus: Disponvel via URL em: http://www.picbasic.com.br/man_port.pdf. Acesso em 05 novembro de 2007.
76
10.
ANEXOS
77
Anexo III: - Tabela para configurao do taxa de transmisso FONTE: Microcode Studio - Disponvel em: http://www.picbasic.com/resources/win_ide.htm#Studio
78
11.
APNDICE
A tabela 02 corresponde a matriz dos cdigos utilizados pelo programa:
Varivel
2^0 2^1 2 1 0 0 0 1 0 2^2 4 1 0 0 0 1 0
Binrio
2^3 8 1 1 1 1 1 0 2^4 16 1 0 0 0 1 0 2^5 32 0 1 0 1 0 0 2^6 64 0 0 1 0 0 0 1 1 0 0 0 1 0
Varivel
2^0 2^1 2 0 1 0 1 0 0 2^2 4 1 0 0 0 1 0
Binrio
2^3 8 1 0 0 0 1 0 2^4 16 1 0 0 0 1 0 2^5 32 1 0 0 0 1 0 2^6 64 1 0 0 0 1 0 1 0 0 1 0 0 0
Caractere
"A" D0[0] = 31 D0[1] = 40 D0[2] = 72 D0[3] = 40 D0[4] = 31 D0[5] = 0 "B" D0[0] = 127 D0[1] = 73 D0[2] = 73 D0[3] = 73 D0[4] = 54 D0[5] = 0 "C" D0[0] = 62 D0[1] = 65 D0[2] = 65 D0[3] = 65 D0[4] = 34 D0[5] = 0 "D" D0[0] = 127 D0[1] = 65 D0[2] = 65 D0[3] = 34 D0[4] = 28 D0[5] = 0 "E" D0[0] = 127 D0[1] = 73 D0[2] = 73 D0[3] = 73 D0[4] = 65 D0[5] = 0 "F" D0[0] = 127 D0[1] = 72
Caractere
"V" D0[0] = 124 D0[1] = 2 D0[2] = 1 D0[3] = 2 D0[4] = 124 D0[5] = 0 "X"
1 1 1 1 0 0
1 0 0 0 1 0
1 0 0 0 1 0
1 1 1 1 0 0
1 0 0 0 1 0
1 0 0 0 1 0
1 1 1 1 0 0
1 0 0 0 1 0
1 0 0 0 1 0
0 1 0 1 0 0
0 0 1 0 0 0
0 1 0 1 0 0
1 0 0 0 1 0
1 0 0 1 0
0 1 1 1 0 0
1 0 0 0 1 0
1 0 0 0 0 0
1 0 0 0 0 0
1 0 0 0 0 0
1 0 0 0 1 0
0 1 1 1 0 0
0 0 1 0 0 0
0 0 1 0 0 0
0 0 1 0 0 0
0 0 1 0 0 0
0 1 0 1 0 0
1 0 0 0 1 0
1 0 0 0 1 0
1 1 1 0 0 0
1 0 0 1 0 0
1 0 0 0 1 0
1 0 0 0 1 0
1 0 0 0 1 0
1 0 0 1 0 0
1 1 1 0 0 0
0 1 0 1 0 0
1 0 1 0 1 0
1 0 1 0 1 0
1 0 0 0 1 0
1 0 0 0 1 0
1 0 0 0 1 0
1 0 0 0 1 0
1 1 1 1 1 0
1 0 0 0 0 0
1 0 0 0 0 0
1 1 1 1 0 0
1 0 0 0 0 0
1 0 0 0 0 0
1 1 1 1 1 0
1 1 1 1 1 0
1 0 0 0 0 0
0 1 0 0 0 0
0 0 1 0 0 0
0 0 0 1 0 0
0 0 0 0 1 0
1 1 1 1 1 0
1 0
1 0
1 0
1 1
1 0
1 0
1 1
D0[0] = 62 D0[1] = 69
0 1
1 0
1 1
1 0
1 0
1 0
0 1
79
D0[2] = 72 D0[3] = 72 D0[4] = 64 D0[5] = 0 "G" D0[0] = 62 D0[1] = 65 D0[2] = 73 D0[3] = 73 D0[4] = 46 D0[5] = 0 "H" D0[0] = 127 D0[1] = 8 D0[2] = 8 D0[3] = 8 D0[4] = 127 D0[5] = 0 "I" D0[0] = 0 D0[1] = 65 D0[2] = 127 D0[3] = 65 D0[4] = 0 D0[5] = 0 "J" D0[0] = 2 D0[1] = 1 D0[2] = 65 D0[3] = 126 D0[4] = 64 D0[5] = 0 "K" D0[0] = 127 D0[1] = 8 D0[2] = 20 D0[3] = 34 D0[4] = 65 D0[5] = 0 "L" D0[0] = 127 D0[1] = 1 D0[2] = 1 D0[3] = 1 D0[4] = 1 D0[5] = 0
0 0 0 0
0 0 0 0
0 0 0 0
1 1 0 0
0 0 0 0
0 0 0 0
1 1 1 0
1 1 0 0
0 0 1 0
0 0 1 0
1 0 1 0
0 1 1 0
0 0 1 0
1 1 0 0
0 1 1 1 0 0
1 0 0 0 1 0
1 0 0 0 1 0
1 0 1 1 1 0
1 0 0 0 0 0
1 0 0 0 1 0
0 1 1 1 0 0
1 1 1 1 1 0
0 0 1 0 0 0
0 0 1 0 0 0
0 0 1 0 0 0
0 0 1 0 0 0
0 1 1 0 0 0
0 0 1 0 0 0
1 0 0 0 1 0
1 0 0 0 1 0
1 0 0 0 1 0
1 1 1 1 1 0
1 0 0 0 1 0
1 0 0 0 1 0
1 0 0 0 1 0
1 1 1 1 1 1
0 1 0 0 0 0
0 0 1 0 0 0
0 0 0 1 0 0
0 0 0 0 1 1
1 0 0 0 1 0
0 1 1 1 0 1
0 1 1 1 0 0
0 0 1 0 0 0
0 0 1 0 0 0
0 0 1 0 0 0
0 0 1 0 0 0
0 0 1 0 0 0
0 1 1 1 0 0
0 1 1 1 0 0
1 0 0 0 1 0
0 0 0 0 1 0
0 0 0 1 0 0
0 0 1 0 0 0
0 0 0 1 0 0
1 1 1 1 1 0
0 1 1 0 0 0
1 0 0 1 0 0
0 0 0 1 0 0
0 0 0 1 0 0
0 0 0 1 0 0
0 0 0 1 0 0
0 0 1 1 1 0
0 0 0 1 0 0
0 0 0 1 0 0
1 1 1 1 1 0
1 0 0 1 0 0
0 1 0 1 0 0
0 0 1 1 0 0
0 0 0 1 0 0
1 0 0 0 1 0
1 0 0 1 0 0
1 0 1 0 0 0
1 1 0 0 0 0
1 0 1 0 0 0
1 0 0 1 0 0
1 0 0 0 1 0
0 1 1 1 0 0
1 0 0 0 1 0
0 0 0 0 1 0
1 1 1 1 0 0
1 0 0 0 0 0
1 0 0 0 0 0
1 1 1 1 1 0
1 1 1 1 1 0
1 0 0 0 0 0
1 0 0 0 0 0
1 0 0 0 0 0
1 0 0 0 0 0
1 0 0 0 0 0
1 0 0 0 0 0
0 1 1 1 0 0
1 0 0 0 1 0
1 0 0 0 1 0
0 1 1 1 0 0
1 0 0 0 0 0
1 0 0 0 1 0
0 1 1 1 0 0
80
"M" D0[0] = 127 D0[1] = 32 D0[2] = 16 D0[3] = 32 D0[4] = 127 D0[5] = 0 "N" D0[0] = 127 D0[1] = 16 D0[2] = 8 D0[3] = 4 D0[4] = 127 D0[5] = 0 "O" D0[0] = 62 D0[1] = 65 D0[2] = 65 D0[3] = 65 D0[4] = 62 D0[5] = 0 "P" D0[0] = 127 D0[1] = 72 D0[2] = 72 D0[3] = 72 D0[4] = 48 D0[5] = 0 "Q" D0[0] = 62 D0[1] = 65 D0[2] = 65 D0[3] = 66 D0[4] = 61 D0[5] = 0 "R" D0[0] = 127 D0[1] = 72 D0[2] = 76 D0[3] = 74 D0[4] = 49 D0[5] = 0 "S" D0[0] = 50 D0[1] = 73 0 1 1 0 0 0 0 1 1 0 1 0 0 1 1 0 0 0 1 0 1 0 0 1 0 0 1 0 1 0 0 0 1 1 1 1 0 0 1 0 0 0 1 0 1 0 0 0 1 0 1 1 1 1 0 0 0 1 1 0 1 0 1 0 0 1 0 0 1 0 0 0 1 0 1 0 0 0 1 0 1 0 0 0 1 0 1 0 0 0 1 0 0 1 1 1 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 1 1 1 0 0 1 0 0 0 1 0 1 0 0 0 1 0 1 1 1 1 0 0 0 1 1 1 0 0 1 0 0 0 1 0 1 0 0 0 1 0 1 0 0 0 1 0 1 0 0 0 1 0 1 0 0 0 1 0 0 1 1 1 0 0 1 0 0 0 1 0 1 0 0 0 1 0 1 0 0 1 1 0 1 0 1 0 1 0 1 1 0 0 1 0 1 0 0 0 1 0 1 0 0 0 1 0 1 0 0 0 1 0 1 0 0 0 1 0 1 0 0 0 1 0 1 0 0 0 1 0 1 0 1 0 1 0 1 1 0 1 1 0 1 0 0 0 1 0
"7" D0[0] = 64 D0[1] = 71 D0[2] = 72 D0[3] = 80 D0[4] = 96 D0[5] = 0 "8" D0[0] = 54 D0[1] = 73 D0[2] = 73 D0[3] = 73 D0[4] = 54 D0[5] = 0 "9" D0[0] = 48 D0[1] = 73 D0[2] = 73 D0[3] = 74 D0[4] = 60 D0[5] = 0 "=" D0[0] = 0 D0[1] = 34 D0[2] = 34 D0[3] = 34 D0[4] = 0 D0[5] = 0 "?" D0[0] = 48 D0[1] = 64 D0[2] = 69 D0[3] = 72 D0[4] = 48 D0[5] = 0 "-" D0[0] = 0 D0[1] = 8 D0[2] = 8 D0[3] = 8 D0[4] = 0 D0[5] = 0 "$" D0[0] = 18 D0[1] = 42 0 0 1 1 0 0 0 1 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 1 0 0 0 1 0 1 0 0 0 1 0 0 1 1 1 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 1 1 1 1 0 1 0 0 0 1 0 1 0 0 0 1 0 0 1 1 1 0 0 0 1 1 1 0 0 1 0 0 0 1 0 1 0 0 0 1 0 0 1 1 1 0 0 1 0 0 0 1 0 1 0 0 0 1 0 0 1 1 1 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 1 1 1 1 1 0
81
D0[2] = 73 D0[3] = 73 D0[4] = 38 D0[5] = 0 "T" D0[0] = 64 D0[1] = 64 D0[2] = 127 D0[3] = 64 D0[4] = 64 D0[5] = 0 "U" D0[0] = 126 D0[1] = 1 D0[2] = 1 D0[3] = 1 D0[4] = 126 D0[5] = 0 "V" D0[0] = 124 D0[1] = 2 D0[2] = 1 D0[3] = 2 D0[4] = 124 D0[5] = 0
1 1 0 0
0 0 1 0
0 0 1 0
1 1 0 0
0 0 0 0
0 0 1 0
1 1 0 0
1 0 0 0
1 1 0 0
1 0 1 0
1 1 0 0
1 0 0 0
1 1 1 0
1 0 0 0
0 0 1 0 0 0
0 0 1 0 0 0
0 0 1 0 0 0
0 0 1 0 0 0
0 0 1 0 0 0
0 0 1 0 0 0
1 1 1 1 1 0
0 0 0 1 1 0
1 0 0 1 1 0
0 1 0 0 0 0
0 0 1 0 0 0
0 0 0 1 0 0
1 1 0 0 1 0
1 1 0 0 0 0
0 1 1 1 0 0
1 0 0 0 1 0
1 0 0 0 1 0
1 0 0 0 1 0
1 0 0 0 1 0
1 0 0 0 1 0
1 0 0 0 1 0
0 0 1 0 0 0
1 0 1 0 1 0
0 1 1 1 0 0
1 0 1 0 1 0
0 1 1 1 0 0
1 0 1 0 1 0
0 0 1 0 0 0
0 0 1 0 0 0
0 1 0 1 0 0
1 0 0 0 1 0
1 0 0 0 1 0
1 0 0 0 1 0
1 0 0 0 1 0
1 0 0 0 1 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0