portas i/o digitais - decom-ufop · introdução • são portas de entrada e saída de dados ,...
TRANSCRIPT
![Page 1: Portas I/O Digitais - DECOM-UFOP · Introdução • São portas de entrada e saída de dados , cujos valores alternamentre “0”e“1”; • OPIC18F4550tem5gruposdeportasdisponíveis(A,B,C,D,](https://reader033.vdocuments.com.br/reader033/viewer/2022052919/5bd560fd09d3f24b3e8b6ec9/html5/thumbnails/1.jpg)
Portas I/O Digitais Curso Engenharia de Controle e Automação
Alex Vidigal Bastos
www.decom.ufop.br/alex/
1
![Page 2: Portas I/O Digitais - DECOM-UFOP · Introdução • São portas de entrada e saída de dados , cujos valores alternamentre “0”e“1”; • OPIC18F4550tem5gruposdeportasdisponíveis(A,B,C,D,](https://reader033.vdocuments.com.br/reader033/viewer/2022052919/5bd560fd09d3f24b3e8b6ec9/html5/thumbnails/2.jpg)
Agenda
• Introdução
• Sentido do Fluxo de Dados da porta
• Controle de entrada dos pinos das portas
2
![Page 3: Portas I/O Digitais - DECOM-UFOP · Introdução • São portas de entrada e saída de dados , cujos valores alternamentre “0”e“1”; • OPIC18F4550tem5gruposdeportasdisponíveis(A,B,C,D,](https://reader033.vdocuments.com.br/reader033/viewer/2022052919/5bd560fd09d3f24b3e8b6ec9/html5/thumbnails/3.jpg)
Introdução
• São portas de entrada e saída de dados , cujos valores
alternam entre “0” e “1”;
• O PIC18F4550 tem 5 grupos de portas disponíveis (A, B, C, D,
E);
• Os pinos associados a elas são multiplexados;
• Cada porta tem três registradores associados à configuração;
3
![Page 4: Portas I/O Digitais - DECOM-UFOP · Introdução • São portas de entrada e saída de dados , cujos valores alternamentre “0”e“1”; • OPIC18F4550tem5gruposdeportasdisponíveis(A,B,C,D,](https://reader033.vdocuments.com.br/reader033/viewer/2022052919/5bd560fd09d3f24b3e8b6ec9/html5/thumbnails/4.jpg)
Pinagem do PIC18F4550
4Distribuição dos pinos no microcontrolador PIC18F4550
![Page 5: Portas I/O Digitais - DECOM-UFOP · Introdução • São portas de entrada e saída de dados , cujos valores alternamentre “0”e“1”; • OPIC18F4550tem5gruposdeportasdisponíveis(A,B,C,D,](https://reader033.vdocuments.com.br/reader033/viewer/2022052919/5bd560fd09d3f24b3e8b6ec9/html5/thumbnails/5.jpg)
Introdução
• Registrador TRIS: configura o sentido do fluxo de dados
de uma determinada porta;
• Registrador PORT: escreve e lê o nível dos pinos
associados a uma porta;
• Registrador LAT: armazena o valor do último comando de
escrita;
5
![Page 6: Portas I/O Digitais - DECOM-UFOP · Introdução • São portas de entrada e saída de dados , cujos valores alternamentre “0”e“1”; • OPIC18F4550tem5gruposdeportasdisponíveis(A,B,C,D,](https://reader033.vdocuments.com.br/reader033/viewer/2022052919/5bd560fd09d3f24b3e8b6ec9/html5/thumbnails/6.jpg)
Sentido do fluxo de dados da
porta
• O sentido do fluxo de uma determinada porta é configurado
pelo registrador TRIS;
• Tem 8 bits, sendo cada elemento correspondente à
configuração de um determinado pino de I∕O, sendo:
• 0 – saída (output)
• 1 – entrada (input)
• O Maplab C18 suporta comandos de acesso simultâneo dos 8
bits do registrador TRIS, como também de um único bit;6
![Page 7: Portas I/O Digitais - DECOM-UFOP · Introdução • São portas de entrada e saída de dados , cujos valores alternamentre “0”e“1”; • OPIC18F4550tem5gruposdeportasdisponíveis(A,B,C,D,](https://reader033.vdocuments.com.br/reader033/viewer/2022052919/5bd560fd09d3f24b3e8b6ec9/html5/thumbnails/7.jpg)
TRISA, TRISB, TRISC, TRISD,
TRISE
Sintaxe:
• TRISx = valor
• Valor = TRISx
• Sendo:
• x = nome da porta (letra maiúscula)
• valor = valor de 8 bits (0 – saídae 1 – entrada)
TRISB = 0b00000001;
7
![Page 8: Portas I/O Digitais - DECOM-UFOP · Introdução • São portas de entrada e saída de dados , cujos valores alternamentre “0”e“1”; • OPIC18F4550tem5gruposdeportasdisponíveis(A,B,C,D,](https://reader033.vdocuments.com.br/reader033/viewer/2022052919/5bd560fd09d3f24b3e8b6ec9/html5/thumbnails/8.jpg)
TRISA, TRISB, TRISC, TRISD,
TRISE
8
![Page 9: Portas I/O Digitais - DECOM-UFOP · Introdução • São portas de entrada e saída de dados , cujos valores alternamentre “0”e“1”; • OPIC18F4550tem5gruposdeportasdisponíveis(A,B,C,D,](https://reader033.vdocuments.com.br/reader033/viewer/2022052919/5bd560fd09d3f24b3e8b6ec9/html5/thumbnails/9.jpg)
TRISA, TRISB, TRISC, TRISD,
TRISE
9
![Page 10: Portas I/O Digitais - DECOM-UFOP · Introdução • São portas de entrada e saída de dados , cujos valores alternamentre “0”e“1”; • OPIC18F4550tem5gruposdeportasdisponíveis(A,B,C,D,](https://reader033.vdocuments.com.br/reader033/viewer/2022052919/5bd560fd09d3f24b3e8b6ec9/html5/thumbnails/10.jpg)
TRISA, TRISB, TRISC, TRISD,
TRISE
• Exemplos:
• TRISA: 0b00000011 ∕∕ RA0 e RA1 – entrada RA2 até RA7
saída
• TRISB: 0b11110000 ∕∕ RB0 e RB3 – saída RB4 até RB7
entrada
• TRISE: 0b00000000 ∕∕ RE0 e RE7 – saída10
![Page 11: Portas I/O Digitais - DECOM-UFOP · Introdução • São portas de entrada e saída de dados , cujos valores alternamentre “0”e“1”; • OPIC18F4550tem5gruposdeportasdisponíveis(A,B,C,D,](https://reader033.vdocuments.com.br/reader033/viewer/2022052919/5bd560fd09d3f24b3e8b6ec9/html5/thumbnails/11.jpg)
TRISAbits, TRISBbits, TRISCbits,
TRISD bits, TRISE bits
• Essas estrutura permitem o acesso a um único bit;
Sintaxe:
• TRISxbits.TRISxy = valor_bit
• Valor_bit = TRISxbits.TRISxy
• Sendo:
• x = nome da porta (letra maiúscula);
• y = número do pino;
• valor = 0 – saída e 1 – entrada) 11
![Page 12: Portas I/O Digitais - DECOM-UFOP · Introdução • São portas de entrada e saída de dados , cujos valores alternamentre “0”e“1”; • OPIC18F4550tem5gruposdeportasdisponíveis(A,B,C,D,](https://reader033.vdocuments.com.br/reader033/viewer/2022052919/5bd560fd09d3f24b3e8b6ec9/html5/thumbnails/12.jpg)
TRISAbits, TRISBbits, TRISCbits,
TRISD bits, TRISE bits
• Exemplos:
• TRISAbits.TRISA5 = 1 ∕ ∕ RA5 - entrada
• TRISBbits.TRISB3 = 0; ∕ ∕ RB3 – saída
• TRISEbits.TRISE4 = 0; ∕ ∕ RE4 - saída
12
![Page 13: Portas I/O Digitais - DECOM-UFOP · Introdução • São portas de entrada e saída de dados , cujos valores alternamentre “0”e“1”; • OPIC18F4550tem5gruposdeportasdisponíveis(A,B,C,D,](https://reader033.vdocuments.com.br/reader033/viewer/2022052919/5bd560fd09d3f24b3e8b6ec9/html5/thumbnails/13.jpg)
Controle do Estado dos pinos
das portas
• O status dos pinos da portas é armazenado no registrador
PORT;
• Possui um tamanho de 8 bits, sendo responsável pelas
operações de escrita e leitura dos pinos relacionados às
portas. Sendo 0 – Vss e 1 – Vcc;
13
![Page 14: Portas I/O Digitais - DECOM-UFOP · Introdução • São portas de entrada e saída de dados , cujos valores alternamentre “0”e“1”; • OPIC18F4550tem5gruposdeportasdisponíveis(A,B,C,D,](https://reader033.vdocuments.com.br/reader033/viewer/2022052919/5bd560fd09d3f24b3e8b6ec9/html5/thumbnails/14.jpg)
PORTA, PORTB, PORTC,
PORTD, PORTE • Para um comando de leitura, o registrador PORT realiza a
leitura dos estados dos pinos e para um comando de escrita, o
valor é enviado para a porta LAT que vai modificar os níveis
dos pinos I∕O configurados como saída.
Sintaxe:
• PORTx = valor
• Valor = PORTx
• Sendo:
• x = nome da porta (letra maiúscula)
• valor = valor de 8 bits (0 – saídae 1 – entrada)14
![Page 15: Portas I/O Digitais - DECOM-UFOP · Introdução • São portas de entrada e saída de dados , cujos valores alternamentre “0”e“1”; • OPIC18F4550tem5gruposdeportasdisponíveis(A,B,C,D,](https://reader033.vdocuments.com.br/reader033/viewer/2022052919/5bd560fd09d3f24b3e8b6ec9/html5/thumbnails/15.jpg)
PORTA, PORTB, PORTC,
PORTD, PORTE
• Suponha que todos os pinos da porta B estejam configurados
como saída (TRISB = 00x0), então podemos selecionar os
pinos na porta do PIC, conforme abaixo:
• PORTB = 0b00100101;
15
![Page 16: Portas I/O Digitais - DECOM-UFOP · Introdução • São portas de entrada e saída de dados , cujos valores alternamentre “0”e“1”; • OPIC18F4550tem5gruposdeportasdisponíveis(A,B,C,D,](https://reader033.vdocuments.com.br/reader033/viewer/2022052919/5bd560fd09d3f24b3e8b6ec9/html5/thumbnails/16.jpg)
PORTA, PORTB, PORTC,
PORTD, PORTE
16
![Page 17: Portas I/O Digitais - DECOM-UFOP · Introdução • São portas de entrada e saída de dados , cujos valores alternamentre “0”e“1”; • OPIC18F4550tem5gruposdeportasdisponíveis(A,B,C,D,](https://reader033.vdocuments.com.br/reader033/viewer/2022052919/5bd560fd09d3f24b3e8b6ec9/html5/thumbnails/17.jpg)
PORTA, PORTB, PORTC,
PORTD, PORTE
17
• Exemplos:
• TRISD = 0b0000000 ∕∕ RD0 e RD7 –saída
• TRISEbits.TRISE1 = 0; ∕∕RE1 - saída
• PORTD = 0b01010010∕∕ RB0 e RB3 – saída RB4 até RB7
entrada
• PORTEbits.RE1 = ~PORTEbits.RE1 ∕∕ Inverte o estado do
pino RE1
![Page 18: Portas I/O Digitais - DECOM-UFOP · Introdução • São portas de entrada e saída de dados , cujos valores alternamentre “0”e“1”; • OPIC18F4550tem5gruposdeportasdisponíveis(A,B,C,D,](https://reader033.vdocuments.com.br/reader033/viewer/2022052919/5bd560fd09d3f24b3e8b6ec9/html5/thumbnails/18.jpg)
PORTAbits, PORTBbits, PORTCbits,
PORTDbits, PORTEbits
18
• Essas estrutura permitem o acesso a um único bit do
registrador PORT;
Sintaxe:
• PORTxbits.PORTxy = valor_bit
• Valor_bit = PORTxbits.PORTxy
• Sendo:
• x = nome da porta (letra maiúscula);
• y = número do pino;
• valor = 0 – saída e 1 – entrada)
![Page 19: Portas I/O Digitais - DECOM-UFOP · Introdução • São portas de entrada e saída de dados , cujos valores alternamentre “0”e“1”; • OPIC18F4550tem5gruposdeportasdisponíveis(A,B,C,D,](https://reader033.vdocuments.com.br/reader033/viewer/2022052919/5bd560fd09d3f24b3e8b6ec9/html5/thumbnails/19.jpg)
Exercícios
19
• Exercícios
![Page 20: Portas I/O Digitais - DECOM-UFOP · Introdução • São portas de entrada e saída de dados , cujos valores alternamentre “0”e“1”; • OPIC18F4550tem5gruposdeportasdisponíveis(A,B,C,D,](https://reader033.vdocuments.com.br/reader033/viewer/2022052919/5bd560fd09d3f24b3e8b6ec9/html5/thumbnails/20.jpg)
Perguntas
Pesquisa em Memória Primária - Hashing David Menotti Algoritmos e Estruturas de Dados I DECOM – UFOP
1 Introdução à Programação COM 100 Notas de Aula 03 UFOP – ICEB – DECOM Prof. Marcelo Luiz Silva Red