192
Ap m Aprend plicaç micro nda de f ções ocont c forma s prát trolad omp simples microc Sa ticas dore putac s a grav ocontrola andro Juc de E s em ionai vação w ladores cá Eletrô m sist is wireless ônica tema s e via U a e s USB de e

Micro Control Adores 1

Embed Size (px)

Citation preview

  • Apm

    Aprend

    plicamicro

    nda de f

    es ocont

    c

    forma s

    prttroladomp

    simples microc

    Sa

    ticas dore

    putac

    s a gravocontrola

    andro Juc

    de Es emionai

    vao wladores

    c

    Eletrm sistis

    wireless

    nicatema

    s e via U

    a e s

    USB de e

  • [ 2 ]

    INTRODUO..................................................................................................................................................................6ASSEMBLY X LINGUAGEM C.........................................................................................................................................................6VANTAGENS X DESVANTAGENS DA LINGUAGEM C PARA MICROCONTROLADORES..............................8ARQUITETURAS DOS MICROCONTROLADORES..............................................................................................................8O CONTADOR DE PROGRAMA (PC).........................................................................................................................................9BARRAMENTOS.....................................................................................................................................................................................9A PILHA (STACK)..............................................................................................................................................................................10CICLO DE MQUINA.......................................................................................................................................................................10MATRIZ DE CONTATOS OU PROTOBOARD.....................................................................................................................11RESISTORES........................................................................................................................................................................................12CAPACITORES.....................................................................................................................................................................................13FONTES DE ALIMENTAO........................................................................................................................................................15PROTOCOLO DE COMUNICAO USB.................................................................................................................................16MTODOS DE COMUNICAO USB......................................................................................................................................16

    FERRAMENTA DE GRAVAO VIA USB........................................................................................................182.1 GRAVAO DE MICROCONTROLADORES........................................................................................................192.2 GRAVANDO O MICROCONTROLADOR VIA USB NO WINDOWS.........................................................242.3 GRAVAO WIRELESS DE MICROCONTROLADORES...............................................................................272.4 SISTEMA DUAL CLOCK.................................................................................................................................................352.5 EMULAO DE COMUNICAO SERIAL NO WINDOWS..........................................................................352.6 GRAVANDO O MICROCONTROLADOR VIA USB NO LINUX...................................................................422.7 GRAVANDO O PIC VIA USB PELO TERMINAL DO LINUX OU MAC OSX.........................................432.8 SISTEMA DUAL CLOCK.................................................................................................................................................452.9 EMULAO DE COMUNICAO SERIAL NO LINUX....................................................................................452.10 PROGRAMA COM INTERRUPO EXTERNA POR BOTO E DO TIMER 1.....................................492.11 OBTENO DE UM VOLTMETRO ATRAVS DO CONVERSOR AD COM A VARIAO DE UM POTENCIMETRO............................................................................................................................................................................502.12 CIRCUITO COM84 PARA GRAVAO DO gerenciador.hex.....................................................................51

    PERIFRICOS INTERNOS DO MICROCONTROLADOR.........................................................................533.1 CONVERSOR A/D.............................................................................................................................................................533.1.1 AJUSTE DE RESOLUO DO SENSOR E DO CONVERSOR AD DE 8 BITS.....................................543.1.2 AJUSTE DA TENSO DE FUNDO DE ESCALA COM AMPOP....................................................................543.1.3 AJUSTE DA TENSO DE REFERNCIA COM POTENCIMETRO..........................................................553.1.4 CONVERSOR AD DE 10 BITS....................................................................................................................................553.1.5 OBTENO DE UM VOLTMETRO ATRAVS DO CONVERSOR AD COM A VARIAO DE UM POTENCIMETRO............................................................................................................................................................................563.1.6 LEITURA DE TEMPERATURA COM O LM35 ATRAVS DO CONVERSOR AD................................573.1.7 TERMISTOR.........................................................................................................................................................................583.2 MEMRIAS DO MICROCONTROLADOR.............................................................................................................593.2.1 MEMRIA DE PROGRAMA..........................................................................................................................................593.2.2 MEMRIA DE INSTRUES......................................................................................................................................593.2.3 MEMRIA EEPROM INTERNA...................................................................................................................................603.2.4 MEMRIA DE DADOS (RAM)....................................................................................................................................603.2.5 EXEMPLO DE APLICAO...........................................................................................................................................613.2.5.1 CONTROLE DE ACESSO COM TECLADO MATRICIAL...........................................................................613.3 MODULAO POR LARGURA DE PULSO PELO CCP....................................................................................65CONTROLE PWM POR SOFTWARE DE VELOCIDADE DE UM MOTOR CC......................................................67

  • INTERRUPES E TEMPORIZADORES.........................................................................................................68INTERRUPES.................................................................................................................................................................................68INTERRUPES EXTERNAS.......................................................................................................................................................69INTERRUPO DOS TEMPORIZADORES...........................................................................................................................70MULTIPLEXAO POR INTERRUPO DE TEMPORIZADORES............................................................................72

    EMULAO DE PORTAS LGICAS...................................................................................................................735.1 INSTRUES LGICAS PARA TESTES CONDICIONAIS DE NMEROS..........................................745.2 INSTRUES LGICAS BOOLANAS BIT A BIT..............................................................................................745.3 EMULAO DE DECODIFICADOR PARA DISPLAY DE 7 SEGMENTOS.............................................785.4 MULTIPLEXAO COM DISPLAYS DE 7 SEGMENTOS...............................................................................84

    COMUNICAO SERIAL EIA/RS-232............................................................................................................866.1 CDIGO ASCII...................................................................................................................................................................886.2 INTERFACE USART DO MICROCONTROLADOR............................................................................................886.3 COMUNICAO SERIAL EIA/RS-485....................................................................................................................90

    ACIONAMENTO DE MOTORES MICROCONTROLADOS........................................................................90ACIONAMENTO DE MOTORES CC DE BAIXA TENSO..............................................................................................91MOTORES ELTRICOS UTILIZADOS EM AUTOMVEIS...........................................................................................91COROA E O PARAFUSO COM ROSCA SEM-FIM..............................................................................................................93CHAVEAMENTO DE MOTORES CC COM TRANSISTORES MOSFET....................................................................94EXEMPLO: SEGUIDOR TICO DE LABIRINTO................................................................................................................95ESTABILIDADE DO CONTROLE DE MOVIMENTO.........................................................................................................95PONTE H................................................................................................................................................................................................99DRIVER PONTE H L293D.............................................................................................................................................................99SOLENIDES E RELS.................................................................................................................................................................100DRIVER DE POTNCIA ULN2803..........................................................................................................................................102PONTE H COM MICRORELS...................................................................................................................................................103ACIONAMENTO DE MOTORES DE PASSO.......................................................................................................................103MOTORES DE PASSO UNIPOLARES....................................................................................................................................104MODOS DE OPERAO DE UM MOTOR DE PASSO UNIPOLAR.........................................................................105ACIONAMENTO BIDIRECIONAL DE DOIS MOTORES DE PASSO......................................................................106SERVO-MOTORES...........................................................................................................................................................................106

    FOTOACOPLADORES E SENSORES INFRAVERMELHOS....................................................................109TRANSMISSOR E RECEPTOR IR..........................................................................................................................................110AUTOMAO E DOMTICA COM CONTROLE REMOTO UNIVERSAL.............................................................111CODIFICAO DE RECEPTOR INFRAVERMELHO UTILIZANDO A NORMA RC5.......................................114ACIONAMENTO DE CARGAS CA COM TRIAC................................................................................................................118TRIACS E RELS DE ESTADO SLIDO..............................................................................................................................118DIMMER ANALGICO...................................................................................................................................................................118CONTROLE DIGITAL DE DISPARO DE UM TRIAC......................................................................................................119DIMMER DIGITAL COM CONTROLE REMOTO IR........................................................................................................124

    LCD (DISPLAY DE CRISTAL LQUIDO)......................................................................................................128EXEMPLO: CONTROLE DE TENSO DE UMA SOLDA CAPACITIVA COM LCD...........................................131

    MODELAGEM DE SINAIS DE SENSORES...................................................................................................134EXEMPLO: MODELAGEM DE UM LUXMETRO MICROCONTROLADO COM LDR......................................134SUPERVISRIO................................................................................................................................................................................137

    INTERFACE I2C.......................................................................................................................................................141REGRAS PARA TRANSFERNCIA DE DADOS.................................................................................................................142MEMRIA EEPROM EXTERNA I2C.........................................................................................................................................145

  • RTC (RELGIO EM TEMPO REAL)................................................................................................................147EXEMPLO: PROTTIPO DATALOGGER USB DE BAIXO CUSTO.........................................................................151

    TRANSMISSO DE DADOS VIA GSM..........................................................................................................157COMANDOS AT PARA ENVIAR MENSAGENS SMS DE UM COMPUTADOR PARA UM CELULAR OU MODEM GSM.....................................................................................................................................................................................157COMANDOS AT PARA RECEBER MENSAGENS SMS EM UM COMPUTADOR ENVIADAS POR UM CELULAR OU MODEM GSM.......................................................................................................................................................158

    O PROTOCOLO MODBUS EMBARCADO.....................................................................................................161MODELO DE COMUNICAO..................................................................................................................................................161DETECO DE ERROS.................................................................................................................................................................162MODOS DE TRANSMISSO......................................................................................................................................................162

    INTRODUO SISTEMAS OPERACIONAIS EM TEMPO REAL (RTOS)...................................167MQUINAS DE ESTADO..............................................................................................................................................................169

    UTILIZANDO O COPILADOR C18 E A IDE MPLABX MULTIPLATAFORMA COM FUNES EM PORTUGUS.....................................................................................................................................................171

    FUNES EM PORTUGUS.......................................................................................................................................................172FUNES BSICAS DA APLICAO DO USURIO.....................................................................................................172FUNES DO CONVERSOR ANALGICO DIGITAL (A/D)......................................................................................177FUNES DA COMUNICAO SERIAL RS-232.............................................................................................................178EXEMPLOS DE PROGRAMAS....................................................................................................................................................179

    APNDICE I: CABEALHOS DA FERRAMENTA PARA DIVERSOS COMPILADORES............186CCS C Compiler................................................................................................................................................................................186C18 compiler......................................................................................................................................................................................186SDCC......................................................................................................................................................................................................188MikroC....................................................................................................................................................................................................189Hi-Tech C Compiler........................................................................................................................................................................190Microchip ASM compiler..............................................................................................................................................................190

  • Dedico este trabalho a Deus e minha famlia.

  • Aplicaes prticas de Eletrnica e microcontroladores em sistemas computacionais, por Sandro Juc

    [ 6 ]

    INTRODUO

    Um microcontrolador um sistema computacional completo, no qual esto includos

    internamente uma CPU (Central Processor Unit), memrias RAM (dados), flash (programa) e E2PROM, pinos de I/O (Input/Output), alm de outros perifricos internos, tais como, osciladores, canal USB, interface serial assncrona USART, mdulos de temporizao e conversores A/D, entre outros, integrados em um mesmo componente (chip).

    O microcontrolador PIC (Periferal Interface Controler), da Microchip Technology Inc.

    (empresa de grande porte, em Arizona, nos Estados Unidos da Amrica), possui uma boa diversidade de recursos, capacidades de processamento, custo e flexibilidade de aplicaes.

    ASSEMBLY X LINGUAGEM C

    A principal diferena entre uma linguagem montada (como assembly) e a linguagem de programao C est na forma como o programa objeto (HEX) gerado. Em assembly, o processo usado a montagem, portanto devemos utilizar um MONTADOR (assembler), enquanto que em linguagem C o programa compilado. A compilao um processo mais complexo do que a montagem. Na montagem, uma linha de instruo traduzida para uma instruo em cdigo de mquina. J em uma linguagem de programao, no existem linhas de instruo, e sim estruturas de linguagem e expresses. Uma estrutura pode ser condicional, incondicional, de repetio, etc...

    As expresses podem envolver operandos e operadores mais complexos. Neste caso, geralmente, a locao dos registros de dados da RAM feita pelo prprio compilador. Por isso, existe a preocupao, por paret do compilador, de demonstrar, aps a compilao, o percentual de memria RAM ocupado, pois neste caso relevante, tendo em vista que cada varivel pode ocupar at 8 bytes (tipo double).

    Para edio e montagem (gerao do cdigo HEX) de um programa em assembly, os softwares mais utilizados so o MPASMWIN (mais simples) e o MPLAB. Para edio e compilao em linguagem C (gerao do cdigo HEX), o programa mais utilizado o PIC C Compiler CCS.

    Os microcontroladores PIC possuem apenas 35 instrues em assembly para a famlia de 12 bits (PIC12) e 14 bits (PIC16), descritas nas tabelas abaixo, e 77 instrues para a famlia de 16 bits (PIC18). A tabela abaixo mostra algumas instrues em assembly.

  • Aplicaes prticas de Eletrnica e microcontroladores em sistemas computacionais, por Sandro Juc

    [ 7 ]

    Figura 1. 1: Instrues em assembly.

    Como pode ser visto, a famlia PIC16F (14 bits com aproximadamente 35 instrues)

    no possui uma instruo em assembly que realize multiplicao ou diviso de dois operandos, o que curiosamente presente na linguagem assembly da famlia MCS51 (256 instrues que satisfazem a maioria das aplicaes industriais). Portanto, para realizar uma multiplicao, necessrio realizar somas sucessivas, ou seja, em vez de multiplicar uma varivel por outra, realizar somas de uma varivel em uma terceira rea de memria, tantas vezes quando for o valor da segunda varivel. (X * 5 = X + X + X + X + X).

    Mas em linguagem C possvel se utilizar o operador de multiplicao (*), de forma simples e prtica. Ao compilar, a linguagem gerada ir converter a multiplicao em somas sucessivas sem que o programador se preocupe com isso.

  • Aplicaes prticas de Eletrnica e microcontroladores em sistemas computacionais, por Sandro Juc

    [ 8 ]

    VANTAGENS X DESVANTAGENS DA LINGUAGEM C PARA MICROCONTROLADORES

    - O compilador C ir realizar o processo de traduo, permitindo uma programao mais amigvel e mais fcil para desenvolvimento de aplicaes mais complexas como, por exemplo, uso do canal USB e aplicaes com o protocolo I2C. - A linguagem C permite maior portabilidade, uma vez que um mesmo programa pode ser recompilado para um microcontrolador diferente, com o mnimo de alteraes, ao contrrio do ASSEMBLY, onde as instrues mudam muito entre os diversos modelos de microcontroladores existentes como PIC e 8051. - Em C para microcontroladores PIC, no necessrio se preocupar com a mudana de banco para acessar os registros especiais da RAM como, por exemplo, as portas de I/O e os registros TRIS de comando de I/O dos pinos, isto executado pelo prprio compilador atravs das bibliotecas. - possvel incluir, de forma simples e padronizada, outro arquivo em C (biblioteca) para servir como parte do seu programa atual como, por exemplo, incluir o arquivo LCD (#include ), desenvolvido por voc anteriormente. - O ponto fraco da compilao em C que o cdigo gerado, muitas vezes, maior do que um cdigo gerado por um montador (assembler), ocupando uma memria maior de programa e tambm uma memria maior de dados. No entanto, para a maioria das aplicaes sugeridas na rea de automao industrial, a linguagem C para PIC se mostra a mais adequada, tendo em vista que a memria de programa tem espao suficiente para estas aplicaes. - Outra desvantagem que o programador no forado a conhecer as caractersticas internas do hardware, j que o mesmo se acostuma a trabalhar em alto nvel, o que compromete a eficincia do programa e tambm o uso da capacidade de todos os perifricos internos do microcontrolador. Isso provoca, em alguns casos, o aumento do custo do sistema embarcado projetado com a aquisio de novos perifricos externos.

    ARQUITETURAS DOS MICROCONTROLADORES

    A arquitetura de um sistema digital define quem so e como as partes que compe o sistema esto interligadas. As duas arquiteturas mais comuns para sistemas computacionais digitais so as seguintes:

    - Arquitetura de Von Neuman: A Unidade Central de Processamento interligada memria por um nico barramento (bus). O sistema composto por uma nica memria onde so armazenados dados e instrues; - Arquitetura de Harvard: A Unidade Central de Processamento interligada a memria de dados e a memria de programa por barramentos diferentes, de dados e de endereo. O PIC possui arquitetura Harvard com tecnologia RISC, que significa Reduced Instruction Set Computer (Computador com Conjunto de Instrues Reduzido). O barramento de dados de 8 bits e o de endereo pode variar de 13 a 21 bits dependendo do modelo. Este

  • Aplicaes prticas de Eletrnica e microcontroladores em sistemas computacionais, por Sandro Juc

    [ 9 ]

    tipo de arquitetura permite que, enquanto uma instruo executada, uma outra seja buscada na memria, ou seja, um PIPELINE (sobreposio), o que torna o processamento mais rpido.

    O CONTADOR DE PROGRAMA (PC)

    O contador de programa responsvel de indicar o endereo da memria de programa para que seu contedo seja transportado para a CPU para ser executado. Na famlia PIC16F ele contm normalmente 13 bits, por isso, pode enderear os 8K words de 14 bits (o PIC16F877A possui exatamente 8K words de 14 bits, ou seja, 14 Kbytes de memria de programa). A famlia 18F ele possui normalmente 21 bits e capaz e enderear at 2 Megas words de 16 bits (o PIC18F2550 possui 16K words de 16 bits, ou seja, 32 Kbytes de memria de programa). Cada Word de 14 ou 16 bits pode conter um cdigo de operao (opcode) com a instruo e um byte de dado.

    BARRAMENTOS

    Um barramento um conjunto de fios que transportam informaes com um propsito comum. A CPU pode acessar trs barramentos: o de endereo, o de dados e o de controle. Como foi visto, cada instruo possui duas fases distintas: o ciclo de busca, quando a CPU coloca o contedo do PC no barramento de endereo e o contedo da posio de memria colocado no Registro de instruo da CPU, e o ciclo de execuo, quando a CPU executa o contedo colocado no registro de instruo e coloca-o na memria de dados pelo barramento de dados. Isso significa que quando a operao do microcontrolador iniciada ou resetada, o PC carregado com o endereo 0000h da memria de programa.

    Figura 1. 2: Memrias.

    As instrues de um programa so gravadas em linguagem de mquina hexadecimal na memria de programa flash (ROM). No incio da operao do microcontrolador, o contador de programa (PC) indica o endereo da primeira instruo da memria de programa, esta instruo carregada, atravs do barramento de dados, no Registro de Instruo da CPU.

    Um opcode (cdigo de instruo), gerado na compilao em hexadecimal, contm uma instruo e um operando. No processamento, a CPU compara o cdigo da instruo

  • Aplicaes prticas de Eletrnica e microcontroladores em sistemas computacionais, por Sandro Juc

    [ 10 ]

    alocada no registro de instruo com o Set de Instrues do modelo fabricado e executa a funo correspondente. Aps o processamento, o operando dessa instruo indica para a CPU qual a posio da memria de dados que deve ser acessada e, atravs do barramento de controle, a CPU comanda a leitura ou a escrita nesta posio.

    Aps o processamento de uma instruo, o PC incrementado para indicar o endereo do prximo cdigo de instruo (opcode), da memria de programa, que deve ser carregado no registro de instruo.

    A PILHA (STACK)

    A pilha um local da RAM ( no PIC18F2550 localizada no final dos Registros de Funo Especial entre FFDh e FFFh) onde guardado o endereo da memria de programa antes de ser executado um pulo ou uma chamada de funo localizada em outra posio de memria.

    CICLO DE MQUINA

    O oscilador externo (geralmente um cristal) ou o interno (circuito RC) usado para fornecer um sinal de clock ao microcontrolador. O clock necessrio para que o microcontrolador possa executar as instrues de um programa. Nos microcontroladores PIC, um ciclo de mquina (CM) possui quatro fases de clock que so Q1, Q2, Q3 e Q4. Dessa forma, para um clock externo de 4MHz, temos um ciclo de mquina (CM=4 x 1/F) igual a 1s.

    Figura 1. 3: Ciclo de mquina.

    O Contador de Programa (PC) incrementado automaticamente na fase Q1 do ciclo de mquina e a instruo seguinte resgatada da memria de programa e armazenada no registro de instrues da CPU no ciclo Q4. Ela decoficada e executada no prximo ciclo, no intervalo de Q1 e Q4. Essa caracterstica de buscar a informao em um ciclo de mquina e execut-la no prximo, ao mesmo tempo em que outra instruo buscada, chamada de PIPELINE (sobreposio). Ela permite que quase todas as instrues sejam executadas em apenas um ciclo de mquina, gastando assim 1 s (para um clock de 4

  • MHz) e toque geramda memr

    MATR

    Para duilizao dque umeletrnicosfacilidade

    Na centenas mediante eletricameDe cada laespao livhorizontaisfigura aba

    Aplicaes p

    rnando o sm saltos ria de prog

    RIZ DE CO

    desenvolvede uma Maa placa cos. A grandde inser

    superfcie de orifciofios. Em

    ente os comado da plavre no meis (pequenaixo.

    prticas de Eletr

    sistema muno contadrama e os

    ONTATOS

    er os projeatriz de Conom diversode vantageo de comp

    de uma mos onde s

    sua partemponentesaca, ao lonio da placaas fileiras)

    rnica e microco

    uito mais ror de progretornos d

    OU PROT

    etos e exentatos (ou os furos e em do Protponentes (n

    Figura 1

    matriz de cso encaixe inferior s inseridos ngo de seua e de cad), cada um

    ontroladores em

    [ 11 ]

    rpido. As grama, comdessas fun

    TOBOARD

    erccos proProtoboarconexes

    otoboard nano necess

    1. 4: Prot

    contatos hxados os

    so instana placa q

    u comprimeda lado de

    m com 05

    m sistemas comp

    nicas exemo chamaes.

    D

    opostos nerd em inglcondutora

    a montagesita soldag

    toboard.

    uma bascomponen

    alados conque so orgento, h desse espaorifcios d

    putacionais, por

    ees refedas de fun

    ssa apostis), mostraas para moem de circem).

    se de plsntes ou tantatos metganizados uas colunao h vride acordo

    r Sandro Juc

    erem-se s nes em

    ila ser neada na figuontagem dcuitos eletr

    stico em quambm potlicos quem colunaas completios gruposcomo ilu

    instruesoutro loca

    ecessrio aura abaixode circuitosrnicos a

    ue existemor ligaese interliga

    as e canaistas. H ums de canaisustrado na

    s al

    a , s a

    m s a .

    m s a

  • Em Para fazermenor a

    RESIS

    Os um resisto

    Aplicaes p

    Fig

    alguns por isso utiliza corrente e

    STORES

    resistores or especfic

    prticas de Eletr

    gura 1. 5:

    ontos do cizamos um eltrica qu

    geralmentco, compar

    rnica e microco

    Contatos

    rcuito necomponen

    e passa nu

    te so feitoramos ele c

    ontroladores em

    [ 12 ]

    s internos

    ecessrio lnte chamaum condut

    os de carbocom a segu

    m sistemas comp

    s de uma

    imitar a inado resistoor.

    ono. Para uinte tabel

    putacionais, por

    protoboa

    ntensidade or. Quanto

    identificar a:

    r Sandro Juc

    ard.

    da corren maior a r

    qual a res

    te eltricaresistncia

    sistncia de

    . ,

    e

  • CAPA

    Capeltrico. coplacas soutilizados computadopara compporte.

    A fuabsorvend

    Aplicaes p

    CITORES

    pacitor ou onsistem eo condutor

    desde aores, at cpensar a re

    uno maido os picos

    prticas de Eletr

    Figura 1

    S

    condensaem dois eleras e so armazenar corrigir o faeatncia in

    is comum s e preench

    rnica e microco

    1. 6: Cdi

    dor um etrodos ou

    separadasbits na

    ator de potndutiva pro

    filtrar ruhendo os v

    ontroladores em

    [ 13 ]

    igo de cor

    componeplacas que

    s por um as memrtncia de iovocada po

    udos em cvales de te

    m sistemas comp

    res de res

    ente que ae armazenisolante o

    rias voltndstrias for bobinas

    circuitor elenso. Os

    putacionais, por

    sistores.

    armazena nam cargasou por umteis dinmfornecendoe motores

    ltricos e ecapacitore

    r Sandro Juc

    energia ns opostas.

    m dieltricomicas (DRo reatncias eltricos

    estabilizar es descarre

    um campoEstas duas

    o. Eles soRAM) dosa capacitiva

    de grande

    as fontesegados so

    o s o s a e

    , o

  • um curto eCC.

    Os so utilzacarregam toda a capode tornatambm eenergizada

    As (nF) e Picabaixo, os

    A fig

    A fig

    Aplicaes p

    e carregad

    capacitoreados tambo capacitorga no buar um capem paralelas possam Unidades

    cofarad (pFs cermicos

    gura abaix

    Fig

    gura abaix

    prticas de Eletr

    dos abrem

    Figura

    es podem sbm no flor do flash

    ulbo do flapacitor grano com movencer a ide MedidaF). Os caps e os de p

    Figur

    xo mostra a

    ura 1. 9:

    xo mostra a

    rnica e microco

    o circuito,

    1. 7: Form

    ser carregalash eletrh durante sh quase nde e carrotores eltinrcia quaa de capacacitores m

    polister.

    ra 1. 8: Ex

    a identifica

    Clculo d

    a identifica

    ontroladores em

    [ 14 ]

    , por isso

    ma de on

    ados e desnico em vrios segque instan

    regado exttricos paraando os mocitncia s

    mais comun

    xemplos d

    ao de cap

    demonstra

    ao de cap

    m sistemas comp

    so utiliza

    nda de cap

    scarregadouma cm

    gundos, e ntaneamentremamenta fornecer otores so o Farad (Fns so os

    de Capaci

    pacitores c

    ativo de c

    pacitores d

    putacionais, por

    dos tamb

    pacitor.

    os muito ramera fotog

    ento o cnte gerandte perigosoenergia pligados.

    F), Microfaeletroltico

    tores.

    cermicos.

    capacitn

    de poliste

    r Sandro Juc

    m para is

    apidamentgrfica, oncapacitor ddo o alto bo. Eles sopara que a

    arad (F), os, lstrados

    ncia.

    er.

    olar fontes

    te, por issonde pilhasdescarregabrilho. Istoo utilizadosas bobinas

    Nanofarads na figura

    s

    o s a o s s

    d a

  • FONT

    As baterias reAs bateriana forma d

    A cmultiplicahora (1 Ah(no recaristo leva apodem serlimite redu

    As bat 10,5V tempo queComo o cdescarga m100Ah. Decom tenshoras, qua

    Oute vida til T=20C, q

    1.12.

    Em na transievento, po(Debounci

    Aplicaes p

    Fig

    TES DE AL

    fontes mecarregves ou pilhasde energiacapacidade o da corh= 3600 Crregveis),ao final prr descarreguz a vida baterias di(tenso de

    e deve ser comportammenor sereve-se falao de corteando a battro fator imdependem

    que a tem

    RUDO (Boperaeso que, caode provocing) so vi

    prticas de Eletr

    ura 1. 10

    LIMENTA

    ais comuneis ou convs so dispo eltrica. de armaz

    rente de dCoulombs), as bateriematuro dgadas, chatil da bateitas 12V, pe corte), qmedido co

    mento das a autono

    ar, por exee 10,5V. Eeria ir ati

    mportante m dela. Usumperatura

    BOUNCINs de Liga/Daso uma icar vrias a software

    rnica e microco

    : Cdigo d

    O

    ns em sisversores CAositivos qu

    zenamentodescarga p. Deve-se as recarre

    da vida da amado de tria.

    por exempluando 100omo autonbaterias n

    omia e a cemplo, em sta bateriangir 10,5V a temperualmente aideal para

    NG) E FILTDesliga e mnterrupointerrup

    e, program

    ontroladores em

    [ 15 ]

    de cores C

    stemas emA-CC comoue armazen

    o de energpelo tempo

    observar egveis no

    bateria. Ntenso de c

    lo, devem 0% de sua omia da bano linecapacidadeuma bate

    a permitirV. ratura de oas informamaximizar

    TRO (DEBmudana do esteja haes ou conmando um t

    m sistemas comp

    Capacitor

    mbarcados o carregadonam energ

    gia de umao de autonoque, ao coo podem sNa verdadecorte. Desc

    operar decapacidadateria. ar, isto ,

    e, no coria 100Ah

    descarga

    operao daes so fr a vida ti

    BOUNCINe nvel lgabilitada otagens. Astempo (em

    putacionais, por

    res Polis

    com micores de celia qumica

    a bateria omia, sendontrrio daser descare elas tmcarregar a

    13,8V (tede ter sido

    , quando morreto falarpadro de de 100 /

    da bateria,fornecidas il.

    NG) ico, surge u at mess formas m

    m torno de

    r Sandro Juc

    ster.

    crocontrolalulares.

    a e a torna

    medida do dado emas bateriasrregadas a

    m um limite bateria ab

    enso a pleo utilizada,

    maior a cr em uma e descarga20 = 5A d

    , pois sua csupondo T

    um rudo smo um comais comun

    100ms, de

    adores so

    a disponve

    atravs dam ampre-s primriasat 0V poise at ondebaixo deste

    ena carga), e este o

    orrente debateria de

    a 20 horasdurante 20

    capacidadeT=25C ou

    (Bouncing)ontador dens de filtroependendo

    o

    el

    a -s s e e

    , o

    e e , 0

    e u

    g) e o o

  • Aplicaes prticas de Eletrnica e microcontroladores em sistemas computacionais, por Sandro Juc

    [ 16 ]

    da chave) aps as transies, de modo a eliminar o rudo antes de efetuar uma instruo, ou via hardware, utilizando um capacitor de filtro em paralelo com a chave.

    Figura 1. 11: Rudo.

    PROTOCOLO DE COMUNICAO USB

    A USB, sigla para Universal Serial Bus, o padro de interface para perifricos externos ao computador provavelmente mais popular dos j criados. Um sistema USB composto por hardware mestre e escravo. O mestre chamado de host e o escravo denomina-se dispositivo ou simplesmente perifrico. Todas as transferncias USB so administradas e iniciadas pelo host. Mesmo que um dispositivo queira enviar dados, necessrio que o host envie comandos especficos para receb-los.

    A fase de preparao, conhecida como enumerao, acontece logo depois de quando o dispositivo USB fisicamente conectado ao computador. Nesse momento, o sistema operacional realiza vrios pedidos ao dispositivo para que as caractersticas de funcionamento sejam reconhecidas. O sistema operacional, com a obtida noo do perifrico USB, atribui-lhe um endereo e seleciona a configurao mais apropriada de acordo com certos critrios. Com mensagens de confirmao do dispositivo indicando que essas duas ltimas operaes foram corretamente aceitas, a enumerao finalizada e o sistema fica pronto para o uso.

    MTODOS DE COMUNICAO USB

    Os mtodos mais comuns de comunicao USB, tambm utilizados pela ferramenta SanUSB, so:

    Human Interface Device (HID) - O dispositivo USB reconhecido automaticamente pelo sistema operacional Windows@ ou linux como um Dispositivo de Interface Humana (HID), no sendo necessrio a instalao de driver especiais para a aplicao. Este mtodo apresenta velocidade de comunicao de at 64 kB/s e utilizado pelo gerenciador de gravao da ferramenta SanUSB no linux. Mais detalhes na video-aula disponvel em http://www.youtube.com/watch?v=h6Lw2qeWhlM .

    Communication Device Class (CDC) Basicamente o driver emula uma porta COM, fazendo com que a comunicao entre o software e o firmware seja realizada como se

  • fosse umabidireciona14,4 kB/shttp://wcomunicahttp://w

    Mass armazenamapenas peutilizado pferramentaMais http://w

    Como computadode disposclasse de (MSD). Casistemas ocompatve

    NosPIC USB comunicano Linux edriver no s

    Aplicaes p

    a porta de al com velos. Mais de

    www.youtuo

    www.youtu

    Storage mento emela prpriapor pen-da SanUSB

    detalhwww.youtu

    foi visto,or enumeritivos comdispositivoada uma operacionael com uma

    s sitemas o o CDC, o via pore o HID nsistema op

    prticas de Eletr

    comunicaocidade deetalhes emube.com/

    ube.com/

    Device m massa q

    a velocidarives, scpara comhes ube.com/, a comunra os dispo

    mumente aos de comudessas cl

    ais. Portanta dessas cl

    Figur

    operacionapor uma

    rta serial, no Windowperacional p

    rnica e microco

    o serial e comunicam uma ap/watch?v

    bidirecio/watch?v

    (MSD) -que permitade do bacanners, cunicao c

    na /watch?vnicao Uositivos USassociados unicao (asses j to, se adeasses, no

    ra 1. 12: D

    is Window razo simo que torn

    ws@ so napara que o

    ontroladores em

    [ 17 ]

    padro. ao de plicao Wv=KUd1Jkonal

    v=cRW99T

    Mtodo te alta vearramento meras dicom softwa

    videv=Ak9RAlUSB basSB conecta

    a USB: d(CDC) e dipossui umquarmos o

    o haver ne

    Drivers e

    ws@ e Linuxmples, os na o proceativos, ou

    o PC reconh

    m sistemas comp

    o mtodoat 115 kb

    Windows@ kwGJNk

    T_qa7o.

    customizalocidade dUSB 2.0

    igitais. Foiare de supeo-aula 2YTr4.

    seada em dos a ele.

    dispositivosspositivos

    m driver imo firmwareecessidade

    comunica

    x, o modo programa

    esso ainda seja, no

    hea o disp

    putacionais, por

    o mais simpbps, ou sej

    com prote em u

    no

    ado para de comuni

    (480 Mbpi utilizado perviso p

    dis

    uma cen Existem

    s de interfde armazemplementae de nossoe de implem

    ao.

    mais fcil as para PC

    mais simp necess

    positivo.

    r Sandro Juc

    ples de coja, aproximtocolo Mouma apli

    dispocao USBps). Este

    juntamenrogramado

    sponvel

    ntral (hosttrs grandface humaenamento ado na mo dispositivmentar um

    de comunCs so baples. O mrio instala

    omunicaomadamenteodbus RTUicao de

    Linux

    sitivos deB, limitadomtodo

    nte com ao em Java

    em

    t), onde odes classesana (HID)em massa

    maioria dosvo para se

    m driver.

    nicar com oaseados natodo CDCar nenhum

    o e U e x

    e o a .

    m

    o s , a s r

    o a C m

  • Aplicaes prticas de Eletrnica e microcontroladores em sistemas computacionais, por Sandro Juc

    [ 18 ]

    FERRAMENTA DE GRAVAO VIA USB

    O sistema de desenvolvimento SanUSB uma ferramenta composta de software e hardware bsico da famlia PIC18Fxx5x com interface USB. Esta ferramenta livre se mostra eficiente no desenvolvimento rpido de projetos reais, pois no h necessidade de remover o microcontrolador para a atualizao do firmware. Alm disso, esta ferramenta se mostra eficaz no ensino e na difuso de microcontroladores, bem como em projetos de eletrnica e informtica, pois todos os usurios podem desenvolver projetos reais no ambiente de ensino ou na prpria residncia sem a necessidade de um equipamento para gravao de microcontroladores. Alm disso, o software de gravao de microcontroladores USB multiplataforma, pois executvel no Windows@, Mac OSX e no Linux e tambm plug and play, ou seja, reconhecido automaticamente pelos sistemas operacionais sem a necessidade de instalar nenhum driver. Dessa forma, ela capaz de suprimir:

    Um equipamento especfico para gravao de um programa no microcontrolador; conversor TTL - RS-232 para comunicao serial bidirecional, emulado via USB pelo

    protocolo CDC, que permite tambm a depurao do programa atravs da impresso via USB das variveis do firmware;

    fonte de alimentao, j que a alimentao do PIC provm da porta USB do PC. importante salientar que cargas indutivas como motores de passo ou com corrente acima de 400mA devem ser alimentadas por uma fonte de alimentao externa.

    Conversor analgico-digital (AD) externo, tendo em vista que ele dispe internamente de 10 ADs de 10 bits;

    software de simulao, considerando que a simulao do programa e do hardware podem ser feitas de forma rpida e eficaz no prprio circuito de desenvolvimento ou com um protoboard auxiliar.

    Alm de todas estas vantagens, os laptops e alguns computadores atuais no apresentam mais interface de comunicao paralela e nem serial EIA/RS-232, somente USB. Como pode ser visto, esta ferramenta possibilita que a compilao, a gravao e a simulao real de um programa, como tambm a comunicao serial atravs da emulao de uma porta COM virtual, possam ser feitos de forma rpida e eficaz a partir do momento em o microcontrolador esteja conectado diretamente a um computador via USB.

  • UtilCompetida Feira Categoria TecnolgicCategoria lugar em ie Cultura d

    2.1 GRA

    A tratravs deefetuar a de qualquePara que tsomente uUSB Gerentambm novos prog

    Cassuporte adisponvel i586-s.hthttp://w

    ParanecessrioExistem di

    Aplicaes p

    izando esto de RobBrasileira Engenhari

    ca na FerSupraniveinovao ndo Cear n

    AVAO

    ransfernce um harddescarga der PC. todas essauma vez, cnciador.he

    possvel bgramas: hso o compu programaem: http

    tml www.java.

    a que os po compil-iversos com

    prticas de Eletr

    Figu

    ta ferrametica do IFde Cinciia (2009), ria Explorael do Foro na Semantena categori

    DE MICRO

    cia de progdware de de program

    s funcionacom um grex disponvbaixar periottp://wwutador ainas executp://www

    ou.com/pt_programaslos, ou sempiladores

    rnica e microco

    ra 2. 1: G

    nta, estudFCE (2007, as e Engecomo tam

    a 2009 emInternacioec 2011 doia robtica

    OCONTRO

    gramas pagravao

    mas para o

    lidades sejravador esvel na pasodicament

    ww.4shareda no o tveis dese

    w.4sharedu BR/down

    s em C poseja, transfos que pode

    ontroladores em

    [ 19 ]

    Gravao d

    antes fora 2008 e 20enharia (F

    mbm obtivm Medelinnal de Cieo IFCE e ca educacion

    OLADORE

    ra os micrespecfico

    o microcon

    jam possvspecfico pasta complete as atualied.com/fitenha o apenvolvidos

    d.com/fileatra

    nload/massam ser gorm-los eem ser util

    m sistemas comp

    do PIC via

    am trs ve009) na caFEBRACE09veram Prmn na Colencia e Ingampees nnal em 201

    ES

    rocontrolado. Atravs ntrolador d

    veis, neceara PIC, o

    eta da ferrizaes deile/sIZwBplicativo Jas em Javae/WKDhQvs

    anual.jsp.gravados nem linguaglizados por

    putacionais, por

    a PC.

    zes consecategoria Lo9) da USPmio de Inombia e fgeniera 20na V Feira 11.

    dores nodesta fer

    diretament

    essrio gra gerenciadamenta nossa ferram

    BP4r/100ava JRE oua, baixe aQwZK/jre-

    do

    no microcogem de mr esta ferra

    r Sandro Juc

    cutivas camocalizao,P em Soovao emforam Cam010 no ChiEstadual d

    ormalmentrramenta, te de uma

    avar, anterdor de grao link ab

    menta e a i0727SanUu SDK insta Verso W-6u21-Wio

    ontrolador quina heamenta, e

    mpees da campees

    o Paulo nam Aplicaompees nale, terceirode Cincias

    e efetuada possveporta USB

    riormente evao pelaaixo, ondencluso de

    USB.htmltalado paraWindows@indows@-

    link

    via USB, exadecimalntre eles o

    a s a o a o s

    a el B

    e a e e

    a @ -:

    . o

  • SDCC, o disponveisutilizados pasta de dde suhttp://w

    As vtenham sidNeste casnovo sourc

    CasGerenciadodentro da(C:\Arquivmontado e

    Fig

    Para um m

    Aplicaes p

    C18, o Hs para emcom bom

    desenvolvimporte

    www.4shaverses 4 do testadao, recom

    rce file. so grave orPlugandP

    a pasta Exvos de proem protobo

    ura 2. 2:

    microcontro

    prticas de Eletr

    Hi-Tech e ulao serrendiment

    mento, oa USB

    ared.com/deste com

    as algumasmendado c

    no microPlay.hex, xemploseBogramas\P

    board mos

    Esquem

    olador de 4

    rnica e microco

    o CCS. Drial, diversoto, alm do CCS na vB pod/file/Mo6mpilador aps verses ecriar, para

    controladono esque

    BibliotecasCICC\Driverstrada a se

    tico de m

    40 pinos, o

    ontroladores em

    [ 20 ]

    Devido dos perifric

    do C18, coverso 3.24e ser

    6sQJs2/10presentam

    e funcionara cada firm

    or o novoea de colCCS localizrs ). A reeguir:

    montagem

    o circuito

    m sistemas comp

    didtica dacos e mult

    om exempl45. Esta ve

    obtida00511Com

    m bugs em ram satisfamware (pro

    o gerencialar o novozada na pepresenta

    m da Ferra

    mostrado

    putacionais, por

    as funestitasking, uos de aplicerso funca atrampilador.

    funes etoriamenteograma a

    ador de o arquivo pasta instao bsica

    amenta pa

    abaixo:

    r Sandro Juc

    s e biblioum dos cocao disp

    cional com avs dhtml . e aplicaee at a verser comp

    gravao cabealho alada do cdo circuit

    ara 28 pin

    otecas USBmpiladoresponveis nabibliotecaso link

    es, emborarso 4.084pilado), um

    pela USBSanUSB.h

    compiladoto SanUSB

    nos.

    B s a s :

    a .

    m

    B h r B

  • j

    Fig

    Os com 1 m 1 cr 2 ca 2 ca 3 le 1 re 1 d 1 C

    NotcompatvLinux e desenvolboto de alimentar simples fioaceso) e qjump), encompilado

    O cmicrocontr(+5V) do co D- am19 e 20 eporta USB direto no cort-lo, e

    Aplicaes p

    ura 2. 3:

    mponentes microcontroristal de 20apacitores apacitores eds e 3 resesistor de 2iodo qualqabo USB q

    te que, esvel com oMac OSX

    lvimento reset, no o microco

    o, o microque, aps ontra em Eo. cabo USB arolador nocabo USB

    marelo ou be dos barra

    do compuprotoboard

    em um pro

    prticas de Eletr

    Esquem

    bsicos doolador da f0MHz; de 22pF; de 1uF (u

    sistores de 2k2 e um b

    quer entre qualquer.

    ste sistemo softwarX, pode de micropino 1, co

    ontrolador,ocontroladoo reset comEstado pa

    apresenta os pontos vermelho

    branco. Notamentos vutador. Parrd, com fiotoboard o

    rnica e microco

    tico de m

    o circuito sfamlia PIC

    m no pino390 (s boto ou fio +5V e o

    ma multipre de gra

    e ser impocontrolaomo boto com o p

    or entra emm o pino 1 ara Opera

    normalmemostradoso, o Gnd (te que a fovermelho (ra ligar o cos rgidos ou numa p

    ontroladores em

    [ 21 ]

    montagem

    so: C USB (18F

    o 14 Vusb necessrioio para grao pino Vdd

    iplataformavao HIplementadadores PI de grava

    pino 1 no m Estado no Vcc (+o do p

    nte quatros na figur(Vusb-) monte de ali(+5V) e azcabo USB n

    soldados,placa de c

    m sistemas comp

    m da ferra

    F2550, 18F

    e outro eno um led coavao no d;

    ma (WindHID USB d

    do tambIC com ino via USGnd (0V),para Grav

    +5V atravprograma

    o fios, que ra acima, marrom ouimentao zul (Gnd) no circuito

    como tamcircuito imp

    putacionais, por

    menta pa

    F2455, 18F

    tre o +5V om resistopino 1;

    dows@, Lda Microcm em qinterface SB. Ao con, atravs d

    vao via Us do resistaplicativo

    so coneconde norm preto, o Ddo microcdo circuito possvel

    mbm popresso, uti

    r Sandro Juc

    ara 40 pin

    F4550, etc

    e o Gnd ) r no pino B

    Linux e Mchip tambqualquer USB, poi

    nectar o cado boto USB (led ntor fixo de

    (firmware

    ctados ao malmente,D+ azul controladoro provem cort-lo e

    ossvel conilizando um

    nos.

    .);

    ; B7);

    Mac OSX),bm paraplaca des utiliza oabo USB eou de um

    no pino B72K2 sem o

    e) que fo

    circuito doo fio Vcc

    ou verde er nos pinosda prpriaconect-lo

    nectar semm conecto

    ), a e o e m 7 o oi

    o c e s a o m r

  • USB fmeado microcUSB esteja

    A ficircuito anterminal correspond

    imcircuito dealimenta

    Cassistema dealimentaA figura aesta ferramo sistema de circuitocontato co

    Se abaixo, em

    Aplicaes p

    a. O diodoontroladora polarizadigura abaixnterior e a conectadentes do

    Figura 2.

    mportante esta ferrao que vemso o sisteme aquisioo externabaixo mosmenta compronto pa

    o impressoom o grupo

    preferir com folha ap

    prticas de Eletr

    o de proter serve parda de formaxo mostra posio d

    ado diretacado USB.

    . 4: Esque

    salientar qamenta dem da USB, ma microcoo de dado, que pode

    stra o PCB,m entrada ra um apreo da ferramo SanUSB a

    Figura

    onfeccionapropriada,

    rnica e microco

    o colocadra protegea inversa.a ferrame

    de cada temente no.

    ema mont

    que, para eve conterou seja, co

    ontrolado ss ou um ce ser uma disponvepara fonteendizado mmenta Sanatravs do

    a 2. 5: Esq

    ar a placa,corroer, f

    ontroladores em

    [ 22 ]

    do no pinoer contra c

    enta SanUerminal no os pinos

    tado em p

    o perfeitor um capolocado enseja embacontrole debateria co

    el nos Arque de alimenmais rpidonUSB, com e-mail: sa

    quema mo

    , possvfurar (pon

    m sistemas comp

    o 20 entre corrente re

    USB montaconector

    do microc

    protoboar

    o funcionampacitor de ntre os pinorcado come acesso, emum de 9Vuivos do Gntao exto, possv

    mo a foto anusb_laes

    ontado em

    vel tambmtos marro

    putacionais, por

    o Vcc da eversa cas

    ada em proUSB a ser

    controlador

    rd e conec

    mento da filtro ent

    os 20 (+5Vmo, por exeele necessV ou um crupo SanUerna. Para

    vel tambmda placa a

    se@yahoo.

    m PCB.

    m imprimirns) e sold

    r Sandro Juc

    USB e a aso a tenso

    rotoboard sr ligado nor pelos q

    ctor USB.

    gravao tre 0,1uf V) e 19 (Gemplo, umsita de umcarregador USB, e o cia quem de

    m encomenabaixo, encom.br .

    r o PCB (dar os com

    limentaoo da porta

    seguindo oo PC. Cadaquatro fios

    .

    via USB, oe 1uF nand).

    m rob, uma fonte dede celularrcuito paraeseja obtendar placasntrando em

    (em preto)mponentes

    o a

    o a s

    o a

    m e . a r s

    m

    ) .

  • Mais http://wvideo disp

    Para

    comunicawww.tiny

    DurC, a biblExemploseinstalada dinstrueshabilitaooscilador eatravs de

    Como temporizadum led con

    -------------#include < void main({ clock_int_4para CPU) while (1)

    Aplicaes p

    www.4shaonvel em:

    a obter vo e alimyurl.com/

    rante a proioteca cabeBibliotecado compilas do PIC1o do sistemexterno de

    e prescaler

    a frequdores corrnectado no

    -------------

    Funo nec

    rnica e microco

    /get/ithqwww.yout

    2. 6: PCB

    gramas-fovia USB, e clicar no

    o do microcSanUSB (#que voc jArquivos depara o sisock, ou sej

    para gerdor de freq

    oscilador a um microa cada 0,5

    -------------

    cessria pa

    ontroladores em

    [ 23 ]

    detalhes Lbiq/Fazetube.com

    B da Ferra

    nte e vdbasta se

    o item Arqu

    controlado#include < adicionoe programastema opja, osciladorar a freququncia.

    interno rossegundosegundo.

    -------------

    ara habilita

    m sistemas comp

    endoPCBtm/watch?v

    amenta Sa

    deos destee cadastrauivos.

    r basta ins) contidda Driversrivers ). Esconfigura

    rno de 4 M48MHz da

    MHz, cadrama exem

    -------------

    clock (48M

    r Sandro Juc

    html ou asNw5BfU.

    livre de upo de ac

    nicio do proda dentro s localizadasta biblioteaes de Hz para CPa comunic

    da incremmplo1 abai

    -------------

    Hz para U

    ematravs do

    gravaocesso livre

    ograma emda pasta

    a na pastaeca contmfusveis e

    PU e cristacao USB

    mento dosxo comuta

    -------------

    SB e 4MHz

    : o

    , e

    m a a

    m e al ,

    s a

    z

  • Aplicaes prticas de Eletrnica e microcontroladores em sistemas computacionais, por Sandro Juc

    [ 24 ]

    { output_toggle(pin_B7); // comuta Led na funo principal delay_ms(500); } } O programa pisca3 abaixo pisca trs leds conectados nos pinos B5, B6 e B7. #include main(){ clock_int_4MHz();//Funo necessria para habilitar o dual clock (48MHz para USB e 4MHz para CPU) while (1) { output_high(pin_B5); // Pisca Led na funo principal delay_ms(500); output_low(pin_B5); output_high(pin_B6); delay_ms(500); output_low(pin_B6); output_high(pin_B7); delay_ms(500); output_low(pin_B7); }} ---------------------------------------------------------------------------------------------------------------

    Os arquivos compilados .hex assim como os firmwares esto disponveis em http://www.4shared.com/file/sIZwBP4r/100727SanUSB.html.

    2.2 GRAVANDO O MICROCONTROLADOR VIA USB NO WINDOWS

    Para executar a gravao com a ferramenta SanUSB, importante seguir os

    seguintes passos: 1. Baixe o a pasta da ferramenta de desenvolvimento SanUSB, para um diretrio raiz C ou D, obtida no link http://www.4shared.com/file/sIZwBP4r/100727SanUSB.html. 2. Grave no microcontrolador, somente uma vez, com um gravador especfico para PIC ou com um circuito simples de gravao ICSP mostrado nas prximas sees, o novo gerenciador de gravao pela USB GerenciadorPlugandPlay.hex disponvel na pasta Gerenciador, compatvel com os sistemas operacionais Windows@, Linux e Mac OSX. 3. Pressione o boto ou conecte o jump de gravao do pino 1 no Gnd para a transferncia de programa do PC para o microcontrolador. 4. Conecte o cabo USB, entre o PIC e o PC, e solte o boto ou retire o jump. Se o circuito SanUSB estiver correto acender o led do pino B7. 5. Caso o computador ainda no o tenha o aplicativo Java JRE ou SDK instalado para suporte a programas executveis desenvolvidos em Java, baixe a Verso Windows@ disponvel em: http://www.4shared.com/file/WKDhQwZK/[email protected] ou atravs do link:

  • http://wda pasta S

    F

    6. Clique e

    programa

    Gravar. Es

    7. Aps a

    gravao

    novamente

    Para protebasta ir em

    Aplicaes p

    www.java.SanUSBwin

    Figura 2.

    em Abrir

    compilado

    ste program

    gravao d

    e clique e

    e, repita o

    eger o exem Prote

    prticas de Eletr

    .com/pt_nPlugandPla

    7: Interfa

    r e escolha

    o exemplo

    ma pisca o

    do program

    em Reseta

    s passos a

    ecutvel saoResiden

    rnica e microco

    BR/downay. Surgir

    ace de gra

    o program

    o1.hex da

    led conect

    ma, lembre

    r. Pronto o

    nteriores a

    anusb de ente do ant

    ontroladores em

    [ 25 ]

    nload/ma a seguint

    avao do

    ma .hex q

    pasta Ex

    tado no pi

    e-se de so

    o program

    a partir do

    excluso doti-virus AVG

    m sistemas comp

    anual.jsp ete tela:

    o microco

    que deseja

    xemploseBi

    no B7;

    ltar o bot

    ma estar

    passo 3.

    o anti-viruG:

    putacionais, por

    e execute

    ontrolado

    gravar, co

    ibliotecasS

    o ou retira

    em opera

    s, como p

    r Sandro Juc

    o aplicativ

    or via USB

    como por e

    SanUSB e

    ar o jump

    o. Para

    por exempl

    o SanUSB

    B.

    exemplo, o

    clique em

    do pino de

    programa

    o, o AVG

    B

    o

    m

    e

    r

    ,

  • Clicar em g

    Clicar em que em OK.

    Aplicaes p

    gereciar ex

    Gerenciar C:\Progra

    prticas de Eletr

    xecesses,

    Excees m Files\Sa

    rnica e microco

    , como na

    e adicionaanUSB ou

    ontroladores em

    [ 26 ]

    figura aba

    ar caminhoem C:\Arq

    m sistemas comp

    ixo:

    o. Ento inquivos de P

    putacionais, por

    nserir o camProgramas

    r Sandro Juc

    minho do

    s\SanUSB eexecutvee clicar em

    el m

  • Pronto instal-lo d

    2.3

    A g

    Bluetooth.

    um lado, u

    atravs do

    outro lado

    final. Esta

    disponveis

    Aba

    com tens

    Aplicaes p

    isso. Parade dentro d

    3 GRAV

    gravao w

    Para a gr

    um mdul

    o chip FTD

    o da rede,

    a conexo

    s em: http

    aixo uma il

    o de alime

    prticas de Eletr

    reinstalardo arquivo

    VAO WI

    wireless de

    ravao Zig

    o conect

    DI FT232RL

    , um md

    o permite a

    ://www.4s

    lustrao p

    entao de

    rnica e microco

    r o executo .zip ou .ra

    IRELESS D

    scrita nest

    gbee so u

    tado a um

    L ou atrav

    ulo Zigbee

    a program

    shared.com

    para realiza

    e 3,3V.

    ontroladores em

    [ 27 ]

    tvel da sar.

    DE MICRO

    ta apostila

    utlizados d

    m PC coord

    vs de uma

    e conec

    mao sem

    m/get/aP17

    ar grava

    m sistemas comp

    subpasta S

    OCONTRO

    a pode ser

    dois mdu

    denador co

    a porta se

    tado ao m

    fio no mic

    7n4FT/sanu

    o de micro

    putacionais, por

    SanUSBwin

    OLADORE

    feita com

    los XBee

    onectado a

    rial real co

    microcontro

    crocontrola

    usbee.htm

    ocontrolad

    r Sandro Juc

    nPlugandPl

    ES

    m modems

    da Srie

    ao PC via U

    om o MAX

    olador do

    ador PIC.

    l

    dor de form

    ay , basta

    Zigbee ou

    1 (S1). De

    USB do PC

    X-232 e, do

    dispositivo

    Programas

    ma wireless

    a

    u

    e

    C

    o

    o

    s

    s

  • Para mais

    http://w

    microcontr

    Procedime

    1- Circuit

    (www.tiny

    Gnd, Tx e

    (Vcc) do m

    (Gnd) do m

    pino 18 (R

    ligado ao 1

    2- Config

    Xbee da

    baud rate

    coordenad

    qual firmw

    pino B7 ir

    Aplicaes p

    Figura 2.

    detalhes

    www.youtu

    roladores

    ento para g

    to bsico

    yurl.com/Sa

    Rx, como

    microcontr

    microcontr

    Rx) do mic

    17 (Tx) do

    gurao d

    a srie 1 (c

    do microc

    dor ao micr

    ware (Conf

    piscar int

    prticas de Eletr

    8: Ilustra

    basta aco

    ube.com/

    via Zigbe

    gravao w

    o: Conecte

    anUSB), co

    o mostra a

    olador e a

    rolador e a

    crocontrola

    o microcont

    dos Mdu

    coordenad

    controlador

    rocontrolad

    nfigCoord96

    termitente

    rnica e microco

    ao do c

    mpanhar o

    /watch?v

    e: http:/

    wireless:

    e o mdu

    om aliment

    figura aba

    ao pino 1 (

    ao pino 10

    ador e ao

    trolador e

    ulos: A gr

    dor e dispo

    r (19200 b

    dor, ver cir

    600to19200

    mente. Se

    ontroladores em

    [ 28 ]

    circuito de

    os vdeos

    v=_Pbq2e

    //www.yo

    lo Xbee

    tao entr

    aixo. Na fi

    (Vcc) do m

    (Gnd) do

    pino 2 (DO

    ao pino 3

    ravao w

    ositivo fina

    ps). Para o

    rcuito bsi

    00.hex ou C

    o led no

    m sistemas comp

    e grava

    Gravao

    eYha_c

    outube.co

    ao micro

    re 3V e 3,6

    gura, o fio

    modem Zig

    modem Z

    OUT) do mo

    (DIN) do m

    wireless s

    l) estivere

    o coordena

    co acima,

    ConfigCoor

    piscar, pr

    putacionais, por

    o wireles

    sem fio de

    e Grava

    om/watch

    ocontrolado

    6V e apena

    o vermelho

    gbee, o fio

    igbee, o fi

    odem Zigbe

    modem Zigb

    vai acont

    m configu

    ador, basta

    gravar via

    rd19200to1

    ovavelmen

    r Sandro Juc

    ss Zigbee

    e microcon

    o sem

    h?v=BlRj

    or da plac

    as 4 fios: V

    o ligado

    o azul lig

    o laranja

    ee, e o fio

    bee.

    tecer se o

    rados com

    a conectar

    a USB e ex

    o19200.hex

    nte existe u

    .

    ntroladores

    m fio de

    KbXpepg

    ca SanUSB

    Vcc (3,3V)

    ao pino 20

    gado ao 19

    ligado ao

    amarelo

    os mdulos

    m o mesmo

    , o mdulo

    xaminar em

    x) o led no

    um erro na

    s

    e

    .

    B

    ,

    0

    9

    o

    s

    o

    o

    m

    o

    a

  • ligao do

    serial e co

    Faa post

    (ConfigDis

    conectado

    mdulos e

    3- Adap

    Adaptador

    apresentar

    necessrio

    tutorial), e

    Adaptador

    para grava

    Aplicaes p

    o circuito. A

    necte ao P

    teriormente

    spFinal9600

    o ao microc

    esto conec

    Figura

    ptador W

    rSerial.hex

    r o erro O

    o gravar n

    e em segu

    rSerial.hex

    ao wirele

    prticas de Eletr

    Aps a con

    PC.

    e o mesm

    00to19200.h

    controlado

    ctados cor

    a 2. 9: Gr

    Wireless:

    x da pasta

    Odd addres

    novamente

    uida, reali

    . Aps a t

    ess.

    rnica e microco

    nfigurao,

    mo para o

    hex ou

    r. Quando

    retamente

    ravao v

    Agora

    a Adaptad

    ss at begin

    o gerenc

    zar novam

    transfern

    ontroladores em

    [ 29 ]

    coloque o

    o mdulo

    ConfigDi

    o led do p

    e esto ap

    ia USB de

    grave,

    orWireless

    inning of H

    ciador.hex,

    mente a g

    cia deste

    m sistemas comp

    o mdulo C

    Dispositivo

    DispFinal192

    pino B7 es

    ptos para g

    e Configu

    novament

    s. Se, ap

    HEX file er

    com qua

    ravao vi

    firmware,

    putacionais, por

    Coordenado

    o final, g

    200to19200

    tiver pisca

    gravao w

    rao wir

    te via

    s a grava

    rror, como

    lquer grav

    ia USB do

    o microco

    r Sandro Juc

    or no conv

    ravando o

    00.hex) e

    ando, signif

    wireless.

    reless.

    USB, o

    ao do A

    o na figura

    vador espe

    o firmware

    ontrolador

    versor USB-

    o firmware

    e deixe-o

    fica que os

    firmware

    Adaptador

    a abaixo,

    ecifico (ve

    e aplicativo

    est apto

    -

    e

    o

    s

    e

    ,

    r

    o

    o

  • Ago

    Pesquisar

    vdeo Grav

    transferir

    sanusbee.

    Exe

    san

    F

    A g

    Bluetooth

    laptops e

    Aplicaes p

    Figur

    ora basta

    -> Promp

    vao sem

    os progra

    emplo:

    nusbee Exe

    Figura 2.

    gravao

    conectado

    desktops,

    prticas de Eletr

    ra 2. 10: G

    acessar a

    pt de Coma

    m fio de m

    amas aplic

    emplo1Wire

    11: Grava

    wireless

    o ao microc

    j existe u

    rnica e microco

    Gravao

    a pasta sa

    ando), com

    microcontro

    ativos.hex

    eless.hex

    ao wire

    s Bluetoo

    controlado

    um mdulo

    ontroladores em

    [ 30 ]

    o via USB

    anusbee p

    mo na figu

    oladores v

    como o

    p COM2

    eless zigbe

    oth pode

    or, pois nor

    o bluetooth

    m sistemas comp

    de Adapt

    pelo Prom

    ura abaixo

    via Zigbee,

    Exemplo1w

    ee pelo p

    ser realiza

    rmalmente

    h interno.

    putacionais, por

    tador wire

    pt do Wi

    , e digitar,

    , as linhas

    wireless.he

    rompt do

    ada com

    e no PC coo

    A tenso d

    r Sandro Juc

    eless.

    ndows@ (

    r, como mo

    s de coma

    ex contido

    o Window

    apenas u

    ordenador

    do mdulo

    (Iniciar ->

    ostrado no

    ando, para

    o na pasta

    ws.

    m mdulo

    r, como em

    o Bluetooth

    >

    o

    a

    a

    o

    m

    h

  • encapsulad

    que supor

    microcontr

    De

    conectado

    sem fio

    http://www

    http://san

    adquirido o

    Aba

    Bluetooth

    Fig

    Para mais

    http://w

    microcontr

    Bluetooth.

    1- Circuit

    (www.tiny

    Gnd, Tx e

    Aplicaes p

    do, mostra

    rta de 3,3V

    rolador alim

    um lado u

    o ao microc

    no m

    w.4shared

    usb-laese.w

    o modem

    aixo uma il

    com tens

    gura 2. 12

    detalhes

    www.youtu

    roladores

    Procedime

    to bsico

    yurl.com/Sa

    Rx, como

    prticas de Eletr

    ado na figu

    V. Dessa fo

    mentado p

    um PC coo

    controlado

    microcontro

    .com/get/a

    wix.com/ro

    Bluetooth

    lustrao p

    o de alime

    2: Ilustra

    basta aco

    ube.com/

    http:/

    ento para

    o: Conecte

    anUSB), co

    mostra a f

    rnica e microco

    ura abaixo,

    orma, pod

    pela tenso

    ordenador

    or do dispo

    lador PI

    aP17n4FT/

    obotica#!p

    mostrado

    para realiza

    entao de

    o do Ci

    mpanhar o

    /watch?v

    //www.yo

    gravao w

    o mdulo

    om alimen

    figura acim

    ontroladores em

    [ 31 ]

    , suporta a

    de-se cone

    o da porta

    e, do outr

    ositivo fina

    IC. Os

    /sanusbee.

    produtos/p

    neste tuto

    ar grava

    e 5V.

    ircuito de

    os vdeos

    v=_Pbq2e

    outube.co

    wireless:

    o bluetooth

    ntao entr

    ma do circu

    m sistemas comp

    at 6V, dife

    ectar o m

    USB de 5V

    ro lado da

    l. Esta co

    Programa

    .html. N

    roductssta

    rial.

    o de micro

    e gravao

    Gravao

    eYha_c e G

    om/watch

    h ao micro

    re 3V e 6V

    uito. Na fig

    putacionais, por

    erentement

    dulo Bluet

    V.

    rede, um

    onexo per

    as esto

    Neste li

    ckergallery

    ocontrolad

    o wireless

    sem fio de

    Gravao s

    h?v=0PcC

    ocontrolad

    V e apena

    gura, o fio v

    r Sandro Juc

    te do md

    tooth diret

    mdulo b

    rmite a pro

    disponv

    ink em

    yv20=1,

    dor de form

    s Bluetoo

    de microcon

    sem fio (w

    CQtsO1Bw

    dor da plac

    s 4 fios: V

    vermelho

    ulo Xbee

    amente ao

    bluetooth

    ogramao

    veis em

    anexo

    pode se

    ma wireless

    oth.

    ntroladores

    wireless) de

    wg via

    ca SanUSB

    Vcc (3,3V)

    ligado ao

    o

    o

    :

    :

    r

    s

    es

    e

    a

    B

    ,

    o

  • pino 20 (V

    ao 19 (Gn

    ao pino 18

    ligado ao 1

    2- Parearconectado2.1- Iniciasenha pad2.2- Aps dispositivo

    1.3- Clicarmodem Bl

    Figu

    O npor exempclicando co> Avanad

    Aplicaes p

    Vcc) do mi

    d) do micr

    8 (Rx) do

    17 (Tx) do

    r o modeo ao microcar -> Paindro: 1234;

    o pareamos. Ir apar

    F

    r em cima,uetooth, e

    ura 2. 14:

    nmero da plo, para om o botdo -> Nm

    prticas de Eletr

    icrocontrol

    rocontrolad

    o microcon

    o microcont

    em Bluetocontroladornel de con;

    mento, cliqurecer o mo

    Figura 2. 1

    , por exemem Hardwa

    : Verifica

    porta SerCOM9 como direito e

    mero da Por

    rnica e microco

    ador e ao

    dor e ao p

    ntrolador e

    trolador e

    ooth: Apsr, realizar ntrole -> A

    ue em Inicodem parea

    13: Parea

    mplo, do mare, que se

    o da po

    rial Padro mo neste em cima darta COM.

    ontroladores em

    [ 32 ]

    pino Vcc

    pino Gnd d

    e ao pino

    ao pino Rx

    s alimentao pareame

    Adicionar u

    ciar -> Paado, como

    mento do

    modem de er utilizada

    orta serial

    o por Link tutorial,

    a porta ->

    m sistemas comp

    do modem

    o modem

    Tx modem

    x do modem

    ar o modeento com oum disposi

    ainel de coo, por exem

    o modem

    linvor, e va para a gr

    l criada pe

    Bluetooth atravs dopropriedad

    putacionais, por

    m bluetooth

    bluetooth,

    m bluetooth

    m bluetoot

    m Bluetooo PC indo etivo de blu

    ontrole -> mplo, o linv

    bluetooth

    verificar quravao wi

    elo mode

    (COM37) po Gerenciades -> Con

    r Sandro Juc

    h, o fio az

    , o fio verd

    h, e o fio

    th.

    oth com 3,em: uetooth ->

    exibir impvor.

    h.

    ual porta cireless.

    em blueto

    pode ser mador de Dnfigurao

    zul ligado

    de ligado

    amarelo

    ,3V ou 5V

    > linvor ->

    pressoras e

    criada pelo

    ooth.

    modificadaispositivos de Porta -

    o

    o

    V,

    >

    e

    o

    , , -

  • 3- Config

    mdulo Bl

    bps). Para

    acima, gra

    pino B7 ir

    ligao do

    Quando o

    corretame

    4- Adap

    Adaptador

    apresentar

    necessrio

    tutorial), e

    Adaptador

    para grava

    Aplicaes p

    gurao d

    uetooth es

    a isto, bast

    avar via US

    piscar int

    circuito.

    o led do p

    ente e esto

    Figura

    ptador W

    rSerial.hex

    r o erro O

    o gravar n

    e em segu

    rSerial.hex

    ao wirele

    prticas de Eletr

    do Mdul

    stiver confi

    a conectar

    SB o firmw

    termitente

    pino B7 es

    o aptos pa

    a 2. 15: G

    Wireless:

    x da pasta

    Odd addres

    novamente

    uida, reali

    . Aps a t

    ess.

    rnica e microco

    lo blueto

    igurado co

    r, o mdulo

    ware Config

    mente. Se

    stiver pisca

    ara grava

    ravao v

    Agora

    a Adaptad

    ss at begin

    o gerenc

    zar novam

    transfern

    ontroladores em

    [ 33 ]

    ooth: A gr

    om o mesm

    o bluetooth

    figbluetotth

    o led no

    ando, sign

    o wireless

    via USB d

    grave,

    orWireless

    inning of H

    ciador.hex,

    mente a g

    cia deste

    m sistemas comp

    ravao w

    mo baud ra

    h ao micro

    h9600to192

    piscar, pr

    nifica que

    s.

    e Configu

    novament

    s. Se, ap

    HEX file er

    com qua

    ravao vi

    firmware,

    putacionais, por

    wireless s

    ate do micr

    ocontrolado

    200.hex e

    ovavelmen

    os mdulo

    urao wi

    te via

    s a grava

    rror, como

    lquer grav

    ia USB do

    o microco

    r Sandro Juc

    vai acont

    rocontrolad

    or, ver circ

    verificar s

    nte existe u

    os esto c

    ireless.

    USB, o

    ao do A

    o na figura

    vador espe

    o firmware

    ontrolador

    tecer se o

    dor (19200

    cuito bsico

    se o led no

    um erro na

    conectados

    firmware

    Adaptador

    a abaixo,

    ecifico (ve

    e aplicativo

    est apto

    o

    0

    o

    o

    a

    s

    e

    ,

    r

    o

    o

  • Ago

    Pesquisar

    vdeo PIC

    programas

    Exe

    Fig

    As vantagde modecomputadogravao d

    Aplicaes p

    Figur

    ora basta

    -> Promp

    C wireless

    s aplicativo

    emplo: san

    gura 2. 17

    ens do moems Bluetores e cede microco

    prticas de Eletr

    ra 2. 16: G

    acessar a

    pt de Coma

    Zigbee p

    os.hex com

    nusbee Exe

    7: Grava

    odem Bluetooth j elulares. Aontroladore

    rnica e microco

    Gravao

    a pasta sa

    ando), com

    programmin

    mo o Exemp

    emplo1Wir

    o wirele

    tooth em disponve

    A desvantaes mxima

    ontroladores em

    [ 34 ]

    o via USB

    anusbee p

    mo na figu

    ng II, as

    plo1wireles

    reless.hex

    ess blueto

    relao aoeis em vagem em de 10 me

    m sistemas comp

    de Adapt

    pelo Prom

    ura abaixo

    linhas de

    ss.hex con

    p COM9

    ooth pelo

    o Zigbee, svrios sist

    relao atros.

    putacionais, por

    tador wire

    pt do Wi

    , e digitar,

    comando

    tido na pa

    prompt d

    so o preotemas coao Zigbee

    r Sandro Juc

    eless.

    ndows@ (

    r, como mo

    o, para tra

    sta sanusb

    do Window

    o e a dispomputacion

    a dist

    (Iniciar ->

    ostrado no

    ansferir os

    bee.

    ws.

    ponibilidadenais comoncia para

    >

    o

    s

    e o a

  • 2.4

    Devemulao interface Iclock, umamultiplicadoscilador R

    Esseque um daMHz via U4 MHz via

    2.5

    Nes

    canal USBCommunicdo canal Uatravs deCCS Comprograma so os res

    A bexemplos,a emulabiblioteca EEPROM inusb_san_c

    usb_cdc_Ex.: prinusb_cdc_Ex.: dado

    Aplicaes p

    4 SISTE

    vido incserial via

    I2C, esta fea para o cada por umRC interno

    Fi

    e princpioado digitadSB, depoisI2C e vice-

    5 EMULA

    ste tpico B do PICcations DevUSB 2.0. De qualquermpiler ou oaplicativo

    sponsveis biblioteca C a qual devo da comusb_san_cnterna do cdc.h para

    _putc() ntf(usb_cd_getc() o = usb_c

    prticas de Eletr

    MA DUAL

    compatibilida USB e aerramenta anal USB d

    m prescalede 4 MHz,

    igura 2. 1

    o de clock do no teclas para perif-versa.

    AO DE

    mostrad18F2550.

    evices ClassDessa formr softwareo ambientegravado npor esta e

    CDC para ve estar namunicaocdc.h, commicrocontrcomunica

    o microcodc_putc, "retm um

    cdc_getc(

    rnica e microco

    L CLOCK

    dade entrea frequncadota o p

    de 48MHz, er interno, , como il

    18: Comun

    paralelo, rado do comfricos com

    COMUNIC

    do um mtUma das

    ss (CDC), qma, poss

    monitor se de prograno PIC, coemulao do programa mesma p serial RS

    mo mostra rolador. Aso com a

    ntrolador e"\r\nEndercaractere

    (); //retm

    ontroladores em

    [ 35 ]

    e as frequcia padroprincpio D proveniene outra p

    ustrado na

    nicao P

    realizado pmputador, mo um rel

    CAO SE

    todo de cos formas que emula svel se coserial RS-2amao Deom a biblioda porta RSma.c do mpasta ondeS-232. Ala o exem

    s funes CCOM virtu

    envia caracreco para eASCII emu

    m um carac

    m sistemas comp

    uncias neo utilizada

    Dual Clock, nte do cristpara o CPa figura ab

    PIC com P

    pela instrutrafegue p

    gio RTC o

    ERIAL NO

    omunicaomais simpuma port

    omunicar c232 como elphi. O oteca CDC S-232 virtuicrocontrole est o prm disso, plo de leitCDC mais uual so:

    cteres ASCescrever: "ulado pela tere na va

    putacionais, por

    ecessrias pela CPU

    ou seja, utal osciladoPU de 4 Maixo.

    PC e via I2

    o clock_para o micou para a m

    O WINDOW

    o serial bidples, ata COM RScom caraco HyperTdriver CDC(#include

    ual atravs lador est ograma.c ao programura e escrutilizadas c

    CII emulado); USB. rivel dado

    r Sandro Juc

    para a gU, temporutiliza duasor externoMHz, prove

    2C.

    k_int_4MHz(crocontrolamemria EE

    WS

    direcional travs do

    S-232 virtucteres ASCTerminal, oC instaladoe )

    a pasta depilado parae inserir a

    m buffer daa biblioteca

    B.

    e e e z o

    e 8 m

    o o s B o o ,

    e a a a a

  • Aplicaes prticas de Eletrnica e microcontroladores em sistemas computacionais, por Sandro Juc

    [ 36 ]

    gethex_usb() retm um nmero hexadecimal digitado no teclado. Ex.: valor = gethex_usb();//retm um nmero hexadecimal na varivel valor usb_cdc_kbhit( ) Avisa com TRUE (1) se acabou de chegar um novo caractere no buffer de recepo USB do PIC. Ex.: if (usb_cdc_kbhit()) {dado = usb_cdc_getc();}

    O exemplo abaixo mostra a leitura e escrita em um buffer da EEPROM interna do microcontrolador com emulao da serial atravs da USB: --------------------------------------------------------------------------------------------------------------- #include #include // Biblioteca para comunicao serial BYTE i, j, endereco, valor; boolean led; main() { clock_int_4MHz(); usb_cdc_init(); // Inicializa o protocolo CDC usb_init(); // Inicializa o protocolo USB usb_task(); // Une o perifrico com a usb do PC output_high(pin_b7); // Sinaliza comunicao USB Ok while (1) { printf(usb_cdc_putc, "\r\n\nEEPROM:\r\n"); // Display contm os primeiros 64 bytes em hex for(i=0; i Hardware -> Gerenciador de

  • Aplicaes prticas de Eletrnica e microcontroladores em sistemas computacionais, por Sandro Juc

    [ 37 ]

    dispositivos e clique com boto direito no driver CDC do microcontrolador e atualizar Driver, apontando para a pasta DriverCDCwinSerial. No Windows@ XP, aps a gravao de um programa que utilize comunicao serial CDC no microcontrolador pelo SanUSB e resetar o microcontrolador, o sistema vai pedir a instalao do driver CDC (somente na primeira vez).

    Figura 2. 19: Instalao do driver CDC (1).

    Escolha a opo Instalar de uma lista ou local especifico (avanado). Aps Avanar, selecione a opo Incluir este local na pesquisa e selecione a pasta DriverSanWinCDC, onde est o driver CDC.

    Figura 2. 20: Instalao do driver CDC (2).

    Aps Avanar, clique em Continuar assim mesmo.

  • Aplicaes prticas de Eletrnica e microcontroladores em sistemas computacionais, por Sandro Juc

    [ 38 ]

    Figura 2. 21: Instalao do driver CDC (3).

    Aguarde enquanto o Driver CDC instalado no Windows@.

    Figura 2. 22: Instalao do driver CDC (4).

    Clique em Concluir para terminar a instalao.

  • Aplicaes prticas de Eletrnica e microcontroladores em sistemas computacionais, por Sandro Juc

    [ 39 ]

    Figura 2. 23: Instalao do driver CDC (5).

    V em painel de controle -> sistema -> Hardware -> Gerenciador de dispositivos -> Portas (COM & LPT) e confira qual a porta COM virtual instalada.

    Figura 2. 24: Verificao de porta COM instalada.

    Abrindo qualquer programa monitor de porta serial RS-232, como o SIOW do CCS ou o Java-SanUSB, direcionando para a COM virtual instalada (COM3,COM4,COM5,etc.). No CCS clique em Tools -> Serial port Monitor -> configuration -> set port options para que o computador entre em contato com o PIC atravs da emulao serial via USB.

  • Aplicaes prticas de Eletrnica e microcontroladores em sistemas computacionais, por Sandro Juc

    [ 40 ]

    Figura 2. 25: Utilizao da porta COM pelo CCS.

    Para utilizar uma funo que necessite de atendimento imediato quando um caractere for digitado como, por exemplo o caractere L ou D, necessrio inserir no firmware do microcontrolador a condio para verificar de forma constante e reter o caractere emulado que chegou pela USB S (SB_cdc_kbhit( )) {dado=usb_cdc_getc();} no lao infinito da funo principal. O comando (SB_cdc_kbhit( )) evita que o programa fique parado no usb_cdc_getc (que fica esperando um caractere para prosseguir o programa). Veja o programa abaixo, que pisca um led na funo principal (pino B6) e comanda o estado de outro led (pino B7) pelo teclado de um PC via USB: --------------------------------------------------------------------------------------------------------------- #include #include // Biblioteca para comunicao serial virtual BYTE comando; void main() { clock_int_4MHz();//Funo necessria para habilitar o dual clock (48MHz para USB e 4MHz para CPU) usb_cdc_init(); // Inicializa o protocolo CDC usb_init(); // Inicializa o protocolo USB usb_task(); // Une o perifrico com USB do PC while (TRUE) { if (usb_cdc_kbhit( )) //avisa se chegou dados do PC

  • { //verificaprximo bycomando=ASCII if (comandif (comand} output_higdelay_ms(output_lowdelay_ms(} } -------------

    Paraentre o coem http://wml . Aps execvirtual gerItens do Dispositivo

    Aplicaes p

    a se tem yte

    =usb_cdc_g

    do==L) {odo==D) {

    gh(pin_B6)(500); w(pin_B6);(500);

    -------------

    Figur

    a utilizar oomputador

    www.4sha

    cutar o prrada (COMPainel de

    os e depois

    prticas de Eletr

    um novo

    getc(); //s

    output_hig{output_low

    ); // Pisca

    ;

    -------------

    ra 2. 26: V

    o programar e o micro

    ared.com/

    rograma dM3,COM4,Ce Controles clique em

    rnica e microco

    byte no b

    se chegou,

    gh(pin_b7)w(pin_b7);

    Led na fun

    -------------

    Visualiza

    a de comuocontrolado

    /file/1itVI

    e comunicOM11,etc.\Sistema

    m Conectar

    ontroladores em

    [ 41 ]

    buffer de

    , retm o

    ; printf(us; printf(usb

    no princi

    -------------

    o de tex

    unicao Jor, nece

    Iv9s/101

    cao seri) no Winde altere

    r, como mo

    m sistemas comp

    recepo,

    caractere

    b_cdc_putb_cdc_putc

    pal

    -------------

    xtos via s

    ava-SanUSssrio baix

    1009Softw

    al Java-Sadows@, emno prograostra a figu

    putacionais, por

    depois o

    e compar

    c, \r\nLedc, \r\nLed

    -------------

    serial emu

    SB para emx-lo atrav

    wareComS

    anUSB, verm Painel dama serialura abaixo.

    r Sandro Juc

    kbhit ze

    ra com L

    d Ligado\r\d Desligado

    -------------

    ulada.

    mulao sevs do link

    Serial_W

    rifique a pde Controlel Java- Sa.

    erado para

    ou D em

    \n);} o\r\n);}

    -------------

    erial virtuak disponve

    indow.ht

    porta COMe\Todos osanUSB em

    a

    m

    al el

    M s

    m

  • 2.6

    Esta

    mais simpSanUSB.de10.04, equem Aplicat Se atualizadohttp://wpasta gera Se com http://w A fmicrocontr

    Aplicaes p

    Figur

    6 GRAVA

    a aplicaoples e direeb possuivalente otivos -> acvoc j te

    www.4shaal http://ainda no

    o www.4shafigura abairoladores v

    prticas de Eletr

    ra 2. 27: I

    ANDO O M

    o substitui eta de gravel instalaou posteriocessrios. em o Java

    ared.com//www.4sh

    tem o JavJava

    ared.com/ixo mostravia USB:

    rnica e microco

    Interface

    MICROCO

    a gravaoavao. Coar este apor). Depois

    a instaladodisponve

    /file/RN4hared.comva (JRE oua /file/3mha a interfa

    ontroladores em

    [ 42 ]

    e em Java

    ONTROLAD

    o via USB om apenaslicativo ems de instala

    o (JRE ou el

    4xpF_T/sam/file/sIZu SDK), ba

    JRE hWZS5g/sace grfica

    m sistemas comp

    de comu

    DOR VIA

    pelo termis dois cliq

    m qualquerado, a inte

    SDK) baix

    anusb_LinZwBP4r/aixe o inst

    e sanusb.hta desenvo

    putacionais, por

    nicao s

    USB NO L

    nal do Linuques no inr mquinaerface de g

    xe o instalano

    nux.html 100727Saalador San

    disptml . lvida para

    r Sandro Juc

    serial.

    LINUX

    ux, pois nstalador aa com Linugravao

    ador auto

    contido taanUSB.htnUSB, j cponvel

    gravao

    uma formaautomticoux (Ubuntu localizada

    mtico.deblink

    ambm natml. configurado

    em

    o direta de

    a o u a

    b : a

    o :

    e

  • NescompiladoResetar o ainda um

    imlogado comsu), e quanteriormepara PIC, SanUSB ouAps gravcircuito Saboto ou correto, amicrocontrutilizando Para progrconecte opressione

    2.7

    Aplicaes p

    F

    ste aplicatio, para Gr

    microconboto paramportante m permisse para esente no mo gerencia

    u em httpvar o GereanUSB em fio ) e conacender rolador, da interfaceramar novao cabo USo boto Gr

    7 GRAVA

    prticas de Eletr

    Figura 2. 2

    ivo, esto ravar o prtrolador na gravar e salientar q

    so para acstabelecer

    microcontroador de gr://www.nciadorLinmodo de

    necte o ca o led do de forma e USB. amente, b

    SB de alimravar&Rese

    ANDO O P

    rnica e microco

    28: Mensa

    disponverograma hno intuito resetar auque para ucessar a pcomunica

    olador, somravao pe4shared.cux.hex cogravao

    abo USB dpino B7. simples e

    asta pressmentao, etar.

    PIC VIA U

    ontroladores em

    [ 43 ]

    agem de

    is botes hexadecimade coloc-

    utomaticamutilizar estaporta USB co com

    mente umaela USB Gecom/file/m um grapela USB

    o circuito Pronto, o s

    e direta,

    ionar o boselecione

    USB PELO

    m sistemas comp

    programa

    para Abriral no micr-lo em op

    mente. a ferramencomo, poro microcoa vez, comerenciador/HGrf9nDvador con

    B (pino 1 lno PC. S