Pratica 2 - Teclado e Buzzer - USPiris.sel.eesc.usp.br/sel629/Pratica 2 - Teclado e Buzzer.pdf ·...

8
AAAA SEL 0629 Aplicação de Microprocessadores I Prática 2 Teclado e Buzzer Prof. Marcelo Andrade da Costa Vieira AAAA

Transcript of Pratica 2 - Teclado e Buzzer - USPiris.sel.eesc.usp.br/sel629/Pratica 2 - Teclado e Buzzer.pdf ·...

Page 1: Pratica 2 - Teclado e Buzzer - USPiris.sel.eesc.usp.br/sel629/Pratica 2 - Teclado e Buzzer.pdf · Prática 2 Teclado e Buzzer ... •Uso do teclado matricial e buzzer ... Teclado

AAAASEL–0629

Aplicação de Microprocessadores I

Prática 2Teclado e Buzzer

Prof. Marcelo Andrade da Costa Vieira

AAAA

Page 2: Pratica 2 - Teclado e Buzzer - USPiris.sel.eesc.usp.br/sel629/Pratica 2 - Teclado e Buzzer.pdf · Prática 2 Teclado e Buzzer ... •Uso do teclado matricial e buzzer ... Teclado

AA

Teclado para tocar as 7 notas musicais no buzzer

• Objetivo:• Aprendizado do microcontrolador PIC18F45K22• Linguagem C• Uso das portas de I/O, temporizadores e interrupção• Uso do teclado matricial e buzzer

• Prática:• Utilizar o teclado matricial para tocar as 8 notas musicais da escala de Dó Maior no buzzer do kit.

Page 3: Pratica 2 - Teclado e Buzzer - USPiris.sel.eesc.usp.br/sel629/Pratica 2 - Teclado e Buzzer.pdf · Prática 2 Teclado e Buzzer ... •Uso do teclado matricial e buzzer ... Teclado

AA

• A cada tecla do teclado matricial (de 1 a 8), gerar na saída daporta RC2 ou RE1 do PIC (ver manual do Kit página 32) uma ondaquadrada de frequência correspondente as notas musicaisseguindo a tabela abaixo:

Notas musicais no Buzzer

Tecla Nota Símbolo Frequência (Hz)1 Dó C 20732 Ré D 23493 Mi E 26374 Fá F 27945 Sol G 31366 Lá A 35207 Si B 39518 Dó C 4146

Page 4: Pratica 2 - Teclado e Buzzer - USPiris.sel.eesc.usp.br/sel629/Pratica 2 - Teclado e Buzzer.pdf · Prática 2 Teclado e Buzzer ... •Uso do teclado matricial e buzzer ... Teclado

AAEESC – USP

Teclado MatricialKeypad 4x4

MikroElektronika

Keypad 4x4

Keypad 4x4 is used for loading numerics into the microcontroller. It consists of 16 buttons arranged in a form of an array containig four lines and four columns. It is connected to the development system by regular IDC 10 female connector plugged in some development system’s port.

Figure 1: Keypad 4x4

Figure 3: Keypad 4x4 connection schematic

Figure 2: Keypad 4x4 connected to development system

A far easier way to load data by using keypad 4x4 is by employing ready-to-use funtions provided in the Keypad Library of any Mikroelektronika’s compiler. On the following pages there are three simple examples written for PIC16F887 microcontrolller in mikroC, mikroBasic and mikroPascal programming languages. In all cases, the number loaded via keypad is converted into the equivalent ASCII code (0...9, A...F) and then it is displayed in the second line of LCD display. In this case, pull-down resistors are placed on output pins RD0 - RD3 and are used to determine logic zero (0) in idle state.

The keyboard is usually used as follows:

Four   microcontroller’s   pins   should   be   defined   as   outputs,  

and  other  four  pins  should  be  defined  as  inputs.  In  order  the  

keypad to work properly, pull-down resistors should be placed on   the  microcontroller’s   input  pins,   thus  defining   logic  state  

when no button is pressed. Then, the output pins are set to logic one (1) and input pins’ logic state is read. By pressing any button, a logic one (1) will appear on some input pin.

By combining zeros and ones on the output pins, it is determined which button is pressed.

1.

2.

3.

Keypad 4x4

MikroElektronika

Keypad 4x4

Keypad 4x4 is used for loading numerics into the microcontroller. It consists of 16 buttons arranged in a form of an array containig four lines and four columns. It is connected to the development system by regular IDC 10 female connector plugged in some development system’s port.

Figure 1: Keypad 4x4

Figure 3: Keypad 4x4 connection schematic

Figure 2: Keypad 4x4 connected to development system

A far easier way to load data by using keypad 4x4 is by employing ready-to-use funtions provided in the Keypad Library of any Mikroelektronika’s compiler. On the following pages there are three simple examples written for PIC16F887 microcontrolller in mikroC, mikroBasic and mikroPascal programming languages. In all cases, the number loaded via keypad is converted into the equivalent ASCII code (0...9, A...F) and then it is displayed in the second line of LCD display. In this case, pull-down resistors are placed on output pins RD0 - RD3 and are used to determine logic zero (0) in idle state.

The keyboard is usually used as follows:

Four   microcontroller’s   pins   should   be   defined   as   outputs,  

and  other  four  pins  should  be  defined  as  inputs.  In  order  the  

keypad to work properly, pull-down resistors should be placed on   the  microcontroller’s   input  pins,   thus  defining   logic  state  

when no button is pressed. Then, the output pins are set to logic one (1) and input pins’ logic state is read. By pressing any button, a logic one (1) will appear on some input pin.

By combining zeros and ones on the output pins, it is determined which button is pressed.

1.

2.

3.

Keypad 4x4

MikroElektronika

Keypad 4x4

Keypad 4x4 is used for loading numerics into the microcontroller. It consists of 16 buttons arranged in a form of an array containig four lines and four columns. It is connected to the development system by regular IDC 10 female connector plugged in some development system’s port.

Figure 1: Keypad 4x4

Figure 3: Keypad 4x4 connection schematic

Figure 2: Keypad 4x4 connected to development system

A far easier way to load data by using keypad 4x4 is by employing ready-to-use funtions provided in the Keypad Library of any Mikroelektronika’s compiler. On the following pages there are three simple examples written for PIC16F887 microcontrolller in mikroC, mikroBasic and mikroPascal programming languages. In all cases, the number loaded via keypad is converted into the equivalent ASCII code (0...9, A...F) and then it is displayed in the second line of LCD display. In this case, pull-down resistors are placed on output pins RD0 - RD3 and are used to determine logic zero (0) in idle state.

The keyboard is usually used as follows:

Four   microcontroller’s   pins   should   be   defined   as   outputs,  

and  other  four  pins  should  be  defined  as  inputs.  In  order  the  

keypad to work properly, pull-down resistors should be placed on   the  microcontroller’s   input  pins,   thus  defining   logic  state  

when no button is pressed. Then, the output pins are set to logic one (1) and input pins’ logic state is read. By pressing any button, a logic one (1) will appear on some input pin.

By combining zeros and ones on the output pins, it is determined which button is pressed.

1.

2.

3.

Page 5: Pratica 2 - Teclado e Buzzer - USPiris.sel.eesc.usp.br/sel629/Pratica 2 - Teclado e Buzzer.pdf · Prática 2 Teclado e Buzzer ... •Uso do teclado matricial e buzzer ... Teclado

AA

Controle do Teclado• Utilizar varredura do teclado matricial (Conectar na Porta B)

• Na porta que for conectado o teclado, definir 4 pinos de I/Ocomo entrada e 4 pinos de I/O como saída;

• Conectar as linhas do teclado matricial nas entradas e ascolunas nas saídas (ou vice-versa);

• Nos 4 pinos configurados como entrada, definir um estadológico 1 quando nenhuma tecla é pressionada (usar resistoresde pull-up externos ou internos).

• Nos 4 pinos configurados como saída, gerar nível lógico 0na forma de varredura. Esse nível aparecerá em algumaentrada quando o botão correspondente for pressionado.

Page 6: Pratica 2 - Teclado e Buzzer - USPiris.sel.eesc.usp.br/sel629/Pratica 2 - Teclado e Buzzer.pdf · Prática 2 Teclado e Buzzer ... •Uso do teclado matricial e buzzer ... Teclado

AA

Notas musicais no Buzzer

• Dependendo da tecla pressionada, uma onda quadrada

com a frequência correspondente deve ser gerada na

entrada do Buzzer;

• Utilizar o temporizador TMR0 (com interrupção) para

geração das ondas quadradas no Buzzer;

• A frequência do cristal do kit é de 8 MHz.

Page 7: Pratica 2 - Teclado e Buzzer - USPiris.sel.eesc.usp.br/sel629/Pratica 2 - Teclado e Buzzer.pdf · Prática 2 Teclado e Buzzer ... •Uso do teclado matricial e buzzer ... Teclado

AAEESC – USP

Buzzer

Page 8: Pratica 2 - Teclado e Buzzer - USPiris.sel.eesc.usp.br/sel629/Pratica 2 - Teclado e Buzzer.pdf · Prática 2 Teclado e Buzzer ... •Uso do teclado matricial e buzzer ... Teclado

AA

Relatório 2• Colocar o programa desenvolvido (comentado).• Colocar introdução, objetivos, conclusões, etc. – consultar

as normas para confecção de relatórios no site dadisciplina.

• Colocar o esquemático do Hardware utilizado (Proteus,Orcad ou similar).

• Grupo de no máximo 2 pessoas.• Enviar pelo site de UPLOAD da IRIS até a data definida

pelo professor (01/05/2018).• Mostrar o circuito funcionando na aula imediatamente

posterior ao envio do relatório.