236
8/20/2019 Apostila EletronicaII Rev6(1) http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 1/236  ELETRÔNICA II Prof. Sidney José Montebeller 

Apostila EletronicaII Rev6(1)

  • Upload
    thiago

  • View
    232

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 1/236

ELETRÔNICA II

Prof. Sidney José Montebeller

Page 2: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 2/236

Sumário

2

1. Revisão de Circuitos Combinatórios ............................................ 11

1.1. Conceitos Introdutórios....................................................................................11

1.1.1. Grandezas Analógicas e Digitais ............................................................ 11

1.1.2. Sistemas Analógicos e Digitais...............................................................11

1.1.3. Sistemas de Numeração Digital..............................................................11

1.2. Representação de Quantidades Binárias........................................................12

1.3. Circuitos Digitais/Circuitos Lógicos..................................................................13

1.4. Sistemas de Numeração e Códigos ................................................................14

1.4.1. Relacionando as Representações .......................................................... 16

1.5. Portas Lógicas e Álgebra Booleana ................................................................16

1.5.1. Operação Lógica OR (OU)......................................................................16

1.5.2. Operação Lógica AND (E) ......................................................................17

1.5.3. Operação Lógica NOT (INVERSORA)....................................................17

1.5.4. Descrevendo Circuitos Lógicos Algebricamente.....................................17

1.5.5. Implementação de Circuitos Lógicos a partir de Expressões Booleanas17

1.5.6. Portas NOR e NAND...............................................................................18

1.6. Teoremas da Álgebra de Boole.......................................................................18

1.6.1. Teoremas Booleanos..............................................................................19

1.6.2. Teoremas de DeMorgan .........................................................................19

1.7. Universalidade das Portas NAND e NOR........................................................19

1.8. Simplificação de Circuitos Lógicos ..................................................................20

1.8.1. Simplificação Algébrica...........................................................................20

1.9. Projetando Circuitos Lógicos...........................................................................20

1.10. Método do Mapa de Karnaugh para Simplificação Circuitos Lógicos............21

1.11. Outras Portas Lógicas...................................................................................22

1.11.1. Circuito XOR.........................................................................................22

1.11.2. Circuito XNOR ......................................................................................22

1.12. Circuitos Integrados Lógicos .........................................................................23

2. Famílias Lógicas de Circuitos Integrados .................................... 25

2.1. Introdução ....................................................................................................... 25

2.2. Terminologia de Circuitos Integrados Digitais .................................................25

2.2.1. Tensão e Corrente..................................................................................25

2.2.2. Fan-Out...................................................................................................26

2.2.3. Atrasos de Propagação...........................................................................26

2.2.4. Potência..................................................................................................26

2.2.5. Velocidade x Potência ............................................................................26

2.2.6. Imunidade ao Ruído................................................................................27

2.2.7. Níveis de Tensão Inválidos.....................................................................27

2.2.8. Fornecimento de Corrente e de Absorção de Corrente ..........................27

2.2.9. Encapsulamentos de Circuitos Integrados..............................................28

2.3. Família Lógica TTL..........................................................................................29

2.3.1. Operação do Circuito – Saída em Nível Baixo........................................29

2.3.2. Operação do Circuito – Saída em Nível Alto...........................................29

Page 3: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 3/236

Sumário

3

2.3.3. Absorção de Corrente.............................................................................30

2.3.4. Fornecimento de Corrente ......................................................................30

2.3.5. Outras Portas TTL .................................................................................. 30

2.4. Características da Série TTL Padrão ..............................................................30

2.4.1. Faixas de Tensão de Alimentação e de Temperatura ............................30

2.4.2. Níveis de Tensão....................................................................................30

2.4.3. Faixas Máximas de Tensão ....................................................................31

2.4.4. Dissipação de Potência...........................................................................31

2.4.5. Atrasos de Propagação...........................................................................31

2.4.6. Fan-Out...................................................................................................31

2.5. Séries TTL Aperfeiçoadas...............................................................................31

2.5.1. Séries 74L e 74H ....................................................................................31

2.5.2. TTL Schottky, Série 74S .........................................................................32

2.5.3. TTL Schottky de Baixa Potência, Série 74LS (LS-TTL) ..........................32

2.5.4. TTL Schottky Avançada, Série 74AS (AS-TTL) ...................................... 32

2.5.5. TTL Schottky Avançada de Baixa Potência, Série 74ALS......................32

2.5.6. TTL Fast – 74F .......................................................................................32

2.5.7. Comparação das Características das Séries TTL...................................32

2.6. Fan-Out e Carregamento para TTL.................................................................33

2.6.1. Determinando o Fan-Out ........................................................................34

2.7. Outras Características TTL .............................................................................35

2.7.1. Entradas Desconectadas (Flutuando).....................................................35

2.7.2. Entradas Não-Usadas.............................................................................35

2.7.3. Transientes de Corrente .........................................................................35

2.8. Conectando Saídas TTL Juntas ......................................................................36

2.8.1. Saídas Coletor Aberto.............................................................................36

2.8.2. Conexão Wired-AND ..............................................................................36

2.8.3. Buffers/Drivers de Coletor Aberto ........................................................... 37

2.8.4. Simbologia para Saídas em Coletor Aberto............................................37

2.9. Tristate (Terceiro Estado) para o TTL .............................................................38

2.9.1. Circuitos Integrados Tristate ...................................................................38

2.9.2. Simbologia para as Saídas Tristate ........................................................39

2.10. Circuitos Integrados Digitais MOS.................................................................39

2.11. O MOSFET....................................................................................................39

2.12. Circuitos Digitais com MOSFETs ..................................................................40

2.12.1. Inversor N-MOS....................................................................................40

2.12.2. NAND N-MOS e NOR N-MOS..............................................................40

2.13. Características da Lógica MOS.....................................................................41 2.13.1. Velocidade de Operação.......................................................................41

2.13.2. Margem de Ruído ................................................................................. 41

2.13.3. Fan-Out.................................................................................................41

2.13.4. Consumo de Potência...........................................................................42

2.13.5. Complexidade do Processo de Fabricação...........................................42

2.13.6. Sensibilidade à Eletricidade Estática ....................................................42

2.14. Lógica MOS Complementar ..........................................................................42

2.14.1. Inversor CMOS .....................................................................................43

Page 4: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 4/236

Sumário

4

2.14.2. NAND CMOS e NOR CMOS ................................................................43

2.15. Características da Série CMOS ....................................................................44

2.15.1. Série 4000/14000..................................................................................44

2.15.2. Série 74C..............................................................................................44

2.15.3. 74HC/HCT (High Speed CMOS – CMOS de Alta Velocidade) .............44

2.15.4. 74AC/ACT (CMOS Avançado)..............................................................44

2.15.5. 74AHC (Advanced High-Speed CMOS – CMOS Avançado de AltaVelocidade).......................................................................................................44

2.15.6. Tensão de Alimentação ........................................................................44

2.15.7. Níveis de Tensão Lógicos.....................................................................45

2.15.8. Margens de Ruído ................................................................................45

2.15.9. Dissipação de Potência.........................................................................45

2.15.10. Dissipação de Potência Aumenta com a Frequência..........................45

2.15.11. Fan-Out...............................................................................................46

2.15.12. Velocidade de Comutação..................................................................46

2.15.13. Entradas Não-Utilizadas .....................................................................47

2.15.14. Sensibilidade à Eletricidade Estática ..................................................47

2.15.15. Comparação entre as Séries CMOS e TTL ........................................47

2.16. Tecnologia de Baixa Tensão .........................................................................47

2.17. Saídas CMOS de Dreno Aberto e Tristate ....................................................48

2.17.1. Saídas em Dreno Aberto.......................................................................48

2.17.2. Saídas Tristate......................................................................................49

2.18. Interfaceamento de Circuitos Integrados.......................................................49

2.19. TTL Acionando CMOS .................................................................................. 50

2.19.1. TTL Acionando CMOS com Tensão de Alimentação Alta.....................51

2.20. CMOS Acionando TTL .................................................................................. 51

2.20.1. CMOS Acionando TTL no Estado ALTO...............................................51

2.20.2. CMOS Acionando TTL no Estado BAIXO.............................................52 2.20.3. CMOS com Tensão de Alimentação Alta Acionando TTL.....................52

3. Dispositivos de Lógica Programável (PLD).................................. 53

3.1. Introdução ....................................................................................................... 53

3.2. Conceito Básico...............................................................................................54

3.3. Simbologia.......................................................................................................55

3.4. Arquitetura de um PLD....................................................................................55

3.4.1. Fusível de Polaridade .............................................................................56

3.5. Outros Recursos Disponíveis ..........................................................................57

3.6. Outros Tipos de PLDs .....................................................................................57

3.7. Programação...................................................................................................58

3.8. PLDs Programáveis.........................................................................................58

4. Flip-Flops ........................................................................................ 59

4.1. Introdução ....................................................................................................... 59

4.2. Flip-Flop R-S (Reset – Set) .............................................................................59

Page 5: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 5/236

Sumário

5

4.3. Flip-Flops com Clock.......................................................................................60

4.3.1. Tempos de Setup e Hold ........................................................................61

4.4. Flip-Flop R-S com Clock..................................................................................61

4.5. Flip-Flop J-K ....................................................................................................63

4.6. Flip-Flop D.......................................................................................................63

4.7. Latch D............................................................................................................64

4.8. Entradas Assíncronas .....................................................................................64

4.9. Características de Temporizações dos Flip-Flops...........................................65

4.10. Circuitos Integrados de Flip-Flops.................................................................67

4.11. Problemas de Temporização em Flip-Flops ..................................................67

4.12. Flip-Flops Mestre/Escravo.............................................................................68

4.13. Dispositivos Schmitt-Trigger..........................................................................68

4.14. Circuitos Geradores de Clock........................................................................69

4.14.1. Oscilador Schmitt-Trigger .....................................................................70 4.14.2. Temporizador 555 como Oscilador .......................................................70

4.14.3. Osciladores a Cristal de Quartzo .......................................................... 71

5. Contadores ..................................................................................... 72

5.1. Introdução ....................................................................................................... 72

5.2. Contadores Assíncronos ................................................................................. 72

5.3. Contadores de Módulo < 2N ............................................................................74

5.4. Diagrama de Transição de Estados ................................................................75

5.5. Contadores de Década....................................................................................76

5.6. Circuitos Integrados de Contadores Assíncronos ...........................................76

5.7. Contador Assíncrono Decrescente..................................................................76

5.8. Atrasos de Propagação de Contadores Assíncronos......................................77

5.9. Contadores Síncronos.....................................................................................78

5.10. Circuitos Integrados de Contadores Síncronos.............................................80

5.11. Contadores Síncronos Decrescentes............................................................80

5.12. Contadores com Carga Paralela ...................................................................80

5.13. Contadores BCD ...........................................................................................81

5.14. Projeto de Contadores Síncronos..................................................................81

5.15. O Flip-Flop J-K ..............................................................................................82

5.16. Procedimento para Construção de Contadores Síncronos ...........................83

6. Registradores ................................................................................. 86

6.1. Introdução ....................................................................................................... 86

6.2. Registradores de Deslocamento .....................................................................86

Page 6: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 6/236

Sumário

6

6.3. Transferência Paralela de Dados entre Registradores....................................87

6.4. Transferência Serial de Dados entre Registradores........................................87

6.5. Comparação entre a Transferência Paralela e a Transferência Serial............88

6.6. Contadores com Registradores de Deslocamento ..........................................88

6.7. Circuitos Integrados de Registradores ............................................................ 90

7. Decodificadores, Codificadores, Multiplexadores eDemultiplexadores ............................................................................. 92

7.1. Decodificadores...............................................................................................92

7.1.1. Decodificadores BCD para Decimal........................................................93

7.1.2. Decodificadores/Driver BCD para Decimal .............................................93

7.1.3. Decodificadores/Driver BCD para 7 Segmentos.....................................93

7.2. Codificadores ..................................................................................................94

7.3. Multiplexadores ...............................................................................................95

7.3.1. Aplicações de Multiplexadores................................................................97

7.4. Demultiplexadores...........................................................................................98

7.4.1. Aplicações de Demultiplexadores.........................................................100

8. Aritmética Digital...........................................................................101

8.1. Introdução .....................................................................................................101

8.2. Adição Binária ...............................................................................................101

8.3. Representação de Números com Sinal.........................................................101

8.3.1. Forma do Complemento a 1 .................................................................102

8.3.2. Forma do Complemento a 2 .................................................................102

8.4. Representação de Números com Sinal Usando Complemento a 2...............103 8.4.1. Negação................................................................................................103

8.4.2. Faixa de Representação do Complemento a 2.....................................104

8.4.3. Adição no Sistema de Complemento a 2..............................................105

8.4.4. Subtração no Sistema de Complemento a 2.........................................106

8.4.5. Overflow Aritmético...............................................................................106

8.5. Multiplicação de Números Binários ...............................................................107

8.5.1. Multiplicação no Complemento a Dois..................................................107

8.6. Divisão de Números Binários ........................................................................107

8.7. Adição de Números BCD ..............................................................................108

8.8. Aritmética Hexadecimal.................................................................................109 8.8.1. Adição em Hexadecimal .......................................................................109

8.8.2. Subtração em Hexadecimal..................................................................109

8.9. Circuitos Aritméticos......................................................................................110

8.9.1. Unidade Lógica e Aritmética .................................................................110

8.9.2. Somador Binário Paralelo .....................................................................111

8.9.3. Projeto de um Somador Completo........................................................112

8.9.4. Somador Paralelo Integrado .................................................................115

8.9.5. Ligação em Cascata de Somadores Paralelos ..................................... 115

8.9.6. Circuito Integrados de ULAs .................................................................115

Page 7: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 7/236

Sumário

7

9. Conversão Digital-Analógica........................................................116

9.1. Interface com o Mundo Analógico .................................................................116

9.2. Sistema Digital Interfaceando com Grandezas Analógicas...........................116

9.3. Conversão Digital Analógica (D/A) ................................................................117

9.3.1. Resolução (Tamanho do Degrau).........................................................118

9.3.2. Resolução Percentual...........................................................................118

9.4. Código de Entrada BCD................................................................................119

9.5. Conversor D/A com Amplificador Operacional ..............................................119

9.5.1. Somador ...............................................................................................120

9.6. Fatores Importantes na Precisão da Conversão ...........................................121

9.7. Conversores D/A com Saída em Corrente ....................................................122

9.8. Rede R/2R.....................................................................................................122

9.9. Especificações de Conversores D/A ............................................................. 123

9.10. Circuito Integrado de Conversão D/A – AD7524.........................................124

9.11. Aplicações de Conversores D/A..................................................................124

10. Conversão Analógico-Digital......................................................126

10.1. Introdução ...................................................................................................126

10.2. Conversor A/D de Rampa Digital.................................................................127

10.3. Precisão e Resolução de Conversores A/D ................................................127

10.3.1. Tempo de Conversão tc ......................................................................128

10.4. Aquisição de Dados.....................................................................................128

10.5. Reconstrução de Sinais Digitalizados .........................................................128

10.6. Conversor A/D de Aproximações Sucessivas .............................................129

10.6.1. Sequência...........................................................................................130

10.6.2. Tempo de Conversão..........................................................................130

10.7. ADC0804 – Conversor A/D de Aproximações Sucessivas..........................131

10.8. Conversor A/D Flash ................................................................................... 132

10.9. Tempo de Conversão..................................................................................133

10.10. Outros Métodos de Conversão A/D...........................................................133

10.10.1. Conversor A/D de rampa digital crescente/decrescente (conversor A/Drastreador) ......................................................................................................133

10.10.2. Conversor A/D de rampa dupla.........................................................133 10.10.3. Conversor A/D de tensão-frequência................................................134

10.10.4. Conversor A/D sigma-delta (Σ-∆) ......................................................134

11. Memórias......................................................................................136

11.1. Introdução ...................................................................................................136

11.2. Definição de Termos Básicos......................................................................136

11.3. Princípios de Operação das Memórias........................................................138

11.3.1. Entradas de Endereços.......................................................................139

Page 8: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 8/236

Sumário

8

11.3.2. A Entrada WR / .................................................................................139

11.3.3. Habilitação de Memória (ME)..............................................................139

11.4. Conexões da Memória com a CPU ............................................................. 140

12. Memória Somente de Leitura (ROM) ..........................................142

12.1. Introdução ...................................................................................................142

12.2. Diagrama em Blocos de uma ROM.............................................................142

12.3. Arquitetura de uma ROM.............................................................................142

12.4. Temporização de uma ROM .......................................................................144

12.5. Tipos de ROM .............................................................................................144

12.5.1. Aplicações de ROMs...........................................................................145

13. Memória de Acesso Aleatório (RAM) .........................................147

13.1. Introdução ...................................................................................................147

13.2. Arquitetura de uma RAM.............................................................................147 13.2.1. Operação de Leitura ...........................................................................148

13.2.2. Operação de Escrita ...........................................................................148

13.3. RAM Estática (SRAM).................................................................................149

13.3.1. Temporização de uma RAM Estática..................................................149

13.3.2. Ciclo de Leitura...................................................................................149

13.3.3. Ciclo de Escrita...................................................................................150

13.3.4. Exemplos de Memórias Estáticas .......................................................151

13.4. RAM Dinâmica (DRAM)...............................................................................151

13.4.1. Estrutura e Operação da RAM Dinâmica............................................151

13.4.2. Multiplexação de Endereços...............................................................152

13.4.3. Refrescamento da DRAM ...................................................................153

13.5. Tecnologia de RAM Dinâmica Usada em Computadores ...........................153

13.6. Memórias com Funções Especiais..............................................................154

14. Expansão do Tamanho da Palavra e da Capacidade................155

14.1. Introdução ...................................................................................................155

14.2. Expansão do Tamanho da Palavra ............................................................. 155

14.3. Expansão da Capacidade ...........................................................................156

15. Microcontrolador AT90S8515 .....................................................159

15.1. Introdução ...................................................................................................159

15.1.1. Computadores, Microprocessadores e Microcontroladores................159

15.2. Características do Microcontrolador AT90S8515 ........................................ 160

15.3. Encapsulamento..........................................................................................161

15.4. Descrição Geral...........................................................................................161

15.5. Diagrama em Blocos ................................................................................... 161

15.6. Descrição dos Pinos....................................................................................163

Page 9: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 9/236

Sumário

9

15.7. Oscilador .....................................................................................................164

15.8. Arquitetura...................................................................................................164

15.8.1. Registradores de Uso Geral................................................................166

15.8.2. Os Registradores X, Y e Z ..................................................................166

15.8.3. ULA – Unidade Lógica e Aritmética ....................................................167

15.8.4. Memória de Programa Flash Programável no Sistema ......................167

15.8.5. Memória de Dados SRAM Interna e Externa......................................167

15.8.6. Memória de Dados EEPROM ............................................................. 168

15.8.7. Tempos de Acesso à Memória e Execução de Instruções ................. 169

15.8.8. Memória de Entrada/Saída (I/O).........................................................169

15.8.9. Tratamento de Reset e Interrupções ..................................................172

15.8.10. Fontes de Reset................................................................................173

15.8.11. Power-On Reset ...............................................................................173

15.8.12. Reset Externo ................................................................................... 174

15.8.13. Reset por Watchdog .........................................................................174

15.8.14. Tratamento de Interrupções..............................................................174

15.8.15. Interrupções Externas.......................................................................178

15.8.16. Modos de Sleep................................................................................179

15.9. Temporizadores/Contadores .......................................................................180

15.9.1. Prescaler (Divisor) dos Temporizadores/Contadores .........................181

15.9.2. Temporizador/Contador0 de 8 bits......................................................181

15.9.3. Temporizador/Contador0 – TCNT0.....................................................182

15.9.4. Temporizador/Contador1 de 16 bits....................................................183

15.9.5. Temporizador/Contador1 – TCNT1H e TCNT1L.................................186

15.9.6. Temporizador/Contador1 no modo PWM............................................188

15.10. Watchdog Timer ........................................................................................189

15.11. Acesso para Leitura/Escrita na EEPROM .................................................191

15.11.1. Prevenção de Perdas de Dados na EEPROM..................................193

15.12. UART.........................................................................................................194

15.12.1. Transmissão de Dados .....................................................................194

15.12.2. Recepção de Dados..........................................................................195

15.12.3. Controle da UART.............................................................................196

15.12.4. Gerador de BAUD Rate ....................................................................199

15.13. Comparador Analógico..............................................................................199

15.14. Interface com SRAM Externa ....................................................................201

15.15. Portas de Entrada/Saída ...........................................................................202

15.15.1. Port A................................................................................................202

15.15.2. Port B................................................................................................204

15.15.3. Port C................................................................................................207 15.15.4. Port D................................................................................................208

16. Guia para Uso do Assembler AVR .............................................211

16.1. Introdução ...................................................................................................211

16.2. Código Fonte do Assembler ........................................................................211

16.3. Registradores da Memória de I/O do AT90S8515.......................................212

16.4. Tabela de Instruções...................................................................................214

Page 10: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 10/236

Sumário

10

16.5. Diretivas no Assembler................................................................................219

16.6. Expressões..................................................................................................229

16. Referências Bibliográficas e Internet.........................................235

Page 11: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 11/236

Revisão de Circuitos Combinatórios

11

1. Revisão de Circuitos Combinatórios

1.1. Conceitos Introdutórios

1.1.1. Grandezas Analógicas e Digitais

Grandezas analógicas são aquelas que podem variar em um intervalocontínuo de valores. Por exemplo, a velocidade de um veículo pode assumirqualquer valor de 0 a 200 km/h.

Grandezas digitais são aquelas que variam em passos discretos. Porexemplo, o tempo varia continuamente, mas a sua medição através de um relógiodigital é feita a cada minuto.

1.1.2. Sistemas Analógicos e Digitais

Um sistema analógico contém dispositivos que podem manipular quantidadesfísicas analógicas. Por exemplo, a saída de um amplificador pode variarcontinuamente dentro de um certo intervalo.

Um sistema digital contém dispositivos capazes de manipular informaçõeslógicas (representadas na forma digital). Um exemplo seria um computador.

As vantagens das técnicas digitais são várias:

-

Sistemas digitais são mais fáceis de projetar;- Fácil armazenamento de informação;

- Maior exatidão e precisão;

- A operação do sistema pode ser programada;

- Circuitos digitais são menos afetados pelo ruído;

- Um maior número de circuitos digitais pode ser colocado em um circuitointegrado.

1.1.3. Sistemas de Numeração Digital

- Sistema decimal – contém 10 algarismos (0 a 9).

Representação:

273,4110 = (2 x 102) + (7 x 101) + (3 x 100) + (4 x 10-1) + (1 x 10-2)

Page 12: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 12/236

Revisão de Circuitos Combinatórios

12

Pesos 102 101 100 10-1 10-2

2 7 3 4 1

- Sistema binário – contém 2 algarismos (0 e 1).

Representação:101,012 = (1 x 22) + (0 x 21) + (1 x 20) + (0 x 2-1) + (1 x 2-2) = 5,2510

Pesos 22 21 20 2-1 2-2

1 0 1 0 1

- Sistema octal – contém 8 algarismos (0 a 7).

Representação:

157,28 = (1 x 82

) + (5 x 81

) + (7 x 80

) + (2 x 8-1

) = 111,2510

Pesos 82 81 80 8-1

1 5 7 2

- Sistema hexadecimal – contém 16 algarismos (0 a F).

Representação:

15A,216 = (1 x 162) + (5 x 161) + (10 x 160) + (2 x 16-1) = 346,12510

Pesos 162 161 160 16-1

1 5 10 2

1.2. Representação de Quantidades Binárias

Em sistemas digitais, a informação geralmente apresenta a forma binária.Essas quantidades binárias podem ser representadas por qualquer dispositivo que

apresente dois estados de operação.Uma chave, por exemplo, pode estar aberta ou fechada. Podemos dizer que a

chave aberta corresponde ao dígito binário “0” e a chave fechada corresponde aodígito binário “1”. Outros exemplos: uma lâmpada (acesa ou apagada), um diodo(conduzindo ou não), um transistor (conduzindo ou não), etc.

Em sistemas digitais eletrônicos, a informação binária é representada porníveis de tensão (ou correntes). Por exemplo, zero volt poderia representar o valorbinário “0” e 5 volts poderia representar o valor binário “1”. Mas, devido a variaçõesnos circuitos, os valores binários são representados por intervalos de tensões: o “0”

Page 13: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 13/236

Revisão de Circuitos Combinatórios

13

digital corresponde a uma tensão entre 0 e 0,8 volts enquanto o “1” digitalcorresponde a uma tensão entre 2 e 5 volts.

Com isso percebemos uma diferença significativa entre um sistema analógicoe um sistema digital. Nos sistemas digitais, o valor exato da tensão não é importante.

Figura 1.1: Intervalos típicos de tensão para os binários 0 e 1.

1.3. Circuitos Digitais/Circuitos Lógicos

Circuitos digitais são projetados para produzir tensões de saída e responder atensões de entrada que estejam dentro do intervalo determinado para os binários 0 e1. A Figura 1.2 mostra isso:

Figura 1.2: Resposta de um circuito digital.

Praticamente todos os circuitos digitais existentes são circuitos integrados(CIs), o que tornou possível a construção de sistemas digitais complexos menores emais confiáveis do que aqueles construídos com circuitos lógicos discretos.

Page 14: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 14/236

Revisão de Circuitos Combinatórios

14

1.4. Sistemas de Numeração e Códigos

O sistema binário de numeração é o mais importante em sistemas digitais. Osistema decimal também é importante porque é usado por todos nós pararepresentar quantidades. Já os sistemas octal e hexadecimal são usados para

representar números binários grandes de maneira eficiente.

- Conversões Binário-Decimal – Cada dígito tem um peso correspondente à suaposição.

110112 = (1 x 24) + (1 x 23) + (0 x 22) + (1 x 21) + (1 x 20) = 2710

- Conversões Decimal-Binário – O método usado é o das divisões sucessivas:

- Conversão Octal-Decimal – Cada dígito tem um peso correspondente à suaposição.

3728 = (3 x 82) + (7 x 81) + (2 x 80) = 25010

- Conversão Decimal-Octal – O método usado é o das divisões sucessivas:

- Conversão Octal-Binário – Cada dígito octal é convertido para o seu

correspondente em binário.

Dígito Octal 0 1 2 3 4 5 6 7

Equivalente Binário 000 001 010 011 100 101 110 111

4728 = (100) (111) (010) = 1001110102

Page 15: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 15/236

Revisão de Circuitos Combinatórios

15

- Conversão Binário-Octal – O número binário é dividido em grupos de 3 dígitosiniciando-se a partir do dígito de menor peso. Cada grupo é convertido no seucorrespondente octal.

1001110102 = (100) (111) (010) = 4728

- Conversão Hexadecimal-Decimal – Cada dígito tem um peso correspondente àsua posição.

2AF16 = (2 x 162) + (10 x 161) + (15 x 160) = 68710

- Conversão Decimal-Hexadecimal – O método usado é o das divisõessucessivas:

- Conversão Hexadecimal-Binário – Cada dígito hexadecimal é convertido para oseu correspondente em binário.

9F216 = (1001) (1111) (0010) = 1001111100102

- Conversão Binário-Hexadecimal – O número binário é dividido em grupos de 4dígitos iniciando-se a partir do dígito de menor peso. Cada grupo é convertido noseu correspondente hexadecimal.

11101001102 = (0011) (1010) (0110) = 3A616

- Código BCD – O código BCD não constitui um sistema de numeração. Eleapenas relaciona cada dígito do sistema decimal com um grupo de 4 dígitos dosistema binário.

87410 = (1000) (0111) (0100) = 100001110100 (BCD)

Page 16: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 16/236

Revisão de Circuitos Combinatórios

16

1.4.1. Relacionando as Representações

Tabela 1.1: Relação entre as representações numéricas.

Decimal Binário Octal Hexadecimal BCD

0 0 0 0 00001 1 1 1 0001

2 10 2 2 0010

3 11 3 3 0011

4 100 4 4 0100

5 101 5 5 0101

6 110 6 6 0110

7 111 7 7 0111

8 1000 10 8 10009 1001 11 9 1001

10 1010 12 A 0001 0000

11 1011 13 B 0001 0001

12 1100 14 C 0001 0010

13 1101 15 D 0001 0011

14 1110 16 E 0001 0100

15 1111 17 F 0001 0101

1.5. Portas Lógicas e Álgebra Booleana

A álgebra booleana é a ferramenta fundamental para descrever a relaçãoentre as saídas de um circuito lógico e suas entradas através de uma equação(expressão booleana). Existem três operações básicas: OR (OU), AND (E) e NOT(NÃO).

1.5.1. Operação Lógica OR (OU)

Figura 1.3: Porta OR (OU).

Page 17: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 17/236

Revisão de Circuitos Combinatórios

17

1.5.2. Operação Lógica AND (E)

Figura 1.4: Porta AND (E).

1.5.3. Operação Lógica NOT (INVERSORA)

Figura 1.5: Porta NOT (INVERSOR).

1.5.4. Descrevendo Circuitos Lógicos Algebricamente

Qualquer circuito lógico pode ser descrito usando as portas AND, OR e NOT.Essas três portas são os blocos básicos na construção de qualquer sistema digital.

Figura 1.6: Circuito Lógico e sua Expressão Lógica.

1.5.5. Implementação de Circuitos Lógicos a partir de Expressões Booleanas

Podemos usar a expressão booleana para gerar o circuito lógico. Porexemplo:

Page 18: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 18/236

Revisão de Circuitos Combinatórios

18

Figura 1.7: Expressão Lógica e seu Circuito Lógico.

1.5.6. Portas NOR e NAND

Outros tipos de portas lógicas existentes são as portas NOR e NAND, que naverdade são combinações das portas OR, AND e NOT.

Figura 1.8: Portas NOR e NAND.

1.6. Teoremas da Álgebra de Boole

Esses teoremas, aplicados na prática, visam simplificar as expressõesbooleanas e consequentemente os circuitos gerados por estas expressões.

Page 19: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 19/236

Revisão de Circuitos Combinatórios

19

1.6.1. Teoremas Booleanos

1.6.2. Teoremas de DeMorgan

1.7. Universalidade das Portas NAND e NOR

Qualquer expressão lógica pode ser implementada usando apenas portasNAND ou portas NOR. Isso porque podemos representar portas OR, AND ou NOTusando apenas portas NAND ou NOR.

Figura 1.9: Uso de PORTAS NAND para implementar outras funções booleanas.

Page 20: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 20/236

Revisão de Circuitos Combinatórios

20

1.8. Simplificação de Circuitos Lógicos

Depois de encontrada a expressão de um circuito lógico, podemos reduzi-lapara uma forma mais simples. A intenção é diminuir o número de variáveis nessaexpressão, o que significa diminuir o número de portas lógicas e conexões em um

circuito lógico.

1.8.1. Simplificação Algébrica

A simplificação algébrica é feita com o uso dos teoremas da álgebra booleanae de DeMorgan. Exemplo:

1.9. Projetando Circuitos Lógicos

Passos para o projeto completo de um circuito lógico:

a) Montar a tabela-verdade:

A B C x

0 0 0 0

0 0 1 0

0 1 0 0

0 1 1 1

1 0 0 0

1 0 1 1

1 1 0 1

1 1 1 1

Page 21: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 21/236

Revisão de Circuitos Combinatórios

21

b) Analisar a saída:

Quando qualquer entrada de uma porta OR for “1” então a saída será “1”.Então podemos deduzir que a saída x é uma operação OR de todos os casos emque a saída x é “1”. Cada caso corresponde a uma operação lógica AND com todasas variáveis de entrada.

c) Simplificar a expressão lógica obtida:

A expressão pode ser reduzida a um número menor de termos se aplicarmosos teoremas booleanos e de DeMorgan.

d) Implementar o circuito através da expressão lógico:

Figura 1.10: Circuito lógico final.

1.10. Método do Mapa de Karnaugh para Simplificação Circuitos Lógicos

Vamos usar a tabela anterior como exemplo.

Page 22: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 22/236

Revisão de Circuitos Combinatórios

22

1.11. Outras Portas Lógicas

1.11.1. Circuito XOR

Figura 1.11: Porta XOR (OU-Exclusivo).

1.11.2. Circuito XNOR

Figura 1.12: Porta XNOR (NOU-Exclusivo).

Page 23: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 23/236

Revisão de Circuitos Combinatórios

23

1.12. Circuitos Integrados Lógicos

Exemplos de circuitos integrados lógicos:

Figura 1.13: Circuito integrado 74LS08 (4 portas AND de 2 entradas).

Figura 1.14: Circuito integrado 74LS04 (6 portas inversoras).

Figura 1.15: Circuito integrado 74LS32 (4 portas OR de 2 entradas).

Page 24: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 24/236

Revisão de Circuitos Combinatórios

24

Outros:

- 7400 – Quatro portas NAND

- 7402 – Quatro portas NOR

- 7486 – Quatro portas XOR

-

74266 – Quatro portas XNOR

Page 25: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 25/236

Famílias Lógicas de Circuitos Integrados

25

2. Famílias Lógicas de Circuitos Integrados

2.1. Introdução

Circuitos integrados são amplamente usados na construção de sistemasdigitais. Isso porque eles têm muito mais circuitos em um pequeno encapsulamentoe são mais confiáveis.

2.2. Terminologia de Circuitos Integrados Digitais

Os fabricantes de circuitos integrados digitais seguem praticamente o mesmo

padrão de nomenclatura e terminologia:

2.2.1. Tensão e Corrente

- VIH(min) – Mínima Tensão de Entrada em Nível Alto.

- VIL(max) – Máxima Tensão de Entrada em Nível Baixo.

- VOH(min) – Mínima Tensão de Saída em Nível Alto.

- VOL(max) – Máxima Tensão de Saída em Nível Baixo.

- IIH – Corrente de Entrada em Nível Alto.

- IIL – Corrente de Entrada em Nível Baixo.

- IOH – Corrente de Saída em Nível Alto.

- IOL – Corrente de Saída em Nível Baixo.

Figura 2.1: Tensões e correntes em nível lógico 1 e 0.

Page 26: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 26/236

Famílias Lógicas de Circuitos Integrados

26

2.2.2. Fan-Out

O Fan-Out corresponde ao número máximo de entradas lógicas que umasaída de um circuito lógico pode acionar. Se esse número for excedido, os níveis detensão e corrente não serão garantidos.

2.2.3. Atrasos de Propagação

Um sinal lógico, ao atravessar um circuito, sofre um atraso. Existem dois tiposde atraso:

- tPLH – Tempo de atraso do estado lógico “0” para o “1”.

- tPHL – Tempo de atraso do estado lógico “1” para o “0”.

Figura 2.2: Atrasos de propagação.

Os valores dos tempos de atrasos de propagação são usados para mediçãode velocidade em circuitos lógicos.

2.2.4. Potência

Como todo circuito elétrico, um circuito lógico “consome” uma certaquantidade de potência. Essa potência é fornecida por fontes de alimentação e esseconsumo deve ser levado em consideração em um sistema digital.

Se um circuito integrado consome menos potência poderemos ter uma fontede menor capacidade e com isso reduziremos os custos do projeto.

2.2.5. Velocidade x Potência

Um circuito digital ideal é aquele que possui o menor consumo de potência eo menor atraso de propagação. Em outras palavras, o produto de velocidade (atraso)e potência deve ser o menor possível.

Page 27: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 27/236

Famílias Lógicas de Circuitos Integrados

27

2.2.6. Imunidade ao Ruído

Ruídos são sinais indesejáveis gerados por campos eletromagnéticos podemafetar o funcionamento de um circuito lógico. Esses sinais podem fazer com que atensão de entrada de um circuito lógico caia abaixo de VIH(min) ou aumente além de

VIL(max), gerando falsos sinais.A imunidade ao ruído se refere à capacidade de um circuito lógico de rejeitar

esse ruído.

Figura 2.3: Margens de ruído.

2.2.7. Níveis de Tensão Inválidos

Circuitos lógicos só trabalharão confiavelmente com níveis de tensãoespecificados pelos fabricantes, ou seja, as tensões devem ser menores queVIL(max) e maiores que VIH(min) – fora da faixa de indeterminação – e comalimentação adequada.

2.2.8. Fornecimento de Corrente e de Absorção de Corrente

O fornecimento de corrente é mostrado na fig. 2-4. Quando a saída da portalógica 1 está em ALTO, ela fornece uma corrente IIH para a entrada da porta lógica 2.

Page 28: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 28/236

Famílias Lógicas de Circuitos Integrados

28

Figura 2.4: Porta de acionamento fornecendo corrente para a porta de carga.

A absorção de corrente é mostrada na Figura 2.5. Quando a saída da portalógica 1 está em BAIXO, ela absorve uma corrente I IL para a entrada da porta lógica2.

Figura 2.5: Porta de acionamento absorvendo corrente da porta de carga.

2.2.9. Encapsulamentos de Circuitos Integrados

Alguns tipos de encapsulamentos de circuitos integrados são mostrados naFigura 2.6.

Figura 2.6: Encapsulamentos mais comuns de circuitos integrados.

Page 29: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 29/236

Famílias Lógicas de Circuitos Integrados

29

2.3. Família Lógica TTL

Um circuito básico utilizado na lógica transistor-transistor é mostrado naFigura 2.7.

Figura 2.7: Porta NAND básica TTL e equivalente a diodo para Q1.

Esse circuito representa uma porta NAND TTL. As principais característicasdesse circuito são os dois emissores do transistor Q1. Na mesma Figura 2.7 está ocircuito equivalente a diodo de Q1.

Outra característica construtiva importante desse circuito é sua saída totem-pole, que impede que os dois transistores (Q3 e Q4) conduzam ao mesmo tempo.

2.3.1. Operação do Circuito – Saída em Nível Baixo

A saída em nível baixo é consequência de entradas A e B em nível alto (5 V).Nesse caso, Q1 ficará cortado e Q2 conduzirá (ver circuito equivalente). A correntefluirá do emissor de Q2 para a base de Q4 e o faz conduzir.

A tensão no coletor de Q2 é insuficiente para Q3 conduzir. Essa tensão estáem torno de 0,8 V (0,7 V da junção B-E de Q4 + 0,1 V de Vce (sat) de Q2). Para otransistor Q3 conduzir é necessário que sua junção B-E e o diodo D1 estejadiretamente polarizado.

Com Q4 conduzindo, a tensão de saída é muito baixa (< 0,4 V), ou nível baixo(“0”).

2.3.2. Operação do Circuito – Saída em Nível Alto

Para que a saída de uma porta NAND fique em alto, pelo menos uma dasentradas A ou B deverá ser zero. Nessa condição haverá condução de Q1 por um

Page 30: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 30/236

Famílias Lógicas de Circuitos Integrados

30

de seus emissores, ou pelos dois (ver circuito equivalente ), fazendo com que Q2fique cortado.

Com Q2 cortado não haverá corrente na base de Q4 e ele ficará cortadotambém. Sem corrente no coletor de Q2, a tensão na base de Q3 é suficiente paraque ele entre em condução.

Com Q3 conduzindo, a tensão na saída ficará em torno de 3,4 V a 3,8 V (semcarga), devido às quedas na junção B-E de Q3 e ao diodo D1. Com carga essatensão deverá diminuir.

2.3.3. Absorção de Corrente

Uma saída TTL em nível baixo age como um absorvedor de corrente, pois elarecebe a corrente da entrada da porta que está acionando.

2.3.4. Fornecimento de Corrente

Uma saída TTL em nível alto age como fornecedora de corrente. Na verdadeessa corrente tem um valor muito baixo, causada pela fuga de polarização reversado “diodo” (junção B-E) de Q1.

2.3.5. Outras Portas TTL

Praticamente todas as outras portas lógicas possuem o mesmo circuito básicoda porta NAND TTL. Outros circuitos internos são colocados apenas para

implementar a lógica desejada.

2.4. Características da Série TTL Padrão

2.4.1. Faixas de Tensão de Alimentação e de Temperatura

Existem duas séries de TTL padrão diferenciadas pela faixa de tensão dealimentação e temperatura: a série 74 e a série 54.

A série 74 utiliza alimentação entre 4,75 V e 5,25 V e opera entre 0º a 70º C.A série 54 utiliza alimentação entre 4,5 V e 5,5 V e opera entre -55º a 125º C.

2.4.2. Níveis de Tensão

VIL(max) – 0,8 V

VOL(max) – 0,4 V

Page 31: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 31/236

Famílias Lógicas de Circuitos Integrados

31

Existe uma margem de segurança de uma saída para a entrada, chamada demargem de ruído, de 0,4 V (0,8 V – 0,4 V).

VIH(min) – 2,0 V

VOH(min) – 2,4 V

A margem de ruído também é de 0,4 V (2,4 V – 2,0 V).

2.4.3. Faixas Máximas de Tensão

As tensões máximas de trabalho de um TTL padrão não devem ultrapassar5,5 V. Uma tensão maior de 5,5 V aplicada a um emissor de entrada pode causardano na junção B-E de Q1. Tensões menores que –0,5 V também podem danificar ocomponente.

2.4.4. Dissipação de Potência

Uma porta NAND TTL padrão consome, em média, 10 mW.

2.4.5. Atrasos de Propagação

A porta AND TTL padrão tem atrasos de propagação típicos de

tPLH = 11 ns e tPHL = 7 ns, resultando num atraso de propagação médio tPD(med) de 9ns.

2.4.6. Fan-Out

Uma saída TTL padrão pode acionar 10 entradas TTL padrão.

2.5. Séries TTL Aperfeiçoadas

2.5.1. Séries 74L e 74H

Estas séries são versões TTL para baixa potência (74L) e alta velocidade(74H). A primeira consumia 1 mW e tinha um tempo de atraso de propagação de 33ns e a segunda consumia 23 mW, com um tempo de atraso de propagação de 6 ns.

Não são mais fabricadas atualmente.

Page 32: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 32/236

Famílias Lógicas de Circuitos Integrados

32

2.5.2. TTL Schottky, Série 74S

Esta série utiliza diodos Schottky entre a base e o coletor dos seustransistores, evitando que eles trabalhem saturados. Com isso o tempo de respostado circuito é mais rápido. Por exemplo, a porta NAND 74S00 tem um atraso médio

de 3 ns, mas um consumo de potência de 20 mW.

2.5.3. TTL Schottky de Baixa Potência, Série 74LS (LS-TTL)

A série 74LS é uma versão de menor potência e menor velocidade da série74S. Ela utiliza a combinação transistor/diodo Schottky, mas com valores maiores deresistores de polarização, o que diminui o consumo.

Uma porta NAND 74LS tem um atraso típico de propagação de 9,5 ns edissipação média de potência de 2 mW.

2.5.4. TTL Schottky Avançada, Série 74AS (AS-TTL)

A série 74AS surgiu como uma melhoria da série 74S. Possui velocidade efan-out maiores e um menor consumo se comparado com a série 74S.

2.5.5. TTL Schottky Avançada de Baixa Potência, Série 74ALS

Esta série surgiu como uma melhoria da série 74SL.

2.5.6. TTL Fast – 74F

Esta é a série TTL mais nova. Ela utiliza uma técnica de fabricação decircuitos integrados que reduz as capacitâncias entre os dispositivos internosvisando reduzir os atrasos de propagação.

2.5.7. Comparação das Características das Séries TTL

Page 33: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 33/236

Famílias Lógicas de Circuitos Integrados

33

Tabela 2.1: Comparação de performance entre séries TTL.

Índices de performance 74 74S 74LS 74AS 74ALS 74F

Atraso de propagação (ns) 9 3 9,5 1,7 4 3

Dissipação de potência (mW) 10 20 2 8 1,2 6

Produto velocidade-potência (pJ) 90 60 19 13,6 4,8 18Taxa máxima de clock (MHz) 35 125 45 200 70 100

Fan-out (mesma série) 10 20 20 40 20 33

Tabela 2.2: Comparação dos parâmetros de tensão entre portas TTL.

Parâmetros de tensão 74 74S 74LS 74AS 74ALS 74F

VOH (min) 2,4 2,7 2,7 2,5 2,5 2,5

VOL (max) 0,4 0,5 0,5 0,5 0,4 0,5

VIH (min) 2,0 2,0 2,0 2,0 2,0 2,0VIL (max) 0,8 0,8 0,8 0,8 0,8 0,8

2.6. Fan-Out e Carregamento para TTL

O fan-out corresponde ao número máximo de entradas lógicas que uma saídade um circuito lógico pode acionar. Esse número máximo está diretamente ligado àcapacidade do circuito integrado de absorver ou fornecer corrente.

Figura 2.8: Saída TTL padrão no estado BAIXO acionando várias entradas.

Do circuito vemos que IOL é a soma das correntes IIL de cada entrada. Essacorrente causa uma queda de tensão VOL, que não deve ser maior que VOL(max).Isso limita a corrente IOL e o número de cargas que podem ser acionadas.

Page 34: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 34/236

Famílias Lógicas de Circuitos Integrados

34

Figura 2.9: Saída TTL padrão no estado ALTO acionando várias entradas.

Na Figura 2.8 e na Figura 2.9 vemos que IOH é a soma das correntes I IH decada entrada. Se cargas em excesso estiverem sendo acionadas, a corrente IOL aumentará de tal forma que o nível VOH caia para valores menores que VOH(min).Esse fato também limita o número de cargas acionadas e a corrente IOH.

2.6.1. Determinando o Fan-Out

Por exemplo, a série 74 possui:

IIL (max) = 1,6 mAIOL (max) = 16 mA

Fan-out (BAIXO) =IL

OL

II

=mA1,6mA16

= 10

IIH (max) = 40 µA

IOH (max) = 400 µA

Fan-out (ALTO) =IH

OH

II

=µA40µA400

= 10

O fan-out é 10 para ambos os casos. Se os valores de fan-out foremdiferentes, o fan-out será o menor deles.

Page 35: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 35/236

Famílias Lógicas de Circuitos Integrados

35

Importante:

- A soma das correntes IIH de todas as entradas conectadas em uma saída deveser menor do que a especificação do IOH da saída;

- A soma das correntes IIL de todas as entradas conectadas em uma saída deveser menor do que a especificação do IOL da saída.

2.7. Outras Características TTL

2.7.1. Entradas Desconectadas (Flutuando)

Entradas desconectadas (abertas) em circuitos TTL se comportam como se onível lógico “1” fosse aplicado à essa entrada. Embora a lógica esteja correta,entradas desconectadas se comportam como captadoras de ruídos, fazendo com

que o circuito lógico não trabalhe corretamente.

2.7.2. Entradas Não-Usadas

Figura 2.10: Três maneiras de tratar entradas lógicas não usadas.

2.7.3. Transientes de Corrente

A configuração totem-pole usada nas saídas dos circuitos TTL tem um

inconveniente: durante a transição da saída de BAIXO para ALTO ocorre um pico decorrente porque ambos os transistores de saída estão conduzindo. Esse pico podechegar a 50 mA, corrente que é drenada da fonte que alimenta o circuito.

Em um sistema digital existem várias saídas TTL trocando de estado aomesmo tempo e drenando da fonte picos de corrente. Esse efeito causa umavariação na tensão da fonte e se não for devidamente filtrado pode causar sériosproblemas ao sistema.

É usual a colocação de capacitores cerâmicos de 10 nF a 100 nF entre osterminais Vcc e GND – alimentação e terra – dos circuitos integrados.

Page 36: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 36/236

Famílias Lógicas de Circuitos Integrados

36

2.8. Conectando Saídas TTL Juntas

Existem situações nas quais é vantajoso conectar as saídas de dois ou maisportas lógicas ou circuitos. Entretanto, configuração totem-pole não nos permiteconectar saídas TTL juntas. Para fazermos isso existem outros tipos de estrutura de

saída.

2.8.1. Saídas Coletor Aberto

Os circuitos TTL com saídas em coletor aberto só possuem um transistor desaída. Quando esse transistor estiver acionado, a saída terá nível BAIXO. Casocontrário, a saída estará flutuando. Para se obter o nível ALTO na saída um resistorexterno de pull-up é conectado.

Figura 2.11: Circuito TTL coletor aberto com resistor de pull-up externo.

2.8.2. Conexão Wired-AND

Dispositivos com saídas em coletor aberto podem ter suas saídas conectadas juntas de maneira segura. Uma situação onde esse tipo de conexão é usado émostrada na Figura 2.12.

Page 37: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 37/236

Famílias Lógicas de Circuitos Integrados

37

Figura 2.12: Conexão wired-AND utilizando portas com coletor aberto.

Esse tipo de conexão é chamado de conexão wired-AND porque éequivalente à operação lógica AND. Esta configuração elimina a necessidade deuma porta AND real.

2.8.3. Buffers/Drivers de Coletor Aberto

Todo circuito lógico que é chamado buffer, driver ou buffer/driver é projetadopara suportar uma corrente e/ou uma capacidade de tensão maior do que umcircuito lógico comum.

Por exemplo, o 7406 com saída em coletor aberto pode acionar cargas de 24V a 25 mA.

2.8.4. Simbologia para Saídas em Coletor Aberto

Figura 2.13: Simbologia de portas lógicas com coletor aberto.

Page 38: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 38/236

Famílias Lógicas de Circuitos Integrados

38

2.9. Tristate (Terceiro Estado) para o TTL

O terceiro estado, ou tristate, ocorre quando a saída de um dispositivo TTLapresenta alta impedância. Nessa condição, os dois transistores de saída dodispositivo estarão cortados e o terminal de saída não terá nível alto nem baixo

(saída fica praticamente aberta). Para que o dispositivo lógico entre nesta condição,uma entrada chamada Habilitação (Enable) é acionada.

Figura 2.14: Simbologia de um inversor TTL tristate.

2.9.1. Circuitos Integrados Tristate

Existem vários circuitos integrados lógicos tristate. Por exemplo, o 74LS125 eo 74LS126, que são buffers tristate. Os circuitos lógicos tristate são bastante usadosem sistemas que utilizam barramento de dados.

Figura 2.15: Buffers tristate usados para conectar diversos sinais em um barramentocomum.

Page 39: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 39/236

Famílias Lógicas de Circuitos Integrados

39

2.9.2. Simbologia para as Saídas Tristate

Figura 2.16: Simbologia de um buffer com saída tristate.

2.10. Circuitos Integrados Digitais MOS

A maioria dos circuitos digitais MOS (metal oxide semiconductor –semicondutor com óxido metálico) é constituída de transistores de efeito de campo

(MOSFET). Eles são menores, consomem pouco e são mais fáceis de fabricar.Dispositivos MOS podem conter um número maior de elementos de circuitos

em um único encapsulamento do que os circuitos integrados bipolares. A grandedesvantagem dessa tecnologia é sua susceptibilidade a danos provocados poreletricidade estática.

2.11. O MOSFET

Figura 2.17: Estados de comutação do MOSFET canal-N.

Page 40: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 40/236

Famílias Lógicas de Circuitos Integrados

40

2.12. Circuitos Digitais com MOSFETs

Os circuitos digitais que utilizam MOSFETs podem ser divididos em trêscategorias: P-MOS, que utiliza MOSFETs com canal-P; N-MOS, que utilizaMOSFETs com canal-N; e CMOS (MOS Complementar) que utiliza ambos. Os

circuitos P-MOS não são mais encontrados.

2.12.1. Inversor N-MOS

A Figura 2.18 mostra um circuito básico de um INVERSOR N-MOS.

Figura 2.18: Inversor N-MOS.

O circuito acima mostra dois MOSFETs canal-N. O transistor Q1 é chamadoMOSFET de carga e Q2 é chamado de MOSFET de comutação. O transistor Q1está sempre conduzindo e funciona como se fosse um resistor de carga.

2.12.2. NAND N-MOS e NOR N-MOS

A Figura 2.19 mostra os circuitos básicos das portas NAND N-MOS e NOR N-MOS.

Page 41: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 41/236

Famílias Lógicas de Circuitos Integrados

41

Figura 2.19: Portas NAND N-MOS e NOR N-MOS.

2.13. Características da Lógica MOS

Se comparadas com famílias lógicas bipolares, as famílias lógicas N-MOS eP-MOS têm velocidade de operação menor, necessitam de menor potência, têmuma margem de ruído melhor, possuem uma faixa maior para a tensão dealimentação, um fan-out maior e menos espaço de área no chip.

2.13.1. Velocidade de Operação

O atraso de propagação típico de uma porta NAND N-MOS é de 50 ns. Aresistência de saída alta no estado ALTO e capacitâncias parasitas de entradacontribuem para aumentar esse atraso.

2.13.2. Margem de Ruído

Para VDD = 5 V, as margens de ruído para a família N-MOS é de

aproximadamente 1,5 V. A margem de ruído aumenta proporcionalmente paravalores maiores de VDD.

2.13.3. Fan-Out

Devido à alta resistência de entrada do MOSFET, o fan-out da família MOS émuito alto. O fan-out é limitado apenas pelas capacitâncias de entrada da porta que,

Page 42: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 42/236

Famílias Lógicas de Circuitos Integrados

42

em altas frequências, pode deteriorar o sinal digital. Mesmo assim, o fan-out chega a50 para a família MOS.

2.13.4. Consumo de Potência

Por usar altas resistências, os circuitos lógicos MOS consomem pequenasquantidades de potência.

2.13.5. Complexidade do Processo de Fabricação

A família lógica MOS possui um processo de fabricação bem mais simples doque a família TTL porque utiliza apenas MOSFETs.

2.13.6. Sensibilidade à Eletricidade Estática

A família lógica MOS é bastante susceptíveis a danos causados poreletricidade estática. Uma descarga eletrostática supera a capacidade de isolamentoelétrico da camada de óxido danificando permanentemente o dispositivo.

Recomendações:

- Conecte todos os equipamentos que for manusear no “terra” da rede;

- Conecte-se ao “terra” com o uso de uma pulseira especial;

- Evite tocar os pinos dos circuitos integrados. Coloque-os imediatamente nocircuito;

- Mantenha os circuitos integrados em suas embalagens protetoras (espumascondutoras). Não os deixe fora de suas embalagens.

Todas essas recomendações também valem para placas de circuito impresso(computadores, equipamentos, etc.).

2.14. Lógica MOS Complementar

A família lógica MOS Complementar (CMOS) utiliza MOSFETs tanto de canal-P quanto de canal-N. Isso torna o CMOS mais rápido e com menor consumo depotência em comparação com as outras famílias MOS. Em contrapartida, os circuitosintegrados CMOS têm maior grau de complexidade para a fabricação e menordensidade de integração (ocupam maior área de chip).

Page 43: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 43/236

Famílias Lógicas de Circuitos Integrados

43

2.14.1. Inversor CMOS

O circuito básico do INVERSOR CMOS é mostrado na Figura 2.20.

Figura 2.20: Inversor CMOS.

2.14.2. NAND CMOS e NOR CMOS

A

Figura 2.21 mostra o circuito básico das portas NAND CMOS e NOR CMOS.

Figura 2.21: Portas NAND CMOS e NOR CMOS.

Page 44: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 44/236

Famílias Lógicas de Circuitos Integrados

44

2.15. Características da Série CMOS

2.15.1. Série 4000/14000

A série 4000 e a série 14000 são equivalentes. Os circuitos integrados dessasduas séries têm um consumo muito baixo e podem operar de 3 a 15 V. São muitolentos quando comparados com TTL e possuem corrente de saída muito baixa.

2.15.2. Série 74C

Série CMOS compatível pino a pino e funcionalmente equivalente acomponentes TTL. Quanto à performance, a série 74C possui quase todas ascaracterísticas da série 4000.

2.15.3. 74HC/HCT (High Speed CMOS – CMOS de Alta Velocidade)

Versão aperfeiçoada da série 74C. Possui maior velocidade e maiorcapacidade de corrente. Componentes das séries 74HC e 74HCT são compatíveispino a pino com componentes da série TTL. A série 74HC não é eletricamentecompatível com TTL.

2.15.4. 74AC/ACT (CMOS Avançado)

Esta série apresenta uma melhoria no que se refere a imunidade a ruído,atraso de propagação e máxima frequência de clock. Não são compatíveis pino apino com TTL. A série 74AC não é compatível eletricamente com TTL.

2.15.5. 74AHC (Advanced High-Speed CMOS – CMOS Avançado de AltaVelocidade)

Esta é a mais recente série utilizada em aplicações de alta velocidade, baixo

consumo e baixa capacidade de acionamento.

2.15.6. Tensão de Alimentação

As séries 4000/14000 e 74C podem operar com VDD de 3 a 15 V. As séries74HC/HCT e 74AC/ACT podem operar com VDD de 2 a 6 V.

Page 45: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 45/236

Famílias Lógicas de Circuitos Integrados

45

2.15.7. Níveis de Tensão Lógicos

Tabela 2.3: Comparação entre os níveis de tensão TTL e CMOS.

Parâmetro

VIH(min) VIL(max) VOH(min) VOL(max) VNH VNL 4000B 3,5 1,5 4,95 0,05 1,45 1,45

74HC 3,5 1,0 4,9 0,1 1,4 0,9

74HCT 2,0 0,8 4,9 0,1 2,9 0,7

74AC 3,5 1,5 4,9 0,1 1,4 1,4

74ACT 2,0 0,8 4,9 0,1 2,9 0,7

74AHC 3,85 1,65 4,4 0,44 0,55 1,21

CMOS

74AHCT 2,0 0,8 3,15 0,1 1,15 0,7

74 2,0 0,8 2,4 0,4 0,4 0,474LS 2,0 0,8 2,7 0,5 0,7 0,3

74AS 2,0 0,8 2,7 0,5 0,7 0,3TTL

74ALS 2,0 0,8 2,7 0,4 0,7 0,4

Níveis de tensão (em volts) de entrada/saída com VDD = VCC = +5 V.

2.15.8. Margens de Ruído

De um modo geral, os dispositivos CMOS têm margens de ruído maior que osTTL (tabela anterior). As margens de ruído são calculadas a partir da fórmula:

VNH = VOH(min) - VIH(min)

VNL = VOL(max) - VIL(max)

2.15.9. Dissipação de Potência

Quando o circuito lógico CMOS está estático (não está comutando), sua

dissipação de potência é muito baixa. Para VDD = +5 V, a dissipação típica depotência DC é de 2,5 nW. Para VDD = +10 V, este valor aumenta para apenas 10nW.

2.15.10. Dissipação de Potência Aumenta com a Frequência

A dissipação de potência em um circuito lógico CMOS aumenta com afrequência de comutação de sua saída.

Page 46: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 46/236

Famílias Lógicas de Circuitos Integrados

46

Quando uma saída CMOS comuta de BAIXO para ALTO, uma correntetransiente deve ser fornecida para a capacitância de carga. Essa capacitânciacorresponde a todas as capacitâncias parasitas das entradas das portas lógicas quesão acionadas por esta saída.

Figura 2.22: Pulsos de corrente devido à capacitância parasita.

A Figura 2.22 mostra o efeito da capacitância de carga no momento datransição da saída de um circuito CMOS.

Outro fator é que durante as transições, por um curto período de tempo, osdois transistores de saída estarão conduzindo juntos. Esse efeito também contribuipara o aumento da dissipação de potência.

2.15.11. Fan-Out

O número de entradas CMOS que uma saída CMOS pode acionar é limitadopela capacitância de entrada. Quanto maior for o número de entradas CMOS, maioré a capacitância de carga vista pela saída CMOS e maior será o seu tempo decomutação. Para frequências menores que 1 MHz, o fan-out está limitado a 50.

2.15.12. Velocidade de Comutação

Os dispositivos CMOS têm maior velocidade de comutação em relação aos

circuitos N-MOS e P-MOS. Isso porque a saída CMOS tem resistência menor que assaídas N-MOS e P-MOS.

Uma porta NAND da série 4000 terá tipicamente um tpd de 50 ns com VDD = 5V, e 25 ns com VDD = 10 V.

Uma porta NAND da série 74HC/HCT tem um tpd médio em torno de 8 nsquando VDD = 5 V. Uma porta NAND 74AC/ACT tem um tpd médio em torno de 4,7ns. Uma porta NAND 74AHC tem um tpd médio em torno de 4,3 ns.

Page 47: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 47/236

Famílias Lógicas de Circuitos Integrados

47

2.15.13. Entradas Não-Utilizadas

Entradas CMOS nunca devem ficar desconectadas. Elas devem serconectadas a um nível lógico ou alguma outra entrada.

Uma entrada CMOS não conectada é susceptível a ruído e a eletricidade

estática, que poderiam polarizar os MOSFETs para um estado de condução,resultando no aumento de dissipação de potência e em possível superaquecimento.

2.15.14. Sensibilidade à Eletricidade Estática

A grande resistência das entradas CMOS as torna especialmente sensíveisao acúmulo de cargas estáticas, que podem produzir tensões suficientementegrandes para danificar os MOSFETs internos. A maioria dos circuitos integradosCMOS possui diodos de proteção, que limitam a tensão de entrada.

2.15.15. Comparação entre as Séries CMOS e TTL

Tabela 2.4: Comparação entre as séries TTL e CMOS.

Dissipação depotência por porta

(mW)

Estática 100 kHz

Atraso depropagação

(ns)

Velocidade-potência (a100 kHz)

(pJ)

Frequênciamáxima declock (MHz)

Margemde ruídono pior

caso (V)

4000B 1 x 10-3 0,1 50 5 12 1,5

74HC/HCT 2,5 x 10

-3

0,17 8 1,4 40 0,974AC/ACT 5,0 x 10-3 0,08 4,7 0,37 100 0,7

74AHC/T 9,0 x 10-5 6,0 x 10-3 3,7 0,02 130 0,55

74 10 10 9 90 35 0,4

74LS 2 2 9,5 19 45 0,3

74AS 8 8 1,7 13,6 200 0,3

74ALS 1,2 1,2 4 4,8 70 0,4

Todos os valores são para VDD = 5 V.

2.16. Tecnologia de Baixa Tensão

O aumento do número de componentes dentro dos circuitos integradosacarreta em um aumento de sua potência consumida e em problemas no materialisolante entre os seus componentes internos.

Page 48: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 48/236

Famílias Lógicas de Circuitos Integrados

48

Para solucionar estes problemas surgiram os circuitos integrados que utilizama tecnologia de baixa tensão, ou seja, a tensão é menor que os 5 V:

• Série 74LVC (Low-Voltage CMOS – CMOS de Baixa Tensão) – Utiliza lógicade 3,3 V mas pode aceitar níveis lógicos de 5 V em suas entradas.

• Série 74ALVC (Advanced Low-Voltage CMOS – CMOS de Baixa TensãoAvançado) – Oferece melhor performance e trabalha apenas com lógica de 3,3V.

• Série 74LV (Low-Voltage – Baixa Tensão) – Utiliza tecnologia CMOS masopera somente com dispositivos de 3,3 V.

• Série 74LVT (Low-Voltage BiCMOS Technology – Tecnologia BiCMOS deBaixa Tensão) – Oferece as mesmas características da série 74LVC (asentradas aceitam níveis lógicos de 5 V) e são eletricamente compatíveis comTTL.

Tabela 2.5: Comparação entre CMOS de baixa tensão.

LVC ALVC LV LVT

Vcc (recomendado) 2,0 a 3,6 2,3 a 3,6 2,7 a 3,6 2,7 a 3,6

tPD (ns) 6,5 3 18 4

Intervalo para VIH (V) 2,0 a 6,5 2,0 a 4,6 2,0 a Vcc + 0,5 2,0 a 7

VIL (max) (V) 0,8 0,8 0,8 0,8

IOH (mA) 24 12 6 32

IOL (mA) 24 12 6 64

2.17. Saídas CMOS de Dreno Aberto e Tristate

Saídas CMOS convencionais nunca devem ser conectadas juntas. Quando assaídas CMOS convencionais são colocadas em curto, o valor da tensão no terminalde saída comum será de aproximadamente Vcc / 2 se as saídas estiverem em níveisdiferentes.

2.17.1. Saídas em Dreno Aberto

Dispositivos com dreno aberto são os correspondentes CMOS às saídas emcoletor aberto TTL.

Page 49: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 49/236

Famílias Lógicas de Circuitos Integrados

49

2.17.2. Saídas Tristate

Dispositivos com saídas tristate têm operação similar à das saídas tristateTTL.

Figura 2.23: Portas CMOS com dreno aberto em conexão wire-AND e saídas CMOStristate conectadas em um barramento.

2.18. Interfaceamento de Circuitos Integrados

Quando utilizamos circuitos integrados de diferentes tecnologias quasesempre necessitamos de um circuito de interface. O circuito de interface estáconectado entre a saída do circuito acionador e a entrada do circuito de carga. Suafunção é condicionar o sinal vindo do acionador e condicioná-lo de modo a torná-locompatível com os requisitos da carga.

Page 50: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 50/236

Famílias Lógicas de Circuitos Integrados

50

Tabela 2.6: Níveis de tensão e corrente de portas TTL e CMOS.

Parâmetros

VIH

(min)

VIL

(max) VOH

(min) VOL

(max) IIH

(max) IIL

(max) IOH

(max) IOL

(max)

4000B 3,5 V 1,5 V 4,95 V 0,05 V 1 µA 1 µA 0,4 mA 0,4 mA

74HC 3,5 V 1,0 V 4,9 V 0,1 V 1 µA 1 µA 4 mA 4 mA

74HCT 2,0 V 0,8 V 4,9 V 0,1 V 1 µA 1 µA 4 mA 4 mA

74AC 3,5 V 1,5 V 4,9 V 0,1 V 1 µA 1 µA 24 mA 24 mA

74ACT 2,0 V 0,8 V 4,9 V 0,1 V 1 µA 1 µA 24 mA 24 mA

74AHC 3,85 V 1,65 V 4,4 V 0,44 V 1 µA 1 µA 8 mA 8 mA

CMOS

74AHCT 2,0 V 0,8 V 3,15 V 0,1 V 1 µA 1 µA 8 mA 8 mA

74 2,0 V 0,8 V 2,4 V 0,4 V 40 µA 1,6 mA 0,4 mA 16 mA

74LS 2,0 V 0,8 V 2,7 V 0,5 V 20 µA 0,4 mA 0,4 mA 8 mA

74AS 2,0 V 0,8 V 2,7 V 0,5 V 20 µA 0,5 mA 2 mA 20 mA74ALS 2,0 V 0,8 V 2,7 V 0,4 V 20 µA 0,1 mA 0,4 mA 8 mA

TTL

74F 2,0 V 0,8 V 2,5 V 0,5 V 20 µA 0,6 mA 1 mA 20 mA

Níveis de tensão e corrente de entrada/saída com VDD = VCC = +5 V.

2.19. TTL Acionando CMOS

Quando interfaceamos diferentes tipos de circuitos integrados, devemosverificar se o dispositivo acionador pode satisfazer os parâmetros de corrente etensão do dispositivo de carga.

No caso de um TTL acionar uma carga CMOS, a corrente de saída TTL écapaz de satisfazer o requisito de entrada da entrada CMOS. Com relação à tensão,os parâmetros VOH(min) de todas as séries TTL são muito baixos quandocomparados com VIH(min) das séries 4000B, 74HC, 74AC e 74AHC.

A solução é aumentar a tensão VOH(min) do acionador TTL. Isso é feitoatravés de um resistor de pull-up.

Page 51: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 51/236

Famílias Lógicas de Circuitos Integrados

51

Figura 2.24: O resistor de pull-up externo aumenta a tensão de saída paraaproximadamente 5 V no estado ALTO.

2.19.1. TTL Acionando CMOS com Tensão de Alimentação Alta

Os circuitos integrados TTL não podem operar com tensões maiores do que 5V. Quando o dispositivo CMOS estiver operando com alimentação maior de 5 V, oresistor de pull-up talvez não possa ser utilizado.

A solução é utilizar um buffer coletor aberto (7407), conforme a Figura 2.25.

Figura 2.25: O buffer 7407 é usado para interfacear dispositivos TTL que acionamcargas CMOS com alimentação maior do que 5 V.

2.20. CMOS Acionando TTL

2.20.1. CMOS Acionando TTL no Estado ALTO

As saídas CMOS podem fornecer tensão suficiente (VOH) para satisfazer osrequisitos de uma entrada TTL no estado ALTO (VIH). As saídas CMOS tambémpodem fornecer corrente suficiente para satisfazer os requisitos de corrente deentrada (IIH).

Page 52: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 52/236

Famílias Lógicas de Circuitos Integrados

52

2.20.2. CMOS Acionando TTL no Estado BAIXO

Nesta situação, as séries 74HC e 74HCT podem acionar apenas uma cargaTTL. A série 4000B não consegue acionar nenhuma carga TTL.

A solução é utilizar um buffer tristate (74LS125). Este circuito de interface

possui corrente de entrada baixa e corrente alta de saída.

Figura 2.26: Um buffer é usado para interfacear componentes CMOS de baixacapacidade de corrente com entradas 74LS.

2.20.3. CMOS com Tensão de Alimentação Alta Acionando TTL

Neste caso é necessário utilizar um circuito de interface que possa converteruma entrada de alta tensão para uma saída de 5 V. Um buffer (4050B) é utilizadopara essa interface.

Figura 2.27: Um buffer 4050 pode ser usado como um conversor de nível entre umcomponente TTL e um outro CMOS com alimentação de valor mais alto.

Page 53: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 53/236

Dispositivos de Lógica Programável

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 53

3. Dispositivos de Lógica Programável (PLD)

3.1. Introdução

A grande maioria dos circuitos lógicos utilizados é padronizada e possuidiversas funções lógicas. Esses circuitos também são fabricados por váriasindústrias com um custo muito baixo. Por essas razões esses circuitos integradossão usados em uma grande quantidade de circuitos e sistemas.

Entretanto, existem problemas com circuitos que utilizam circuitos integradospadronizados. Alguns sistemas podem necessitar de centenas ou milhares decircuitos integrados. Essa quantidade enorme de componentes necessita de umespaço considerável em uma placa e uma grande quantidade de tempo para soldarou testar esses circuitos integrados.

Reduzindo o número de circuitos integrados na placa podemos ter:- menor espaço em placa: com placa menores os gabinetes seriam menores

também;

- menor consumo de potência;

- processos de fabricação mais rápidos e baratos;

- maior confiabilidade: existem menos circuitos integrados e menos conexõessujeitas a falhas;

- facilidade de manutenção.

Os dispositivos de lógica programável (PLDs) têm todas estas característicaspermitindo assim substituir um grande número de circuitos integrados padronizadospor um único componente.

Um PLD é um circuito integrado que contém um grande número de portaslógicas, flip-flops e registradores que são interconectados no chip. A “programação”do componente pode ser feita queimando-se, ou não, fusíveis que constituem asligações internas entre os blocos lógicos de acordo com a necessidade do usuário.

Page 54: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 54/236

Dispositivos de Lógica Programável

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 54

3.2. Conceito Básico

A Figura 3.1 mostra a idéia básica utilizada pelos PLDs.

Figura 3.1: Exemplo de um dispositivo de lógica programável.

Cada entrada (A e B) é aplicada em um buffer inversor e um não inversor queseguem para as portas AND. As saídas das portas AND são levadas às entradas deportas OR por meio de fusíveis, que podem gerar qualquer combinação com asentradas. Para se obter, por exemplo, a expressão abaixo é só queimarmos osfusíveis 1 e 4 da porta OR 1.

BABAO1 +=

Page 55: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 55/236

Dispositivos de Lógica Programável

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 55

3.3. Simbologia

A simbologia de um PLD é mostrada na Figura 3.2.

Figura 3.2: Simbologia usada em PLDs.

3.4. Arquitetura de um PLD

- PROM – A PROM é constituída conforme a Figura 3.3:

Figura 3.3: Arquitetura de uma PROM.

A PROM pode gerar qualquer função lógica possível das variáveis de entrada.

Page 56: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 56/236

Dispositivos de Lógica Programável

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 56

- Arranjo de Lógica Programável (PAL) – A PAL pode ser vista conforme aFigura 3.4.

Figura 3.4: Arquitetura típica de uma PAL.

A PAL é utilizada em aplicações onde não se necessita que todas as

combinações sejam programadas. No caso da figura anterior, cada saída estáconectada a apenas quatro saídas das portas AND.

3.4.1. Fusível de Polaridade

O fusível de polaridade é um recurso usado em muitos PLDs para inverterqualquer saída do dispositivo. Isso é mostrado na Figura 3.5.

Page 57: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 57/236

Dispositivos de Lógica Programável

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 57

Figura 3.5: Uso do fusível de polaridade para inversão da saída.

3.5. Outros Recursos Disponíveis

Em circuitos de PLDs ainda podemos encontrar diversos recursos. Essesrecursos seriam: flip-flops, latches, registradores de entrada e registradores desaída.

3.6. Outros Tipos de PLDs

FPLA (Field Programmable Logic Array) – O arranjo de lógica programável usavauma matriz AND e uma matriz OR, ambas programáveis. Embora a FPLA seja maisflexível do que a PAL, ela não foi bem aceita pelos projetistas.

CPLDs (PLDs Complexos) – são dispositivos que combinam vários circuitos PAL

em um mesmo chip.

FPGAs (Field Programmable Gate Arrays) – Os arranjos de portas programáveisem campo oferecem um número de blocos lógicos configuráveis que contém lógicacombinacional programável e registradores para circuitos sequenciais. Possuemblocos de entrada/saída que podem ser configurados como entradas, saídas ebidirecionais.

Page 58: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 58/236

Dispositivos de Lógica Programável

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 58

3.7. Programação

Quando os PLDs apareceram, a programação deles era feita queimando-seou não os fusíveis para se gerar o circuito lógico. Atualmente, existem softwares quegeram o mapa das conexões internas dos PLDs e ainda testam a lógica do circuito.

Existem também programadores universais onde o PLD é colocado e pode serprogramado a partir de um software.

3.8. PLDs Programáveis

A programação de um PLD é feita queimando-se um fusível. Uma vezqueimado o fusível, ele não pode ser recuperado. Tendo em vista esta dificuldade,desenvolveu-se, então, um tipo de PLD apagável e reprogramável (usando a mesmatecnologia das EEPROMs), que são bastante utilizados em desenvolvimento deprotótipos de circuitos digitais.

Page 59: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 59/236

Flip-Flops

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 59

4. Flip-Flops

4.1. Introdução

Os circuitos combinacionais são aqueles onde as saídas dependem apenasdos níveis lógicos colocados nas entradas. A mesma combinação de entradasempre produzirá o mesmo resultado na saída, porque circuitos combinacionais nãopossuem memória.

A maioria dos sistemas digitais é composta tanto por circuitos combinacionaiscomo de elementos de memória. O elemento de memória mais importante é o flip-flop.

4.2. Flip-Flop R-S (Reset – Set)

O circuito básico do flip-flop R-S é mostrado na Figura 4.1.

Figura 4.1: Circuito lógico do flip-flop R-S.

O circuito acima mostra que o estado futuro das saídas Q e Q dependem R eS e também do estado atual dessas saídas. Isso é mostrado na Tabela 4.1.

Page 60: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 60/236

Flip-Flops

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 60

Tabela 4.1: Tabela verdade do flip-flop SR.

Caso S R Qatual Qfuturo futuroQ

0 0 0 0 0 1

1 0 0 1 1 0

2 0 1 0 0 13 0 1 1 0 1

4 1 0 0 1 0

5 1 0 1 1 0

6 1 1 0 1 1

7 1 1 1 1 1

Nos casos 0 e 1, com S = 0 e R = 0, as saídas Q e Q permaneceram

inalteradas (memória). Nos casos 2 e 3, com S = 0 e R = 1, a saída Q foi para 0 e Q foi para 1. Nos casos 4 e 5, com S = 1 e R = 0, a saída Q foi para 1 e Q foi para 0.Nos casos 6 e 7, com S = 1 e R = 1, as saídas Q e Q foram para 1, ocasionando umproblema, já que as saídas Q e Q devem ser complementares.

Uma tabela simplificada e o símbolo do flip-flop R-S são mostrados na Figura4.2.

Figura 4.2: Tabela verdade e simbologia do flip-flop R-S.

O circuito do flip-flop R-S também pode ser implementado usando portasNOR.

4.3. Flip-Flops com Clock

Circuitos que utilizam clock são chamados de circuitos síncronos. Muitos flip-flops utilizam um sinal de clock para determinar o momento em que suas saídasmudarão de estado. O sinal de clock é comum para todas as partes do circuito.

Normalmente, o sinal de clock é uma onda quadrada e durante uma transiçãopositiva (nível 0 para nível 1) ou transição negativa (nível 1 para nível 0) a saídapoderá mudar de estado.

Page 61: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 61/236

Flip-Flops

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 61

Figura 4.3: Simbologia de flip-flops com clock na transição de subida e descida.

4.3.1. Tempos de Setup e Hold

Os tempos de setup e hold são parâmetros que devem ser observados paraque o flip-flop possa trabalhar de modo confiável. O tempo de setup, tS, correspondeao intervalo no qual as entradas devem permanecer estáveis antes da transição doclock. O tempo de hold, tH, corresponde ao intervalo no qual as entradas devempermanecer estáveis depois da transição do clock.

Os tempos de setup e hold mínimos devem ser respeitados para ofuncionamento confiável do flip-flop.

Figura 4.4: Tempos de setup e hold.

4.4. Flip-Flop R-S com Clock

O símbolo do flip-flop R-S com clock é mostrado na Figura 4.5.

Page 62: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 62/236

Flip-Flops

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 62

Figura 4.5: Flip-flop R-S com clock.

O circuito interno é mostrado na Figura 4.6.

Figura 4.6: Circuito lógico interno do flip-flop R-S com clock.

O detector de transição é um circuito que habilitará, por alguns instantes, asentradas SET e RESET, durante a transição de CLOCK. O circuito típico de umdetector de transição é mostrado na Figura 4.7.

Figura 4.7: Circuitos detectores de transição positiva e negativa.

Os tempos dos pulsos de CLK* correspondem aos tempos de atraso da portaNOT, em torno de 5 ns.

Page 63: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 63/236

Flip-Flops

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 63

4.5. Flip-Flop J-K

O símbolo do flip-flop J-K é mostrado na Figura 4.8.

Figura 4.8: Flip-flop J-K.

A operação do flip-flop J-K é semelhante à do flip-flop R-S. A diferença é queo flip-flop J-K não possui a condição proibida, ou seja, J = K = 1. Nessa situação, asaída será complementada (valor anterior será invertido).

O circuito interno do flip-flop J-K é mostrado na Figura 4.9.

Figura 4.9: Circuito lógico interno do flip-flop J-K.

4.6. Flip-Flop D

O símbolo do flip-flop D é mostrado na Figura 4.10:

Figura 4.10: Flip-flop D.

O circuito interno do flip-flop D é mostrado na Figura 4.11.

Page 64: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 64/236

Flip-Flops

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 64

Figura 4.11: Circuito lógico interno do flip-flop D.

4.7. Latch D

O símbolo lógico do latch D é mostrado naFigura 4.12. Diferentemente do flip-flop D, o latch D possui uma entrada EN. Quandoesta entrada estiver habilitada, a saída é a cópia da entrada. Se ela estiverdesabilitada, a saída não mudará.

Figura 4.12: Latch D.

O circuito interno é mostrado na Figura 4.13.

Figura 4.13: Circuito interno do latch D.

4.8. Entradas Assíncronas

Todas as entradas dos flip-flops até agora vistos dependem do sinal de clock.Estas entradas são chamadas entradas síncronas. Em muitos flip-flops existemoutras entradas que são chamadas entradas assíncronas, ou seja, não dependemdo sinal de clock para atuarem.

Page 65: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 65/236

Flip-Flops

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 65

Essas entradas são usadas para colocar o flip-flop no estado “0” ou “1”, aqualquer instante. A Tabela 4.2 mostra as entradas assíncronas.

Tabela 4.2: Operação das entradas assíncronas.

PRESET CLEAR Resposta do Flip-Flop

1 1 Operação normal

0 1 Q = 1

1 0 Q = 0

0 0 Não usada

Para a operação normal do flip-flop, as entradas PRESET e CLEAR devemestar em “1”. A qualquer momento podemos forçar a saída Q a ser “0” ou “1”. Aúltima combinação não pode ser usada, já que é contraditória.

A Figura 4.14 mostra as entradas assíncronas de um flip-flop J-K.

Figura 4.14: Simbologia do flip-flop J-K com as entradas assíncronas.

4.9. Características de Temporizações dos Flip-Flops

As seguintes características de tempo devem ser respeitadas para ofuncionamento correto dos flip-flops.

- Tempos de Setup e Hold – Correspondem aos intervalos de tempo que aentrada deve permanecer estável antes e depois da transição do clock.

- Atrasos de Propagação – Na mudança de estado da saída, sempre haveráum atraso entre a aplicação de um sinal na entrada e o momento que a saídamuda.

Page 66: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 66/236

Flip-Flops

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 66

Figura 4.15: Atrasos de propagação.

- Frequência Máxima de Clock, fMAX – Esta é a frequência mais alta que podeser aplicada no flip-flop de modo a dispará-lo confiavelmente.

- Tempos de Duração do Clock em ALTO e BAIXO – O tempo de duração doclock em nível ALTO, tw(H) e o tempo de duração em nível BAIXO, tw(L) sãomostrados na Figura 4.16.

Figura 4.16: Tempos de duração de clock em ALTO e BAIXO.

- Largura dos Pulsos Assíncronos – Assim como foram definidos largurasmínimas de pulsos para o clock, as entradas assíncronas PRESET e CLEARtambém possuem larguras mínimas de pulsos para uma operação correta.

Figura 4.17: Larguras mínimas de pulsos assíncronos.

- Tempos de Transição do Clock – Para garantir o funcionamento correto doflip-flop, o tempo transição do clock deve ser o menor possível. Para dispositivosTTL esse tempo é ≤ 50 ns e para dispositivos CMOS, ≤ 200 ns.

Page 67: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 67/236

Flip-Flops

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 67

4.10. Circuitos Integrados de Flip-Flops

Alguns circuitos integrados de flip-flops são mostrados abaixo:

- 7474 – Duplo flip-flop D disparado por borda (TTL);

-

74LS112 – Duplo flip-flop J-K disparado pela borda (TTL);- 74C74 – Duplo flip-flop D disparado pela borda (CMOS);

- 74HC112 – Duplo flip-flop J-K disparado pela borda (CMOS).

Tabela 4.3: Comparação de parâmetros de temporização de CIs TTL e CMOS.

TTL CMOSParâmetro de Temporização

7474 74LS112 74C74 74HC112

tS (ns) 20 20 60 25

tH (ns) 5 0 0 0

tPHL (ns) de CLK para Q 40 24 200 31tPLH (ns) de CLK para Q 25 16 200 31

tPHL (ns) de CLR para Q 40 24 225 41

tPLH (ns) de PRE para Q 25 16 255 41

tW(L) (ns) tempo em BAIXO para CLK 37 15 100 25

tW(H) (ns) tempo em ALTO para CLK 30 20 100 25

tW(L) (ns) para CLR ou PRE 30 15 60 25

fMAX (MHz) 15 30 5 20

4.11. Problemas de Temporização em Flip-Flops

Um problema de temporização que poderá ocorrer em sistemas que utilizamflip-flops é mostrado na Figura 4.18.

Page 68: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 68/236

Flip-Flops

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 68

Figura 4.18: Problemas de temporização em flip-flops.

Como o clock é o mesmo para os dois flip-flops, para que o circuito funcioneadequadamente, o tempo de hold de Q2, tH, deve ser menor que o atraso depropagação de Q1.

4.12. Flip-Flops Mestre/Escravo

Antes do desenvolvimento de flip-flops com tempo de hold muito pequeno, osproblemas de temporização vistos anteriormente eram solucionados utilizando-seflip-flops mestre/escravo.

Os flip-flops mestre/escravo são constituídos de dois flip-flops, um disparadona transição de subida do clock (mestre) e o outro na descida do clock (escravo). Naborda de subida do clock, os níveis presentes nas entradas do flip-flop determinam asaída do mestre. Na borda de descida do clock os níveis das saídas do mestre sãopassados para o escravo, ou para a saída do flip-flop.

4.13. Dispositivos Schmitt-Trigger

A principal característica de um circuito Schmitt-Trigger é mostrada na Figura4.19.

Page 69: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 69/236

Flip-Flops

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 69

Figura 4.19: Comparação entre um inversor comum e um inversor Schmitt-Trigger.

A Figura 4.19 mostra um inversor comum sendo acionado por um sinal comtempo de transição longo. Em circuitos comuns, a saída pode oscilar à medida que o

sinal de entrada passa pela faixa de transição.Ainda na Figura 4.19, vemos que em um circuito com entrada Schmitt-Trigger

a saída não produzirá oscilações. Esse circuito funciona da seguinte forma: aentrada está em nível BAIXO resultando nível ALTO na saída. A saída só irá paranível BAIXO quando a entrada ultrapassar o valor VT+ (tensão de limiar superior).Nessas condições, se quisermos que a saída volte a ser ALTO, devemos aplicaruma tensão de entrada menor do que VT- (tensão de limiar inferior).

Dispositivos Schmitt-Trigger são especialmente usados em circuitos onde ossinais de entrada variam lentamente (ondas senoidais, sinais de sensores, etc). Asespecificações de VT+ e VT- dependem do tipo de componente, mas VT- é sempremenor do que VT+.

4.14. Circuitos Geradores de Clock

A maioria dos sistemas digitais utiliza algum circuito gerador de clock. Dentreessas aplicações podemos ter algumas que utilizam um sinal de clock sem aexigência de precisão. Outras, porém, a precisão é fundamental.

Existem vários tipos de osciladores que podem gerar pulsos de clock parasistemas digitais. Os menos precisos e menos estáveis (dependendo da aplicação)

utilizam resistores e capacitores. Os mais precisos e estáveis utilizam cristais dequartzo e com frequências muito maiores do que os circuitos que utilizam resistorese capacitores como geradores de clock.

Page 70: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 70/236

Flip-Flops

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 70

4.14.1. Oscilador Schmitt-Trigger

Um típico gerador de clock usando dispositivos Schmitt-Trigger é mostrado naFigura 4.20.

Figura 4.20: Circuito de um oscilador utilizando inversor Schmitt-Trigger.

4.14.2. Temporizador 555 como Oscilador

O circuito integrado 555 também pode ser usado como gerador de clock. AFigura 4.21 mostra isso.

Figura 4.21: Circuito de um oscilador utilizando o temporizador 555.

Page 71: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 71/236

Flip-Flops

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 71

4.14.3. Osciladores a Cristal de Quartzo

A principal característica dos osciladores a cristal de quartzo é suaestabilidade e precisão quanto à frequência de oscilação. A figura seguinte mostracircuitos osciladores que utilizam cristais de quartzo.

Figura 4.22: Circuitos de osciladores a cristal.

Page 72: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 72/236

Contadores

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 72

5. Contadores

5.1. Introdução

Os flip-flops têm funções ilimitadas em sistemas digitais. Podemos associá-lose utilizá-los como contadores, registradores e muitos outros circuitos.

Os contadores podem ser assíncronos ou síncronos. Basicamente, a principaldiferença entre eles é que o contador síncrono utiliza um sinal de clock comum atodos os flip-flops e o contador assíncrono possui um sinal de clock que é divididoaté o último flip-flop.

Os registradores também são arranjos de flip-flops, mas com o objetivo dearmazenar, manipular e transferir dados entre outros registradores ou circuitos.

5.2. Contadores Assíncronos

Os contadores assíncronos também são chamados de contadores porpulsação (ripple counter). Um circuito típico de um contador assíncrono é mostradona Figura 5.1.

Figura 5.1: Contador assíncrono utilizando flip-flops J-K.

Page 73: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 73/236

Contadores

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 73

Tabela 5.1: Estados das saídas do contador assíncrono módulo 16.

Estado D C B A Decimal

0 0 0 0 0 0

1 0 0 0 1 1

2 0 0 1 0 23 0 0 1 1 3

4 0 1 0 0 4

5 0 1 0 1 5

6 0 1 1 0 6

7 0 1 1 1 7

8 1 0 0 0 8

9 1 0 0 1 9

10 1 0 1 0 1011 1 0 1 1 11

12 1 1 0 0 12

13 1 1 0 1 13

14 1 1 1 0 14

15 1 1 1 1 15

Reinicia a contagem → 16 0 0 0 0 0

17 0 0 0 1 1

18 0 0 1 0 2

A Tabela 5.1 mostra os estados de contagem deste contador assíncrono dequatro bits. Podemos perceber que a cada 16 estados esse contador reinicia suacontagem. Então ele é um contador assíncrono módulo 16, ou seja, tem 16 estados(0000 até 1111) distintos. Equacionando:

N2Módulo =

Onde N é o número de flip-flops conectados (número de bits).

Nos contadores assíncronos, a frequência do clock é dividida por 2 em cadaflip-flop, ou seja: na saída A teremos Clock / 2, na saída B teremos Clock / 4, nasaída C teremos Clock / 8 e na saída D teremos Clock / 16. Concluindo, oscontadores assíncronos são divisores de frequência e no último flip-flop teremos afrequência de clock dividida pelo módulo desse contador.

Page 74: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 74/236

Contadores

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 74

5.3. Contadores de Módulo < 2N

Um contador assíncrono com N flip-flops terá, no máximo, módulo 2N. Seprecisarmos de um contador com módulo menor do que 2N será necessário utilizarum circuito adicional, conforme mostrado na Figura 5.2.

Figura 5.2: Contador assíncrono com módulo < 2N.

A Figura 5.2 mostra um contador módulo 6. Se não houvesse a porta NANDligada nas entradas CLEAR dos flip-flops, o módulo seria 8. A sequência decontagem é mostrada na Tabela 5.2.

Page 75: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 75/236

Contadores

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 75

Tabela 5.2: Estados das saídas do contador assíncrono módulo 6.

Estado C B A Decimal

0 0 0 0 0

1 0 0 1 1

2 0 1 0 23 0 1 1 3

4 1 0 0 4

5 1 0 1 5

6 1 1 0 6

7 0 0 0 0Estado temporário →

(necessário apenas parareiniciar a contagem) 8 0 0 1 1

5.4. Diagrama de Transição de Estados

O diagrama de transição de estados é mostrado na Figura 5.3.

Figura 5.3: Diagrama de transição de estados de um contador módulo 6.

Neste diagrama as linhas contínuas correspondem aos estados estáveis e aslinhas tracejadas indicam o estado temporário.

O procedimento para a construção de um contador módulo X é:

- Determinar o menor número de flip-flops tal que 2N ≤ X. Se 2N = X, não énecessário conectar a porta NAND na entrada assíncrona CLEAR;

- Conectar a porta NAND nas entradas assíncronas CLEAR de todos os flip-flops;

- Determinar quais saídas estarão em ALTO na contagem X. Então é sóconectar essas saídas nas entradas da porta NAND.

Page 76: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 76/236

Contadores

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 76

5.5. Contadores de Década

Contadores de década, ou decádicos, são contadores que possuem 10estados distintos, não importando a sequência. Quando um contador decádico contaem sequência de 0000 a 1001 (0 a 9), ele é chamado de contador BCD.

5.6. Circuitos Integrados de Contadores Assíncronos

Existem vários circuitos integrados de contadores assíncronos, tanto TTLcomo CMOS. O circuito integrado TTL 74LS293 é um contador com quatro flip-flopsJ-K. Vários circuitos TTL têm suas versões CMOS. O circuito integrado CMOS74HC4024 é um contador com sete flip-flops que não possui correspondente TTL.

5.7. Contador Assíncrono Decrescente

Os contadores que contam progressivamente a partir do zero sãodenominados contadores crescentes. Já os contadores decrescentes contam dovalor máximo até zero. Um contador decrescente pode ser construído conformemostrado na Figura 5.4.

Figura 5.4: Contador assíncrono decrescente.

Nesse circuito vemos que o clock de cada flip-flop é acionado com a saídainvertida do flip-flop anterior. Com isso a saída é invertida, ou seja, conforme aTabela 5.3.

Page 77: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 77/236

Contadores

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 77

Tabela 5.3: Estado das saídas de um contador decrescente.

Estado C B A Decimal

0 0 0 0 0

1 1 1 1 7

2 1 1 0 63 1 0 1 5

4 1 0 0 4

5 0 1 1 3

6 0 1 0 2

7 0 0 1 1

8 0 0 0 0

9 1 1 1 7

O diagrama de transição de estados do contador decrescente módulo 8 émostrado na Figura 5.5.

Figura 5.5: Diagrama de transição de estados do contador decrescente módulo 8.

5.8. Atrasos de Propagação de Contadores Assíncronos

Cada flip-flop de um contador assíncrono é disparado pela saída de um flip-flop anterior. Essa característica traz uma desvantagem: o tempo de atraso depropagação. Isso pode ser visto na Figura 5.6.

Page 78: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 78/236

Contadores

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 78

Figura 5.6: Atrasos de propagação em contadores assíncronos.

Ao passar por um flip-flop, o sinal de clock sofre um atraso de propagação tPD

e esse efeito é somado até o último flip-flop, gerando um atraso total de N x t PD,onde N é o número de flip-flops.

Para que um contador assíncrono funcione de modo confiável é necessárioque o atraso total de propagação seja menor que o período de clock usado, ou seja:

PDclocktxN T ≥

Ou ainda, em termos de frequência máxima:

PDtxN1

maxf =

5.9. Contadores Síncronos

Como vimos, o atraso de propagação dos flip-flops dos contadoresassíncronos limitam a frequência máxima de trabalho destes componentes. Esseproblema pode ser resolvido se os flip-flops mudassem de estado suas saídas nomomento em que houvesse a transição de clock. Essa configuração pode ser vistana Figura 5.7.

Page 79: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 79/236

Contadores

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 79

Figura 5.7: Contador síncrono módulo 16.

Tabela 5.4: Relação entre as representações numéricas.

Estado D C B A Decimal

0 0 0 0 0 0

1 0 0 0 1 1

2 0 0 1 0 2

3 0 0 1 1 3

4 0 1 0 0 4

5 0 1 0 1 5

6 0 1 1 0 6

7 0 1 1 1 7

8 1 0 0 0 8

9 1 0 0 1 9

10 1 0 1 0 10

11 1 0 1 1 11

12 1 1 0 0 12

13 1 1 0 1 13

14 1 1 1 0 14

15 1 1 1 1 15

Reinicia a contagem → 16 0 0 0 0 0

Na Figura 5.7, o sinal de clock é comum a todos os flip-flops. Com isso, oatraso de propagação será o atraso de um flip-flop somado com o atraso da portaAND.

(AND)PDtflop)(flipPDt totalatraso +−=

Page 80: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 80/236

Contadores

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 80

Ainda analisando a Figura 5.7 vemos que o contador síncrono é maiscomplexo do que o contador assíncrono. Entretanto, com um atraso de propagaçãomenor, ele pode trabalhar com frequências maiores.

5.10. Circuitos Integrados de Contadores Síncronos

Podemos encontrar diversos circuitos integrados no mercado, tanto da famíliaTTL como CMOS. Dentre eles estão:

- 74LS160 / 162, 74HC160 / 162 – contadores síncronos decádicos;

- 74LS161 / 163, 74HC161 / 163 – contadores síncronos módulo 16.

5.11. Contadores Síncronos Decrescentes

Do mesmo modo que os contadores assíncronos, os contadores síncronospodem contar decrescentemente. Para isso devemos conectar as saídas A , B e Cem vez das saídas A, B e C.

5.12. Contadores com Carga Paralela

Contadores síncronos podem contar a partir de um valor pré-determinadopelo usuário. Isso é conhecido como carga paralela. A Figura 5.8 mostra um flip-flopcom circuito carga de inicialização.

Figura 5.8: Contador com carga paralela.

Quando LOAD é BAIXO, o flip-flop funcionará normalmente. Quando LOAD éALTO, o valor de D é colocado na saída do flip-flop usando as entradas assíncronas(não depende do clock).

Se fizermos isso para cada flip-flop do contador poderemos pré-determinar ovalor inicial a ser incrementado. Um exemplo prático de um contador síncronocrescente/decrescente de módulo 16 com carga paralela é o 74LS193/74HC193.

Page 81: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 81/236

Contadores

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 81

5.13. Contadores BCD

Contadores BCD são bastante usados em circuitos onde pulsos devem sercontados e mostrados num display, por exemplo. A Figura 5.9 mostra um arranjo decontadores BCD com contagem de 000 a 999.

Figura 5.9: Contador BCD com contagem de 000 a 999.

Inicialmente todos os contadores estão em 0 e, no display, é mostrado 000. Acada borda de descida do sinal de clock, o contador de unidades é incrementado e ovalor é mostrado no display. Quando o valor é 009 (1001), o próximo pulso fará comque o contador BCD de unidades vá a 0.

Nesse momento também ocorrerá uma transição de 1 para 0 (borda de descida) da

saída D que está ligada ao clock do contador BCD de dezenas. E agora o displaymostrará o valor 010.

Isso continua até 999 quando, no próximo pulso, os contadores irão para 000,iniciando novamente a contagem.

5.14. Projeto de Contadores Síncronos

A Figura 5.10 mostra um diagrama genérico de um contador síncrono.

Page 82: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 82/236

Contadores

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 82

Figura 5.10: Diagrama genérico de um contador síncrono.

O circuito lógico de estado futuro define qual o próximo estado do contadoratravés do estado atual. Dessa maneira podemos implementar contadores comqualquer sequência de contagem.

Apesar usarmos flip-flops J-K em nossos projetos de contadores síncronos,nada nos impede de usarmos flip-flops D, como na Figura 5.10.

5.15. O Flip-Flop J-K

A Tabela 5.5 mostra o funcionamento do flip-flop J-K.

Tabela 5.5: Tabela verdade do flip-flop JK.

J K Qatual Qfuturo

0 0 0 0

0 0 1 10 1 0 0

0 1 1 0

1 0 0 1

1 0 1 1

1 1 0 1

1 1 1 0

Page 83: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 83/236

Contadores

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 83

A Tabela 5.5 relaciona as entradas J e K e a saída Qatual de modo a gerar umQfuturo. Na verdade, na construção de contadores síncronos, nós já sabemos Qatual eQfuturo (valores da contagem), mas precisamos saber quais são os valores dasentradas J e K que gerarão Qfuturo, conforme mostra a Tabela 5.6.

Tabela 5.6: Combinação das entradas J e K para a geração de Qatual e Qfuturo.Qatual Qfuturo J K

0 0 0 x

0 1 1 x

1 0 x 1

1 1 x 0

Onde x = irrelevante.

A Tabela 5.6 relaciona os estados atual e futuro da saída Q com relação àsentradas J e K.

5.16. Procedimento para Construção de Contadores Síncronos

Projetaremos um contador síncrono usando a sequência de contagem daTabela 5.7.

Tabela 5.7: Sequência de contagem para o projeto de um contador síncrono.

C B A0 0 0

0 0 1

0 1 0

0 1 1

1 0 0

0 0 0

Os passos são os seguintes:- Definir o número de flip-flops (bits) do contador e a sequência de contagem;

- Mostrar o diagrama de transição de estados indicando todos os estadospossíveis, incluindo os estados que não fazem parte da sequência. O diagrama émostrado na Figura 5.11.

Page 84: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 84/236

Contadores

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 84

Figura 5.11: Diagrama de transição de estados.

A Figura 5.12 mostra o circuito de geração do estado futuro a ser projetado.Podemos notar que as saídas A, B e C, na verdade, são as entradas desse circuito eque as entradas J e K são as saídas.

Figura 5.12: Diagrama do contador a ser projetado.

- Gerar a tabela de transição de estados (estados atual e futuro):

Page 85: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 85/236

Contadores

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 85

Tabela 5.8: Tabela de transição de estados atual e futuro.

Atual Futuro

C B A C B AJC KC JB KB JA KA

0 0 0 0 0 1 0 x 0 X 1 x

0 0 1 0 1 0 0 x 1 X x 10 1 0 0 1 1 0 x x 0 1 x

0 1 1 1 0 0 1 x x 1 x 1

1 0 0 0 0 0 x 1 0 X 0 x

1 0 1 0 0 0 x 1 0 X x 1

1 1 0 0 0 0 x 1 x 1 0 x

1 1 1 0 0 0 x 1 x 1 x 1

Onde x = irrelevante.

- Encontrar as expressões lógicas que relacionam as saídas J e K com asentradas A, B e C, usando o mapa de Karnaugh. Depois da simplificaçãochegamos às seguintes expressões:

JA = C JB = CA. JC = A.B

KA = 1 KB = A + C KC = 1

O circuito final é mostrado na Figura 5.13.

Figura 5.13: Circuito lógico final do contador.

Page 86: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 86/236

Registradores

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 86

6. Registradores

6.1. Introdução

A utilização mais comum dos flip-flops é no armazenamento e transferênciade informações. Essas informações são armazenadas em grupos de flip-flopschamados registradores.

Além de armazenar informações, os registradores têm a capacidade detransferir essas informações para outros registradores. Isso é bastante interessante, já que o armazenamento e a transferência de dados são as principais característicasdos sistemas digitais.

6.2. Registradores de Deslocamento

A Figura 6.1 mostra um registrador de deslocamento de 4 bits e suas formasde onda.

Figura 6.1: Registrador de deslocamento de 4 bits e formas de onda.

A cada pulso de clock, o valor contido nas entradas J e K dos flip-flops étransferido para a saída. Essa saída está conectada na entrada do próximo flip-flop e

Page 87: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 87/236

Registradores

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 87

no final de 4 pulsos de clock, o valor da entrada DADOS, que foi transferidoserialmente, estará armazenado no registrador.

6.3. Transferência Paralela de Dados entre Registradores

A Figura 6.2 mostra a transferência paralela de dados entre doisregistradores:

Figura 6.2: Transferência paralela de dados entre registradores.

As saídas dos flip-flops que constituem o registrador X estão conectadas nas

entradas dos flip-flops que constituem o registrador Y. Depois do pulso TRANFER, oconteúdo armazenado no registrador X é transferido para o registrador Y.

6.4. Transferência Serial de Dados entre Registradores

A Figura 6.3 mostra a transferência serial de dados entre dois registradores.

Page 88: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 88/236

Registradores

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 88

Figura 6.3: Transferência serial de dados entre registradores.

6.5. Comparação entre a Transferência Paralela e a Transferência Serial

Na transferência paralela, os dados são transmitidos simultaneamente naocorrência de um único pulso de transferência. Na transferência serial, cada bit étransmitido a cada pulso de transferência.

Com relação à velocidade de transmissão, a transferência paralela é maisrápida do que a serial. Em compensação, a transferência paralela necessita de umnúmero maior de conexões entre os registradores.

6.6. Contadores com Registradores de Deslocamento

Registradores de deslocamento também podem ser usados como contadores:

- Contador em Anel – O contador em anel é mostrado na Figura 6.4.

Page 89: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 89/236

Registradores

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 89

Figura 6.4: Contador em anel.

No contador em anel, uma das saídas dos flip-flops está em 1 e as outrasestão em 0. Por ser um registrador de deslocamento, esse 1 é transferido para opróximo flip-flop e assim sucessivamente. A Tabela 6.1 mostra a sequência dacontagem.

Tabela 6.1: Sequência de contagem de um contador em anel.

Pulso de Clock Q3 Q2 Q1 Q00 1 0 0 0

1 0 1 0 0

2 0 0 1 0

3 0 0 0 1

4 1 0 0 0

5 0 1 0 0

6 0 0 1 0

7 0 0 0 1

Para o perfeito funcionamento deste tipo de contador, um dos flip-flops deveter inicialmente o valor 1 e os outros 0. Isso pode ser feito através das entradasassíncronas PRESET e CLEAR.

- Contador Johnson – O contador Johnson é mostrado na Figura 6.5.

Page 90: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 90/236

Registradores

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 90

Figura 6.5: Contador Johnson.

A Tabela 6.2 mostra a sequência de contagem do contador Johnson.

Tabela 6.2: Sequência de contagem de um contador Johnson.

Pulso de Clock Q2 Q1 Q0

0 0 0 0

1 1 0 02 1 1 0

3 1 1 1

4 0 1 1

5 0 0 1

6 0 0 0

7 1 0 0

6.7. Circuitos Integrados de Registradores

Os registradores podem ser classificados da forma com a qual seus dadossão transferidos:

- Entrada paralela / saída paralela – 74174, 74LS174, 74HC174;

- Entrada serial / saída serial – 4731B;

- Entrada paralela / saída serial – 74165, 74LS165, 74HC165;

Page 91: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 91/236

Registradores

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 91

- Entrada serial / saída paralela – 74164, 74LS164, 74HC164.

Existem outras versões de registradores como, por exemplo:

- 74194, 74LS194, 74HC194 – registrador de deslocamento bidirecionaluniversal de quatro bits com entrada paralela e saída paralela.

- 74373, 74LS373, 74HC373, 74HCT373 – registrador de oito bits de entradaparalela e saída paralela que contém oito latches tipo D com saídas em tristate.

- 74374, 74LS374, 74HC374, 74HCT374 – registrador de oito bits de entradaparalela e saída paralela que contém oito flip-flops tipo D com saídas em tristate.

Page 92: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 92/236

Decodificadores, Codificadores, Multiplexadores e Demultiplexadores

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 92

7. Decodificadores, Codificadores, Multiplexadores eDemultiplexadores

7.1. Decodificadores

Decodificador é um circuito lógico que recebe em suas entradas um código,que representa um número binário, e ativa a saída correspondente a esse númerobinário. Os decodificadores são circuitos combinacionais sem memória, mas sãobastante usados em sistemas digitais.

A Figura 7.1 mostra o diagrama de um decodificador de 3 linhas para 8 linhas:

Figura 7.1: Decodificador 3 para 8.

A Tabela 7.1 mostra a tabela verdade para o decodificador 3 para 8.

Tabela 7.1: Tabela verdade de um decodificador 3 para 8.C B A O0 O1 O2 O3 O4 O5 O6 O7

0 0 0 1 0 0 0 0 0 0 0

0 0 1 0 1 0 0 0 0 0 0

0 1 0 0 0 1 0 0 0 0 0

0 1 1 0 0 0 1 0 0 0 0

1 0 0 0 0 0 0 1 0 0 0

1 0 1 0 0 0 0 0 1 0 0

1 1 0 0 0 0 0 0 0 1 01 1 1 0 0 0 0 0 0 0 1

Através da tabela verdade vemos que apenas uma saída é acionada,dependendo apenas do código de entrada. As entradas E1 e E2 são as entradas dehabilitação do componente. Quando elas estiverem acionadas, ou seja, E1 = 0 e E2= 1, o componente responderá às entradas A, B e C.

Page 93: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 93/236

Decodificadores, Codificadores, Multiplexadores e Demultiplexadores

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 93

Um exemplo de decodificador é o circuito integrado 74LS138/HC138. Ele éum decodificador de 3 linhas para 8 linhas.

7.1.1. Decodificadores BCD para Decimal

Um exemplo de decodificador BCD para decimal é o circuito integrado7442/LS42/HC42. Esses decodificadores também são denominados dedecodificadores 4 para 10.

7.1.2. Decodificadores/Driver BCD para Decimal

O circuito integrado 7445 é um decodificador/driver BCD para decimal. O termodriver é usado porque este componente possui saídas com coletor aberto quepodem operar com tensões e correntes maiores que uma saída TTL normal.

7.1.3. Decodificadores/Driver BCD para 7 Segmentos

Em muitas aplicações que envolvem medições é necessário que o valorbinário em um registrador ou contador seja mostrado em um display. Os circuitosintegrados 7446 e 7447 são decodificadores BCD para 7 segmentos.

O diagrama de um decodificador BCD para 7 segmentos é mostrado naFigura 7.2.

Figura 7.2: Decodificador BCD para 7 segmentos.

Como os displays usados são formados com LEDs, cada segmento do displaynecessita de uma corrente alta para acender. Circuitos TTL e CMOS não têmcapacidade de fornecer corrente suficiente e por isso não são usados para acionardiretamente os displays. Os decodificadores/driver BCD para 7 segmentos podemacionar diretamente displays de LEDs.

Page 94: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 94/236

Decodificadores, Codificadores, Multiplexadores e Demultiplexadores

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 94

7.2. Codificadores

Os codificadores executam a função contrária dos decodificadores. Noscodificadores apenas uma linha da entrada é acionada por vez e a saída terá ocódigo da linha acionada.

Figura 7.3: Codificador 8 para 3.

Note que não existe a entrada A0, já que se nenhuma entrada estiveracionada o código de saída é 000.

A Tabela 7.2 mostra a tabela verdade.

Tabela 7.2: Tabela verdade de um codificador 8 para 3.

A0 A1 A2 A3 A4 A5 A6 A7 C B A

x 0 0 0 0 0 0 0 0 0 0

x 1 0 0 0 0 0 0 0 0 1x 0 1 0 0 0 0 0 0 1 0

x 0 0 1 0 0 0 0 0 1 1

x 0 0 0 1 0 0 0 1 0 0

x 0 0 0 0 1 0 0 1 0 1

x 0 0 0 0 0 1 0 1 1 0

x 0 0 0 0 0 0 1 1 1 1

O circuito integrado 74147 é um codificador de prioridade decimal para BCD.O codificador de prioridade inclui uma lógica para garantir que, quando duas ou maisentradas estiverem acionadas, o código de saída corresponderá à entrada comnúmero mais alto. Por exemplo, se as entradas A3 e A5 estiverem acionadas, ocódigo na saída será 101 (5).

O símbolo lógico do 74147 é mostrado na Figura 7.4.

Page 95: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 95/236

Decodificadores, Codificadores, Multiplexadores e Demultiplexadores

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 95

Figura 7.4: Codificador decimal para BCD.

A Tabela 7.3 mostra a tabela verdade.

Tabela 7.3: Tabela verdade do codificador de prioridade 74147.

1A

2A

3A

4A

5A

6A

7A

8A

9A

3O

2O

1O

0O

1 1 1 1 1 1 1 1 1 1 1 1 1

0 1 1 1 1 1 1 1 1 1 1 1 0

x 0 1 1 1 1 1 1 1 1 1 0 1

x x 0 1 1 1 1 1 1 1 1 0 0

x x X 0 1 1 1 1 1 1 0 1 1

x x X x 0 1 1 1 1 1 0 1 0

x x X x x 0 1 1 1 1 0 0 1

x x X x x x 0 1 1 1 0 0 0

x x X x x x x 0 1 0 1 1 1

x x X x x x x x 0 0 1 1 0

x = irrelevante

A Tabela 7.3 mostra o código BCD invertido. Os valores x indicam aprioridade do maior valor.

7.3. Multiplexadores

Multiplexador ou seletor de dados (MUX) é um circuito lógico que recebevários dados digitais de entrada e, por um determinado instante, envia esse dadopara uma saída. As entradas de seleção determinam qual sinal de entrada deve serenviado para a saída.

Page 96: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 96/236

Decodificadores, Codificadores, Multiplexadores e Demultiplexadores

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 96

Figura 7.5: Multiplexador de 2 entradas.

A Figura 7.6 mostra um multiplexador de duas entradas. A entrada Seleçãocontrola qual dado de entrada (I0 ou I1) será enviado para a Saída. A Figura 7.6mostra o diagrama de um multiplexador com 8 entradas, o 74151 (74LS151,

74HC151).

Figura 7.6: Multiplexador de 8 entradas.

A Tabela 7.4 mostra a tabela verdade.

Page 97: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 97/236

Decodificadores, Codificadores, Multiplexadores e Demultiplexadores

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 97

Tabela 7.4: Tabela verdade do multiplexador 74151.

E 2S

1S

0S Z Z

H X X X H L

L L L L 0I 0I

L L L H1I 1I

L L H L2

I 2I

L L H H3

I 3I

L H L L4

I 4I

L H L H5

I 5I

L H H L6

I 6I

L H H H7

I 7I

Já o circuito integrado 74157 (74LS157, 74HC157) contém quatromultiplexadores de duas entradas.

7.3.1. Aplicações de Multiplexadores

As aplicações que utilizam multiplexadores são várias: seleção de dados deentrada, roteamento de dados, sequenciamento de operações, etc. A Figura 7.7mostra um exemplo de uso de multiplexadores.

Page 98: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 98/236

Decodificadores, Codificadores, Multiplexadores e Demultiplexadores

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 98

Figura 7.7: Exemplo de aplicação de multiplexador: o contador selecionado pelaentrada Seleciona é mostrado no display.

A entrada Seleciona Contador do MUX (74LS157) determina qual doscontadores será mostrado no display.

7.4. Demultiplexadores

Demultiplexadores ou distribuidores de dados (DEMUX) executam a funçãoinversa dos multiplexadores, ou seja, o DEMUX recebe uma única entrada e a

distribui para a saída determinada pelas entradas de seleção.A Figura 7.8 mostra um demultiplexador de duas saídas.

Page 99: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 99/236

Decodificadores, Codificadores, Multiplexadores e Demultiplexadores

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 99

Figura 7.8: Demultiplexador de 2 saídas.

Quando a entrada Seleção estiver em “0”, os dados da entrada I serãolevados à saída O0. Se a entrada Seleção estiver em “1”, os dados da entrada Iserão levados à saída O1.

O circuito integrado 74LS138 (decodificador 3 para 8) também pode serutilizado como demultiplexador, conforme a Figura 7.9 e a Tabela 7.5.

Figura 7.9: Demultiplexador de 8 saídas utilizando o 74LS138.

A Tabela 7.5 mostra a tabela verdade.

Tabela 7.5: Tabela verdade de um demultiplexador utilizando o 74LS138.

A2 A1 A0 7O

6O

5O

4O

3O

2O

1O

0O

0 0 0 1 1 1 1 1 1 1 I

0 0 1 1 1 1 1 1 1 I 1

0 1 0 1 1 1 1 1 I 1 1

0 1 1 1 1 1 1 I 1 1 1

1 0 0 1 1 1 I 1 1 1 1

1 0 1 1 1 I 1 1 1 1 1

1 1 0 1 I 1 1 1 1 1 1

1 1 1 I 1 1 1 1 1 1 1

Page 100: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 100/236

Decodificadores, Codificadores, Multiplexadores e Demultiplexadores

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 100

7.4.1. Aplicações de Demultiplexadores

Um exemplo simples de aplicação de demultiplexadores pode ser visto naFigura 7.10.

Figura 7.10: Exemplo de uso de demultiplexador.

Um sinal de clock é usado por contador, registrador e outros dispositivos. Odispositivo que irá receber o sinal de clock é selecionado através das entradas deseleção A2, A1 e A0.

Além de aplicações de distribuição de dados podemos usar demultiplexadoresem sistemas de monitoração, transmissão de dados, etc.

Page 101: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 101/236

Aritmética Digital

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 101

8. Aritmética Digital

8.1. Introdução

Uma máquina digital (computadores e calculadoras) manipula e armazenadados na forma binária. Dessa forma, as operações aritméticas também serãorealizadas sobre os números na forma binária.

A aritmética digital não é muito diferente da aritmética tradicional (base 10).As operações de adição, subtração, multiplicação e divisão são praticamente asmesmas, a não ser pelo número de algarismos usados nessas operações: 2.

8.2. Adição Binária

A adição decimal é mostrada a seguir:

738

164

673

+

A adição é feita a partir do algarismo menos significativo. Quando a adiçãoresulta em um valor maior que 9 ocorre um carry (vai um) para a próxima posição.

Na adição binária podemos encontrar apenas quatro possibilidades:0 + 0 = 0

0 + 1 = 1

1 + 0 = 1

1 + 1 = 10 (0 + carry 1 para a próxima posição)

Por exemplo:

1001110011+

110,00110,11011,011+

8.3. Representação de Números com Sinal

Em sistemas digitais, os números binários são armazenados e manipuladosem conjuntos de flip-flops, os registradores. Um registrador com 6 flip-flops pode

Page 102: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 102/236

Aritmética Digital

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 102

armazenar números binários de 000000 a 111111 (0 a 6310), representando amagnitude do número.

Como os computadores e calculadoras podem operar com números positivose negativos, uma maneira de representar números positivos e negativos é mostradana Figura 3.1.

A6 A5 A4 A3 A2 A1 A0

0 1 1 0 1 0 0 = +5210

Bit de Sinal (+) Magnitude = 5210

A6 A5 A4 A3 A2 A1 A0

1 1 1 0 1 0 0 = -5210

Bit de Sinal (-) Magnitude = 5210

Figura 8.1: Representação de números positivos e negativos.

O bit A6 é chamado bit de sinal, ou seja, ele determina qual o sinal donúmero. Esse número possui magnitude de 6 bits mais um bit de sinal.

Embora esse sistema seja direto, computadores e calculadoras não o utilizamnormalmente porque a implementação do circuito é mais complexa. O sistema derepresentação de números binários com sinal mais utilizado é o sistema decomplemento a 2.

8.3.1. Forma do Complemento a 1

O complemento a 1 de um número binário é obtido substituindo-se cada 0 por1 e cada 1 por 0. Isso pode ser visto a seguir:

1 0 1 1 0 1

↓ ↓ ↓ ↓ ↓ ↓

0 1 0 0 1 0

8.3.2. Forma do Complemento a 2

O complemento a 2 de um número binário é obtido tomando-se ocomplemento a 1 do número e adicionando-se 1 na posição do bit menossignificativo. Por exemplo:

Page 103: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 103/236

Aritmética Digital

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 103

1 0 1 1 0 1 Equivalente binário de 4510

0 1 0 0 1 0 Complemento a 1

+ 1 Adiciona-se 1

0 1 0 0 1 1 Complemento a 2 do número binário original

8.4. Representação de Números com Sinal Usando Complemento a 2

O sistema de complemento a 2 para representar números com sinal funcionado seguinte modo:

- Se o número é positivo, a magnitude é mostrada na sua forma binária direta e umbit de sinal 0 é colocado na frente do bit mais significativo (MSB).

- Se o número é negativo, a magnitude é representada na sua forma de

complemento a 2 e um bit de sinal 1 é colocado na frente do bit mais significativo(MSB).

A6 A5 A4 A3 A2 A1 A0

0 1 0 1 1 0 1 = +4510

Bit de Sinal(+) Binário direto

A6 A5 A4 A3 A2 A1 A0

1 0 1 0 0 1 1 = -4510

Bit de Sinal (-) Complemento a 2

Figura 8.2: Representação de números positivos e negativos usando complementoa 2.

8.4.1. Negação

A negação é a operação que converte um número positivo no seu negativoequivalente ou um número negativo no seu positivo equivalente. Por exemplo:

0 1 0 0 1 = +9 (número binário original)

1 0 1 1 1 = -9 (complemento a 2, negar)

0 1 0 0 1 = +9 (negar novamente)

Page 104: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 104/236

Aritmética Digital

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 104

8.4.2. Faixa de Representação do Complemento a 2

A faixa completa de valores que pode ser representada no sistema decomplemento a 2 que tem N bits de magnitude é:

-2N a +(2N-1)

Por exemplo, com N = 3 bits, a faixa de números sinalizados é mostrada naTabela 4.1.

Tabela 8.1: Faixa de números sinalizados.

Valor Decimal Complemento a 2

+7 = 23 – 1 0111

+6 0110+5 0101

+4 0100

+3 0011

+2 0010

+1 0001

0 0000

-1 1111

-2 1110-3 1101

-4 1100

-5 1011

-6 1010

-7 1001

-8 = -23 1000

Por exemplo, com N = 7 bits, mais um bit de sinal, a faixa de valores fica:

100000002 = -27 = -12810

011111112 = 28 = +12710

Page 105: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 105/236

Aritmética Digital

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 105

8.4.3. Adição no Sistema de Complemento a 2

Vamos analisar vários casos de adição:

a) Dois números positivos: A adição de dois números positivos é direta.

+9 → 0 1001

+4 → 0 0100

+13 0 1101

b) Um número positivo e um outro menor e negativo: O número negativo deve estarna forma de complemento a 2.

+9 → 0 1001

-4 → 1 1100

+5 1 0 0101

A soma é feita sobre todos os bits, inclusive os bits de sinal. O carry (vai um)gerado na última posição (MSB) é sempre descartado.

c) Um número positivo e um outro maior e negativo:

-9 → 1 0111

+4 → 0 0100

-5 1 1011

d) Dois números negativos:

-9 → 1 0111

-4 → 1 1100-13 1 1 0011

Page 106: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 106/236

Aritmética Digital

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 106

e) Dois números iguais em magnitude mas de sinais contrários:

+9 → 0 1001

-9 → 1 0111

0 1 0 0000

8.4.4. Subtração no Sistema de Complemento a 2

A operação de subtração no sistema de complemento a 2, na verdade,envolve uma operação de adição. Quando subtraímos um número binário (osubtraendo) de outro número binário (minuendo), usamos o seguinte procedimento:

- Negar o subtraendo.

- Adicionar o número obtido ao minuendo.

Por exemplo, +9 – (+4) = +5

+9 → 0 1001

+4 → 0 0100

+9 → 0 1001

-4 → 1 1100

+5 1 0 0101

8.4.5. Overflow Aritmético

O overflow aritmético ocorre quando temos, por exemplo, a adição de +9 e+8:

+9 → 0 1001

+8 → 0 1000

1 0001

O resultado esperado seria +17 mas a resposta tem um sinal negativo e umamagnitude incorreta. A representação do 17 precisa de mais de quatro bits,ocasionando um erro de overflow. O overflow pode ocorrer sempre que doisnúmeros positivos ou dois números negativos estão sendo somados.

Page 107: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 107/236

Aritmética Digital

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 107

8.5. Multiplicação de Números Binários

A multiplicação de números binários é mostrada abaixo:

1001 = 910 1011 = 1110

1001

1001

0000

1001

1100011 = 9910

Na multiplicação acima os bits de sinais não foram usados. Observe que oprimeiro multiplicando (1001) é deslocado para a esquerda com relação ao segundomultiplicando (1011). Depois disso, os resultados parciais são somados para obter oproduto final.

8.5.1. Multiplicação no Complemento a Dois

A multiplicação no complemento a dois é feita do mesmo modo descritoanteriormente, desde que os dois multiplicandos estejam na forma bináriaverdadeira.

Se os números a serem multiplicados forem positivos a multiplicação é feitaconforme mostrado anteriormente e o bit de sinal é 0. Se os números foremnegativos, eles devem ser convertidos para a forma binária verdadeira e o resultadoserá positivo (bit de sinal igual a 0).

Quando os números a serem multiplicados tiverem sinais opostos, o númeronegativo deve ser convertido para a forma binário verdadeira através docomplemento a dois. Como resultado esperado é negativo, deve ser aplicado ocomplemento a dois e o bit de sinal será 1.

8.6. Divisão de Números Binários

A divisão binária é mostrada a seguir:

Page 108: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 108/236

Aritmética Digital

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 108

1001 11

011 11

0011

11

0

A divisão binária é igual à divisão decimal. A divisão de números com sinal éfeita de maneira idêntica à multiplicação, onde os números negativos sãotransformados em positivos através do complemento a dois.

8.7. Adição de Números BCD

Muitos computadores e calculadoras usam o código BCD para representarnúmeros decimais. Na operação de adição usando números representados pelocódigo BCD devem ser levadas em consideração duas possibilidades:

- Soma menor ou igual a 9 – Por exemplo, 5 + 4:

5 0101

+4 +0100

9 1001

Outro exemplo, 45 + 33:

45 0100 0101

+33 +0011 +0011

78 0111 1000

A soma de cada dígito não gerou nenhum vai-um (carry).

- Soma maior do que 9 – Por exemplo, 6 + 7:

6 0110

+7 +0111

13 1101

Page 109: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 109/236

Aritmética Digital

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 109

O resultado da soma não é um código BCD, já que o resultado é um númeromaior do que 9. O resultado esperado seria 0001 0011 (13 BCD) e para corrigir issodevemos somar ao resultado o código 0110 (6 BCD), ou seja:

0110 6 (BCD)

+0111 7 (BCD)1101 soma > 9

0110 soma 6

0001 0011 13 (BCD)

8.8. Aritmética Hexadecimal

Números hexadecimais são amplamente utilizados na programação decomputadores em linguagem de máquina e na especificação de endereços dememória de computadores.

8.8.1. Adição em Hexadecimal

O procedimento para a adição em hexadecimal é o seguinte:

- Some os dois dígitos hexadecimais em decimal, inserindo mentalmente o decimalequivalente para os dígitos maiores do que 9;

- Se a soma é menor ou igual a 15, ele pode ser expresso por um dígitohexadecimal;

- Se a soma é maior ou igual a 16, subtraia 16 e coloque um carry na próximaposição.

Por exemplo:

58

+4B

A3

8.8.2. Subtração em Hexadecimal

Um modo eficiente de representar números binários é através dos númeroshexadecimais. A subtração hexadecimal utiliza o mesmo método dos númerosbinários: o complemento a dois do subtraendo é somado ao minuendo e qualquercarry da posição MSD deverá ser descartado.

O complemento a dois de um número hexadecimal é mostrado a seguir:

Page 110: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 110/236

Aritmética Digital

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 110

73A Número hexadecimal

0111 0011 1010 Converte para binário

1000 1100 0110 Complemento a 2

8C6 Converte para hexadecimal

Um outro método é mostrado a seguir:

F F F

–7 –3 –A

8 C 5

+1

8 C 6

8.9. Circuitos Aritméticos

A função essencial de computadores e calculadoras é a realização deoperações aritméticas. Um bloco chamado Unidade Lógica e Aritmética (ULA) éresponsável pelas operações aritméticas em um computador.

8.9.1. Unidade Lógica e Aritmética

O principal objetivo de uma ULA é aceitar dados binários armazenados namemória e executar as operações lógicas e aritméticas sobre estes dados de acordocom as instruções da unidade de controle.

A Figura 8.3 mostra os principais blocos funcionais de uma ULA.

Page 111: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 111/236

Aritmética Digital

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 111

Figura 8.3: Blocos funcionais de uma ULA.

A ULA é constituída de, pelo menos, dois registradores: o registrador B e oregistrador acumulador. Ela também possui lógica combinacional que realiza as

operações lógicas e aritméticas sobre os números binários armazenados nosregistradores B e acumulador.

Por exemplo, os passos para a execução de uma operação de adição sãomostrados a seguir:

- A unidade de controle recebe uma instrução da unidade de memóriaespecificando que um número armazenado em uma posição particular dememória deve ser adicionado ao número que está armazenado no acumulador;

- O número a ser adicionado é transferido da memória para o registrador B;

- O número no registrador B e o número no acumulador são somados nos circuitoslógicos (ao comando da unidade de controle). O resultado é enviado para o

acumulador para ser armazenado.

8.9.2. Somador Binário Paralelo

Vamos analisar a seguinte operação de adição de dois números binários:

1 1 1 Carry

1 0 1 0 1 Acumulador

+ 0 0 1 1 1 Registrador B

1 1 1 0 0 Soma

Podemos ver que cada bit das parcelas é somado para gerar um bit noresultado da adição. No caso de um carry (vai-um), esse também é somado, ouseja:

Page 112: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 112/236

Aritmética Digital

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 112

C4 C3 C2 C1 C0 Carry

A4 A3 A2 A1 A0 Registrador A

+ B4 B3 B2 B1 B0 Registrador B

S4 S3 S2 S1 S0 Soma

O diagrama de blocos de um somador binário paralelo é mostrado na Figura8.4.

Figura 8.4: Diagrama em blocos de um somador binário paralelo.

O bloco SC #0 é chamado somador completo porque soma bits A0 e B0 dasparcelas e ainda um possível bit C0 de carry.

8.9.3. Projeto de um Somador Completo

O bloco do somador completo possui três entradas (A, B e CIN) e duas saídas(S e COUT). As entradas A e B são os bits a serem adicionados e C IN é o carry do bitanterior. A saída S é o resultado da adição e COUT é a saída de carry, indicando umvai-um.

A Tabela 8.2 relaciona todos os possíveis casos de uma adição.

Figura 8.5: Bloco lógico do somador completo de 1 bit.

Page 113: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 113/236

Aritmética Digital

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 113

Tabela 8.2: Relação entre as entradas e as saídas de um bloco somador completo.

Bit deentrada da1ª parcela

Bit deentrada da2ª parcela

Bit deentrada do

carry

Bit desaída da

soma

Bit desaída do

carry

A B CIN S COUT

0 0 0 0 0

0 0 1 1 0

0 1 0 1 0

0 1 1 0 1

1 0 0 1 0

1 0 1 0 1

1 1 0 0 1

1 1 1 1 1

Pelo método do Mapa de Karnaugh podemos encontrar a expressão para S eCOUT:

[ ]CBAC.BA.A.B.CINC.B.A.CB.AS INININ IN ⊕⊕=+++=

A.BB.C A.CC ININOUT ++=

A Figura 8.6 mostra o circuito de um somador completo (SC).

Figura 8.6: Circuito lógico do somador completo de 1 bit.

Page 114: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 114/236

Aritmética Digital

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 114

A Figura 8.7 mostra um circuito de um somador paralelo completo de 4 bitscom registrador.

Figura 8.7: Circuito lógico do somador paralelo completo de 4 bits.

O procedimento para uma operação de adição é o seguinte:

- Pulsar CLEAR para fazer registrador A = 0000;

- Colocar a primeira parcela a ser somada nas entradas D3D2D1D0 (esse dadopode estar vindo de uma memória). Pulsar LOAD para que as entradas sejamtransferidas para o registrador B;

- Pulsar TRANSFER para a realização da operação de adição do conteúdo doregistrador A com o conteúdo do registrador B. Nesse caso, o valor de B étransferido para A, resultando A = B;

- Colocar a segunda parcela a ser somada nas entradas D3D2D1D0. Pulsar LOAD

para que as entradas sejam transferidas para o registrador B;- Pulsar TRANSFER para a realização da operação de adição do conteúdo do

registrador A com o conteúdo do registrador B. O resultado da adição está noregistrador A (saídas).

Page 115: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 115/236

Aritmética Digital

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 115

8.9.4. Somador Paralelo Integrado

Os circuitos integrados 7483A, 74LS83A, 74283 e 74LS283 são somadoresparalelos de quatro bits.

8.9.5. Ligação em Cascata de Somadores Paralelos

Blocos de somadores podem ser associados em cascata de forma a efetuaradições de números binários maiores. Por exemplo, se dois somadores de quatrobits forem associados em cascata podemos efetuar adições de números com oitobits.

8.9.6. Circuito Integrados de ULAs

As ULAs são circuitos capazes de realizar diversas operações lógicas earitméticas sobre os dados binários de entrada. Dentre essas operações podemoscitar:

- Operação Clear;

- Operação Soma;

- Operação Subtração;

- Operação EX-OR;

- Operação OR;

- Operação AND;

- Operação PRESET.

Os circuitos integrados 74LS382 e 74HC382 são ULAs que possuem ascaracterísticas acima citadas.

O 74LS181/HC181 é uma ULA de quatro bits e tem até 16 operaçõesdiferentes. O 74LS881/HC881 é similar ao circuito integrado 181, mas tem acapacidade de realizar algumas operações lógicas adicionais.

Page 116: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 116/236

Conversão Digital-Analógica

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 116

9. Conversão Digital-Analógica

9.1. Interface com o Mundo Analógico

- Quantidade Digital – Valor especificado entre duas possibilidades (0 ou 1), altoou baixo, verdadeiro ou falso. Para a lógica TTL:

0 V a 0,8 V = 0 Lógico

2 V a 5 V = 1 Lógico

- Quantidade Analógica – Assume qualquer valor dentro de uma faixa contínuade valores e, mais importante, seu valor exato é significativo.

9.2. Sistema Digital Interfaceando com Grandezas Analógicas

Figura 9.1: Sistema digital interfaceando com grandezas analógicas.

Elementos:

1) Transdutor

2) Conversor A/D3) Sistema digital (controlador, computador, etc.)

4) Conversor D/A

5) Atuador

Page 117: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 117/236

Conversão Digital-Analógica

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 117

9.3. Conversão Digital Analógica (D/A)

Processo pelo qual um valor representado digitalmente é convertido para umatensão ou corrente, que é proporcional ao valor digital.

Figura 9.2: Conversor digital-analógico de 4 bits.

Tabela 9.1: Relação entre os valores digitais e a saída analógica.D C B A VOUT (V)

0 0 0 0 0

0 0 0 1 1

0 0 1 0 2

0 0 1 1 3

0 1 0 0 4

0 1 0 1 5

0 1 1 0 60 1 1 1 7

1 0 0 0 8

1 0 0 1 9

Pesos da Entrada 1 0 1 0 10

D C B A VOUT (V) 1 0 1 1 11

0 0 0 1 1 1 1 0 0 12

0 0 1 0 2 1 1 0 1 13

0 1 0 0 4 1 1 1 0 141 0 0 0 8 1 1 1 1 15

VREF é utilizada para determinar a “saída de fundo de escala” ou o máximovalor que o conversor D/A pode produzir. Equacionando temos:

Saída Analógica = K * Entrada Digital

Page 118: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 118/236

Conversão Digital-Analógica

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 118

Onde K = fator de proporcionalidade, normalmente é constante para umconversor D/A em particular conectado a uma tensão de referência fixa. Para oexemplo acima:

V115

V15DigitalEntrada

AnalógicaSaída K ===

9.3.1. Resolução (Tamanho do Degrau)

É a menor alteração que pode ocorrer na saída analógica como resultado deuma mudança na entrada digital. Para o exemplo anterior, a resolução é igual a 1 V.

Figura 9.3: Resolução do conversor digital-analógico de 4 bits.

12

AKResolução N

FS

−==

Onde:

AFS = Saída de fundo de escala

N = número de bits

9.3.2. Resolução Percentual

A resolução percentual é a porcentagem da saída de fundo de escala:

100*escaladeFundo

degraudoTamanho%)Resolução( =

%6,67100* V15

V1%)Resolução( ==

Page 119: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 119/236

Conversão Digital-Analógica

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 119

9.4. Código de Entrada BCD

Figura 9.4: Conversor digital-analógico BCD de 8 bits.

Tabela 9.2: Peso dos bits de um conversor BCD.

MSD LSD

D1 C1 B1 A1 D0 C0 B0 A0

8,0 4,0 2,0 1,0 0,8 0,4 0,2 0,1

Cada grupo de código de quatro bits pode variar de 0000 a 1001,representando de 00 até 99. A tensão máxima na saída do conversor é 9,9 V.

9.5. Conversor D/A com Amplificador Operacional

Figura 9.5: Amplificador inversor com operacional.

1R0R

V

V-GGanho

IN

OUT −==

INOUTV

1R0R

V *

−=

Page 120: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 120/236

Conversão Digital-Analógica

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 120

9.5.1. Somador

Figura 9.6: Somador com amplificador operacional.

++

+

+

−= nV*nR0R...3V*

3R0R

2V*2R0R

1V*1R0RVOUT

A Figura 9.7 mostra um conversor D/A de quatro bits. As entradas A, B, C, Dpossuem valores de 0 ou 5 V.

Figura 9.7: Conversor digital-analógico de 4 bits usando amplificador operacional.

Equação:

+++−=8AV

4BV

2CV

DVVOUT

Por exemplo, VD = VB = 5 V e VC = VA = 0 V.

6,25V80

45

20

5VOUT −=

+++−=

Page 121: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 121/236

Conversão Digital-Analógica

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 121

- Resolução = peso do LSB = 5 / 8 = 0,625V

ou Afs / (2N –1) = 9,375 / 15 = 0,625V

-

Peso de cada bit:A = 0,625 V

B = 1,25 V

C = 2,5 V

D = 5,0 V

Para Rf = 500 Ω, a saída do fundo de escala é reduzida por um fator 2 e cadapeso de entrada será 2 vezes menor que os valores originais. Sendo assim, a saídade fundo de escala = -9,375 / 2 = -4,688 V.

9.6. Fatores Importantes na Precisão da Conversão

1) Precisão dos resistores de entrada e de realimentação (podem ser facilmenteencontrados);

2) Precisão dos níveis de tensão das entradas (consegue-se com circuitosauxiliares).

Figura 9.8: Conversor D/A com fonte de referência de precisão.

Page 122: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 122/236

Conversão Digital-Analógica

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 122

9.7. Conversores D/A com Saída em Corrente

Figura 9.9: Conversor D/A com saída em corrente.

Admitindo-se Vref = 10 V, R = 10 KΩ e RL muito menor do que R, temos:

IOUT = VREF / R = 1 mA -> peso do MSB (comandado pelo bit B3). Logo:

B2 I = 0,5 mA

B1 I = 0,25 mA

B0 I = 0,125 mA resolução do D/A

Saída de fundo de escala Iout = 1 + 0,5 + 0,25 + 0,125 = 1,875 mA.

9.8. Rede R/2R

Os conversores D/A que utilizam resistores ponderados têm algumaslimitações na prática: os resistores dos bits mais e menos significativos têm grandediferença de valores e muitas vezes não existem resistores de precisão nas razõesescolhidas.

A rede R/2R é arranjada utilizando apenas 2 valores de resistores.

Page 123: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 123/236

Conversão Digital-Analógica

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 123

Figura 9.10: Conversor D/A com rede R/2R.

Se analisarmos o circuito veremos que o valor Vout de saída será:

Vout = -(Vref / 8) * B

Onde B é o valor binário (0 a 15 decimal).

9.9. Especificações de Conversores D/A

- Resolução - Depende apenas do número de bits (10 bits têm maior resolução doque 8 bits).

- Precisão - Definida a partir dos erros de fundo de escala e linearidade. O erro defundo de escala é máximo desvio da saída do conversor D/A em relação ao valoresperado. O erro de linearidade é máximo desvio em tamanho do degrau dotamanho de degrau ideal. Para um conversor D/A com degrau 0,625 V e erro delinearidade de 0,01% F.S. o tamanho do degrau real poderia estar até 0,9375 mVdo esperado.

- Erro de Offset - Em condições ideais, a saída do conversor D/A será zero voltquando a entrada binária for zero. Na prática, pode existir uma tensão muitopequena que será somada à tensão de saída, ocasionando o erro de offset.Muitos conversores D/A possuem um ajuste externo de offset que nos permitezerar o offset.

- Tempo de Estabilização - Tempo necessário para a saída do conversor D/A irde zero até o fundo de escala quando a entrada binária muda todos os bits de 0

Page 124: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 124/236

Conversão Digital-Analógica

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 124

para 1. Tempos de estabilização variam de 50 ns a 10 µs. Saídas em correntesão mais rápidas do que em tensão.

- Monotonicidade - Um conversor D/A é monotônico se sua saída aumentaconforme a entrada binária é incrementada de um valor para o próximo.

9.10. Circuito Integrado de Conversão D/A – AD7524

Figura 9.11: Conversor D/A AD7524.

Características:

- 8 bits

- rede R/2R- saída em corrente/tensão

- tempo de estabilização de 100 ns

- precisão de fundo de escala de ±0,2% F.S.

- Vref varia de 0 a +25 V ou 0 a -25 V

9.11. Aplicações de Conversores D/A

- Controle – A saída digital de um computador pode ser convertida em um sinal decontrole analógico para ajustar a velocidade de um motor ou a temperatura deum forno, ou controlar quase qualquer variável física.

- Teste Automático – Sinais analógicos podem ser gerados por computadorespara testes de circuitos analógicos, cuja resposta será convertida para um valordigital e será levada a um computador onde será armazenada e analisada.

Page 125: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 125/236

Conversão Digital-Analógica

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 125

- Reconstrução de Sinais – Em várias aplicações um sinal analógico édigitalizado (conversão A/D) e armazenado. Um conversor D/A pode ser usadopara converter dados digitalizados em sinais analógicos novamente.

- Conversão A/D – Muitos conversores A/D utilizam conversores D/A em seus

circuitos.

- Conversores D/A Seriais – Muitas destas aplicações envolvemmicroprocessadores, que enviam serialmente um conjunto de bits que define qualdos conversores D/A serão usados e qual o sinal a ser convertido.

Figura 9.12: Conversor D/A serial com várias saídas.

Page 126: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 126/236

Conversão Analógico-Digital

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 126

10. Conversão Analógico-Digital

10.1. Introdução

Um conversor A/D recebe uma tensão analógica de entrada e depois de certotempo produz um código digital de saída que representa a entrada analógica. Muitostipos importantes de conversores A/D possuem um conversor D/A como parte deseus circuitos. A Figura 10.1 mostra o esquema básico de um tipo de conversor A/D.

Figura 10.1: Diagrama em blocos de um conversor analógico-digital.

Funcionamento:

1) Um pulso START inicia a operação;

2) Numa taxa determinada pelo CLOCK, a unidade de controle modifica o valorarmazenado no registrador;

3) O valor binário armazenado no registrador é convertido para uma tensãoanalógica, Vax, pelo conversor D/A;

4) O amplificador operacional compara Vax com a entrada analógica Va. Se Vax <

Va, a saída do comparador fica em ALTO. Quando Vax > Va (por, no mínimo,uma tensão limiar Vt), a saída do comparador vai para BAIXO e pára o processode modificar o número no registrador. Neste ponto Vax ≅ Va, dentro da resoluçãoe precisão do sistema;

5) A lógica de controle sinaliza o fim da conversão (EOC).

Page 127: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 127/236

Conversão Analógico-Digital

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 127

10.2. Conversor A/D de Rampa Digital

O conversor A/D de rampa digital utiliza um contador como registrador e umsinal de clock que incrementa esse contador até que Vax ≥ Va. A Figura 10.2 mostrao funcionamento desse tipo de conversor A/D.

Figura 10.2: Conversor analógico-digital tipo rampa digital.

10.3. Precisão e Resolução de Conversores A/D

Uma fonte de erro no método da rampa digital é que o tamanho do degrau ouresolução do conversor D/A interno é a menor unidade de medida. Mesmo tornando

o tamanho do degrau menor sempre haverá uma diferença entre a quantidadeanalógica (real) e o valor digital associado a ela. Isto é chamado erro dequantização.

Esse erro pode ser minimizado aumentando-se o número de bits do contadore do conversor D/A.

Page 128: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 128/236

Conversão Analógico-Digital

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 128

10.3.1. Tempo de Conversão tc

O tempo de conversão corresponde ao intervalo de tempo entre o fim dopulso START e a ativação da saída EOC . O tempo máximo de conversão é:

tc (max) = (2N-1) * Período de Clock

A desvantagem do método de rampa digital é que o tempo de conversãoaumenta com o número de bits.

10.4. Aquisição de Dados

Em muitas aplicações, dados analógicos devem ser digitalizados etransferidos para o microcomputador. Este processo é chamado aquisição de dados.

Numa aplicação de armazenamento (por exemplo, áudio) os dados sãotransferidos para a memória do computador e depois podem ser convertidosnovamente em sinais analógicos. Em aplicações de controle, esses dadosconstituem informações e, através delas, o computador irá acionar ou não suassaídas de controle.

Figura 10.3: Sistema digital utilizando um conversor A/D para aquisição de dados.

10.5. Reconstrução de Sinais Digitalizados

Sinais digitalizados podem ser “recuperados” usando-se conversores D/A efiltros RC passa-baixa. Para sinais em baixa frequência isso é suficiente.

Page 129: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 129/236

Conversão Analógico-Digital

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 129

Figura 10.4: Sinal analógico amostrado por um conversor A/D e sinal reconstruídopor um conversor D/A e filtros passa-baixa.

10.6. Conversor A/D de Aproximações Sucessivas

Este conversor é um dos tipos mais usados, principalmente porque o tempode conversão é muito menor que o tempo do conversor A/D de rampa. Além disso,esse tempo é fixo e não depende da entrada analógica.

Figura 10.5: Conversor analógico-digital de aproximações sucessivas.

Page 130: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 130/236

Page 131: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 131/236

Conversão Analógico-Digital

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 131

10.7. ADC0804 – Conversor A/D de Aproximações Sucessivas

Figura 10.7: Conversor A/D ADC0804.

Características:

- Tem duas entradas analógicas, Vin(+) e Vin(-), para permitir entradasdiferenciais. A entrada analógica real, Vin, é a diferença das tensões aplicadasnestes pinos (Vin = Vin(+) - Vin(-)). Para medições comuns, Vin(-) é conectada aoterra e a entrada analógica é Vin(+). Esse conversor utiliza Vcc = +5V comoreferência e entrada analógica de 0 a 5V.

- A tensão analógica é convertida em uma saída digital de 8 bits. A saída digitaltem um buffer tristate. A resolução é 19,6 mV.

- Possui gerador de clock interno onde .R.C1,11f = , onde R e C são componentes

externos.

- Com uma frequência de 606 kHz, o tempo de conversão é de aproximadamente100 µs.

- Possui conexões de terra separadas para tensões digitais e analógicas. O terradigital é muito ruidoso devido às rápidas mudanças de estado do circuito.

- CS (Chip Select - Seleção do Chip) - esta entrada deve estar em nível BAIXOpara que as entradas RD e WR tenham efeito. Com CS em ALTO, as saídasdigitais ficarão em alta impedância.

- RD (Read - Leitura) - Sinal usado para habilitar os buffers da saída digital. ComCS = RD= 0, as saídas digitais conterão o resultado da última conversão.

- WR (Write - Escrita) - Um pulso para BAIXO neste pino inicia nova conversão.

- INTR (Interrupt - Interrupção) - Este sinal de saída vai para ALTO no início daconversão e para BAIXO no fim da conversão.

- Vref/2 - Usado para mudar a tensão de referência.

Page 132: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 132/236

Conversão Analógico-Digital

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 132

Tabela 10.1: Relação entre Vref e a faixa de tensão de entrada do ADC0804.

Vref / 2 (V) Faixa Analógica de Entrada (V) Resolução (mV)

Em aberto 0-5 19,6

2,25 0-4,5 17,6

2,0 0-4 15,71,5 0-3 11,8

- Clock Out - Um resistor é conectado neste pino para utilização do clock interno.

- Clock In - Usado como entrada de clock externo ou conexão com capacitorquando se utiliza clock interno.

10.8. Conversor A/D Flash

É o conversor A/D de maior velocidade mas requer um número muito maiorde circuitos. Por exemplo, um conversor A/D flash de 6 bits necessita de 63comparadores analógicos enquanto uma unidade com 8 bits necessita de 255.

Figura 10.8: Conversor A/D Flash.

Os resistores formam um divisor de tensão que serão utilizadas comoreferência para os comparadores analógicos. Se a tensão analógica Va for maiorque a tensão de referência dos comparadores, estes irão para nível BAIXO e alógica de prioridade gerará o código correspondente.

Page 133: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 133/236

Conversão Analógico-Digital

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 133

Para aumentar a resolução teríamos que aumentar o número de resistores econsequentemente dos comparadores e o tamanho do codificador de prioridade. Deum modo geral, o conversor flash é o mais rápido porque a conversão é direta, masnecessita de 2N-1 comparadores e 2N resistores, além da lógica do codificador deprioridade aumentar.

10.9. Tempo de Conversão

O conversor flash não usa clock e por isso seu tempo de conversão sódepende do atraso dos circuitos (comparadores e codificador). Esse tempo é menorque 20 ns.

10.10. Outros Métodos de Conversão A/D

10.10.1. Conversor A/D de rampa digital crescente/decrescente (conversor A/Drastreador)

Esse conversor utiliza um contador projetado para contar crescentementesempre que Vax < Va e contar decrescentemente se Vax > Va. Assim a saída doD/A (Vax) sempre irá convergir para Va. Quando houver um cruzamento das tensõeso comparador muda de estado e a lógica de controle indica fim da conversão e ovalor digital está no contador. Esse tipo de conversor é mais rápido que o conversorA/D de rampa mas o tempo de conversão ainda depende de Va.

10.10.2. Conversor A/D de rampa dupla

O conversor A/D de rampa dupla possui um dos tempos de conversão maislongos. A operação básica desse conversor envolve a carga e a descarga linear deum capacitor por meio de correntes constantes.

Figura 10.9: Carga e descarga do capacitor em um conversor A/D de rampa dupla.

Page 134: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 134/236

Conversão Analógico-Digital

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 134

Inicialmente, o capacitor é carregado num intervalo de tempo fixo T1 por umacorrente constante derivada da tensão analógica de entrada, Va. No final dessetempo, a tensão do capacitor será proporcional a Va.

Agora o capacitor é descarregado linearmente por uma corrente constantederivada de uma tensão de referência precisa, VREF. O tempo de descarga T2 émedido por um contador e quando a descarga termina o contador pára. O valor nocontador é proporcional à tensão inicial do capacitor, ou Va.

As principais vantagens desse conversor A/D são: baixo custo e baixasensibilidade ao ruído e às variações dos componentes decorrentes às mudançasde temperatura. Por ter um tempo de conversão relativamente alto, não são usadosem aplicações de aquisição de dados. Esses conversores podem ser encontradosem voltímetros ou multímetros digitais.

10.10.3. Conversor A/D de tensão-frequência

O conversor A/D de tensão-frequência é mais simples do que os outrosconversores A/D porque não utiliza um conversor D/A. Em vez disso, ele usa umoscilador controlado à tensão linear (VCO – voltage-controlled oscillator ) que produzuma frequência de saída proporcional à sua tensão de entrada.

A tensão analógica a ser convertida é aplicada à entrada do VCO para geraruma frequência de saída. Essa frequência é levada para um contador para sercontada por um intervalo de tempo fixo. O valor da contagem final é proporcional aovalor da tensão analógica.

A principal aplicação desse tipo de conversor A/D está em ambientesindustriais ruidosos, onde pequenos sinais analógicos devem ser transmitidos decircuitos transdutores para um computador de controle.

10.10.4. Conversor A/D sigma-delta (ΣΣΣΣ-∆∆∆∆)

A Figura 10.10 mostra o circuito básico de um conversor A/D sigma-delta.

Figura 10.10: Diagrama em blocos de um conversor A/D sigma-delta.

Page 135: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 135/236

Conversão Analógico-Digital

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 135

A entrada analógica é comparada com uma amostra anterior e a diferença éintegrada. A sequência de valores digitais obtidos é processada por um filtro digitalcomplexo e depois de várias amostragens o valor digital é colocado na saída.

Para se ter um valor na saída filtro digital, a frequência de amostragem desseconversor A/D deve ser bastante alta, normalmente centenas de vezes a frequênciamáxima de entrada (oversampling ). Tipicamente, uma amostra digital pode ter 24bits de resolução.

Esse tipo de conversor A/D é bastante utilizado em instrumentação,aplicações de áudio e vídeo, aquisição de dados, processamento digital de sinais(DSP), etc.

Page 136: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 136/236

Memória

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 136

11. Memórias

11.1. Introdução

A principal vantagem dos sistemas digitais sobre os analógicos é acapacidade de armazenar grandes quantidades de informações. Esta capacidade éque torna os sistemas digitais tão versáteis e adaptáveis às diversas situações.

Um dispositivo de memória conhecido é o flip-flop. Grupos de flip-flops,chamados registradores, são elementos de memória de alto desempenho que sãomuito usados nas operações internas de um computador. Outro dispositivo dememória pode ser um capacitor onde os dados são armazenados como cargas.

Estes dois dispositivos são os principais elementos que formadores dasmemórias dos sistemas digitais atuais.

11.2. Definição de Termos Básicos

- Célula de memória – dispositivo ou circuito capaz de armazenar um bit. Porexemplo, um flip-flop, um capacitor, etc.

- Palavra de memória – grupo de bits (células) em uma memória que representainstruções ou dados.

- Byte – conjunto de 8 bits.

- Capacidade – número de bits que podem ser armazenados em um dispositivo dememória.

a) Um chip de memória semicondutora é especificado como 2K x 8. Quantaspalavras podem ser armazenadas neste chip? Qual é o tamanho da palavra?Quantos bits esse chip pode armazenar no total?

R: A memória possui capacidade de 2K = 2 x 1024 = 2048 palavras. Cada palavratem 8 bits (um byte). O número total de bits é 2048 x 8 = 16384 bits.

b) Qual das memórias armazena mais bits: uma memória de 5M x 8 ou umamemória que armazena 1M palavras com um tamanho de palavra de 16 bits?

Page 137: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 137/236

Memória

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 137

R: 5M x 8 = 5 x 1048576 x 8 = 41943040 bits

1M x 16 = 1048576 x 16 = 16777216 bits

A memória de 5M x 8 armazena mais bits.

- Densidade – termo relativo à capacidade. Se um dispositivo é mais denso queoutro ele tem capacidade de armazenar mais bits no mesmo espaço.

- Endereço – número que localiza a posição de uma palavra na memória.

Tabela 11.1: Endereço e conteúdo armazenado em uma memória.

Endereço Conteúdo

000 Palavra 0

001 Palavra 1

010 Palavra 2

011 Palavra 3

100 Palavra 4

101 Palavra 5

110 Palavra 6

111 Palavra 7

- Leitura ou busca – operação na qual uma palavra binária localizada numadeterminada posição (endereço) de memória é detectada e transferida para outrodispositivo.

- Escrita ou armazenamento – operação na qual uma nova palavra é colocadanuma determinada posição de memória.

- Tempo de acesso – tempo necessário entre a memória receber uma novaentrada de endereço e os dados se tornarem disponíveis na saída da memória.Este parâmetro é usado para medição de desempenho da memória.

- Ciclo de Memória – intervalo mínimo entre dois acessos sucessivos à memória.

- Memória volátil – tipo de memória que necessita de aplicação de energia parapoder armazenar a informação.

Page 138: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 138/236

Memória

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 138

- Memória de acesso aleatório (RAM) – memória onde o tempo de acesso é omesmo para qualquer posição.

- Memória de acesso sequencial (SAM) – memória onde, para se localizar umadeterminada posição, é preciso passar por todos os endereços. Por exemplo,

fitas magnéticas.

- Memória de leitura e escrita (RWM) – memória que pode ser tanto lida comoescrita.

- Memória somente de leitura (ROM) – Memória onde as informaçõesarmazenadas só podem ser lidas.

- Memória estática – tipo de memória onde os dados permanecem armazenados

enquanto existir energia, sem a necessidade de atualização periódica dainformação.

- Memória dinâmica – tipo de memória onde os dados permanecem armazenadosenquanto existir energia, mas com periódica atualização da informação (Refresh).

11.3. Princípios de Operação das Memórias

Independente dos tipos de memórias existentes, o princípio básico deoperação é o mesmo:

- Selecionar o endereço a ser acessado (leitura ou escrita);

- Selecionar o tipo de operação: leitura ou escrita;

- Se a operação for escrita, fornecer os dados de entrada;

- Se a operação for leitura, os dados estarão disponíveis na saída;

- Habilitar a memória para que a operação seja concluída e desabilitar a memóriapara que ela não responda às entradas de endereço e ao comando deleitura/escrita.

Page 139: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 139/236

Memória

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 139

Figura 11.1: Diagrama de uma memória de 32 x 4.

11.3.1. Entradas de Endereços

Usando a memória mostrada na Figura 3.1, podemos notar que ela possui 5entradas de endereço (A0 a A4). Logo existem 32 posições (2N, onde N é o nº debits) de armazenamento que podem ser ocupadas por palavras de 4 bits (D0 a D3).

11.3.2. A Entrada WR /

Esta entrada controla a operação que deve ser realizada na memória: leitura(R – Read) ou escrita (W – Write). Quando esta entrada estiver em “1” ocorre aoperação de leitura, quando em “0” ocorre a operação de escrita.

Algumas memórias usam os símbolos W (escrita) ou WE (habilitação deescrita) para identificar esta entrada.

11.3.3. Habilitação de Memória (ME)

A todo o momento a memória possui níveis lógicos em suas entradas e o pinode habilitação de memória impede que ela responda a estes níveis lógicos, evitandoassim um acesso errôneo nesta memória. Esta entrada pode ser identificada comoCE (chip enable) ou CS (chip select).

Exemplo: Uma determinada memória tem uma capacidade de 4K x 8. Quantas

linhas de entrada/saída de dados ela tem?R: Oito, pois o tamanho da palavra é de oito bits.

Quantas linhas de endereço ela tem?

R: A memória armazena 4K = 4 x 1024 = 4096 palavras. Tendo em vista que 4096 =212, logo a memória tem 12 bits (linhas) de endereço.

Page 140: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 140/236

Memória

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 140

Qual é a sua capacidade em bytes?

R: Um byte tem oito bits, então esta memória tem uma capacidade de 4096 bytes.

11.4. Conexões da Memória com a CPU

As memórias RAM e ROM são interfaceadas com a CPU através de trêsgrupos de linhas de sinais ou barramentos: barramentos de endereço, barramentode dados e barramento de controle.

Figura 11.2: Conexões entre a CPU e as memórias.

- Barramento de endereços – barramento unidirecional que leva o endereçoproveniente da CPU para a memória para selecionar uma posição de memória.

- Barramento de dados – barramento bidirecional que transfere dados entre aCPU e a memória.

- Barramento de controle – barramento que leva sinais de controle da CPU paraa memória.

Operação de escrita:

- A CPU coloca o endereço binário da posição de memória onde o dado deve serarmazenado no barramento de endereços.

- A CPU coloca o dado a ser armazenado no barramento de dados.

- A CPU ativa as linhas de controle para a operação de escrita.

- A memória decodifica o endereço e localiza a posição onde o dado deve serarmazenado.

- O barramento de dados é transferido para a posição de memória.

Page 141: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 141/236

Memória

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 141

Operação de leitura:

- A CPU coloca o endereço binário da posição a ser lida da memória nobarramento de endereços.

- A CPU ativa as linhas de controle para operação de leitura.

- A memória decodifica o endereço e localiza a posição a ser lida.

- A memória transfere o dado armazenado nesta posição para o barramento dedados, onde a CPU vai buscá-los.

Page 142: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 142/236

Memória Somente de Leitura (ROM)

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 142

12. Memória Somente de Leitura (ROM)

12.1. Introdução

A memória somente de leitura (ROM) é um tipo de memória onde os dadosnela armazenados não são alterados ou não mudam com frequência.

12.2. Diagrama em Blocos de uma ROM

O diagrama típico de uma ROM é mostrado na Figura 12.1.

Figura 12.1: Diagrama de uma ROM.

O sinal de controle CS (seleção do chip) habilita a operação de leitura daposição indicada no barramento de endereços. O dado é transferido para obarramento de dados. Quando CS está em ALTO, as saídas da ROM ficamdesabilitadas (alta impedância).

12.3. Arquitetura de uma ROM

Uma ROM é constituída conforme a Figura 12.2.

Page 143: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 143/236

Memória Somente de Leitura (ROM)

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 143

Figura 12.2: Arquitetura interna de uma ROM (16 x 8).

- Matriz de registradores – onde os dados serão armazenados. Cada registradorcontém um número de células de memória igual ao tamanho da palavra utilizada.

Cada registrador tem duas entradas de habilitação (E): ambas devem estar emALTO para que os dados do registrador sejam colocados no barramento dedados.

- Decodificadores de endereços – o barramento de endereço é separado emduas vias: a primeira seleciona a linha e a segunda seleciona a coluna onde oregistrador se localiza.

Exemplo: Qual o registrador que será habilitado pelo endereço 1101? Que endereçoirá habilitar o registrador 7?

- Buffers de saída – o registrador que está habilitado pelas entradas de endereçocoloca seu conteúdo no barramento de dados. Estes dados vão para os buffersde saída, que colocarão os dados na saída de dados externa, desde que CS esteja em BAIXO. Se CS estiver em alto, os buffers de saída ficarão em altaimpedância.

Page 144: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 144/236

Memória Somente de Leitura (ROM)

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 144

12.4. Temporização de uma ROM

O atraso de propagação entre a aplicação dos sinais de entrada e oaparecimento dos dados na saída, durante a operação de leitura, é chamado tempode acesso (tACC). Existe outro parâmetro de temporização chamado tempo de

habilitação da saída (tOE), que representa o atraso entre a entrada CS e a saída dedados válidos.

Figura 12.3: Temporização de uma ROM.

12.5. Tipos de ROM

- ROM Programada por Máscara – este tipo de ROM tem suas posições escritas(programadas) pelo fabricante de acordo com as especificações do cliente. Umamáscara (tipo de negativo fotográfico) é usada para informar as conexõeselétricas do chip. Este tipo de ROM é usado para armazenar tabelas ou

informações pré-programadas como códigos geradores de caracteres determinais de vídeo.

- ROM Programável (PROM) – tipo de memória ROM onde a programação é feitaapenas uma única vez pelo usuário. Esta programação consiste na queima ounão de um fusível que corresponde a um bit de informação por um equipamentochamado programador.

- ROM Programável e Apagável (EPROM) – tipo de memória ROM que pode serprogramada e apagada pelo usuário várias vezes. O processo de programação

consiste em aplicar certos níveis de tensões que provocam a conduçãopermanente ou não condução de transistores MOS. O apagamento da memória éfeito pela exposição dos circuitos internos à luz ultravioleta através de uma“janela”.

- PROM Apagável Eletricamente (EEPROM) – é uma melhoria em relação àsEPROMs, pois pode ser tanto programada como apagada eletricamente. Assim,elas podem ser programadas e apagadas no próprio circuito, sem a necessidadede luz ultravioleta ou um programador especial.

Page 145: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 145/236

Memória Somente de Leitura (ROM)

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 145

- CD ROM – tipo de armazenamento somente para leitura que utiliza tecnologialaser. Os bits são definidos pela reflexão ou não de um feixe laser apontado paraum ponto do disco.

- Memória Flash – tipo de memória não-volátil, apagável eletricamente como a

EEPROM, mas com densidades e custos semelhantes aos da EPROM, com omesmo tempo de acesso de ambas.

Figura 12.4: Comparação entre tipos de ROM.

12.5.1. Aplicações de ROMs

- Firmware – armazenamento de programas ou dados que devem estardisponíveis no processo de inicialização de sistemas microprocessados. Porexemplo, produtos como videocassetes, CD players, fornos microondas etc.

- Memória de Bootstrap – tipo de programa armazenado em uma ROM que tratada inicialização do hardware de um computador. Após a inicialização, o programade bootstrap chama o sistema operacional e o computador começa a executar osistema operacional.

- Tabela de Dados – as ROMs são bastante utilizadas para armazenar tabelas de

dados que não variam. Por exemplo, tabelas trigonométricas, códigos ASCII, etc.

- Conversor de Códigos – este tipo de aplicação toma valores expressos em umdeterminado tipo de código e produz uma saída expressa em outro código. Porexemplo, o código BCD pode ser convertido para 7 segmentos por uma ROM.

- Gerador de Funções – basicamente, um gerador de funções é um circuito queproduz formas de onda senóides, triangulares e quadradas. Uma ROM com

Page 146: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 146/236

Memória Somente de Leitura (ROM)

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 146

tabelas de valores armazenados e um conversor D/A podem ser usados paragerar essas formas de onda.

- Armazenamento Auxiliar – dados podem ser armazenados em memórias ROMapagáveis (EPROM, EEPROM, FLASH), tornando essas memórias como

alternativa aos discos magnéticos de armazenamento.

Page 147: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 147/236

Memória de Acesso Aleatório (RAM)

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 147

13. Memória de Acesso Aleatório (RAM)

13.1. Introdução

A memória de acesso aleatório (RAM) semicondutora é um tipo de memóriaonde podemos tanto ler como escrever dados.

A principal vantagem de uma RAM é o fato de ela poder ser escrita e lidarapidamente com a mesma facilidade. Uma desvantagem seria o fato da RAM servolátil, isto é, se a alimentação for desligada ela perde a informação.

13.2. Arquitetura de uma RAM

A arquitetura típica de uma RAM é mostrada na Figura 13.1.

Figura 13.1: Organização Interna de uma RAM de 64 x 4.

A Figura 13.1 mostra uma RAM que armazena 64 palavras de quatro bits(memória 64 x 4). Estas palavras têm endereços que vão de 0 a 63. Para selecionar

Page 148: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 148/236

Memória de Acesso Aleatório (RAM)

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 148

uma das 64 posições para escrita ou leitura, um endereço binário é fornecido aocircuito decodificador. Cada endereço ativa uma saída do decodificador, habilitandoo seu registrador correspondente.

13.2.1. Operação de Leitura

A operação de leitura do conteúdo de um registrador é feita da seguintemaneira:

- Coloca-se o endereço da posição de memória a ser lida no barramento deendereços;

- Indica-se a operação de leitura através da entrada W /R , colocando essaentrada em ALTO;

- Habilita-se o chip de memória para concluir a operação colocando a entrada CS em BAIXO.

Quando a memória está habilitada para leitura, os buffers de entrada sãodesabilitados e os buffers de saída são habilitados e o conteúdo da posição dememória selecionada é colocado nas quatro saídas de dados.

13.2.2. Operação de Escrita

A operação de escrita de um dado novo em um registrador selecionado é feitado seguinte modo:

- Coloca-se o endereço da posição de memória a ser escrita no barramento deendereços;

- Coloca-se o dado a ser escrito no barramento de dados;

- Indica-se a operação de escrita através da entrada W /R , colocando essaentrada em BAIXO;

- Habilita-se o chip de memória para concluir a operação colocando a entrada CS em BAIXO.

Quando a memória está habilitada para escrita, os buffers de entrada são

habilitados e os buffers de saída são desabilitados e o conteúdo da posição dememória selecionada é perdido com a escrita do novo dado.

Quando a entrada CS (chip select – seleção de chip) está em ALTO(memória desabilitada), tanto suas entradas como suas saídas estão em tri-state(alta impedância), evitando assim escrita ou leitura errônea neste chip.

Page 149: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 149/236

Memória de Acesso Aleatório (RAM)

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 149

13.3. RAM Estática (SRAM)

Este tipo de memória armazena os dados enquanto for mantida aalimentação. Suas células são compostas de flip-flops, e por isso seu conteúdo nãoé perdido enquanto houver alimentação.

13.3.1. Temporização de uma RAM Estática

Um computador utiliza RAMs como memórias principais e essas memóriasdevem ser rápidas o suficiente para responderem aos comandos de leitura e escritaque a CPU está constatemente realizando.

13.3.2. Ciclo de Leitura

O ciclo de leitura é mostrado na Figura 13.2.

Figura 13.2: Ciclo de leitura de uma RAM estática.

Onde:

trc = intervalo de duração do ciclo de leitura;

tacc = tempo de acesso à RAM;

tco = tempo que a saída da RAM leva para sair de alta impedância e ter um dadoválido;

tod = tempo decorrido entre a desabilitação da RAM e o instante que as saídas daRAM vão para alta impedância.

Durante o ciclo de leitura, a CPU coloca um endereço no barramento deendereços ligado à RAM. Este endereço corresponde à posição de memória quedeve ser lida.

Page 150: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 150/236

Memória de Acesso Aleatório (RAM)

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 150

A CPU sinaliza a operação de leitura através de um nível ALTO na entradaW /R . A CPU habilita a memória colocando a entrada CS em nível BAIXO. A RAM

responde a isso colocando o conteúdo da posição endereçada nas saídas de dados.Depois disso a memória é desabilitada (CS é ALTO) e suas saídas ficam em tristate(alta impedância).

13.3.3. Ciclo de Escrita

O ciclo de escrita é mostrado na Figura 13.3.

Figura 13.3: Ciclo de escrita de uma RAM estática.

Onde:

twc = intervalo de duração do ciclo de escrita;

tas = tempo para estabilização do barramento de endereços, antes de habilitar aRAM;

tah = intervalo necessário para que o barramento de endereços permaneça estável;

tw = tempo de escrita, onde CS e W /R ficam em BAIXO;

tds = tempo que os dados devem ser mantidos na entrada antes da desabilitação de

CS e W /R ;tdh = tempo que os dados devem ser mantidos na entrada depois da desabilitaçãode CS e W /R .

No ciclo de escrita, a CPU coloca um endereço estável no barramento deendereços. Nesse endereço o dado deve ser escrito. Ela coloca o dado a serarmazenado no barramento de dados.

Page 151: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 151/236

Memória de Acesso Aleatório (RAM)

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 151

A CPU sinaliza a operação de escrita, colocando nível BAIXO na entradaW /R . A CPU habilita a memória colocando a entrada CS em nível BAIXO. O dado

é transferido para a posição de memória indicada pelo endereço. A memória é,então, desabilitada ( CS é ALTO) e suas saídas ficam em tristate.

13.3.4. Exemplos de Memórias Estáticas

- 6264 – 8K x 8

- 62256 – 32K x 8

13.4. RAM Dinâmica (DRAM)

Nesse tipo de memória a informação é armazenada em pequenoscapacitores. Como existe uma tendência normal dos capacitores se descarregarem,há a necessidade de uma recarga (refresh – refrescamento) desses capacitores. Detempos em tempos (tipicamente de 2 a 8 ms) o bit armazenado no capacitor éatualizado.

Esse tipo de memória constitui a memória principal de um computador porcausa de sua alta capacidade e baixo consumo. Em relação à velocidade, as RAMestáticas são mais rápidas.

A principal vantagem deste tipo de memória é a simplicidade na suaconstrução, alcançando, assim, alto grau de integração.

13.4.1. Estrutura e Operação da RAM Dinâmica

Simbolicamente uma célula de memória dinâmica é constituída conforme aFigura 13.4.

Figura 13.4: Representação simbólica de uma célula de memória dinâmica.

Page 152: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 152/236

Memória de Acesso Aleatório (RAM)

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 152

Para escrever em uma célula, os sinais provenientes da decodificação deendereços e da lógica de leitura/escrita fecham as chaves SW1 e SW2, mantendoSW3 e SW4 abertas. Isto conecta a entrada de dados a C. Um nível lógico 1 carregaC e um nível lógico 0 o descarrega. Depois disso todas as chaves são abertas, demodo que C fica desconectado do resto do circuito. Mesmo desconectado, existeuma corrente de fuga que causa a descarga gradual do capacitor e por isso o

capacitor deve ser “refrescado”.Para ler uma célula, as chaves SW2, SW3 e SW4 são fechadas, e SW1

permanece aberta. Isso conecta a tensão armazenada no capacitor ao amplificadorsensor. Assim, na saída do amplificador teremos o valor armazenado no capacitor,que é atualizado via SW4 no momento da leitura.

13.4.2. Multiplexação de Endereços

A multiplexação de endereços é uma técnica que visa diminuir a quantidadede entradas de endereços em uma DRAM. Isso permite que DRAMs com altascapacidades ocupem espaços menores em placas de computadores.

Essa multiplexação consiste em colocar no barramento de endereços ametade superior do endereço (que localiza a linha) e colocar em BAIXO um sinalchamado RAS (strobe do endereço da linha). Depois é colocado no barramento deendereços a metade inferior do endereço (que localiza a coluna) e colocar emBAIXO um sinal chamado CAS (strobe do endereço da coluna). Após esseprocedimento, a posição de memória é localizada e as operações de leitura ouescrita podem ser realizadas.

Figura 13.5: Multiplexação de endereços em uma DRAM com 16 linhas deendereço.

Page 153: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 153/236

Memória de Acesso Aleatório (RAM)

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 153

13.4.3. Refrescamento da DRAM

O refrescamento de uma DRAM é feito por circuitos externos ou no própriochip de memória. Existem dois métodos:

- Refresh em rajada – a operação normal da memória é suspensa e cada linha daDRAM é refrescada em sequência até que todas tenham sido refrescadas;

- Refresh distribuído – o refrescamento é intercalado com as operações normaisda DRAM.

13.5. Tecnologia de RAM Dinâmica Usada em Computadores

Os tipos de DRAM existentes variam em função da capacidade, velocidade,consumo, custo e versatilidade:

- SIMM (single-in-line memory module) e DIMM (dual-in-line memory module) – são módulos de memória que permitem uma instalação rápida e são padrõesde diversos tipos de DRAMs. Os módulos SIMM e DIMM definem apenas como aDRAM é “empacotada”.

- DRAM FPM (fast page module) – permite acesso mais rápido a qualquer

posição de memória dentro da “página” corrente. Normalmente, os dadosgravados na memória são sequenciais. Nesse tipo de DRAM o endereço da linha(RAS) é enviado uma vez e o endereço da coluna (CAS) é incrementado.

- DRAM EDO (extended data output) – é uma melhoria em relação às FPM. Osdados são colocados na saída e a DRAM EDO já pode decodificar o próximoendereço sem que esses dados tenham sido lidos;

- DRAM BEDO (burst EDO) – Possui uma arquitetura que permite alcançar altavelocidade ao se acessar dados sequenciais;

- SDRAM (synchronous DRAM) – são organizadas em dois bancos que sãoacessados alternadamente utilizando um sinal de clock sincronizado com a CPU.Desse modo essas memórias alcançam altas taxas de transferências.

Page 154: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 154/236

Memória de Acesso Aleatório (RAM)

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 154

13.6. Memórias com Funções Especiais

- Armazenamento de Dados com o Sistema Desligado – muitos equipamentosarmazenam seus dados em memórias RAM alimentadas com baterias de reserva(NVRAM – RAM não-volátil);

- Memória Cache – tipo de memória de alta velocidade e baixa capacidade dearmazenamento que interage diretamente com a CPU. Na cache estão contidosos dados mais requisitados pelo processador e isso evita um acessodesnecessário na RAM.

- Memória First-In, First-Out (FIFO) – também conhecidas como buffers paraarmazenamento temporário. Por exemplo, os dados são transferidos em altastaxas do PC para a impressora. Como a impressão é mais lenta que atransferência, esses dados devem ser armazenados em FIFOs e daí podem ser

impressos.

Page 155: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 155/236

Expansão do Tamanho da Palavra e da Capacidade

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 155

14. Expansão do Tamanho da Palavra e da Capacidade

14.1. Introdução

Em aplicações com memórias muitas vezes não dispomos de um chip quenos forneça o tamanho da palavra ou a capacidade necessária. Para conseguir issodevemos associar os chips de memória a fim de fornecer o tamanho da palavra ou acapacidade desejada.

14.2. Expansão do Tamanho da Palavra

Neste tipo de arranjo, as memórias são combinadas de forma a fornecer otamanho da palavra desejada. Por exemplo, se determinado projeto necessita deuma memória de 16 x 8 (16 palavras de 8 bits) e só possuímos chips de memória de16 x 4 (16 palavras de 4 bits) podemos associar duas dessas memórias para obter amemória desejada, conforme a Figura 14.1.

Figura 14.1: Arranjo com duas RAM de 16 x 4 para fornecer um módulo de 16 x 8.

Cada memória da Figura 14.1 pode armazenar 16 palavras de 4 bits. Comoqueremos armazenar 16 palavras de 8 bits, cada chip armazena metade de cadapalavra. Assim, a RAM0 armazena os 4 bits mais significativos de cada uma das 16palavras e a RAM1 armazena os 4 bits menos significativos de cada uma das 16palavras.

Podemos selecionar qualquer uma das 16 palavras aplicando-se o endereçoda palavra no barramento de endereços. As duas memórias localizarão ao mesmotempo a mesma posição de memória.

Page 156: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 156/236

Expansão do Tamanho da Palavra e da Capacidade

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 156

Se a operação for leitura, a entrada W /R deve estar em ALTO e CSemBAIXO. A RAM0 coloca sua palavra de 4 bits na parte alta do barramento de dadose a RAM1 coloca sua palavra de 4 bits na parte baixa do barramento de dados.Desse modo o barramento de dados contém a palavra completa de 8 bits.

Se a operação for escrita, a entrada W /R deve estar em BAIXO e CS em

BAIXO. Os 4 bits mais significativos do dado serão escritos na RAM0 e os 4 menossignificativos serão escritos na RAM1.

14.3. Expansão da Capacidade

Neste tipo de arranjo, as memórias são combinadas de forma que possamarmazenar mais palavras. Por exemplo, se precisamos de uma memória que possaarmazenar 32 palavras de 4 bits e temos chips de 16 palavras de 4 bits, podemosassociá-las conforme a Figura 14.2.

Figura 14.2: Arranjo de duas memórias de 16 x 4 para formar uma memória de 32 x4.

Cada chip de memória armazena 16 palavras de 4 bits, resultando em 32palavras de 4 bits. O barramento de dados é compartilhado entre as duas memóriase por isso somente um chip de memória poderá ser habilitado de cada vez.

Como a capacidade total é 32 x 4, devem existir 32 endereços diferentes. Issorequer 5 linhas de barramento de endereços. A linha de endereços mais significativa

(A4) é usada para selecionar qual memória deve ser acionada.

Page 157: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 157/236

Expansão do Tamanho da Palavra e da Capacidade

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 157

Tabela 14.1: Mapa de memória e faixa de endereços usados por cada chip.

A4 A3 A2 A1 A0 Memória selecionada Capacidade

0

0

...

1

0

...

1

0

...

1

0

...

1

RAM0 16 palavras

1

0

...

1

0

...

1

0

...

1

0

...

1

RAM1 16 palavras

Total = 32palavras

Se desejarmos associar mais chips de memórias devemos tomar o cuidadode selecionar apenas uma das memórias, já que o barramento de dados é

compartilhado. Para isso é usado um decodificador de endereços (por exemplo,74LS138) que, através de uma combinação em suas entradas, seleciona apenasuma saída.

Por exemplo, se desejarmos associar 4 PROMs de 16 x 4 para gerar umacapacidade de 64 x 4 devemos fazer conforme a Figura 14.3.

Figura 14.3: Uso de 4 PROMs de 16 x 4 para obter uma capacidade de 64 x 4.

Page 158: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 158/236

Expansão do Tamanho da Palavra e da Capacidade

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 158

Tabela 14.2: Faixa de endereços utilizada por cada PROM.

A5 A4 A3 A2 A1 A0 Memória selecionada

0 0 0 0

0 0 ... ... ... ... PROM-0

1 1 1 10 0 0 0

0 1 ... ... ... ... PROM-1

1 1 1 1

0 0 0 0

1 0 ... ... ... ... PROM-1

1 1 1 1

0 0 0 0

1 1 ... ... ... ... PROM-2

1 1 1 1

Page 159: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 159/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 159

15. Microcontrolador AT90S8515

15.1. Introdução

15.1.1. Computadores, Microprocessadores e Microcontroladores

O computador é qualquer sistema que contém CPU (Unidade Central deProcessamento), memória e unidades de entrada/saída.

O microprocessador é um circuito integrado que contém uma CPU de umcomputador genérico.

O microcontrolador é um circuito integrado que contém CPU, memória,unidades de entrada/saída e periféricos (conversores A/D, timers, portas de

comunicação etc.), com a finalidade de executar uma tarefa específica.

Figura 15.1: Diagrama em Blocos de um Sistema Genérico com Microprocessador.

Page 160: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 160/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 160

15.2. Características do Microcontrolador AT90S8515

a) Arquitetura AVR RISC:

- Possui 118 instruções sendo que a maioria é executada em um ciclo de clock;

-

Possui 32 registradores de uso geral de 8 bits;- Até 8 MIPS (milhões de instruções por segundo) a 8 MHz.

b) Memória de Programa e de Dados:

- Possui 8 kBytes de Flash (memória de programa) que pode ser programada nopróprio circuito. Possui vida útil de 1000 ciclos de escrita/apagamento;

- Possui 512 Bytes de SRAM (memória de dados);

- Possui 512 Bytes de EEPROM (memória de dados) que pode ser programada nopróprio circuito. Possui vida útil de 100000 ciclos de escrita/apagamento;

- Possui Lock Bits, que impedem que o programa da Flash e os dadosarmazenados na EEPROM possam ser acessados.

c) Periféricos:

- Possui 1 Temporizador/Contador de 8 bits com prescaler (divisor de clock);

- Possui 1 Temporizador/Contador de 16 bits com prescaler (divisor de clock), commodos de comparação, captura e duplo PWM (modulação por largura de pulso)de 8, 9 ou 10 bits;

- Possui comparador analógico interno;

-

Possui Watchdog Timer programável com oscilador interno separado;- Possui serial UART (transceptor assíncrono universal) programável;

- Possui interface serial Master/Slave SPI.

d) Características Especiais do Microcontrolador:

- Modos Low-power Idle e Power Down;

- Fontes de interrupções externas e internas.

Page 161: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 161/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 161

15.3. Encapsulamento

Figura 15.2: Disposição dos pinos nos encapsulamentos DIP e PLCC.

15.4. Descrição Geral

O AT90S8515 é um microcontrolador CMOS de 8 bits de baixo consumobaseado na arquitetura AVR RISC. A execução de instruções simples em um ciclode clock (1 MIPS por MHz) permite que o projeto possa ser otimizado quanto àvelocidade ou quanto ao consumo (quanto maior a velocidade, maior é o consumo).

15.5. Diagrama em Blocos

O diagrama em blocos é mostrado na Figura 15.3.

Page 162: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 162/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 162

Figura 15.3: Diagrama em blocos do AT90S8515.

Page 163: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 163/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 163

15.6. Descrição dos Pinos

- VCC – Alimentação;

-

GND – Terra;

- Port A (PA7...PA0) – Porta de entrada/saída (bidirecional) de 8 bits. Possuiresistores de pull-up internos (programável para cada bit). Podem fornecer até 20mA de corrente. Na condição de reset, o Port A ficará em tri-state (altaimpedância). Uma segunda função do Port A é como entrada/saída dobarramento multiplexado de endereços/dados usado no acesso à SRAM externa;

- Port B (PB7...PB0) – Porta de entrada/saída (bidirecional) de 8 bits. Possuiresistores de pull-up internos (programável para cada bit). Podem fornecer até 20

mA de corrente. Na condição de reset, o Port B ficará em tri-state (altaimpedância). Esse port possui várias funções especiais que serão vistasposteriormente;

- Port C (PC7...PC0) – Porta de entrada/saída (bidirecional) de 8 bits. Possuiresistores de pull-up internos (programável para cada bit). Podem fornecer até 20mA de corrente. Na condição de reset, o Port C ficará em tri-state (altaimpedância). Uma segunda função do Port C é como saída do barramento deendereços usado no acesso à SRAM externa;

-

Port D (PD7...PD0) – Porta de entrada/saída (bidirecional) de 8 bits. Possuiresistores de pull-up internos (programável para cada bit). Podem fornecer até 20mA de corrente. Na condição de reset, o Port D ficará em tri-state (altaimpedância). Esse port possui várias funções especiais que serão vistasposteriormente;

- RESET – Entrada de reset. Um nível baixo nesse pino reiniciará omicrocontrolador;

- XTAL1 – Entrada para o amplificador inversor do oscilador e entrada de clockpara o circuito;

- XTAL2 – Saída do amplificador inversor do oscilador;

- ICP – Entrada para a função Timer/Counter1 Input Capture;

- OC1B – Saída para a função de Timer/Counter1 Output CompareB;

Page 164: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 164/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 164

- ALE – Adress Latch Enable – Saída usada quando uma memória externa estáconectada. Ao acessar externamente a memória, se ALE for alto, no barramentoAD0-7 teremos a parte baixa do endereço e isso habilita o latch para obarramento de endereços. Quando ALE for baixo isso desabilitará o latch e obarramento AD0-7 será usado como barramento de dados.

15.7. Oscilador

A entrada XTAL1 e a saída XTAL2 estão conectadas diretamente em umamplificador inversor usado como oscilador interno. Nesse caso, externamente deveser conectado um cristal de quartzo na frequência de operação.

Um outro modo de gerar um sinal de clock é desconectar a saída XTAL2 einjetar um sinal de clock na entrada XTAL1.

15.8. Arquitetura

O AT90S8515 contém, internamente, 32 registradores uso geral de 8 bitscada, que podem ser acessados em um único ciclo de clock.

Seis desses 32 registradores podem formar três registradores de 16 bits, quesão usados como ponteiros para endereçamento indireto da memória de dados. Umdestes ponteiros de endereços também é usado como ponteiro de endereço detabelas de constantes na memória de programa. Estes registros de 16 bits são

chamados registro-X, registro-Y e registro-Z.A ULA suporta funções aritméticas e lógicas entre registradores e entreconstantes e registradores.

Os 64 primeiros bytes de endereço da RAM interna são usados como espaçode memória de entrada/saída (I/O Memory). É neste espaço de memória que estãolocalizados os registradores de controle, os temporizadores/contadores e outrosperiféricos.

Page 165: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 165/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 165

Figura 15.4: Arquitetura interna do AT90S8515.

A família AVR utiliza o conceito de arquitetura Harvard, que separa a memóriae os barramentos de programa e dados. A memória de programa é executada emum "pipeline" com dois estágios. Enquanto uma instrução está sendo executada, apróxima está sendo trazida da memória de programa. Isso possibilita a execução deinstruções em cada ciclo de clock. A memória de programa é uma memória Flash

programável no sistema. A SRAM interna possui 512 bytes.Todas as interrupções possuem um vetor de interrupção separado e a tabela

de vetores de interrupção começa no início da memória de programa.

Page 166: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 166/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 166

Figura 15.5: Memória Flash e memória RAM do AT90S8515.

15.8.1. Registradores de Uso Geral

Os 32 registradores de uso geral (R0-R31) estão localizados nos endereços00H a 1FH da SRAM interna. Praticamente todas as instruções que acessam essesregistradores são executadas em um ciclo de clock.

15.8.2. Os Registradores X, Y e Z

Os registradores R26...R31 tem outras funções especiais. Esses registradoressão usados como ponteiros de endereços na memória de dados. (R27:R26 = X;R29:R28 = Y; R31:R30 = Z).

Page 167: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 167/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 167

15.8.3. ULA – Unidade Lógica e Aritmética

A ULA tem conexão direta com os 32 registradores de uso geral. Isso permiteque instruções entre registradores sejam executadas em um ciclo de clock. Asoperações da ULA podem ser divididas em três categorias: operações aritméticas,

operações lógicas e operações de manipulação de bits.

15.8.4. Memória de Programa Flash Programável no Sistema

O AT90S8515 possui 8 Kbytes de memória de programa Flash internaprogramável no próprio sistema. A Flash é organizada como uma memória de 4 K x16, já que todas as instruções são de 16 ou 32 bits. A Flash possui mais de 1000ciclos de leitura/apagamento.

15.8.5. Memória de Dados SRAM Interna e Externa

Page 168: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 168/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 168

Figura 15.6: Organização da memória RAM interna e externa.

A SRAM interna compreende os endereços 00H até 25FH. Do endereço 00Haté 1FH estão localizados os registradores de uso geral (R0-R31). Do endereço 20Haté 5FH estão os endereços de periféricos de entrada e saída. Do endereço 60H até25FH está a memória de dados SRAM interna. A partir do endereço 260H a SRAMexterna é acessada, até o endereço FFFFH.

Se o endereço a ser acessado é maior que a SRAM interna, a SRAM externaé acessada. Quando isso ocorre os sinais de RD e RW são ativados para o acessoà SRAM.

15.8.6. Memória de Dados EEPROM

O AT90S8515 possui 512 bytes de memória de dados EEPROM. Cada bytepode ser lido ou escrito individualmente. Possui mais de 100000 ciclos deescrita/apagamento.

Page 169: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 169/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 169

15.8.7. Tempos de Acesso à Memória e Execução de Instruções

A CPU dos microcontroladores AVR utiliza o Clock do Sistema Ø, diretamentegerado do cristal externo para o chip. Não é feita nenhuma divisão interna desseClock.

A Figura 15.7 mostra os ciclos de busca e execução de instrução habilitadaspela arquitetura Harvard e o conceito de registro de acesso rápido. Este é o conceitobásico utilizado para se obter até 1 MIPS por MHz.

Figura 15.7: Ciclos de busca e execução de instruções.

A Figura 15.8 mostra a temporização interna para os registros. Em um únicociclo de Clock uma operação da ALU que usa dois registros como operandos éexecutada e o resultado é armazenado no registro de destino.

Figura 15.8: Temporização interna nos registros do AT90S8515.

15.8.8. Memória de Entrada/Saída (I/O)

Page 170: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 170/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 170

Tabela 15.1: Nomes e endereços dos registradores.

Page 171: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 171/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 171

Todos os I/Os e periféricos do AT90S8515 estão localizados no espaço deI/O. Os endereços de I/O são acessados pelas instruções IN e OUT, que podemtransferir dados entre os 32 registros de uso geral e o espaço de I/O.

Os endereços dos registros de I/O que vão de $00 até $1F são diretamenteacessíveis bit a bit usando instruções SBI e CBI. Nestes registros, o valor de umúnico bit pode ser testado usando as instruções SBIS e SBIC. Se as instruções IN eOUT forem usadas, os endereços dos I/Os vão de $00 até $3F. Se os registros deI/O forem acessados como uma SRAM, os endereços anteriores devem sersomados a $20 ($20 - $5F).

Alguns flags (indicadores) de estado são ZERADOS escrevendo UM lógiconeles.

Registrador de Status – SREG

• Bit 7 – I: Global Interrupt Enable – O bit de habilitação global de interrupçõesdeve ser setado (UM) para que as interrupções sejam habilitadas. Se o bit dehabilitação global é ZERADO, nenhuma das interrupções serão habilitadas.

• Bit 6 – T: Bit Copy Storage – As instruções de cópia de bit BLD (Bit Load) eBST (Bit Store) usam o bit T como fonte e destino para o bit manipulado. Um bit

de um registro pode ser copiado para T pela instrução de BST, e um bit em Tpode ser copiado para um bit em um registro pela instrução BLD.

• Bit 5 – H: Half Carry Flag – O flag half carry H indica que um "half carry" ocorreuem alguma operação aritmética na ALU.

• Bit 4 – S: Sign Bit, S = N ⊕ V – O bit S sempre é um OU-EXCLUSIVO entre oflag de negativo N e o flag de overflow do complemento a dois V.

• Bit 3 – V: Two’s Complement Overflow Flag – O flag de overflow nocomplemento a dois V é utilizado em operações aritméticas que manipulamnúmeros na representação complemento a dois.

• Bit 2 – N: Negative Flag – O flag de negativo N indica que ocorreu um resultadonegativo após a execução de uma subtração aritmética ou de uma operaçãológica.

Page 172: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 172/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 172

• Bit 1 – Z: Zero Flag – O flag de zero Z indica que o resultado ZERO ocorreudepois de uma subtração aritmética ou de uma operação lógica.

• Bit 0 – C: Carry Flag – O flag de carry C indica que um carry (vai-um) ocorreuem uma operação aritmética ou operação lógica.

Ponteiro de Pilha – SP

O Ponteiro de Pilha de 16-bits é constituído de dois registros de 8-bitslocalizados no espaço de I/O, nos endereços $3E ($5E) e $3D ($5D). Como oAT90S8515 suporta até 64 kB de SRAM externa, todos os 16-bits são usados.

15.8.9. Tratamento de Reset e Interrupções

O AT90S8515 possui 12 fontes de interrupção diferentes. Estas interrupçõese o RESET possuem um vetor reservado na memória de programa. Todas as

interrupções são individualmente habilitadas pelos bits de controle juntamente com obit I no registrador de status SREG.

Os vetores de RESET e Interrupções estão localizados no início da memóriade programa e podem ser vistos conforme a Tabela 15.2. Esta lista tambémdetermina os níveis de prioridade dos diferentes tipos de interrupções. O menorendereço possui o maior nível de prioridade: o RESET tem maior prioridade, depoisvem INT0 - Interrupção Externa 0, e assim por diante.

Page 173: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 173/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 173

Tabela 15.2: Endereços dos vetores de interrupções.

15.8.10. Fontes de Reset

O AT90S8515 tem três fontes de reset:

- Power-On Reset: A MCU é reiniciada quando a tensão de alimentação estáabaixo da tensão limiar de alimentação (VPOT);

- RESET Externo: A MCU é reiniciada quando um nível baixo é colocado no pinoRESET por mais de 50 ns;

- Watchdog Reset: A MCU é reiniciada quando ocorre o overflow do temporizadorWatchdog (Cão de Guarda) e o Watchdog esta habilitado.

Durante o reset, todos os registros de I/O são forçados para seus valoresiniciais e o programa começa sua execução a partir do endereço $000. A instruçãocolocada no endereço $000 deve ser um RJMP – salto relativo – instrução para arotina de reset.

15.8.11. Power-On Reset

Um circuito de Power-On Reset (POR) assegura que o dispositivo sejaresetado quando a alimentação for ligada. Um sinal vindo do oscilador interno doWatchdog Timer impede que a MCU comece durante um certo período depois deVCC alcançou a tensão limiar de Power-On – VPOT.

Page 174: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 174/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 174

15.8.12. Reset Externo

Um reset externo é gerado por um nível baixo pino RESET. Pulsos de resetmaiores do que 50 ns gerarão um reset, até mesmo se o Clock estiver parado.Pulsos com duração menor não garantirão o reset.

Quando o pulso de reset ultrapassar a tensão limiar de reset – VRST – naborda de subida, um temporizador contará um período tTOUT e ao fim desse tempo, aMCU irá iniciar a operação.

15.8.13. Reset por Watchdog

Quando o Watchdog expira, um pequeno pulso de reset com a duração de 1ciclo de XTAL é gerado. Na transição de descida deste pulso, um temporizadorcontará um período tTOUT e ao fim desse tempo, a MCU irá iniciar a operação.

15.8.14. Tratamento de Interrupções

O AT90S8515 tem dois Registradores de Controle de Máscaras deInterrupções de 8-bits:

- GIMSK – (General Interrupt Mask register) – registrador de máscaras deinterrupções gerais.

- TIMSK – (Timer/Counter Interrupt Mask register) – registrador de máscaras deinterrupções dos temporizadores/contadores.

Quando uma interrupção ocorre o bit I (Global Interruption Enable) é ZERADOe todas as interrupções são desabilitadas. O bit I é setado quando uma instrução deRetorno de Interrupção – RETI – é executada.

Quando o Contador de Programa (PC) é carregado com o endereço do vetorde interrupção atual para executar a rotina de tratamento de interrupção, o hardwarezera o flag correspondente que gerou essa interrupção.

Se uma ou mais interrupções ocorrerem enquanto o bit de habilitação globalde interrupções (I) estiver zerado, os flags de interrupções correspondentes serãosetados e assim permanecerão até que o bit de habilitação global de interrupções (I)seja setado e as interrupções serão executadas por ordem de prioridade.

Page 175: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 175/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 175

Registrador de Máscaras de Interrupções Gerais – GIMSK

• Bit 7 – INT1: External Interrupt Request 1 Enable –

O bit INT1 habilita interrupção externa 1 quando setado.

• Bit 6 – INT0: External Interrupt Request 0 Enable –

O bit INT0 habilita interrupção externa 0 quando setado.

• Bits 5..0 – Res: Reserved bits –

Esses bits são reservados no AT90S8515 e são sempre lidos como zero.

Registrador de Flags de Interrupções Gerais – GIFR

• Bit 7 – INTF1: External Interrupt Flag1 –

Quando um evento ocorre no pino INT1, um pedido de interrupção é requisitadoe o bit INTF1 é setado.

• Bit 6 – INTF0: External Interrupt Flag0 –

Quando um evento ocorre no pino INT0, um pedido de interrupção é requisitadoe o bit INTF0 é setado.

• Bits 5..0 – Res: Reserved bits –

Esses bits são reservados no AT90S8515 e são sempre lidos como zero.

Page 176: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 176/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 176

Registrador de Máscaras de Interrupções dos Temporizadores/Contadores –TIMSK

• Bit 7 – TOIE1: Timer/Counter1 Overflow Interrupt Enable –

O bit TOIE1 habilita interrupção por Overflow do Timer/Counter1 quando setado.

• Bit 6 - OCE1A: Timer/Counter1 Output CompareA Match Interrupt Enable –

O bit OCE1A habilita interrupção por comparação do valor A com o valor doTimer/Counter1 quando setado

• Bit 5 – OCIE1B: Timer/Counter1 Output CompareB Match Interrupt Enable –

O bit OCIE1B habilita interrupção por comparação do valor B com o valor doTimer/Counter1 quando setado.

• Bit 4 – Res: Reserved bit –

Bit reservado no AT90S8515 e é sempre lido como zero.

• Bit 3 - TICIE1: Timer/Counter1 Input Capture Interrupt Enable –

O bit TICIE1 habilita interrupção por evento na entrada de captura doTimer/Counter1 quando setado.

• Bit 2 – Res: Reserved bit –

Bit reservado no AT90S8515 e é sempre lido como zero.

• Bit 1 - TOIE0: Timer/Counter0 Overflow Interrupt Enable –

O bit TOIE0 habilita interrupção por Overflow do Timer/Counter0 quando setado.

• Bit 0 – Res: Reserved bit –

Bit reservado no AT90S8515 e é sempre lido como zero.

Page 177: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 177/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 177

Registrador de Flags de Interrupções dos Temporizadores/Contadores – TIFR

• Bit 7 - TOV1: Timer/Counter1 Overflow Flag –

O flag TOV1 é setado quando um overflow ocorre no Timer/Counter1.

• Bit 6 - OCF1A: Output Compare Flag 1A –

O bit OCF1A é setado quando o valor do Timer/Counter1 e valor contido noOCR1A – Registrador de Comparação de Saída 1A.

• Bit 5 - OCF1B: Output Compare Flag 1B –

O bit OCF1B é setado quando o valor do Timer/Counter1 e valor contido noOCR1B – Registrador de Comparação de Saída 1B.

• Bit 4 – Res: Reserved bit –

Bit reservado no AT90S8515 e é sempre lido como zero.

• Bit 3 – ICF1: Input Capture Flag 1 –

O bit ICF1 é setado para sinalizar que um evento de captura ocorreu no pino ICPe que o valor do Timer/Counter1 foi transferido para o registrador de captura –ICR1.

• Bit 2 – Res: Reserved bit –

Bit reservado no AT90S8515 e é sempre lido como zero.

• Bit 1 – TOV: Timer/Counter0 Overflow Flag –

O bit TOV0 é setado quando ocorre um overflow do Timer/Counter0.

• Bit 0 – Res: Reserved bit –

Bit reservado no AT90S8515 e é sempre lido como zero.

Page 178: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 178/236

Page 179: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 179/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 179

• Bit 5 – SE: Sleep Enable –

O bit SE deve ser setado para fazer a MCU entrar no modo Sleep quando ainstrução SLEEP for executada.

• Bit 4 – SM: Sleep Mode –

O bit SM seleciona os dois modos de Sleep disponíveis. Quando SM é zerado, oModo Idle é selecionado como modo Sleep. Quando SM é setado, o Modo PowerDown é selecionado como modo Sleep.

• Bit 3, 2 – ISC11, ISC10: Interrupt Sense Control 1 bit 1 and bit 0 –

Os bits ISC11 e ISC10 definem de que maneira a interrupção externa 1 deveráser reconhecida:

Tabela 15.3: Eventos reconhecidos pela interrupção externa 1.

• Bit 1, 0 – ISC01, ISC00: Interrupt Sense Control 0 bit 1 and bit 0 –

Os bits ISC01 e ISC00 definem de que maneira a interrupção externa 0 deveráser reconhecida:

Tabela 15.4: Eventos reconhecidos pela interrupção externa 0.

15.8.16. Modos de Sleep

Para entrar nos modos Sleep, o bit SE no MCUCR deve ser setado e umainstrução de SLEEP deve ser executada. Se uma interrupção ocorre enquanto aMCU está em um modo Sleep, o MCU acorda, executa a rotina de interrupção, eretoma a execução da instrução depois de SLEEP. Os conteúdos dos registros, daSRAM e da memória de I/O permanecem inalterados. Se um Reset ocorre durantemodo Sleep, a MCU acorda e executa do vetor RESET.

Page 180: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 180/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 180

Modo Idle

Se o bit de SM é zerado, a instrução SLEEP força a MCU para o Modo Idle,que pára a CPU, mas permite que Timer/Counters, Watchdog e Interrupçõescontinuem operando. Isto permite que a MCU possa acordar com uma interrupção

externa ou overflow dos timers ou reset do Watchdog. Quando o MCU acorda nomodo Idle, a CPU inicia a execução do programa imediatamente.

Modo Power Down

Quando o bit SM é setado, a instrução de SLEEP força a MCU no modoPower Down. Neste modo, oscilador externo é desligado, enquanto as interrupçõesexternas e o Watchdog (se habilitado) continuam operando. Só um Reset externo ouum Reset por Watchdog (se habilitado) ou uma interrupção externa por nível INT0 ouINT1 podem acordar a MCU. Se uma interrupção externa por nível é usada para

acordar a MCU do modo Power Down, o nível baixo deve ser mantido durante umtempo maior do que o período de timeout do reset (tOUT). Caso contrário, a MCU nãoacordará.

15.9. Temporizadores/Contadores

O AT90S8515 possui dois Timer/Counters – um temporizador/contador de 8bits e um temporizador/contador de 16 bits. Os temporizadores/contadores possuemseleção individual de clock, que vem de um mesmo contador de 10 bits (Prescaler).

Ambos os Timer/Counters podem ser usados como temporizadores com um clockinterno como base de tempo ou como contador utilizando o pino externo (T0 ou T1)como entrada de contagem.

Page 181: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 181/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 181

Figura 15.9: Circuito lógico dos temporizadores/contadores.

15.9.1. Prescaler (Divisor) dos Temporizadores/Contadores

As quatro seleções de razões de clock (vindos do prescaler) são: CK/8,CK/64, CK/256 e CK/1024 onde CK é o clock do oscilador. As razões de clock, comoCK ou uma fonte externa ou parado podem ser as fontes de clock para os dois

Timer/Counters.

15.9.2. Temporizador/Contador0 de 8 bits

As fontes de clock para o Timer/Counter0 (8 bits) podem ser o clock CK, oclock CK dividido (através do prescaler) ou pino externo. Além disso, oTimer/Counter0 pode ser parado. Isto pode ser configurado através do registrador deControle do Timer/Counter0 – TCCR0. O flag de overflow encontra-se no registradorde Flags de Interrupção do Timer/Counter – TIFR.

Os bits de controle encontram-se no registro de Controle do Timer/Counter0 –

TCCR0. O bit de habilitação da interrupção por overflow do Timer/Counter0encontra-se no registro de Máscaras de Interrupções dos Timer/Counters – TIMSK.

Page 182: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 182/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 182

Registrador de Controle do Temporizador/Contador0 - TCCR0

• Bits 7..3 – Res: Reserved bits –

Esses bits são reservados no AT90S8515 e são sempre lidos como zero.

• Bits 2,1,0 - CS02, CS01, CS00: Clock Select0, bit 2,1 and 0 –

Os bits 2, 1 e 0 da Seleção de Clock definem a fonte de clock do Timer/Counter0,conforme a Tabela 15.5.

Tabela 15.5: Fontes de clock para o Timer/Counter 0.

A condição de Stop desabilita o Timer/Counter0. As razões de CK são obtidasdiretamente do clock do oscilador. Se o pino externo é usado com entrada de clockdo Timer/Counter0, transições em PB0/(T0) irão ser contadas mesmo que o pinoseja configurado como saída.

15.9.3. Temporizador/Contador0 – TCNT0

O Timer/Counter0 é um registrador com acesso para leitura e escrita. Se oTimer/Counter0 é escrito e uma fonte de clock está presente, o Timer/Counter0continua contando a partir do ciclo de clock seguinte à operação de escrita.

Page 183: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 183/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 183

15.9.4. Temporizador/Contador1 de 16 bits

As fontes de clock para o Timer/Counter1 (16 bits) podem ser o clock CK, oclock CK dividido (através do prescaler) ou pino externo. Além disso, oTimer/Counter1 pode ser parado. Isto pode ser configurado através do registrador de

Controle do Timer/Counter1 – TCCR1A e TCCR1B. Os diferentes flags de status(overflow, comparação e captura de evento) encontram-se no registrador de Flagsde Interrupção do Timer/Counter – TIFR. Os bits de controle encontram-se noregistro de Controle do Timer/Counter1 – TCCR1A e TCCR1B. Os bits dehabilitações de interrupções Timer/Counter1 encontram-se no registro de Máscarasde Interrupções dos Timer/Counters – TIMSK.

O Timer/Counter1 possui duas funções de comparação que utilizam osregistradores de Saída de Comparação 1 A e B – OCR1A e OCR1B como fontes dedados para serem comparados com o valor do Timer/Counter1. As funções deComparação incluem um opcional reinício do contador quando o valor decomparação A for atingido e ações nos pinos de Saída de Comparação para ambosos valores de comparação A e B.

O Timer/Counter1 também pode ser usado como um Modulador por Largurade Pulso (PWM) de 8, 9 ou 10 bits. Neste modo, o contador e os registradoresOCR1A/OCR1B são utilizados para formarem um duplo PWM.

A função de Captura de Eventos do Timer/Counter1 realiza a transferência doconteúdo do Timer/Counter1 para o registrador de Captura – ICR1, ocasionado porum evento externo no pino de Entrada de Captura de Evento – ICP. Os bits quecontrolam estas funções estão localizados no registrador de Controle doTimer/Counter1 – TCCR1B. Além disso, o Comparador Analógico também pode serusado para gerar um evento de captura do Timer/Counter1.

Registrador A de Controle do Temporizador/Contador1 – TCCR1A

• Bits 7,6 – COM1A1, COM1A0: Compare Output Mode1A, bits 1 and 0 –

Os bits de controle COM1A1 e COM1A0 determinam qual a ação no pino desaída quando o valor do Timer/Counter1 for igual ao valor de comparação noregistrador de Saída de Comparação – OCR1A. Essa ação afetará o pino OC1A –Saída de Comparação A.

• Bits 5,4 - COM1B1, COM1B0: Compare Output Mode1B, bits 1 and 0 –

Os bits de controle COM1B1 e COM1B0 determinam qual a ação no pino desaída quando o valor do Timer/Counter1 for igual ao valor de comparação noregistrador de Saída de Comparação – OCR1B. Essa ação afetará o pino OC1B –Saída de Comparação B.

Page 184: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 184/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 184

A Tabela 15.6 mostra as configurações desses bits para o modo decomparação.

Tabela 15.6: Configuração no modo de comparação.

No modo PWM, estes bits tem funções diferentes.

• Bits 3..2 – Res: Reserved bits –

Esses bits são reservados no AT90S8515 e são sempre lidos como zero.

• Bits 1..0 – PWM11,PWM10: Pulse Width Modulator Select Bits 1 and 0 –

Esses bits selecionam o modo PWM, conforme a Tabela 15.7.

Tabela 15.7: Definição do número de bits para o modo PWM.

Registrador B de Controle do Temporizador/Contador1 – TCCR1B

• Bit 7 – ICNC1: Input Capture1 Noise Canceler (4 CKs) –

Quando o bit ICNC1 for ZERO, o eliminador de ruído da entrada de captura édesabilitado. Uma transição de subida ou descida no pino ICP causará a capturado Timer/Counter1. Quando o bit ICNC1 for UM, quatro amostras sucessivasserão amostradas no ICP – pino de entrada de captura, e todas as amostrasdevem ser iguais conforme a configuração do bit ICES1.

• Bit 6 – ICES1: Input Capture1 Edge Select –

Page 185: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 185/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 185

Se o bit ICES1 for zerado, o conteúdo do Timer/Counter1 é transferido para oregistrador de Captura – ICR1 – na transição de descida no pino de Captura –ICP.

Se o bit ICES1 for setado, o conteúdo do Timer/Counter1 é transferido para oregistrador de Captura – ICR1 – na transição de subida no pino de Captura – ICP.

• Bits 5, 4 – Res: Reserved bits –

Esses bits são reservados no AT90S8515 e são sempre lidos como zero.

• Bit 3 – CTC1: Clear Timer/Counter1 on Compare Match –

Se o bit CTC1 for setado, o Timer/Counter1 é forçado a $0000 no ciclo de clockapós o Timer/Counter1 ser igual ao valor de comparação A. Se o bit CTC1 forzerado, o Timer/Counter1 continua contando e seu valor não é alterado.Dependendo do divisor de clock utilizado, a função de comparação do valor doTimer/Counter1 pode se comportar de maneira diferente. Se o divisor de clock for

1, e o registrador de comparação A for carregado com o valor C, a contagem comCTC1 setado fica:

... | C-2 | C-1 | C | 0 | 1 | ...

Se o divisor for configurado para 8, a contagem será:

... | C-1, C-1, C-1, C-1, C-1, C-1, C-1, C-1 | C, 0, 0, 0, 0, 0, 0, 0 | ...

No modo PWM, este bit não tem função.

• Bits 2,1,0 – CS12, CS11, CS10: Clock Select1, bit 2,1 and 0 –

Os bits 2, 1 e 0 da Seleção de Clock definem a fonte de clock do Timer/Counter0,conforme a Tabela 15.8.

Page 186: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 186/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 186

Tabela 15.8: Fontes de clock para o Timer/Counter 1.

A condição de Stop desabilita o Timer/Counter1. As razões de CK são obtidasdiretamente do clock do oscilador. Se o pino externo é usado com entrada de clockdo Timer/Counter1, transições em PB1/(T1) irão ser contadas mesmo que o pinoseja configurado como saída.

15.9.5. Temporizador/Contador1 – TCNT1H e TCNT1L

Este registrador de 16 bits é o Timer/Counter1. Para assegurar que ambos os

bytes alto e baixo sejam lidos ou escritos simultaneamente pela CPU, o acesso aesses registradores é feito através de um registrador temporário de 8 bits (TEMP).

• Escrita no TCNT1 Timer/Counter1 – Quando a CPU escreve no byte altoTCNT1H, o dado a ser escrito é colocado no registrador TEMP. Depois, quando aCPU escreve o byte baixo TCNT1L, este byte é combinado com o byte doregistrador TEMP e todos os 16 bits são escritos simultaneamente no registradorTCNT1 Timer/Counter1. Dessa forma, o byte alto TCNT1H deve ser acessadoprimeiro para uma escrita completa de 16 bits.

• Leitura do TCNT1 Timer/Counter1 – Quando a CPU lê o byte baixo TCNT1L, odado do byte baixo TCNT1L é enviado para a CPU e o dado do byte altoTCNT1H é colocado no registrador TEMP. Quando a CPU lê os dados do bytealto TCNT1H, a CPU recebe os dados do registrador TEMP. Dessa forma, o bytebaixo TCNT1L deve ser acessado primeiro para uma leitura completa de 16 bits.

O Timer/Counter1 é um contador ascendente/descendente (no modo PWM)com acesso para leitura e escrita. Se o Timer/Counter1 é escrito e uma fonte de

Page 187: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 187/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 187

clock é selecionada, o Timer/Counter1 continua contando no ciclo de clock posteriorà escrita do valor.

Registrador de Saída de Comparação do Temporizador/Contador1 – OCR1AH eOCR1AL

Registrador de Saída de Comparação do Temporizador/Contador1 – OCR1BH eOCR1BL

Os registradores de comparação são todos de 16 bits com acessos paraleitura ou escrita. Os registradores de comparação do Timer/Counter1 contêm osvalores a serem comparados continuamente com o valor do Timer/Counter1. Asações que serão executadas quando o valor de comparação for igual ao valor doTimer/Counter1 estão especificadas no registrador de controle e status doTimer/Counter1.

O evento de igualdade irá setar o flag de interrupção de comparação no ciclode clock seguinte ao evento da comparação.

Os registradores de comparação – OCR1A e OCR1B – são registradores de16 bits. Para assegurar que ambos os bytes alto e baixo sejam lidos ou escritos

simultaneamente pela CPU, o acesso a esses registradores é feito através de umregistrador temporário de 8 bits (TEMP).

Page 188: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 188/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 188

Registrador de Captura de Entrada do Temporizador/Contador1 – ICR1H eICR1L

O registrador de captura de entrada é um registrador de 16 bits com acessosomente de leitura.

Quando uma transição de subida ou descida (de acordo com a configuraçãode transição para captura – ICES1) ocorre no pino de captura (ICP), o valor doTimer/Counter1 é transferido para o registrador de captura – ICR1. Ao mesmo

tempo, o flag de captura – ICF1 – é setadoO registrador de captura – ICR1 – é registrador de 16 bits. Para assegurarque ambos os bytes alto e baixo sejam lidos simultaneamente pela CPU, o acesso aesse registrador é feito através de um registrador temporário de 8 bits (TEMP).

15.9.6. Temporizador/Contador1 no modo PWM

Quando o modo PWM é selecionado, o Timer/Counter1, o registrador decomparação 1A – OCR1A e o registrador de comparação 1B – OCR1B formam umduplo PWM de 8, 9 ou 10 bits com saídas nos pinos PD5 (OC1A) e OC1B. O

Timer/Counter1 atua com um contador ascendente/descendente que conta de $0000até TOP e retorna de TOP até $0000, repetindo o ciclo.

Quando o valor do Timer/Counter1 for igual ao conteúdo de 10 bits do registradorOCR1A ou OCR1B, os pinos PD5 (OC1A) / OC1B serão setados ou zerados deacordo com as configurações dos bits COM1A1/COM1A0 ou COM1B1/COM1B0 noregistrador de Controle do Timer/Counter1 TCCR1A.

A Tabela 15.9 mostra os valores de TOP (valores máximos) do timer e dafrequência do PWM.

Tabela 15.9: Frequência do PWM em função do número de bits.

A Tabela 15.10 mostra os bits de controle usados no modo de comparação1 eno modo PWM.

Page 189: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 189/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 189

Tabela 15.10: Configuração do PWM.

Quando OCR1 contêm $0000 ou TOP, as saídas OCR1A/OCR1B sãoatualizadas para BAIXO ou ALTO na comparação seguinte, de acordo com asconfigurações dos bits COM1A1/COM1A0 ou COM1B1/COM1B0.

A Tabela 15.11 mostra a qual a saída PWM para OCR1X = $0000 ou TOP.

Tabela 15.11: Estado da saída OC1X em função da configuração do PWM.

No modo PWM, o flag de overflow do Timer/Counter1, TOV1, é setado quando ocontador chega a $0000. A interrupção por overflow do Timer/Counter1 é executadaquando o bit de overflow do Timer/Counter1 (TOV1) é setado e os bits de habilitaçãode interrupção por overflow do Timer/Counter1 e de interrupção global estejamsetados. Isso também se aplica para os flags e interrupções de comparação doTimer/Counter1.

15.10. Watchdog Timer

O Watchdog Timer utiliza um sinal de clock vindo de um oscilador internoseparado de 1 MHz. Essa é a frequência típica para uma tensão de alimentação(VCC) de 5 V. O tempo de reset do Watchdog Timer é configurado por um prescaler.A instrução WDR – Watchdog Reset – reinicia o Watchdog Timer. Até oito períodosdiferentes de clock podem ser selecionados para determinar o período de reset doWatchdog Timer. Se esse período expira sem que haja um reset do Watchdog, oAT90S8515 é resetado e o vetor de reset é executado.

Page 190: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 190/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 190

Registrador de Controle do Watchdog Timer – WDTCR

• Bits 7..5 - Res: Reserved bits –

Esses bits são reservados no AT90S8515 e sempre serão lidos como zero.

• Bit 4 - WDTOE: Watch Dog Turn-Off Enable –

Esse bit deve ser setado quando o bit WDE for zerado. Caso contrário, o watchdognão será desabilitado. Uma vez setado, o hardware irá zerar esse bit depois dequatro ciclos de clock. Esse bit é usado para se evitar a desabilitação acidental doWatchdog Timer.

• Bit 3 - WDE: Watch Dog Enable –

Quando o bit WDE for setado, o Watchdog Timer é habilitado, e se o bit WDE forzerado, o Watchdog Timer é desabilitado. O bit WDE só pode ser zerado se o bitWDTOE for setado. O procedimento para desabilitar o Watchdog Timer é mostrado aseguir:

1. Na mesma operação, escrever um UM lógico em WDTOE e WDE. O UM lógicodeve ser escrito em WDE mesmo que o bit esteja setado para iniciar a operação

de desabilitação do Watchdog Timer.2. Durante os próximos quatro ciclos de clock, escrever um ZERO lógico em WDE.

Isso desabilita o Watchdog Timer.

Bits 2..0 - WDP2, WDP1, WDP0: Watch Dog Timer Prescaler 2, 1 and 0 –

Os bits WDP2, WDP1 e WDP0 determinam qual a divisão de clock que será usadaquando o Watchdog Timer estiver habilitado. Os diferentes valores de prescaler e osperíodos de tempo são mostrados na Tabela 15.12.

Page 191: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 191/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 191

Tabela 15.12: Configuração do tempo de estouro do watchdog timer.

A instrução WDR – Watchdog Reset – sempre deve ser executada antes queo Watchdog Timer seja habilitado. Isso assegura que o período de reset esteja deacordo com o período que foi configurado. Se o Watchdog Timer for habilitado semum reset, ele pode não começar a contar do valor zero.

15.11. Acesso para Leitura/Escrita na EEPROM

Os registradores de acesso à EEPROM estão disponíveis na memória de I/O.O tempo de acesso para escrita é de 2,5 a 4 ms, dependendo da tensão dealimentação (VCC). Se o programa contém dados que serão escrita na EEPROM,algumas precauções devem ser tomadas.

Em fontes de alimentação filtradas, a tensão de alimentação (VCC) demoracerto tempo para estabilizar. Isso pode fazer com que o dispositivo permaneçafuncionando com tensões menores do que a tensão especificada como mínima para

o clock usado. Nessas condições, a CPU pode executar saltos (jumps) no programae eventualmente executar uma rotina de escrita na EEPROM.

Para garantir a integridade da EEPROM, um circuito externo de reset(detector de sub-tensão) deve ser usado. Um procedimento específico de escrita naEEPROM deve ser seguido para prevenir escritas errôneas. Quando a EEPROM éacessada para leitura ou escrita, a CPU é parada por dois ciclos de clock antes dapróxima instrução ser executada.

Registrador de Endereços da EEPROM – EEARH e EEARL

Page 192: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 192/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 192

Os registradores de endereços da EEPROM – EEARH e EEARL especificamqual o endereço a ser acessado na EEPROM (o AT90S8515 possui 512 bytes deEEPROM). Os 512 bytes são acessados de maneira linear.

Registrador de Dados da EEPROM – EEDR

• Bits 7..0 - EEDR7..0: EEPROM Data –

Para operações de escrita na EEPROM, o registrador EEDR contém o dado a serescrito na EEPROM no endereço dado pelo registrador EEAR. Para operações deleitura, o registrador EEDR contém o dado lido da EEPROM no endereço dado pelo

registrador EEAR.

Registrador de Controle da EEPROM – EECR –

• Bit 7..3 - Res: Reserved bits –Esses bits são reservados no AT90S8515 e sempre serão lidos como zero.

• Bit 2 - EEMWE: EEPROM Master Write Enable –

Se bit EEMWE estiver setado, setando o bit EEWE uma escrita é executada naEEPROM no endereço selecionado. Se o bit EEMWE estiver zerado, setar o bitEEWE não terá nenhum efeito. Quando o bit EEMWE for setado por software, ohardware zera o bit depois de quatro ciclos de clock.

• Bit 1 - EEWE: EEPROM Write Enable –O bit EEWE é um sinal de habilitação da escrita na EEPROM. Quando um endereçoe um dado estão corretamente colocados, o bit EEWE deve ser setado para que ovalor seja escrito na EEPROM. O bit EEMWE deve estar setado quando o UM lógicofor escrito em EEWE, caso contrário, a escrita na EEPROM não ocorrerá. O seguinteprocedimento deve ser seguindo para a execução de uma escrita na EEPROM:

1. Esperar até que EEWE seja zero.

2. Escrever o novo endereço da EEPROM nos registradores EEARL e EEARH.

Page 193: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 193/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 193

3. Escrever o dado a ser escrito no registrador EEDR.

4. Escrever UM lógico no bit EEMWE no registrador EECR.

5. Durante os próximos quatro ciclos de clock depois de setar o bit EEMWE,escrever UM lógico no bit EECR.

Passado o tempo de acesso à escrita (tipicamente 2,5 ms com VCC = 5V e 4ms com VCC = 2,7V), o bit EEWE é zerado pelo hardware. O software pode esperareste bit se tornar zero antes de escrever o próximo byte. Quando o bit EEWE forsetado, a CPU é parada por dois ciclos antes da próxima instrução ser executada.

Importante: Uma interrupção dos passos 4 e 5 gerará uma falha no ciclo de escrita.Se uma rotina de interrupção que acessa a EEPROM é interrompida por outroacesso à EEPROM, os registradores EEAR e EEDR serão modificados, causandouma falha no acesso que foi interrompido. É recomendado zerar o bit I (GlobalInterrupt Flag – SREG) durante os quatro últimos passos para evitar problemas no

acesso.

• Bit 0 - EERE: EEPROM Read Enable –

O bit EERE é um sinal de habilitação para leitura da EEPROM. Quando o endereçocorreto foi colocado no registrador EEAR, o bit EERE deve ser setado. Quando o bitEERE for zerado pelo hardware, o dado lido está disponível no registrador EERE. Oacesso para leitura da EEPROM é de apenas uma instrução e não é necessárioverificar o bit EERE. Quando o bit EERE estiver setado, a CPU é parada por doisciclos antes da execução da próxima instrução. O software poderia verificar o bitEEWE antes de iniciar uma operação de leitura. Se a operação de escrita estiversendo executada quando um novo dado ou endereço é escrito nos registradores de

I/O da EEPROM, a operação de escrita será interrompida e o resultado éimprevisível.

15.11.1. Prevenção de Perdas de Dados na EEPROM

Em condições de baixa tensão de alimentação (VCC), dados na EEPROMpodem ser perdidos porque a tensão de alimentação é muito baixa para a CPU epara a EEPROM operarem de maneira correta.

A perda de dados da EEPROM pode ocorrer de duas maneiras quando a tensão

está muito baixa.Primeiro, a sequência de escrita na EEPROM requer uma tensão mínima paratrabalhar corretamente. Segundo, a CPU pode executar instruções de maneiraincorreta se a tensão de alimentação for muito baixa.

Algumas recomendações para se evitar a perda de dados da EEPROM:

1. Manter o RESET do AVR ativo (nível baixo) quando a tensão de alimentaçãoestiver muito baixa. Isso pode ser feito com um circuito externo de reset (Brown-Out Detector – BOD).

Page 194: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 194/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 194

2. Manter o AVR em Power Down Mode quando a tensão de alimentação estivermuito baixa. Isso evita que a CPU decodifique e execute instruções, protegendoefetivamente os registradores da EEPROM contra escritas.

3. Armazenar constantes na memória Flash se o software não precisar alterar essedado. A memória Flash não pode ser modificada pela CPU e, por isso, o dadonunca será perdido.

15.12. UART

O AT90S8515 possui um Receptor e Transmissor Assíncrono Universal(UART) full duplex (com registradores de transmissão e recepção separados). Asprincipais características são:

• Gerador de baud rate (taxa de transmissão/recepção) pode gerar várias taxas(bps).

• Altas taxas de baud com cristais de baixa frequência.

• 8 ou 9 bits de dados.

• Filtro contra ruído.

• Detecção de Overrun (perda de dado).

• Detecção de Framing Error (falha na detecção do STOP bit).

• Detecção de Falso START bit.

• Três interrupções separadas: TX Complete (transmissão completada), TX DataRegister Empty (registrador de dados vazio) e RX Complete (recepção

completada).

15.12.1. Transmissão de Dados

A transmissão de dados é iniciada pela escrita do dado a ser transmitido noregistrador de dados da UART – UDR.

Se o bit 10 (11) do registrador de deslocamento do transmissor tiver sidotransmitido, um novo dado é transferido do UDR para o registrador de deslocamento.Nesse momento, o bit UDRE (registrador de dados da UART vazio) no registrador destatus da UART – USR, é setado.

Quando esse bit for UM, o UDR da UART está pronto para receber o próximocaracter. No momento que um dado é transferido do UDR para o registrador dedeslocamento de 10 (11) bits, o bit 0 do registrador de deslocamento é zerado (bitSTART) e o bit 9 ou 10 é setado (bit STOP). Se o dado possui 9 bits (o bit CHR9 noregistrador de controle da UART, UCR, é setado), o bit TXB8 no UCR é transferidopara o bit 9 do registrador de deslocamento do transmissor.

Depois da transferência do UDR para o registrador de deslocamento, o bitSTART é transmitido na frequência de clock do Baud Rate (taxa de transmissão)pelo pino TXD. Em seguida, o dado é transmitido bit a bit, começando pelo menos

Page 195: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 195/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 195

significativo (LSB). Depois do bit de STOP ser transmitido, o registrador dedeslocamento é carregado se qualquer dado tenha sido escrito no UDR durante atransmissão. Durante a carga, o bit UDRE é setado. Se não existir nenhum dado noUDR a ser enviado, o UDRE permanecerá em UM até que UDR contenha um novodado. Se nenhum dado foi escrito, e o bit de STOP está presente no pino TXD porum bit de largura, o flag TX Complete, TXC, no USR é setado.

O bit TXEN no UCR habilita o transmissor da UART quando estiver setado.Se esse bit for zerado, o pino PD1 pode ser usado com um pino de I/O. Quando o bitTXEN é setado, o transmissor da UART será conectada a PD1, que será forçada aser saída independente da configuração do bit 1 do registrador DDRD (registrador dedireção do PORT D).

15.12.2. Recepção de Dados

O circuito lógico do receptor amostra o pino RXD numa frequência 16 vezesmaior do que a taxa de transmissão. Enquanto a linha é inativa, uma única amostraem nível ZERO é interpretada como sendo uma transição de descida do bit START ea sequência de detecção do bit START é iniciada. Depois da transição de descida, oreceptor amostra o pino RXD nas amostras 8, 9 e 10. Se duas ou mais amostrastiverem nível lógico UM, o bit START é considerado um ruído e o receptor volta aesperar uma nova transição de descida.

Entretanto, se um bit de START válido é detectado, a amostragem dos bitsseguintes é feita também nas amostras 8, 9 e 10. O valor lógico encontrado em pelomenos duas das três amostras é considerado como o valor do bit. Todos os bits sãodeslocados para o registrador de deslocamento da maneira como eles sãoamostrados.

Figura 15.10: Amostragem dos dados recebidos pela UART.

Quando o bit STOP entra no receptor, a maioria de três amostras deve serUM para que o bit de STOP seja aceito. Se dois ou mais amostras são ZERO, o flagFraming Error (FE) no registrador de Status da UART (USR) é setado. Antes daleitura de UDR, o usuário deve verificar sempre o bit FE para detectar o Framing

Error.Mesmo que o bit de STOP não tenha sido detectado no fim da recepção de

um dado, esse dado é transferido para o UDR e o flag RXC no USR é setado. Narealidade, UDR corresponde fisicamente a dois registradores, um para transmissão eoutro para recepção de dados. Quando UDR é lido, o registrador de recepção dedados é acessado e quando é escrito, o registrador de transmissão de dados éacessado.

Page 196: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 196/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 196

Se a palavra de dados possui 9 bits (o bit CHR9 no registrador de Controle daUART, UCR, é setado), o bit RXB8 no UCR é atualizado com o bit 9 do registradorde deslocamento quando o dado é transferido para UDR.

Se UDR não foi lido e um novo dado foi recebido, o flag Overrun (OR) ésetado. Isso significa que o último dado deslocado para o registrador dedeslocamento não pôde ser transferido para UDR e será perdido. O bit OR émantido até que um dado válido no UDR seja lido

Quando o bit RXEN no registrador UCR é zerado, o receptor é desabilitado.Isso significa que o pino PD0 pode ser usado como um pino de I/O. Quando o bitRXEN é setado, o receptor da UART é conectado a PD0, que é forçado a ser umaentrada, independente da configuração do bit 0 do registrador DDRD (registrador dedireção do PORT D). Se PD0 é forçado como entrada pela UART, o bit 0 de PORTDpode ainda ser usado para controlar o resistor de pull-up no pino.

Se o bit CHR9 no registrador UCR é setado, os caracteres transmitidos erecebidos tem 9 bits mais os bits de START e STOP. O 9º bit a ser transmitido é obit TXB8 no registrador UCR. O 9º bit recebido é o bit RXB8 no registrador UCR.

15.12.3. Controle da UART

Registrador de Dados da UART – UDR

O registrador UDR fisicamente corresponde a dois registradores separadosque compartilham o mesmo endereço de I/O. Ao escrever no registrador, oregistrador de transmissão da UART é escrito. Ao ler do registrador, o registrador derecepção da UART é lida.

Registrador de Status da UART – USR

O USR é um registrador que contém informações de status da UART.

• Bit 7 – RXC: UART Receive Complete –

Esse bit é setado quando o dado recebido é transferido do registrador dedeslocamento para UDR. Esse bit é setado mesmo que ocorra um framing error.

Page 197: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 197/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 197

Se o bit RXCIE no UCR estiver setado, a interrupção de recepção completa daUART será executada se o bit RXC estiver setado. RXC é zerado com a leiturade UDR.

• Bit 6 – TXC: UART Transmit Complete –

Esse bit é setado quando um dado (incluindo o bit STOP) no registrador dedeslocamento foi transmitido e nenhum novo dado foi escrito no UDR. Quando obit TXCIE no UCR é setado, se o bit TXC é setado, uma interrupção portransmissão completa na UART é executada. TXC é zerado por hardware pelaexecução da rotina de tratamento da interrupção.

• Bit 5 – UDRE: UART Data Register Empty –

Esse bit é setado quando um dado escrito no UDR é transferido para oregistrador de deslocamento do transmissor. Isso indica que o transmissor estápronto para receber um novo caracter para transmissão. Quando o bit UDRIE no

UCR é setado, e o bit UDRE é setado, a interrupção por registro de dados daUART vazio será executada. Quando uma interrupção ocorre, a rotina deinterrupção por registrador de dados da UART vazio deve escrever no UDR parazerar o bit UDRE, caso contrário, uma nova interrupção irá ocorrer quando arotina de interrupção terminar. UDRE é setado durante o reset para indicar que otransmissor está pronto.

• Bit 4 – FE: Framing Error –

Esse bit é setado quando um Framing Error é detectado, ou seja, um bit deSTOP foi amostrado como ZERO. O bit FE é zerado quando o bit de STOP deum dado é recebido como UM.

• Bit 3 – OR: Overrun –

Esse bit é setado quando um Overrun é detectado, ou seja, quando o dado noUDR não foi lido antes do próximo dado ter sido recebido no registrador dedeslocamento.

O bit OR é mantido até que um dado válido no UDR seja lido. O bit OR é zeradoquando um dado é recebido e transferido para UDR.

• Bits 2..0 – Res: Reserved bits –

Esses bits são reservados no AT90S8515 e são sempre lidos como zero.

Page 198: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 198/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 198

Registrador de Controle da UART – UCR

• Bit 7 – RXCIE: RX Complete Interrupt Enable –

Quando esse bit é setado, se o bit RXC no USR é setado, a rotina de interrupçãopor recepção completa será executada se as interrupções estiverem habilitadas(bit I em SREG).

• Bit 6 – TXCIE: TX Complete Interrupt Enable –

Quando esse bit é setado, se o bit TXC no USR é setado, a rotina de interrupçãopor transmissão completa será executada se as interrupções estiveremhabilitadas (bit I em SREG).

• Bit 5 – UDRIE: UART Data Register Empty Interrupt Enable –

Quando esse bit é setado, se o bit UDRE no USR é setado, a rotina deinterrupção por registrador de dados da UART vazio será executada se asinterrupções estiverem habilitadas (bit I em SREG).

• Bit 4 – RXEN: Receiver Enable –

Quando setado, esse bit habilita o receptor da UART. Se o receptor estiverdesabilitado, os flags de status TXC, OR e FE não serão setados. Se esses flagsestiverem setados, desabilitar o RXEN não irá zerar esses bits.

• Bit 3 – TXEN: Transmitter Enable –

Quando setado, esse bit habilita o transmissor da UART. Se o transmissor édesabilitado durante a transmissão de um dado, a transmissão não é desabilitadaaté que os dados no registrador de deslocamento e no UDR tenham sidocompletamente transmitidos.

• Bit 2 – CHR9: 9-bit Characters –Quando CHR9 é setado, os dados transmitidos e recebidos possuem 9 bits maiso bit de START e STOP. O 9º bit é lido e escrito nos bits RXB8 e TXB8 no UCR,respectivamente. O 9º bit de dado pode ser usado como um bit de STOP extra ouum bit de Paridade.

• Bit 1 – RXB8: Receive Data Bit 8 –

Quando o bit CHR9 está setado, RXB8 é o 9º bit do dado recebido.

Page 199: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 199/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 199

• Bit 0 – TXB8: Transmit Data Bit 8 –

Quando o bit CHR9 está setado, TXB8 é o 9º bit do dado a ser transmitido.

15.12.4. Gerador de BAUD Rate

O gerador de baud rate é um divisor de frequência que gera taxas detransmissão de acordo com a seguinte equação:

Figura 15.11: Equação que relaciona a frequência do oscilador com o baud rate.

Registrador de BAUD Rate da UART - UBRR

O registrador UBRR é um registrador de leitura/escrita que especifica o baudrate de acordo com a equação anterior.

15.13. Comparador Analógico

O comparador analógico compara tensões da entrada positiva PB2 (AIN0) eda entrada negativa PB3 (AIN1). Quando a tensão na entrada positiva PB2 (AIN0) émaior do que a tensão na entrada negativa PB3 (AIN1), a saída do comparador

analógico, ACO, é setado. A saída do comparador pode ser usada para disparar afunção de entrada de captura do Timer/Counter1. O comparador também podedisparar uma interrupção separada, exclusiva para o comparador analógico. Ousuário pode selecionar a ocorrência da interrupção na borda de subida, descida ouinversão da saída do comparador.

Page 200: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 200/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 200

Registrador de Controle e Status do Comparador Analógico – ACSR

• Bit 7 – ACD: Analog Comparator Disable –

Quando esse bit é setado, o comparador analógico é desligado. Caso contrário, ocomparador analógico ficará ligado.

• Bit 6 – Res: Reserved bit –

Esse bit é reservado no AT90S8515 e é sempre lido como zero.

• Bit 5 – ACO: Analog Comparator Output –

O bit ACO está diretamente conectado à saída do comparador analógico.

• Bit 4 – ACI: Analog Comparator Interrupt Flag –

Esse bit é setado quando um evento definido por ACIS1 e ACIS0 ocorre na saídado comparador. A rotina de interrupção do comparador analógico é executada seo bit ACIE está setado e o bit I no SREG está setado.

• Bit 3 – ACIE: Analog Comparator Interrupt Enable –

Quando o bit ACIE é setado e o bit I no registrador de Status (SREG) estásetado, a interrupção do comparador analógico está ativada. Se for zerado, ainterrupção será desabilitada.

• Bit 2 – ACIC: Analog Comparator Input Capture Enable –

Se esse bit for setado, isso habilita a função de captura do Timer/Counter1 a serdisparada pelo comparador analógico. Neste caso, a saída do comparador éconectada diretamente na lógica da entrada de captura, fazendo com que ocomparador utilize o redutor de ruído e as características de seleção de transiçãoda interrupção de captura do Timer/Counter1. Se esse bit for zerado, a conexãoentre o comparador analógico e a função de entrada de captura não será feita.

• Bits 1,0 – ACIS1, ACIS0: Analog Comparator Interrupt Mode Select –

Esses bits determinam qual evento no comparador irá disparar a interrupção docomparador analógico. As configurações de ACIS1/ACIS0 são mostradas naTabela 15.13.

Page 201: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 201/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 201

Tabela 15.13: Configuração de eventos no comparador analógico.

15.14. Interface com SRAM Externa

A interface com uma SRAM consiste:

• Port A: Barramento multiplexado entre a parte baixa do barramento de endereçoe o barramento de dados;

• Port C: Parte alta do barramento de endereços;

• Pino ALE: Address latch enable – Habilitação do Latch de Endereços;

• Pinos RD e WR : Sinais de controle de Leitura e Escrita.

A SRAM de dados externa é habilitada quando o bit SRE – bit de habilitaçãoda SRAM externa no registrador de controle da MCU, o MCUCR – é setado e asdefinições de direção do registrador DDRA serão anuladas. Quando o bit SRE ézerado, a SRAM externa é desabilitada e as configurações de direção dos pinospodem ser usadas.

Quando ALE vai de ALTO para BAIXO, um endereço válido está no Port A.ALE se mantém em BAIXO durante a transferência de dados. RD e WR sãoativados apenas durante o acesso à SRAM externa. A Figura 15.12 mostra comoconectar uma SRAM externa usando um AVR e 8 latches que são habilitados com Gem ALTO. Tipicamente, a SRAM externa é acessada em três ciclos. Se um estadode espera (WAIT STATE) for necessário, o bit SRW no registrador MCUCR deve sersetado.

Note que o PORTA só é um barramento de dados em um ciclo. Assim que oacesso aos dados termina, PORTA volta a ser o barramento baixo de endereços.

Page 202: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 202/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 202

Figura 15.12: Conexão de uma SRAM Externa com um AVR.

15.15. Portas de Entrada/Saída

Todos os ports têm a funcionalidade de Ler-Modificar-Escrever como um portdigital I/O. Isso significa que a direção de um pino do port pode ser trocada sem quea direção de outro pino seja trocada com as instruções SBI e CBI. O mesmo seaplica para a troca do valor do drive (se configurado como saída) ouhabilitando/desabilitando o resistor de pull-up (se configurado como entrada).

15.15.1. Port A

O port A é um port bidirecional de 8 bits. Três endereços na memória de I/Osão usados para alocar o Port A, um para o registrador de dados – PORTA,$1B($3B), registrador de direção dos dados – DDRA, $1A($3A) e os pinos deentrada do port A – PINA, $19($39). O endereço dos pinos de entrada do port A éapenas de leitura, enquanto o registrador de dados e de direção de dados são deleitura/escrita.

Todos os pinos do port possuem resistores de pull-up individualmenteselecionáveis. Os buffers de saída do port A podem fornecer 20 mA e assim acionardiretamente display de LED. Quando os pinos PA0 até PA7 são usados comoentradas e são externamente colocadas em ZERO, elas se tornarão fontes decorrente se o resistor de pull-up interno está ativado.

Os pinos do port A podem ser usados para o acesso à uma SRAM de dadosexterna. O port A pode ser configurado para ser um barramento multiplexado entre aparte baixa dos endereços e dados durante o acesso à memória de dados externa.Nesse modo, o port A possui resistores de pull-up internos.

Quando o port A é usado para a acessar a SRAM externa pelo bit SRE –External SRAM Enable – no registrador MCUCR – registrador de controle da MCU, aconfiguração dos bits no registrador de direção de dados – DDRA – é anulada.

Page 203: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 203/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 203

Registrador de Dados do Port A – PORTA

Registrador de Direção de Dados do Port A – DDRA

Endereço dos Pinos de Entrada do Port A – PINA

O endereço dos pinos do port A – PINA – não é um registrador e esseendereço habilita o acesso ao valor físico em cada pino do port A. Ao ler o PORTA, olatch de dados do port A é lido e ao ler PINA, o valor lógico nos pinos é lido.

Port A como Entrada/Saída Digital

PAn, pino de I/O: o bit DDAn no registrador DDRA seleciona a direção dessepino. Se DDAn for UM, PAn é configurado como um pino de saída. Se DDAn forZERO, PAn é configurado como um pino de entrada. Se PORTAn for UM quando opino foi configurado como uma entrada, o resistor de pull-up MOS é ativado. Paradesligar o resistor de pull-up, o PORTAn deve ser zerado ou o pino deve serconfigurado como uma saída. Os pinos do port A estarão em tri-state quando umreset ocorre, sempre se o clock não está ativo.

A Tabela 15.14 mostra a configuração de DDAn e PORTAn.

Tabela 15.14: Configuração de cada pino do PORTA.

Page 204: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 204/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 204

15.15.2. Port B

O port B é um port bidirecional de 8 bits. Três endereços na memória de I/Osão usados para alocar o Port B, um para o registrador de dados – PORTB,$18($38), registrador de direção dos dados – DDRB, $17($37) e os pinos de entrada

do port B – PINB, $16($36). O endereço dos pinos de entrada do port B é apenas deleitura, enquanto o registrador de dados e de direção de dados são de leitura/escrita.

Todos os pinos do port possuem resistores de pull-up individualmenteselecionáveis. Os buffers de saída do port B podem fornecer 20 mA e assim acionardiretamente display de LED. Quando os pinos PB0 até PB7 são usados comoentradas e são externamente colocadas em ZERO, elas se tornarão fontes decorrente se o resistor de pull-up interno está ativado.

A Tabela 15.15 mostra as funções alternativas dos pinos do port B.

Tabela 15.15: Funções alternativas dos pinos do PORTB.

Quando os pinos são usados com outra função, os registradores DDRB ePORTB deverão ser configurados conforme a descrição da função.

Registrador de Dados do Port B – PORTB

Registrador de Direção de Dados do Port B – DDRB

Page 205: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 205/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 205

Endereço dos Pinos de Entrada do Port B – PINB

O endereço dos pinos do port B – PINB – não é um registrador e esseendereço habilita o acesso ao valor físico em cada pino do port B. Ao ler o PORTB, olatch de dados do port B é lido e ao ler PINB, o valor lógico nos pinos é lido.

Port B como Entrada/Saída Digital

PBn, pino de I/O: o bit DDBn no registrador DDRB seleciona a direção dessepino. Se DDBn for UM, PBn é configurado como um pino de saída. Se DDBn for

ZERO, PBn é configurado como um pino de entrada. Se PORTBn for UM quando opino foi configurado como uma entrada, o resistor de pull-up MOS é ativado. Paradesligar o resistor de pull-up, o PORTBn deve ser zerado ou o pino deve serconfigurado como uma saída. Os pinos do port B estarão em tri-state quando umreset ocorre, sempre se o clock não está ativo.

A Tabela 15.16 mostra a configuração de DDBn e PORTBn.

Tabela 15.16: Configuração de cada pino do PORTB.

Outras Funções do Port B

As funções alternativas dos pinos do port B são as seguintes:

• SCK – Port B, Bit 7 –SCK: pino de saída de clock no modo master, pino de entrada de clock no modoslave da SPI. Quando a SPI é habilitada como slave, esse pino é configuradocomo uma entrada, anulando as definições de DDB7. Quando a SPI é habilitadacomo master, a direção dos dados desse pino é controlada por DDB7. Quando opino é forçado a ser uma entrada, o resistor de pull-up é controlado pelo bitPORTB7.

Page 206: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 206/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 206

• MISO – Port B, Bit 6 –

MISO: pino de entrada de dados no modo master, pino de saída de dados nomodo slave da SPI. Quando a SPI é habilitada como master, esse pino éconfigurado como entrada, anulando as definições de DDB6. Quando a SPI éhabilitada como slave, a direção dos dados desse pino é controlada por DDB6.Quando o pino é forçado a ser uma entrada, o resistor de pull-up é controladopelo bit PORTB6.

• MOSI – Port B, Bit 5 –

MOSI: pino de saída de dados no modo master, pino de entrada de dados nomodo slave da SPI. Quando a SPI é habilitada como slave, esse pino éconfigurado como uma entrada, anulando as definições de DDB5. Quando a SPIé habilitada com o master, a direção dos dados desse pino é controlada porDDB5. Quando o pino é forçado a ser uma entrada, o resistor de pull-up écontrolado pelo bit PORTB5.

• SS – Port B, Bit 4 –

SS : pino de entrada de seleção do slave. Quando a SPI é habilitada como slave,esse pino é configurado como uma entrada, anulando as definições de DDB4.Como slave, a SPI é habilitada quando esse pino é colocado em BAIXO. Quandoa SPI for habilitada como master, a direção dos dados desse pino é controladapor DDB4. Quando o pino é forçado a ser uma entrada, o resistor de pull-up écontrolado pelo bit PORTB4.

• AIN1 – Port B, Bit 3 –

AIN1: entrada negativa do comparador analógico. Quando esse pino éconfigurado como uma entrada (DDR3 é zerado) e com o resistor MOS de pull-updesligado (PB3 é zerado), esse pino também é usado como a entrada negativado comparador analógico.

• AIN0 – Port B, Bit 2 –

AIN0: entrada positiva do comparador analógico. Quando esse pino éconfigurado como uma entrada (DDR2 é zerado) e com o resistor MOS de pull-updesligado (PB2 é zerado), esse pino também é usado como a entrada posiva docomparador analógico.

• T1 – Port B, Bit 1 –

T1: entrada da fonte de clock do Timer/Counter1.

• T0 – Port B, Bit 0 –

T0: entrada da fonte de clock do Timer/Counter0.

Page 207: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 207/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 207

15.15.3. Port C

O port C é um port bidirecional de 8 bits. Três endereços na memória de I/Osão usados para alocar o Port C, um para o registrador de dados – PORTC,$15($35), registrador de direção dos dados – DDRC, $14($34) e os pinos de entrada

do port C – PINC, $13($33). O endereço dos pinos de entrada do port C é apenas deleitura, enquanto o registrador de dados e de direção de dados são de leitura/escrita.

Todos os pinos do port possuem resistores de pull-up individualmenteselecionáveis. Os buffers de saída do port C podem fornecer 20 mA e assim acionardiretamente display de LED. Quando os pinos PC0 até PC7 são usados comoentradas e são externamente colocadas em ZERO, elas se tornarão fontes decorrente se o resistor de pull-up interno está ativado.

Os pinos do port C podem ser usados para o acesso à uma SRAM de dadosexterna. O port C pode ser configurado para ser o barramento da parte alta dosendereços durante o acesso à memória de dados externa.

Quando o port C é usado para a acessar a SRAM externa pelo bit SRE –External SRAM Enable – no registrador MCUCR – registrador de controle da MCU, aconfiguração dos bits no registrador de direção de dados – DDRC – é anulada.

Registrador de Dados do Port C – PORTC

Registrador de Direção de Dados do Port C – DDRC

Endereço dos Pinos de Entrada do Port C – PINC

O endereço dos pinos do port C – PINC – não é um registrador e esseendereço habilita o acesso ao valor físico em cada pino do port C. Ao ler o PORTC,o latch de dados do port C é lido e ao ler PINC, o valor lógico nos pinos é lido.

Page 208: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 208/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 208

Port C como Entrada/Saída Digital

PCn, pino de I/O: o bit DDCn no registrador DDRC seleciona a direção dessepino. Se DDCn for UM, PCn é configurado como um pino de saída. Se DDCn forZERO, PCn é configurado como um pino de entrada. Se PORTCn for UM quando o

pino foi configurado como uma entrada, o resistor de pull-up MOS é ativado. Paradesligar o resistor de pull-up, o PORTCn deve ser zerado ou o pino deve serconfigurado como uma saída. Os pinos do port C estarão em tri-state quando umreset ocorre, sempre se o clock não está ativo.

A Tabela 15.16 mostra a configuração de DDCn e PORTCn.

Tabela 15.17: Configuração de cada pino do PORTC.

15.15.4. Port D

O port D é um port bidirecional de 8 bits. Três endereços na memória de I/Osão usados para alocar o Port D, um para o registrador de dados – PORTD,$12($32), registrador de direção dos dados – DDRD, $11($31) e os pinos de entradado port D – PIND, $10($30). O endereço dos pinos de entrada do port D é apenas deleitura, enquanto o registrador de dados e de direção de dados são de leitura/escrita.

Todos os pinos do port possuem resistores de pull-up individualmenteselecionáveis. Os buffers de saída do port D podem fornecer 20 mA e assim acionardiretamente display de LED. Quando os pinos PD0 até PD7 são usados comoentradas e são externamente colocadas em ZERO, elas se tornarão fontes decorrente se o resistor de pull-up interno está ativado.

A Tabela 15.18 mostra as funções alternativas dos pinos do port D.

Tabela 15.18: Funções alternativas dos pinos do PORTD.

Page 209: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 209/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 209

Registrador de Dados do Port D – PORTD

Registrador de Direção de Dados do Port D – DDRD

Endereço dos Pinos de Entrada do Port D – PIND

O endereço dos pinos do port D – PIND – não é um registrador e esseendereço habilita o acesso ao valor físico em cada pino do port D. Ao ler o PORTD,o latch de dados do port D é lido e ao ler PIND, o valor lógico nos pinos é lido.

Port D como Entrada/Saída Digital

PDn, pino de I/O: o bit DDDn no registrador DDRD seleciona a direção dessepino. Se DDDn for UM, PDn é configurado como um pino de saída. Se DDDn forZERO, PDn é configurado como um pino de entrada. Se PORTDn for UM quando opino foi configurado como uma entrada, o resistor de pull-up MOS é ativado. Paradesligar o resistor de pull-up, o PORTDn deve ser zerado ou o pino deve serconfigurado como uma saída. Os pinos do port D estarão em tri-state quando umreset ocorre, sempre se o clock não está ativo.

A Tabela 15.19 mostra a configuração de DDDn e PORTDn.

Tabela 15.19: Configuração de cada pino do PORTD.

Page 210: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 210/236

Microcontrolador AT90S8515

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 210

Outras Funções do Port D

• RD – Port D, Bit 7 –

RD é o sinal de controle para leitura da memória de dados externa.

• WR – Port D, Bit 6 –

WR é o sinal de controle para escrita da memória de dados externa.

• OC1A – Port D, Bit 5 –

OC1A, saída de comparação do Timer/Counter1: o pino PD5 pode ser usadocomo uma saída externa quando o valor de comparação é igual aoTimer/Counter1. O pino PD5 deve ser configurado como uma saída (DDD5 deveser setado).

• INT1 – Port D, Bit 3 –

INT1, entrada de interrupção externa 1: o pino PD3 serve como entrada para ainterrupção externa 1 para a MCU.

• INT0 – Port D, Bit 2 –

INT0, entrada de interrupção externa 0: o pino PD2 serve como entrada para ainterrupção externa 0 para a MCU.

• TXD – Port D, Bit 1 –

Transmissão de dados (pino de saída de dados da UART). Quando o transmissorda UART está habilitado, esse pino é configurado como saída.

• RXD – Port D, Bit 0 –

Recepção de dados (pino de entrada de dados da UART). Quando o receptor daUART está habilitado, esse pino é configurado como entrada. Quando a UARTforça esse pino ser uma entrada, um nível lógico UM em PORTD0 irá acionar oresistor de pull-up interno.

Page 211: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 211/236

Guia para Uso do Assembler AVR

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 211

16. Guia para Uso do Assembler AVR

16.1. Introdução

O Assembler AVR converte um código fonte feito em assembly para umcódigo objeto que será utilizado em microcontroladores da família AT90S Atmel.Esse código objeto gerado pode ser usado em um simulador ou emulador (In-CircuitEmulator). O Assembler também gera um código objeto de programação damemória de programa (FLASH) dos microcontroladores AVR.

16.2. Código Fonte do Assembler

O Assembler utiliza arquivos fonte que contém mnemônicos de instruções,labels e diretivas. Os mnemônicos de instruções e as diretivas necessitam deoperados.

Cada linha de código é limitada em 120 caracteres. Cada linha pode ter umlabel, que é uma seqûência de letras ou números terminada com “:”. Esses labelssão usados como “alvos” para instruções de pulo ou desvio ou como nome devariáveis na memória de Programa ou na RAM.

Uma linha do código fonte pode ter as seguintes formas:

1. [label:] diretiva [operandos] [Comentários]2. [label:] instruções [operandos] [Comentários]

3. Comentários

4. Linha em branco

Um comentário é feito da seguinte maneira:

; [texto]

Os itens colocados em colchetes [] são opcionais. O texto colocado entre odelimitador de comentários (;) e o caracter fim de linha (EOL) é ignorado peloAssembler.

Exemplos:

label: .EQU var1=100 ; Faz var1 igual 100 (Diretiva)

.EQU var2=200 ; Faz var2 igual 200

Page 212: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 212/236

Guia para Uso do Assembler AVR

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 212

test: rjmp test ; Loop Infinito (Instrução)

; Linha comentada

; Outra linha comentada

16.3. Registradores da Memória de I/O do AT90S8515

Tabela 16.1: Registradores na Memória de I/O.

Endereço Nome Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0

$3F ($5F) SREG I T H S V N Z C

$3E ($5E) SPH SP15 SP14 SP13 SP12 SP11 SP10 SP9 SP8

$3D ($5D) SPL SP7 SP6 SP5 SP4 SP3 SP2 SP1 SP0

$3C ($5C) Reserved$3B ($5B) GIMSK INT1 INT0 - - - - - -

$3A ($5A) GIFR INTF1 INTF0 - - - - - -

$39 ($59) TIMSK TOIE1 OCIE1A OCIE1B - TICIE1 - TOIE0 -

$38 ($58) TIFR TOV1 OCF1A OCF1B - ICF1 - TOV0 -

$37 ($57) Reserved

$36 ($56) Reserved

$35 ($55) MCUCR SRE SRW SE SM ISC11 ISC10 ISC01 ISC00

$34 ($54) Reserved

$33 ($53) TCCR0 - - - - - CS02 CS01 CS00$32 ($52) TCNT0 Timer/Counter0 (8 Bit)

... Reserved

$2F ($4F) TCCR1A COM1A1 COM1A0 COM1B1 COM1B0 - - PWM11 PWM10

$2E ($4E) TCCR1B ICNC1 ICES1 - - CTC1 CS12 CS11 CS10

$2D ($4D) TCNT1H Timer/Counter1 - Counter Register High Byte

$2C ($4C) TCNT1L Timer/Counter1 - Counter Register Low Byte

$2B ($4B) OCR1AH Timer/Counter1 - Output Compare Register A High Byte

$2A ($4A) OCR1AL Timer/Counter1 - Output Compare Register A Low Byte

$29 ($49) OCR1BH Timer/Counter1 - Output Compare Register B High Byte$28 ($48) OCR1BL Timer/Counter1 - Output Compare Register B Low Byte

... Reserved

$25 ($45) ICR1H Timer/Counter1 - Input Capture Register High Byte

$24 ($44) ICR1L Timer/Counter1 - Input Capture Register Low Byte

... Reserved

$21 ($41) WDTCR - - - WDTOE WDE WDP2 WDP1 WDP0

$20 ($40) Reserved

Page 213: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 213/236

Guia para Uso do Assembler AVR

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 213

$1F ($3F) EEARH - - - - - - - EEAR8

$1E ($3E) EEARL EEPROM Address Register Low Byte

$1D ($3D) EEDR EEPROM Data Register

$1C ($3C) EECR - - - - - EEMWE EEWE EERE

$1B ($3B) PORTA PORTA7 PORTA6 PORTA5 PORTA4 PORTA3 PORTA2 PORTA1 PORTA0

$1A ($3A) DDRA DDA7 DDA6 DDA5 DDA4 DDA3 DDA2 DDA1 DDA0

$19 ($39) PINA PINA7 PINA6 PINA5 PINA4 PINA3 PINA2 PINA1 PINA0

$18 ($38) PORTB PORTB7 PORTB6 PORTB5 PORTB4 PORTB3 PORTB2 PORTB1 PORTB0

$17 ($37) DDRB DDB7 DDB6 DDB5 DDB4 DDB3 DDB2 DDB1 DDB0

$16 ($36) PINB PINB7 PINB6 PINB5 PINB4 PINB3 PINB2 PINB1 PINB0

$15 ($35) PORTC PORTC7 PORTC6 PORTC5 PORTC4 PORTC3 PORTC2 PORTC1 PORTC0

$14 ($34) DDRC DDC7 DDC6 DDC5 DDC4 DDC3 DDC2 DDC1 DDC0

$13 ($33) PINC PINC7 PINC6 PINC5 PINC4 PINC3 PINC2 PINC1 PINC0

$12 ($32) PORTD PORTD7 PORTD6 PORTD5 PORTD4 PORTD3 PORTD2 PORTD1 PORTD0

$11 ($31) DDRD DDD7 DDD6 DDD5 DDD4 DDD3 DDD2 DDD1 DDD0

$10 ($30) PIND PIND7 PIND6 PIND5 PIND4 PIND3 PIND2 PIND1 PIND0

$0F ($2F) SPDR SPI Data Register

$0E ($2E) SPSR SPSE WCOL - - - - - -

$0D ($2D) SPCR SPIE SPE DORD MSTR CPOL CPHA SPR1 SPR0

$0C ($2C) UDR UART I/O Data Register

$0B ($2B) USR RXC TXC UDRE FE OR - - -

$0A ($2A) UCR RXCIE TXCIE UDRIE RXEN TXEN CHR9 RXB8 TXB8

$09 ($29) UBRR UART Baud Rate Register

$08 ($28) ACSR ACD - ACO ACI ACIE ACIC ACIS1 ACIS0

… Reserved

$00 ($20) Reserved

Bits reservados devem ser escritos com zero, se forem acessados. Endereçosde memória de I/O reservados nunca devem ser escritos. Alguns flags de status sãozerados com a escrita do valor lógico UM neles.

As instruções CBI e SBI operarão em todos os bits dos registradores de I/O,escrevendo um UM lógico no flag lido como UM lógico e assim zerando o flag. As

instruções CBI e SBI operam com os registradores de $00 a $1F apenas.

Page 214: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 214/236

Guia para Uso do Assembler AVR

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 214

16.4. Tabela de Instruções

Rd: Registrador de destino (e origem)

Rr: Registrador de origem

b: Constante (0-7), pode ser uma expressão constantes: Constante (0-7), pode ser uma expressão constante

P: Constante (0-31/63), pode ser uma expressão constante

k: Constante, faixa de valores depende da instrução. Pode ser uma expressãoconstante

q: Constante (0-63), pode ser uma expressão constante

Rdl: R24, R26, R28, R30. Usados nas instruções ADIW e SBIW

X,Y,Z: Registradores para endereçamento indireto (X=R27:R26, Y=R29:R28,Z=R31:R30)

Tabela 16.2: Instruções aritméticas e lógicas.

INSTRUÇÕES ARITMÉTICAS E LÓGICAS

Mnemônicos Operandos Descrição Operação FlagsNº deClock

ADD Rd, Rr Soma dois registradores Rd Rd + Rr Z,C,N,V,H 1

ADC Rd, Rr Soma com Carry doisregistradores Rd Rd + Rr + C Z,C,N,V,H 1

ADIW Rdl,K Soma valor imediato a uma

palavra

Rdh:Rdl Rdh:Rdl + K Z,C,N,V,S 2

SUB Rd, Rr Subtrai dois registradores Rd Rd – Rr Z,C,N,V,H 1

SUBI Rd, K Subtrai uma constante de umregistrador Rd Rd – K Z,C,N,V,H 1

SBC Rd, Rr Subtrai com Carry doisregistradores

Rd Rd – Rr – C Z,C,N,V,H 1

SBCI Rd, K Subtrai com Carry constante deregistrador Rd Rd – K – C Z,C,N,V,H 1

SBIW Rdl,K Subtrai valor imediato de umapalavra Rdh:Rdl Rdh:Rdl – K Z,C,N,V,S 2

AND Rd, Rr E lógico entre registradores Rd Rd · Rr Z,N,V 1

ANDI Rd, K E lógico entre registrador econstante Rd Rd · K Z,N,V 1

OR Rd, Rr OU lógico entre registradores Rd Rd v Rr Z,N,V 1

ORI Rd, K OU lógico entre registrador econstante Rd Rd v K Z,N,V 1

EOR Rd, Rr OU Exclusivo entreregistradores Rd Rd Å Rr Z,N,V 1

Page 215: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 215/236

Guia para Uso do Assembler AVR

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 215

COM Rd Complemento de um Rd $FF – Rd Z,C,N,V 1

NEG Rd Complemento de dois Rd $00 – Rd Z,C,N,V,H 1

SBR Rd,K Faz bit(s) no registrador = 1 Rd Rd v K Z,N,V 1

CBR Rd,K Faz bit(s) no registrador = 0 Rd Rd · ($FF – K) Z,N,V 1

INC Rd Incrementa Rd Rd + 1 Z,N,V 1

DEC Rd Decrementa Rd Rd – 1 Z,N,V 1

TST Rd Testa registrador por zero ounegativo Rd Rd · Rd Z,N,V 1

CLR Rd Faz registrador = $00 Rd Rd Å Rd Z,N,V 1

SER Rd Faz registrador = $FF Rd $FF None 1

Tabela 16.3: Instruções de desvio.

INSTRUÇÕES DE DESVIO

Mnemônicos Operandos Descrição Operação FlagsNº deClock

RJMP k Salto relativo PC PC + k + 1 None 2

IJMP Salto indireto a (Z) PC Z None 2

RCALL k Chamada relativa a sub-rotina PC PC + k + 1 None 3

ICALL Chamada indireta a (Z) PC Z None 3

RET Retorno de sub-rotina PC STACK None 4

RETI Retorno de interrupção PC STACK I 4

CPSE Rd,Rr Compara, salta instrução se forigual

se (Rd = Rr) PC PC + 2ou 3 None 1 / 2 /

3

CP Rd,Rr Compara Rd – Rr Z, N,V,C,H 1

CPC Rd,Rr Compara com Carry Rd – Rr – C Z, N,V,C,H 1

CPI Rd,K Compara registrador com valorimediato Rd – K Z, N,V,C,H 1

SBRC Rr, b Salta instrução se bit noregistrador é zero

se (Rr(b)=0) PC PC + 2ou 3 None 1 / 2 /

3

SBRS Rr, b Salta instrução se bit noregistrador é um

se (Rr(b)=1) PC PC + 2ou 3 None 1 / 2 /

3

SBIC P, b Salta instrução se bit no reg. deI/O é zero

se (P(b)=0) PC PC + 2ou 3 None 1 / 2 /

3

Page 216: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 216/236

Guia para Uso do Assembler AVR

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 216

SBIS P, b Salta instrução se bit no reg. deI/O é um

se (P(b)=1) PC PC + 2ou 3 None 1 / 2 /

3

BRBS s, k Desvia se flag de status é um se (SREG(s)=1) então PC PC+ k + 1 None 1 / 2

BRBC s, k Desvia se flag de status é zero se (SREG(s)=0) então PC PC+ k + 1

None 1 / 2

BREQ k Desvia se igual se (Z = 1) então PC PC+ k + 1 None 1 / 2

BRNE k Desvia se não igual se (Z = 0) então PC PC+ k + 1 None 1 / 2

BRCS k Desvia se Carry é um se (C = 1) então PC PC+ k + 1 None 1 / 2

BRCC k Desvia se Carry é zero se (C = 0) então PC PC+ k + 1

None 1 / 2

BRSH k Desvia se maior ou igual se (C = 0) então PC PC+ k + 1 None 1 / 2

BRLO k Desvia se menorse (C = 1) então PC PC

+ k + 1 None 1 / 2

BRMI k Desvia se negativo se (N = 1) então PC PC+ k + 1 None 1 / 2

BRPL k Desvia se positivo se (N = 0) então PC PC+ k + 1 None 1 / 2

BRGE k Desvia se maior ou igual,sinalizado

se (N Å V = 0) então PC PC + k + 1 None 1 / 2

BRLT k Desvia se menor do que zero,sinalizado

se (N Å V = 1) então PC PC + k + 1 None 1 / 2

BRHS k Desvia se Half Carry é um se (H = 1) então PC PC+ k + 1 None 1 / 2

BRHC k Desvia se Half Carry é zero se (H = 0) então PC PC+ k + 1 None 1 / 2

BRTS k Desvia se flag T é um se (T = 1) então PC PC+ k + 1 None 1 / 2

BRTC k Desvia se flag T é zero se (T = 0) então PC PC+ k + 1 None 1 / 2

BRVS k Desvia se flag de Overflow é um se (V = 1) então PC PC+ k + 1 None 1 / 2

BRVC k Desvia se flag de Overflow ézero

se (V = 0) então PC PC+ k + 1 None 1 / 2

BRIE kDesvia se interrupções estãohabilitadas

se ( I = 1) então PC PC+ k + 1 None 1 / 2

BRID k Desvia se interrupções estãodesabilitadas

se ( I = 0) então PC PC+ k + 1 None 1 / 2

Page 217: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 217/236

Page 218: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 218/236

Guia para Uso do Assembler AVR

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 218

ST Z+, Rr Armazena valor indireto compós inc. (Z) Rr, Z Z + 1 None 2

ST -Z, Rr Armazena valor indireto com prédec. Z Z – 1, (Z) Rr None 2

STD Z+q, Rr Armazena valor indireto comdeslocamento

(Z + q) Rr None 2

STS k, Rr Armazena direto na SRAM (k) Rr None 2

LPM Carrega valor da memória deprograma R0 (Z) None 3

IN Rd, P Port de entrada Rd P None 1

OUT P, Rr Port de saída P Rr None 1

PUSH Rr Guarda valor na pilha STACK Rr None 2

POP Rd Busca valor da pilha para oregistrador Rd STACK None 2

Tabela 16.5: Instruções de teste bit a bit.

INSTRUÇÕES DE TESTE BIT A BIT

Mnemônicos Operandos Descrição Operação FlagsNº deClock

SBI P,b Faz bit no registrador de I/O = 1 I/O(P,b) 1 None 2

CBI P,b Faz bit no registrador de I/O = 0 I/O(P,b) 0 None 2

LSL Rd Deslocamento lógico para aesquerda Rd(n+1)

Rd(n), Rd(0)

0 Z,C,N,V 1

LSR Rd Deslocamento lógico para dadireita

Rd(n) Rd(n+1), Rd(7) 0 Z,C,N,V 1

ROL Rd Rotação para a esquerda comCarry

Rd(0) C,Rd(n+1) Rd(n),CRd(7) Z,C,N,V 1

ROR Rd Rotação para a direita comCarry

Rd(7)C,Rd(n) Rd(n+1),CRd(0) Z,C,N,V 1

ASR Rd Deslocamento aritmético para adireita Rd(n) Rd(n+1), n=0..6 Z,C,N,V 1

SWAP Rd Troca nibbles Rd(3..0) Rd(7..4),Rd(7..4)Rd(3..0) None 1

BSET s Faz flag = 1 SREG(s) 1 SREG(s) 1

BCLR s Faz flag = 0 SREG(s) 0 SREG(s) 1

BST Rr, b Armazena bit do reg. no flag T T Rr(b) T 1

BLD Rd, b Carrega bit no reg. com o flag T Rd(b) T None 1

SEC Faz Carry = 1 C 1 C 1

Page 219: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 219/236

Guia para Uso do Assembler AVR

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 219

CLC Faz Carry = 0 C 0 C 1

SEN Faz flag Negative = 1 N 1 N 1

CLN Faz flag Negative = 0 N 0 N 1

SEZ Faz flag Zero = 1 Z1 Z 1

CLZ Faz flag Zero = 0 Z 0 Z 1

SEI Habilita interrupções I 1 I 1

CLI Desabilita interrupções I 0 I 1

SES Faz flag Signed Test = 1 S 1 S 1

CLS Faz flag Signed Test = 0 S 0 S 1

SEVFaz flag Two’s ComplementOverflow = 1 V 1 V 1

CLV Faz flag Two’s ComplementOverflow = 0 V 0 V 1

SET Faz flag T no SREG = 1 T 1 T 1

CLT Faz flag T no SREG = 0 T 0 T 1

SEH Faz flag Half Carry no SREG = 1 H 1 H 1

CLH Faz flag Half Carry no SREG = 0 H 0 H 1

NOP Nenhuma operação None 1

SLEEP Sleep None 3

WDR Reinicia Watchdog None 1

16.5. Diretivas no Assembler

As diretivas não são convertidas diretamente em opcodes (códigos de

operação). Elas são usadas para corrigir endereços do programa na memória, definirmacros, inicializar memória, dentre outras funções. A Tabela 16.6 mostra a lista dediretivas suportadas pelo Assembler.

Page 220: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 220/236

Guia para Uso do Assembler AVR

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 220

Tabela 16.6: Diretivas utilizadas no Assembler AVR.

Diretiva Descrição

BYTE Reserva bytes para uma variável

CSEG Segmento de código

DB Define constantes de um byteDEF Define um nome simbólico para um registrador

DEVICE Define o componente para o Assembler

DSEG Segmento de dados

DW Define constantes de dois bytes (word)

ENDMACRO Finaliza de uma macro

EQU Substitui uma expressão por um nome simbólico

ESEG Segmento da EEPROM

EXIT Sai do arquivoINCLUDE Lê o fonte de outro arquivo

LIST Habilita a criação de um arquivo de descrição (list file)

LISTMAC Habilita a expansão de macro

MACRO Inicia uma macro

NOLIST Desabilita a criação de um arquivo de descrição (list file)

ORG Posiciona o programa no endereço dado

SET Substitui uma expressão por um nome simbólico

Todas as diretivas devem ser precedidas por um ponto (.).

BYTE – Reserva bytes para uma variável

A diretiva BYTE reserva posições de memória na SRAM. A diretiva BYTE deve serprecedida por um label (nome da variável). A diretiva recebe como parâmetro onúmero de bytes a serem reservados para a variável na SRAM. Por isso, essadiretiva deve ser usada apenas dentro das definições do segmento de dados(DSEG). Os bytes reservados não serão inicializados.

Sintaxe:

LABEL: .BYTE expressão

Exemplo:

.DSEG

var1: .BYTE 1 ; reserva 1 byte para var1

table: .BYTE tab_size ; reserva tab_size bytes para table

Page 221: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 221/236

Guia para Uso do Assembler AVR

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 221

.CSEG

ldi r30,low(var1) ; Carrega o registrador BAIXO de Z

ldi r31,high(var1) ; Carrega o registrador ALTO de Z

ld r1,Z ; Carrega VAR1 para o registrador 1

CSEG – Segmento de código

A diretiva CSEG define o início do Segmento de Código. Um arquivo pode contervários segmentos de código, que serão concatenados em um único segmento decódigo quando o Assembler for executado. A diretiva BYTE não pode ser usadadentro de um segmento de código. A diretiva ORG pode ser usada para especificarendereços de códigos ou constantes na memória de programa. Esta diretiva nãorequer nenhum parâmetro.

Sintaxe:.CSEG

Exemplo:

.DSEG ; Início do segmento de dados

vartab: .BYTE 4 ; Reserva 4 bytes na SRAM para vartab

.CSEG ; Início do segmento de código

const: .DW 2 ; Escreve o valor 0x0002 (16 bits) na memória de; programa

mov r1,r0 ; Faz qualquer coisa

DB – Define constantes de um byte na memória de programa ou na EEPROM

A diretiva DB armazena bytes na memória de programa ou na EEPROM. A diretivaDB deve ser precedida por um label (nome de uma constante). A diretiva recebecomo parâmetro um byte ou uma sequência de bytes.

A diretiva DB deve ser usada dentro do segmento de código ou segmento deEEPROM. Os bytes da lista devem ser separados por vírgulas (,). Cada valor deveser um número entre –128 e 255. Se o valor for negativo, a representaçãocomplemento a dois de 8 bits do valor será armazenada na memória de programa ouna EEPROM.

Se a diretiva DB é usada no segmento de código e o número de valores é maior doque um, os dados são armazenados a cada dois bytes em cada endereço damemória de programa.

Page 222: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 222/236

Guia para Uso do Assembler AVR

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 222

Sintaxe:

LABEL: .DB listadevalores

Exemplo:

.CSEGconsts: .DB 0, 255, 0b01010101, -128, 0xaa

.ESEG

eeconst: .DB 0xff

DEF – Define um nome simbólico para um registrador

A diretiva DEF permite que os registradores possam ser chamados por nomessimbólicos. Um nome definido é usado pelo programa para chamar um registrador.

Um registrador pode ter vários nomes associados a ele. Um nome pode serredefinido mais tarde dentro do programa.

Sintaxe:

.DEF Nome=Registrador

Exemplo:

.DEF temp=R16

.DEF ior=R0

.CSEG

ldi temp,0xf0 ; Carrega o valor 0xf0 no registrador temp

in ior,0x3f ; Le SREG e o armazena no registrador ior

eor temp,ior ; Ou Exclusivo entre temp e ior

DEVICE – Define qual componente será usado pelo programa

A diretiva DEVICE indica para o Assembler qual componente que o código será

executado. Se esta diretiva é usada e o código possui uma instrução não suportadapelo componente, uma mensagem de aviso é mostrada de Assembler. Se otamanho do segmento de código ou do segmento da EEPROM é maior do que osuportado pelo componente especificado, um aviso também ocorrerá. Se a diretivaDEVICE não for usada, o Assembler assume que todas as instruções sãosuportadas e não há restrições de tamanho de memória.

Sintaxe:

.DEVICE AT90S1200 | AT90S2313 | AT90S4414 | AT90S8515

Page 223: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 223/236

Guia para Uso do Assembler AVR

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 223

Exemplo:

.DEVICE AT90S1200 ; Especifica que o componente a ser usado é oAT90S1200

.CSEG

push r30 ; Essa instrução irá gerar um mensagem de aviso, já que o

; componente especificado não suporta esta instrução

DSEG – Segmento de dados

A diretiva DSEG define o início do segmento de dados. Um arquivo pode contervários segmentos de dados, que serão concatenados em um único segmento dedados quando o Assembler for executado. Um segmento de dados consistirá,basicamente, de diretivas BYTE (e labels). A diretiva ORG pode ser usada para

endereçar variáveis na SRAM. A diretiva não requer nenhum parâmetro.

Sintaxe:

.DSEG

Exemplo:

.DSEG ; Início do segmento de dados

var1: .BYTE 1 ; reserva 1 byte para var1

table: .BYTE tab_size ; reserva tab_size bytes

.CSEG

ldi r30,low(var1) ; Carrega o registrador baixo de Z

ldi r31,high(var1) ; Carrega o registrador alto de Z

ld r1,Z ; Carrega var1 para registrador 1

DW – Define constantes de dois bytes (word) na memória de programa ou naEEPROM

A diretiva DW reserva words memória de programa ou na EEPROM. A diretiva DWdeve ser precedida por um label (nome de uma constante). A diretiva recebe comoparâmetro uma word ou uma sequência de words.

A diretiva DW deve ser usada dentro do segmento de código ou segmento deEEPROM. As words da lista devem ser separadas por vírgulas (,). Cada valor deveser um número entre –32768 e 65535. Se o valor for negativo, a representaçãocomplemento a dois de 16 bits do valor será armazenada na memória de programaou na EEPROM.

Page 224: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 224/236

Guia para Uso do Assembler AVR

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 224

Sintaxe:

LABEL: .DW listadevalores

Exemplo:.CSEG

varlist: .DW 0,0xffff,0b1001110001010101,-32768,65535

.ESEG

eevar: .DW 0xffff

ENDMACRO – Finaliza uma macro

A diretiva ENDMACRO indica o fim de uma definição de macro. Esta diretiva nãorequer parâmetros.

Sintaxe:

.ENDMACRO

Exemplo:

.MACRO SUBI16 ; Inicia uma definição de macro

subi r16,low(@0) ; Subtrai o byte baixo

sbci r17,high(@0) ; Subtrai o byte alto.ENDMACRO ; Fim da definição de macro

EQU – Substitui uma expressão por um nome simbólico

A diretiva EQU associa um nome (label) a um valor. Esse nome pode ser usado emexpressões posteriores. Um nome associado a um valor pela diretiva EQU é umaconstante e não pode ser mudado ou redefinido.

Sintaxe:.EQU label = expressão

Exemplo:

.EQU io_offset = 0x23

.EQU porta = io_offset + 2

.CSEG ; Início do segmento de código

Page 225: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 225/236

Guia para Uso do Assembler AVR

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 225

clr r2 ; Zera o registrador 2

out porta,r2 ; Escreve o valor do registrador 2 no Port A

ESEG – Segmento de EEPROMA diretiva ESEG define o início do segmento de EEPROM. Um arquivo pode contervários segmentos de EEPROM, que serão concatenados para um único segmentode EEPROM quando o Assembler for executado. A diretiva BYTE não pode serusada em um segmento de EEPROM. A diretiva ORG pode ser usada para localizarconstantes na EEPROM. Esta diretiva não requer parâmetros.

Sintaxe:

.ESEG

Exemplo:

.DSEG ; Inicia o segmento de dados

vartab: .BYTE 4 ; Reserva 4 bytes na SRAM

.ESEG

eevar: .DW 0xff0f ; Inicializa uma word na EEPROM

.CSEG ; Inicia o segmento de código

const: .DW 2 ; Escreve o valor 0x0002 na memória de programa

mov r1,r0 ; Faz qualquer coisa

EXIT – Sai deste arquivo

A diretiva EXIT para a execução do Assembler. Normalmente, o Assembler éexecutado até encontrar o fim de arquivo (EOF). Se a diretiva EXIT aparece em umarquivo que foi incluído, o Assembler continua da linha seguinte da diretivaINCLUDE.

Sintaxe:

.EXIT

Exemplo:

.EXIT ; Sai deste arquivo

Page 226: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 226/236

Guia para Uso do Assembler AVR

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 226

INCLUDE – Inclui outro arquivo

A diretiva INCLUDE indica para o Assembler começar a leitura do arquivoespecificado. O Assembler então é executado até encontrar o fim de arquivo (EOF)ou uma diretiva EXIT. Um arquivo incluído pode conter também outras diretivasINCLUDE.

Sintaxe:

.INCLUDE “nomedoarquivo”

Exemplo:

; iodefs.asm:

.EQU sreg=0x3f ; Registrador de Status

.EQU sphigh=0x3e ; Registrador Alto do Ponteiro de Pilha (Stack pointer)

.EQU splow=0x3d ; Registrador Baixo do Ponteiro de Pilha (Stack pointer)

; incdemo.asm

.INCLUDE “iodefs.asm” ; Inclui definições de I/O

in r0,sreg ; Le registrador de status

LIST – Habilita a criação do arquivo de descrição (listfile)

A diretiva LIST indica para o Assembler criar um arquivo de descrição (listfile). Esse

arquivo é uma combinação do código fonte, endereços e opcodes (códigos deinstruções). A criação deste arquivo, por default, está habilitada. Esta diretiva podeser usada junto com a diretiva NOLIST para gerar um listfile de partes do programafonte.

Sintaxe:

.LIST

Exemplo:

.NOLIST ; Desabilita a criação do listfile

.INCLUDE “macro.inc” ; Os arquivos incluídos não serão mostrados o listfile

.INCLUDE “const.def”

.LIST ; Habilita novamente a criação do listfile

LISTMAC – Habilita expansão de macro

Page 227: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 227/236

Guia para Uso do Assembler AVR

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 227

A diretiva LISTMAC informa para o Assembler que, quando uma macro é chamada,a expansão da macro deve ser mostrada no listfile gerado pelo Assembler. Pordefault, apenas as chamadas de macros com parâmetros são mostradas no listfile .

Sintaxe:

.LISTMAC

Exemplo:

.MACRO MACX ; Define um exemplo de macro

add r0,@0 ; Faz qualquer coisa

eor r1,@1 ; Faz qualquer coisa

.ENDMACRO ; Fim da definição da macro

.LISTMAC ; Habilita expansão da macro

MACX r2,r1 ; Chama a macro, mostra a expansão

MACRO – Inicia uma macro

A diretiva MACRO informa para o Assembler o início de uma macro. A diretivaMACRO usa o nome da macro como parâmetro. Quando o nome da macro é escritoposteriormente no programa, a definição da macro é expandida no local onde ela foiusada. Uma macro suporta até 10 parâmetros. Esses parâmetros são chamadoscomo @0-@9 dentro da definição da macro. Na chamada de uma macro, osparâmetros são passados em forma de lista, separados por vírgulas (,). Uma

definição de macro é finalizada por uma diretiva ENDMACRO. Por default, apenasas chamadas a uma macro são mostradas no listfile gerado pelo Assembler. Paraincluir uma expansão de macro no listfile , a diretiva LISTMAC deve ser usada. Umamacro é marcada com um + no campo do opcode no listfile .

Sintaxe:

.MACRO nomedamacro

Exemplo:

.MACRO SUBI16 ; Inicia uma definição de macrosubi @1,low(@0) ; Subtrai o byte baixo

sbci @2,high(@0) ; Subtrai o byte alto

.ENDMACRO ; Fim da definição da macro

.CSEG ; Início do segmento de código

SUBI16 0x1234,r16,r17 ; Subtrai 0x1234 de r17:r16

Page 228: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 228/236

Guia para Uso do Assembler AVR

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 228

NOLIST – Desabilita a criação do arquivo de descrição (listfile)

A diretiva NOLIST informa que o Assembler não deve criar o arquivo de descriçãolistfile . Normalmente, o Assembler gera um listfile que é uma combinação de códigofonte, endereços e opcodes. Por default, a criação do listfile é habilitada, mas podeser desabilitada usando a diretiva NOLIST. Esta diretiva pode ser usada junto com adiretiva LIST para gerar um listfile de partes do programa fonte.

Sintaxe:

.NOLIST ; Habilita a geração de listfile

Exemplo:

.NOLIST ; Desabilita a geração de listfile

.INCLUDE “macro.inc” ; Os arquivos incluídos não serão mostrados no

; listfile

.INCLUDE “const.def” ;

.LIST ; Habilita novamente a geração de listfile

ORG – Posiciona o programa no endereço dado

A diretiva ORG posiciona o programa no endereço dado. Se a diretiva ORG forusada no segmento de dados, um valor será armazenado a partir do endereçoespecificado. Se a diretiva ORG for usada no segmento de código, um valor seráarmazenado a partir do endereço especificado. Se a diretiva OR for usada no

segmento de EEPROM, um valor será armazenado a partir do endereçoespecificado. Se a diretiva for precedida por um label (na mesma linha do códigofonte), o label será tomado como parâmetro. O valor default inicial dos endereços dememória de código e EEPROM é zero, enquanto para a SRAM é 32 (a partir dosregistradores R0-R31). O endereço da EEPROM e a SRAM é dado em bytesenquanto o endereço da memória de programa é dado em words.

Sintaxe:

.ORG expressão

Exemplo:.DSEG ; Inicia a memória de dados

.ORG 0x67 ; Aponta para o endereço 0x67 da SRAM

variable:.BYTE 1 ; Reserva um byte no endereço 0x67 da SRAM

.ESEG ; Inicia do segmento da EEPROM

.ORG 0x20 ; Aponta para o endereço 0x20 da EEPROM

eevar: .DW 0xfeff ; Inicializa uma word

Page 229: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 229/236

Guia para Uso do Assembler AVR

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 229

.CSEG

.ORG 0x10 ; Aponta para o endereço 0x10 da memória de

; programa

mov r0,r1 ; Faz qualquer coisa

EQU – Substitui uma expressão por um nome simbólico

A diretiva EQU associa um nome (label) a um valor. Esse nome pode ser usado emexpressões posteriores. Um nome associado a um valor pela diretiva EQU é umaconstante e não pode ser mudado ou redefinido.

SET – Substitui uma expressão por um nome simbólico

A diretiva SET associa um nome (label) a um valor. Esse nome poder ser usado emexpressões posteriores. Um nome associado a um valor pela diretiva SET pode seralterado no programa.

Sintaxe:

.SET label = expressão

Exemplo:

.SET io_offset = 0x23

.SET porta = io_offset + 2

.CSEG ; Inicia o segmento de código

clr r2 ; Zera o registrador 2

out porta,r2 ; Escreve o conteúdo do registrador 2 no Port A

16.6. Expressões

O Assembler pode manipular expressões. Expressões consistem deoperandos, operadores e funções. Todas as expressões, internamente, são de 32bits.

Operandos

Os seguintes operandos podem ser usados:

- Labels definidos pelo usuário para um endereço da memória

Page 230: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 230/236

Guia para Uso do Assembler AVR

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 230

- Variáveis definidas pela diretiva SET

- Variáveis definidas pela diretiva QUE

- Constantes inteiras: constantes de vários tipos:

a) Decimal (default): 10, 255

b) Hexadecimal (duas notações): 0x0a, $0a, 0xff, $ffc) Binário: 0b00001010, 0b11111111

- PC – o valor atual do contador de endereços da memória de programa

Funções

As seguintes funções são definidas:

- LOW(expressão) retorna o primeiro byte de uma expressão

- HIGH(expressão) retorna o segundo byte de uma expressão

- BYTE2(expressão) tem a mesma função de HIGH

- BYTE3(expressão) retorna o terceiro byte de uma expressão

- BYTE4(expressão) retorna o quarto byte de uma expressão

- LWRD(expressão) retorna os bits de 0 a 15 (low word) de uma expressão

- HWRD(expressão) retorna os bits de 16 a 31 (high word) de uma expressão

- PAGE(expressão) retorna os bits de 16 a 21 de uma expressão

- EXP2(expressão) retorna 2^expressão

- LOG2(expressão) retorna a parte inteira de log2(expressão)

Operadores

O Assembler suporta vários operadores, onde o de maior precedência possuia maior prioridade.

Não LógicoSímbolo: !

Descrição: Operador unário que retorna 1 se a expressão for zero e retorna 0 se aexpressão for diferente de zero.

Precedência: 14

Exemplo: ldi r16,!0xf0 ; Carrega r16 com 0x00

Page 231: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 231/236

Guia para Uso do Assembler AVR

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 231

Não bit a bit

Símbolo: ~

Descrição: Operador unário que retorna todos os bits invertidos de uma expressão.

Precedência: 14

Exemplo: ldi r16,~0xf0 ; Carrega r16 com 0x0f

Negação

Símbolo: -

Descrição: Operador unário que retorna a negação aritmética de uma expressão.

Precedência: 14

Exemplo: ldi r16,-2 ; Carrega -2(0xfe) em r16

Multiplicação

Símbolo: *

Descrição: Operador binário que retorna o produto de duas expressões.

Precedência: 13

Exemplo: ldi r30,label*2 ; Carrega r30 com label*2

Divisão

Símbolo: /

Descrição: Operador binário que retorna o quociente inteiro da expressão da

esquerda dividida pelo expressão da direita.Precedência: 13

Exemplo: ldi r30,label/2 ; Carrega r30 com label/2

Adição

Símbolo: +

Descrição: Operador binário que retorna a soma de duas expressões

Precedência: 12

Exemplo: ldi r30,c1+c2 ; Carrega r30 com c1+c2

Subtração

Símbolo: -

Descrição: Operador binário que retorna a expressão da esquerda menos aexpressão da direita.

Precedência: 12

Page 232: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 232/236

Guia para Uso do Assembler AVR

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 232

Exemplo: ldi r17,c1-c2 ; Carrega r17 com c1-c2

Deslocamento para a esquerda

Símbolo: <<

Descrição: Operador binário que retorna a expressão da esquerda deslocada para aesquerda um número de vezes igual à expressão da direita.

Precedência: 11

Exemplo: ldi r17,1<<bitmask ;Carrega r17 com 1 deslocado para a esquerda bitmaskvezes

Deslocamento para a direita

Símbolo: >>

Descrição: Operador binário que retorna a expressão da esquerda deslocada para adireita um número de vezes igual à expressão da direita.

Precedência: 11

Exemplo: ldi r17,c1>>c2 ;Carrega r17 com c1 deslocado para a direita c2 vezes

Menor do que

Símbolo: <

Descrição: Operador binário que retorna 1 se a expressão sinalizada da esquerda formenor do que a expressão sinalizada da direita, caso contrário, retorna 0.

Precedência: 10

Exemplo: ori r18,bitmask*(c1<c2)+1 ; Ou entre r18 e uma expressão

Menor ou igual

Símbolo: <=

Descrição: Operador binário que retorna 1 se a expressão sinalizada da esquerda formenor ou igual à expressão da direita, caso contrário, retorna 0.

Precedência: 10

Exemplo: ori r18,bitmask*(c1<=c2)+1 ; Ou entre r18 e uma expressão

Maior do que

Símbolo: >

Descrição: Operador binário que retorna 1 se a expressão sinalizada da esquerda formaior do que a expressão da direita, caso contrário, retorna 0.

Precedência: 10

Exemplo: ori r18,bitmask*(c1>c2)+1 ; Ou entre r18 e uma expressão

Page 233: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 233/236

Guia para Uso do Assembler AVR

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 233

Maior ou igual

Símbolo: >=

Descrição: Operador binário que retorna 1 se a expressão sinalizada da esquerda formaior ou igual à expressão da direita, caso contrário, retorna 0.

Precedência: 10

Exemplo: ori r18,bitmask*(c1>=c2)+1 ; Ou entre r18 e uma expressão

Igual

Símbolo: ==

Descrição: Operador binário que retorna 1 se a expressão sinalizada da esquerda forigual à expressão da direita, caso contrário, retorna 0.

Precedência: 9

Exemplo: andi r19,bitmask*(c1==c2)+1 ; E entre r19 e uma expressão

Diferente

Símbolo: !=

Descrição: Operador binário que retorna 1 se a expressão sinalizada da esquerda fordiferente da expressão sinalizada da direita, caso contrário, retorna 0.

Precedência: 9

Exemplo: .SET flag=(c1!=c2) ; Faz flag igual a 1 ou 0

E bit a bit

Símbolo: &

Descrição: Operador binário que retorna a operação E bit a bit entre duasexpressões.

Precedência: 8

Exemplo: ldi r18,High(c1&c2) ; Carrega r18 com uma expressão

Ou Exclusivo bit a bit

Símbolo: ^

Descrição: Operador binário que retorna a operação de Ou Exclusivo bit a bit entreduas expressões.

Precedência: 7

Exemplo: ldi r18,Low(c1^c2) ; Carrega r18 com uma expressão

Ou bit a bit

Símbolo: |

Page 234: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 234/236

Guia para Uso do Assembler AVR

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 234

Descrição: Operador binário que retorna a operação Ou bit a bit entre duasexpressões.

Precedência: 6

Exemplo: ldi r18,Low(c1|c2) ; Carrega r18 com uma expressão

E lógico

Símbolo: &&

Descrição: Operador binário que retorna 1 se a ambas expressões forem diferentesde zero, caso contrário, retorna 0.

Precedência: 5

Exemplo: ldi r18,Low(c1&&c2) ; Carrega r18 com uma expressão

Ou lógico

Símbolo: ||Descrição: Operador binário que retorna 1 se uma ou ambas expressões foremdiferentes de zero, caso contrário, retorna 0.

Precedência: 4

Exemplo: ldi r18,Low(c1||c2) ; Carrega r18 com uma expressão

Page 235: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 235/236

Referências Bibliográficas e Internet

FACENS – ELETRÔNICA II – Prof. Sidney José Montebeller 235

16. Referências Bibliográficas e Internet

1- TOCCI, R. J.; WIDMER, N.S.; Sistemas Digitais: Princípios e Aplicações.

Rio de Janeiro: LTC, 2003.

2- MALVINO, A. P.; LEACH, D. P.; Eletrônica Digital: Princípios e Aplicações.São Paulo: McGraw-Hill, 1988.

3- TAUB, H.; Circuitos Digitais e Microprocessadores. São Paulo: McGraw-Hill, 1984.

4- LOURENÇO, A. C.; Circuitos Digitais. São Paulo: Érica, 1996.

5- CAPUANO, F. G.; IDOETA, I. V.; Elementos de Eletrônica Digital. SãoPaulo: Érica, 1988.

6- MELO, M.; Eletrônica Digital. São Paulo: Makron Books, 1993.

7- TOKHEIM, R. L.; Princípios Digitais. São Paulo: McGraw-Hill, 1996.

8- ALTERA – http://www.altera.com/ – Dispositivos de Lógica Programável.

9- XILINX – http://www.xilinx.com/ – Dispositivos de Lógica Programável.

10- ATMEL – http://www.atmel.com/ – Microcontroladores (AVR) e ComponentesDiscretos.

11- MICROCHIP – http://www.microchip.com/ – Microcontroladores (PIC) eComponentes Discretos.

12- NATIONAL – http://www.national.com/ – Microcontroladores (COP8) eComponentes Discretos.

13- TEXAS INSTRUMENTS – http://www.ti.com/ – Microcontroladores (MSP430)e Componentes Discretos.

Page 236: Apostila EletronicaII Rev6(1)

8/20/2019 Apostila EletronicaII Rev6(1)

http://slidepdf.com/reader/full/apostila-eletronicaii-rev61 236/236

Referências Bibliográficas e Internet

14- BURR-BROWN – http://www.burrbrown.com/ – Conversores A/D e D/A eAmplificadores Operacionais.

15- INTEL – http://www.intel.com/ – Microcontroladores (8051) e ComponentesDiscretos.

16- ANALOG DEVICES – http://www.analog.com/ – Conversores A/D e D/A eComponentes Discretos.