3708-aula_6_-__interfaces_de_entrada_e_saÍda

25
 PROJ ET OS DE AUTOMA ÇÃO PROF .: ALA N KARDEK

Upload: fabio-borges

Post on 18-Jul-2015

129 views

Category:

Documents


0 download

TRANSCRIPT

5/16/2018 3708-AULA_6_-__INTERFACES_DE_ENTRADA_E_SA DA - slidepdf.com

http://slidepdf.com/reader/full/3708-aula6-interfacesdeentradaesaida 1/25

PROJETOS DE AUTOMAÇÃO

PROF.: ALAN KARDEK

5/16/2018 3708-AULA_6_-__INTERFACES_DE_ENTRADA_E_SA DA - slidepdf.com

http://slidepdf.com/reader/full/3708-aula6-interfacesdeentradaesaida 2/25

Aula de hoje

• Hardware mínimo para montagens com PICs(revisão);

• Exemplos de periféricos (LEDs, Displays de 7

Segmentos, Teclado Matricial, etc.);• Leitura de Teclas e Teclados;

▫ Debounce ou Debouncing.• Apresentação de saídas em displays de 7

segmentos;• Exemplos.

5/16/2018 3708-AULA_6_-__INTERFACES_DE_ENTRADA_E_SA DA - slidepdf.com

http://slidepdf.com/reader/full/3708-aula6-interfacesdeentradaesaida 3/25

Hardware mínimo para montagens com

PICs• Circuito de alimentação.

▫ (capacitor de 100 nF).• Circuito de reset.• Circuito de clock (até 48

Mhz para PIC18F4550).▫ Varia de MCU para MCU.▫ Consultar datasheet.

• Periféricos:▫ Conexão com LEDs,

displays de 7 segmentos.▫ Conexão com botões e

interruptores.

5/16/2018 3708-AULA_6_-__INTERFACES_DE_ENTRADA_E_SA DA - slidepdf.com

http://slidepdf.com/reader/full/3708-aula6-interfacesdeentradaesaida 4/25

Hardware mínimo para montagens com

PICs• Circuitos de CLOCK.

▫ Circuito RC: proporciona baixo custo, masestabilidade também baixa. Permite obter uma

saida de frequencia F/4 no terminalOSC2/CLKOUT.

5/16/2018 3708-AULA_6_-__INTERFACES_DE_ENTRADA_E_SA DA - slidepdf.com

http://slidepdf.com/reader/full/3708-aula6-interfacesdeentradaesaida 5/25

Hardware mínimo para montagens com

PICs• Circuitos de CLOCK.▫ Circuitos com cristal de Quartzo: melhora a

estabilidade (3 configurações): LP (baixo consumo), de 0 a 200 kHz; XT, de 200 kHz a 4 MHz; HS (alta velocidade), de 4 MHz a 48 MHz.

5/16/2018 3708-AULA_6_-__INTERFACES_DE_ENTRADA_E_SA DA - slidepdf.com

http://slidepdf.com/reader/full/3708-aula6-interfacesdeentradaesaida 6/25

Hardware mínimo para montagens com

PICs• Para a interconexão de periféricos é necessário

consultar as características de hardware dasportas.▫ Resistência de pull-up da porta B, configurável por

software: port_b_pullups(true).

• Cuidado! Verifique a corrente máxima que umaporta pode entregar/absorver.

5/16/2018 3708-AULA_6_-__INTERFACES_DE_ENTRADA_E_SA DA - slidepdf.com

http://slidepdf.com/reader/full/3708-aula6-interfacesdeentradaesaida 7/25

Exemplos de Periféricos• Periféricos básicos de saída:LEDs e display de 7 segmentos.

▫ Como conectamos mais de umdisplay?

▫ Quantos displays podemosconectar?

▫ O que acontece com oconsumo?

5/16/2018 3708-AULA_6_-__INTERFACES_DE_ENTRADA_E_SA DA - slidepdf.com

http://slidepdf.com/reader/full/3708-aula6-interfacesdeentradaesaida 8/25

Exemplos de Periféricos

• Periféricos básicos deentrada: botões einterruptores.▫

Eliminação dedebounce viasoftware.(implementação de

filtros de tempo).▫ Eliminação dedebounce viahardware.

5/16/2018 3708-AULA_6_-__INTERFACES_DE_ENTRADA_E_SA DA - slidepdf.com

http://slidepdf.com/reader/full/3708-aula6-interfacesdeentradaesaida 9/25

Exemplos de Periféricos

• Periféricos básicos de entrada: tecladomatricial.

5/16/2018 3708-AULA_6_-__INTERFACES_DE_ENTRADA_E_SA DA - slidepdf.com

http://slidepdf.com/reader/full/3708-aula6-interfacesdeentradaesaida 10/25

Exemplos de Periféricos

• Periféricos básicos de entrada: Relés e áudio.

Para gerar um som é necessáriogerar um sinal de onda quadradade período apropriado.• O capacitor filtra a parte

contínua e gera o tom desejado.Aplicações com pequenos relés umúnico transistor bipolar é suficiente.

5/16/2018 3708-AULA_6_-__INTERFACES_DE_ENTRADA_E_SA DA - slidepdf.com

http://slidepdf.com/reader/full/3708-aula6-interfacesdeentradaesaida 11/25

Exemplos de Periféricos

• Periféricos básicos de entrada: motores DC e depasso

• A velocidade do motor DC écontrolada com PWM e pelocircuito integrado 293D.•

A polaridade determina o sentido derotação

Motor de passo com CI decontrole e diodos.

5/16/2018 3708-AULA_6_-__INTERFACES_DE_ENTRADA_E_SA DA - slidepdf.com

http://slidepdf.com/reader/full/3708-aula6-interfacesdeentradaesaida 12/25

Leitura de Teclas e Teclados• Princípio básico:

▫ Observar o nível lógico associado a uma TECLA ou BOTÃO.▫ Se a TECLA ou BOTAO estiver pressionada, teremos um

determinado NÍVEL, caso contrario, teremos o NÍVELoposto.

Surgem alguns problemas:▫ Pressionar teclas, geram pulsos de RUÍDO.▫ Provocam duvida ao MCU, quantas vezes a TECLA foi

pressionada.▫ O software que esta dentro do MCU pode interpretar que a

mesma TECLA foi pressionada mais de uma vez.▫ Esse problema e conhecido como CONTACT BOUNCE.

• Tratamento do problema:▫ Por Hardware: resistores, capacitores e latches.▫ Por Software: implementação de filtros dentro do

programa.

5/16/2018 3708-AULA_6_-__INTERFACES_DE_ENTRADA_E_SA DA - slidepdf.com

http://slidepdf.com/reader/full/3708-aula6-interfacesdeentradaesaida 13/25

Leitura de Teclas e Teclados

• Falando mais sobre BOUNCE:▫ A utilização de chaves e botões como entrada de

circuitos digitais pode ocasionar uma série deproblemas. Os contatos metálicos existentes emtais elementos provocam diversas transições acada acionamento, podendo o sinal oriundo variarentre os níveis lógicos até a estabilização. Essefenômeno é reconhecido como CONTACT BOUNCE,e o ruído ocasionado pela abertura ou fechamentode contatos pode durar desde algunsmicrosegundos, até alguns milisegundos,dependendo da qualidade do contato.

5/16/2018 3708-AULA_6_-__INTERFACES_DE_ENTRADA_E_SA DA - slidepdf.com

http://slidepdf.com/reader/full/3708-aula6-interfacesdeentradaesaida 14/25

Leitura de Teclas e Teclados• Falando mais sobre BOUNCE:

▫ Isto pode ser observado com um osciloscópio digital.▫ A duração dos ruídos geralmente na ordem demilissegundos.

▫ Alguns milissegundos são uma eternidade para um

microprocessador.▫ Assim, mesmo pressionando apenas uma vez um

botão, o programa pode interpretar vários apertos.▫ Isso pode ser grave dependendo da aplicação!▫ DEBOUNCING significa uma técnica que nos dê certeza

de que o botão apertado apenas uma vez sejainterpretado corretamente como apenas UM aperto debotão.

▫ Por outro lado, se apertarmos o mesmo botão por 5vezes seguidas em um segundo, o nosso programa tem

de conseguir ler corretamente 5 apertos de botão !

5/16/2018 3708-AULA_6_-__INTERFACES_DE_ENTRADA_E_SA DA - slidepdf.com

http://slidepdf.com/reader/full/3708-aula6-interfacesdeentradaesaida 15/25

Leitura de Teclas e Teclados

• Programa que implementa debounce:if (!botao_UP) // O botão UP está pressionado ?

{ // sim,if (!(bt_UP_press)) // O botão UP já foi tratato ?{ // não.

if (filtro0 !=0) // Fim do filtro do botão UP ?

filtro0--; // Não, então decrementa o filtroelse { // Sim, Faz a ação do botão

bt_UP_press = 1; // Marca que o botão está pressionadocontador ++; // Ação realizada ao precionar botão.}

}}

}else{ // botão 0 liberado

filtro0 = t_filtro; // inicia o filtro do botão 0bt_UP_press = 0; // marca que o botão foi liberado

}}

5/16/2018 3708-AULA_6_-__INTERFACES_DE_ENTRADA_E_SA DA - slidepdf.com

http://slidepdf.com/reader/full/3708-aula6-interfacesdeentradaesaida 16/25

Leitura de Teclas e Teclados

• Número elevado de Teclas e Botões:▫ Demanda técnica complementar.▫ Numero de pinos do MCU reduzido → Otimização

do número de pinos usado na aplicação.• Solução:

▫ Agrupar as teclas em uma estrutura de MATRIZ.▫ Leitura por meio de um sistema de varredura de

colunas.▫ Uma coluna por vez. Uma apos a outra.

5/16/2018 3708-AULA_6_-__INTERFACES_DE_ENTRADA_E_SA DA - slidepdf.com

http://slidepdf.com/reader/full/3708-aula6-interfacesdeentradaesaida 17/25

Leitura de Teclas e Teclados

5/16/2018 3708-AULA_6_-__INTERFACES_DE_ENTRADA_E_SA DA - slidepdf.com

http://slidepdf.com/reader/full/3708-aula6-interfacesdeentradaesaida 18/25

Apresentação de saídas em displays de

7 segmentos• Duas opções:▫ Displays de 7 segmentos▫ Displays de cristal líquido (módulos LCDs)

• Displays de 7 segmentos:▫ Composto por 8 LEDs (7 segmentos para o numero + 1 ponto)▫ Tipos: anodo comum ou catodo comum.▫ Mais adequados as aplicações que exigem VISIBILIDADE.▫ Elevado consumo de energia (media ~ 10mA por segmento).▫ Baixo custo.

• Displays LCDs:▫

Exibe informações alfa-numéricas (caracteres).▫ Vários tipos: com ou sem backlight; uma ou mais linhas decaracteres, etc.

▫ Adequados a aplicações de pequena visibilidade. Ângulo deobservação limitado. Dependência de iluminação externa.

▫ Baixo consumo de energia (da ordem de 1 mA).▫

Elevado custo.

5/16/2018 3708-AULA_6_-__INTERFACES_DE_ENTRADA_E_SA DA - slidepdf.com

http://slidepdf.com/reader/full/3708-aula6-interfacesdeentradaesaida 19/25

Apresentação de saídas em displays de

7 segmentos• Implementado em software através de uma tabela deconstantes na memória de programa.

• Exemplo:

5/16/2018 3708-AULA_6_-__INTERFACES_DE_ENTRADA_E_SA DA - slidepdf.com

http://slidepdf.com/reader/full/3708-aula6-interfacesdeentradaesaida 20/25

Apresentação de saídas em displays de

7 segmentos• Atenção! Observar tipo de display: anodo oucatodo comum.

• Nos displays de cátodo comum, o cátodo

comum deve ser ligado ao terra e para que osleds acendam, é preciso aplicar uma tensãopositiva aos respectivos ânodos (1 lógico ). Osdisplays de ânodo comum apresentam o ânodocomum ligado a +5V e acendem quando seaplica um nível lógico zero aos cátodosrespectivos.

5/16/2018 3708-AULA_6_-__INTERFACES_DE_ENTRADA_E_SA DA - slidepdf.com

http://slidepdf.com/reader/full/3708-aula6-interfacesdeentradaesaida 21/25

Apresentação de saídas em displays de

7 segmentos• Atenção! Observar tipo de display: anodo ou catodo comum.• Como ligar mais de um display de 7 segmentos?

▫ Varredura de displays.

5/16/2018 3708-AULA_6_-__INTERFACES_DE_ENTRADA_E_SA DA - slidepdf.com

http://slidepdf.com/reader/full/3708-aula6-interfacesdeentradaesaida 22/25

Prática 3 – Display de 7 segmentos

• Objetivos:▫ Familiarizar-se com a programação em linguagem

C do PIC;▫ Familiarizar-se com configurações de delays e

timers de um microcontrolador;▫ Familiarizar-se com o uso de displays de 7

segmentos e contadores.

5/16/2018 3708-AULA_6_-__INTERFACES_DE_ENTRADA_E_SA DA - slidepdf.com

http://slidepdf.com/reader/full/3708-aula6-interfacesdeentradaesaida 23/25

Prática 3 – Display de 7 segmentos

• Conhecimentos básicos necessários:▫ Tudo que foi visto nas aulas práticas anteriores;▫ Operadores para criação de expressões lógicas e

aritméticas;▫ Criação de tabelas de constantes;▫ Diretivas de configuração para funções de atraso

(delay);▫

Diretivas de configuração do PIC;▫ Circuitos Contadores.

5/16/2018 3708-AULA_6_-__INTERFACES_DE_ENTRADA_E_SA DA - slidepdf.com

http://slidepdf.com/reader/full/3708-aula6-interfacesdeentradaesaida 24/25

Prática 3 – Display de 7 segmentos• Tarefas:• 1) Abra o arquivo contador_hexadecimal.c da aula

6 no ambiente de desenvolvimento e compile.• 2) Monte o circuito (próximo slide) no Proteus e

teste o programa.• 3) Implemente um botão de RESET para o contador.• 4) Altere a lógica do programa para que o contador

conte de 0 a 9 de forma automática (ainda com umbotão UP e outro DOWN), usando o comando

delay_ms(valor_inteiro) para que você possaobservar a contagem.• 5) Configure um timer do 18F4550 para parar a

contagem quando passar 20 segundos após umRESET.

5/16/2018 3708-AULA_6_-__INTERFACES_DE_ENTRADA_E_SA DA - slidepdf.com

http://slidepdf.com/reader/full/3708-aula6-interfacesdeentradaesaida 25/25