8% OFF

em 3x sem juros

Frete grátis

Saiba os prazos de entrega e as formas de envio.

8% OFF

Características principais

Título do livro
Arduino: Guia Avançado Para Projetos
Autor
Alexandre Mendonça e Ricardo Zelenovsky
Idioma
Português
Editora do livro
Interciência
Capa do livro
Dura
Ano de publicação
2019

Outras características

  • Quantidade de páginas: 564

  • Gênero do livro: Informática,Engenharia,Computação

  • Tipo de narração: Manual

  • ISBN: 9788571934368

Descrição

Aprofunde-se com o livro “Arduino: Guia Avançado para Projetos”, feito para os amantes da eletrônica que desejam ir a fundo em seus experimentos envolvendo interfaces com sensores e outros dispositivos. Aborda diversos padrões comerciais e contém exemplos completos de projetos em hardware e software, explorando detalhadamente os recursos oferecidos pela família de processadores AVR. É meticuloso nos detalhes de cada bloco funcional e interface presente no Arduino, explicando registrador por registrador.

Capa dura

Formato 17 x 25 cm

Autores: Alexandre Mendonça e Ricardo Zelenonsky.

Alexandre Mendonça é engenheiro eletrônico formado pelo IME, professor do IME, ex segundo vice-reitor do IME e doutor pela COPPE/UFRJ. Ricardo Zelenovsky é engenheiro eletrônico formado pelo IME, professor da UnB, ex professor do IME e doutor pela PUC/RJ.

Ambos são especialistas em hardware de microcomputadores e juntos escreveram 13 livros, dentre eles "PC: um Guia Prático de Hardware e Interfaceamento", "Eletrônica Digital: Curso Prático e Exercícios" e "Arduino: Guia Avançado para Projetos".

Capítulo 1: Introdução ao Arduino
1.1. Introdução ............................ 3
1.2. O Que É um Microcontrolador ? ................... 4
1.3. O Mercado de Microcontroladores .................. 7
1.4. Como Surgiu Este Livro ? ...................... 8
1.5. A Produção Artesanal de Cerveja .................... 14
1.5.1. Brassagem ou Mostura ...................... 15
1.5.2. Fervura .......................... 16
1.5.3. Fermentação .......................... 16
1.5.4. Engarrafamento ........................ 17
1.5.5. Controlador para as Etapas de Brassagem e Fervura ........ 17
1.6. Ainda Sobre Como Surgiu Este Livro .................. 20

Capítulo 2: A Plataforma Arduino e a CPU AVR
2.1. A Família Arduino ........................ 23
2.2. Comparação entre os Processadores AVR .............. 26
2.3. O Microcontrolador AVR ...................... 27
2.3.1. O Registrador de Estado .................... 30
2.3.2. Temporização da Execução das Instruções .............. 31
2.4. Pinagens dos Processadores AVR .................. 33
2.4.1. Pinagem do Arduino Uno (Atmega328) ............... 33
2.4.2. Pinagem do Arduino Pro (Atmega328) ................ 34
2.4.3. Pinagem do Arduino ProMini (Atmega328) ............. 35
2.4.4. Pinagem do Arduino Micro (Atmega32u4) .............. 36
2.4.5. Pinagem do Arduino Nano (Atmega328) ............. 37
2.4.6. Pinagem do Arduino Mega (Atmega2560) .............. 38
2.4.7. Pinagem do Arduino Yún (Atmega32u4) .............. 40
2.4.8. Pinagem do Arduino LilyPad (Atmega328) ............. 41
2.4.9. Pinagem do Arduino Gemma (ATtiny85) ............. 41
2.5. Programação em Linguagem C na Plataforma Arduino ........... 42
2.5.1. Operadores de Bits em Linguagem C ............... 42
2.5.2. Declaração de Variáveis .................... 44
2.5.3. Operando os Registradores do AVR ................. 45
2.5.4. Fluxo de Execução ....................... 47
2.5.5. Carregamento do Programa e Monitor Serial ............ 48

Capítulo 3: Porta de Entrada e Saída (GPIO)
3.1. Introdução ............................. 51
3.2. Controle das Portas ....................... 52
3.3. Configurando um Pino ...................... 58
3.4. Funções Alternativas para os Pinos ................. 60
3.5. Gerenciamento das Portas de Entrada e Saída .............. 62
3.6. Registradores das Portas de Entrada e Saída ............. 62
3.6.1. MCUCR – Registrador de Controle do Microcontrolador ....... 63
3.6.2. PORTx – Registrador de Dados da Porta x............. 63
3.6.3. DDRx – Registrador da Direção dos Bits da Porta x .......... 64
3.6.4. PINx – Endereço de Entrada dos Pinos da Porta x ......... 64
3.7. GPIO - Resumo ........................... 64
3.8. Exercícios Resolvidos ....................... 67
3.9. Exercícios Propostos ........................ 76

Capítulo 4: Interrupções
4.1. As Interrupções dos Processadores AVR ................. 83
4.2. Conceitos Básicos sobre Interrupções ................ 86
4.3. Vetores de Interrupção da Família Atmega ............... 89
4.4. Interrupções Externas ....................... 93
4.5. Registradores das Interrupções Externas INT7:0 .............. 94
4.5.1. EICRA – Reg. A para Controle das Interrupções Externas .... 95
4.5.2. EICRB – Reg. B para Controle das Interrupções Externas .... 95
4.5.3. EIMSK – Registrador de Máscara Interrupções Externas ........ 96
4.5.4. EIFR – Registrador de Flags das Interrupções Externas ....... 97
4.6. Registradores das Interrupções Externas PCINT23:0 .......... 97
4.6.1. PCMSK2 – Registrador 2 de Máscaras de Alteração de Pino ..... 98
4.6.2. PCMSK1 – Registrador 1 de Máscaras de Alteração de Pino ..... 99
4.6.3. PCMSK0 – Reg. 0 de Máscaras de Alteração de Pino ..... 99
4.6.4. PCIFR – Reg. de Flags de Interrupção por Alteração de Pino .. 100
4.6.5. PCICR – Reg. de Controle de Interr. por Alteração de Pino . 100
4.7. Usando as Interrupções do Arduino .................. 101
4.8. Resumo sobre as Interrupções ................... 102
4.9. Exercícios Resolvidos ........................ 105
4.10. Exercícios Propostos ....................... 119

Capítulo 5: Introdução aos Temporizadores / Contadores
5.1. Introdução ........................... 125
5.2. Descrição de um Temporizador / Contador ............... 130
5.3. Seleção do Relógio de um TC .................... 132
5.4. Acesso aos Registradores de 16 Bits .................. 133
5.5. Uso das Unidades de Comparação .................. 134
5.6. Modos de Operação ........................ 138
5.6.1. Modo Normal ........................ 138
5.6.2. Modo Zerar na Coincidência de Comparação ............ 140
5.6.3. Modo PWM Rápido ....................... 142
5.6.4. Modo PWM com Correção de Fase ................ 145
5.6.5. Modo PWM com Correção de Fase e Frequência ......... 148
5.7. Unidade de Captura de Eventos .................... 151
5.8. Interrupções com o Temporizador/Contador n .............. 153

Capítulo 6: Temporizadores / Contadores (TC) 1, 3, 4 e 5
6.1. Os Temporizadores / Contadores da Família AVR ............. 157
6.2. Detalhamento dos Temporizadores 1, 3, 4 e 5 ............. 158
6.3. Detalhamento dos Modos de Operação ............... 160
6.3.1. Modo Normal ........................ 161
6.3.2. Modo Zerar na Coincidência de Comparação ............ 162
6.3.3. Modo PWM Rápido ....................... 163
6.3.4. Modo PWM com Correção de Fase ................ 164
6.3.5. Modo PWM com Correção de Fase e Frequência ......... 166
6.4. Unidade de Captura de Eventos .................... 167
6.5. Interrupções com o Temporizador n ................. 168
6.6. Registradores do Temporizador n .................. 169
6.6.1. TCCRnA – Registrador A de Controle do Temporizador n ........ 169
6.6.2. TCCRnB – Registrador B de Controle do Temporizador n ........ 171
6.6.3. TCCRnC – Registrador C de Controle do Temporizador n ........ 172
6.6.4. TCNTn – Registrador do Temporizador / Contador n .......... 173
6.6.5. OCRnx – Registrador x de Comparação .............. 173
6.6.6. ICRn – Registrador de Captura de Evento .............. 174
6.6.7. TIMSKn – Reg. de Máscaras de Interr. do Temporizador n . 174
6.6.8. TIFRn – Reg. de Flags de Interrupção do Temporizador n ... 175
6.7. Abordagem Resumida dos Temporizadores 1, 3, 4 e 5 ......... 177
6.8. Exercícios Resolvidos ........................ 180
6.9. Exercícios Propostos ...................... 207

Capítulo 7: Temporizadores / Contadores (TC) 0 e 2
7.1. Introdução ........................... 217
7.2. Detalhamento da Operação do TC2/TC0 ................ 218
7.2.1 Geração do Relógio do TC2 (válido só para o TC2) .......... 219
7.2.2 Geração do Relógio do TC0 (válido só para o TC0) .......... 220
7.3. Modos de Operação do TC2/TC0 .................. 221
7.3.1 Modo Normal ......................... 222
7.3.2 Modo Zerar na Coincidência de Comparação ............. 222
7.3.3 Modo PWM Rápido ..................... 223
7.3.4 Modo PWM com Correção de Fase ................. 224
7.4. Interrupções com o TC2/TC0 ................... 226
7.5. Operações Assíncronas com o TC2 (válidas só para o TC2) ......... 227
7.6. Descrição dos Registradores do TC2/TC0 ................ 228
7.6.1. TCCRnA – Registrador A de Controle do Temporizador n ........ 229
7.6.2. TCCRnB – Registrador B de Controle do Temporizador n ........ 230
7.6.3. TCNTn – Registrador do Temporizador / Contador n .......... 231
7.6.4. OCRnA / OCRnB – Registrador A / B de Comparação ........ 231
7.6.5. ASSR – Registrador de Estado Assíncrono ............. 232
7.6.6. TIMSKn – Registrador de Máscaras de Interrupção do Temporizador n . 233
7.6.7. TIFRn – Reg. de Flags de Interrupção do Temporizador n ... 234
7.6.8. GTCCR – Registrador de Controle Geral do TC2 .......... 235
7.7. Abordagem Resumida do TC2/TC0 .................. 236
7.8. Exercícios Resolvidos ........................ 239

Capítulo 8: Conversor Analógico-Digital (ADC)
8.1. Conceitos Gerais sobre ADC e DAC ................ 247
8.2. Características do ADC do Atmega .................. 258
8.3. Arquitetura do ADC do Atmega ................... 258
8.4. Operação do ADC ........................ 259
8.5. Processo de Conversão ..................... 262
8.6. Seleção do Relógio e Tempo de Conversão .............. 264
8.7. Alteração do Canal de Entrada e da Referência .............. 266
8.7.1. Momento da Seleção de Canais de Entrada ........... 267
8.7.2. Seleção da Tensão de Referência ............... 268
8.7.3. Impedância das Entradas Analógicas ................ 268
8.8. Cancelamento de Ruído e Offset ................... 268
8.9. Resultado da Conversão do ADC .................. 269
8.10. Registradores do ADC ..................... 270
8.10.1. ADMUX – Reg. para Seleção do Multiplexador do ADC .... 270
8.10.2. ADCSRA – Registrador A de Controle e Estado do ADC ........ 271
8.10.3. ADCSRB – Registrador B de Controle e Estado do ADC ........ 273
8.10.4. ADCL e ADCH – Registrador de Dados do ADC ......... 274
8.10.5. DIDR0 – Registrador 0 para Desabilitar a Entrada Digital ....... 275
8.10.6. DIDR2 – Registrador 2 para Desabilitar a Entrada Digital ....... 275
8.11. Resumo sobre o Conversor Analógico-Digital (ADC) .......... 275
8.12. Exercícios Resolvidos ...................... 277
8.13. Exercícios Propostos ....................... 292

Capítulo 9: Porta Serial USART
9.1. Introdução ........................... 297
9.2. Tópicos Sobre Comunicação Serial .................. 298
9.2.1. Protocolo RS-232 ....................... 300
9.3. Descrição da USART do AVR ..................... 304
9.4. Geração do Relógio ........................ 305
9.5. Formato de Dados ........................ 308
9.6. Transmissão de Dados ...................... 309
9.6.1. Transmissão com 5 a 8 Bits de Dados .............. 310
9.6.2. Transmissão com 9 Bits de Dados ................. 310
9.6.3. Flags de Transmissão e Interrupções ................ 310
9.7. Recepção de Dados ........................ 311
9.7.1. Recepção com 5 a 8 Bits de Dados ................ 312
9.7.2. Recepção com 9 Bits de Dados ................ 312
9.7.3. Flags de Recepção e Interrupção ................ 313
9.7.4. Flags de Erros de Recepção .................. 313
9.8. Recepção Assíncrona de Dados .................... 314
9.8.1. Recuperação do Relógio para Recepção Assíncrona ......... 314
9.8.2. Recuperação de Dados para Recepção Assíncrona ........ 315
9.8.3. Faixa de Operação em Modo Assíncrono ............. 315
9.9. Modo de Comunicação Multiprocessador ............... 317
9.9.1. Usando a Comunicação Multiprocessador .............. 318
9.10. Síntese das Interrupções da USART ................. 319
9.11. Registradores da USART .................... 320
9.11.1. UDRn – Registrador de Dados .................. 321
9.11.2. UCSRnA – Registrador A de Estado e Controle da USART ....... 321
9.11.3. UCSRnB – Registrador B de Estado e Controle da USART ....... 323
9.11.4. UCSRnC – Registrador C de Estado e Controle da USART ...... 325
9.11.5. UBRRLn e UBRRHn – Registradores de Baud Rate ......... 327
9.12. Resumo Sobre a Porta Serial do AVR ............... 328
9.13. Exercícios Resolvidos ...................... 330
9.14. Exercícios Propostos ....................... 336

Capítulo 10: Serial Peripheral Interface (SPI)
10.1. Introdução ............................ 341
10.2. Conceituação do Barramento SPI ................... 342
10.2.1. Polaridade e Fase do Relógio ................. 343
10.3. Interface SPI do Atmega ..................... 346
10.4. Detalhes do Pino #SS ...................... 349
10.5. Registradores da Interface SPI .................... 350
10.5.1 SPCR – Registrador de Controle da SPI ............. 350
10.5.2 SPSR – Registrador de Estado da SPI ............. 352
10.5.3 SPDR – Registrador de Dados da SPI ............. 352
10.6. Estudo da SRAM 23LC1024 ..................... 353
10.7. Resumo da Porta SPI do AVR .................. 356
10.8. Exercícios Resolvidos ...................... 358
10.9. Exercícios Propostos ....................... 371

Capítulo 11: Porta Serial em Modo SPI (Modo MSPIM)
11.1. Introdução ............................ 375
11.2. Características do Modo SPI Mestre (MSPIM) .............. 376
11.3. Geração do Relógio ...................... 377
11.4. Formato do Trem de Bits ..................... 378
11.5. Inicialização da USART em Modo MSPIM ............... 379
11.6. Transferências de Dados .................... 379
11.7. Resumo das Interrupções da USART em Modo MSPIM ........ 380
11.8. Registradores da USART para o Modo MSPIM ............. 381
11.8.1. UDRn – Registrador de Dados .................. 382
11.8.2. UCSRnA – Reg. A de Estado e Controle da USART ....... 382
11.8.3. UCSRnB – Reg. B de Estado e Controle da USART ....... 383
11.8.4. UCSRnC – Registrador C de Estado e Controle da USART ...... 384
11.8.5. UBRRLn e UBRRHn – Registradores de Baud Rate ......... 385
11.9. Sugestão de Conexão ...................... 386
11.10. Resumo sobre a USART em Modo MSPIM .............. 386

Capítulo 12: Interface Serial a 2 Fios (TWI ou I2C)
12.1. Introdução ............................ 391
12.2. Fundamentos do Barramento I2C ................. 392
12.3. Protocolo TWI ......................... 399
12.3.1. Transferência de Bits ..................... 399
12.3.2. Condição de START e STOP ................. 400
12.3.3. Formato do Pacote de Endereços ................ 401
12.3.4. Formato do Pacote de Dados ................. 402
12.3.5. Transmissão pelo Barramento TWI .............. 403
12.3.6. Arbitragem do Barramento TWI ................. 404
12.4. Módulo TWI .......................... 406
12.5. Emprego do Módulo TWI .................... 409
12.6. Modos de Operação e Códigos do Módulo TWI ............ 412
12.6.1. MT – Mestre Transmissor .................... 414
12.6.2. MR – Mestre Receptor ................... 417
12.6.3. ER – Escravo Receptor ..................... 419
12.6.4. ET – Escravo Transmissor ................... 422
12.7. Registradores do Módulo TWI .................. 425
12.7.1. TWBR – Registrador de Taxa de Bits do TWI .......... 425
12.7.2. TWCR – Registrador de Controle do TWI ............. 425
12.7.3. TWSR – Registrador de Estado do TWI ............. 427
12.7.4. TWBR – TWDR – Registrador de Dados do TWI ........... 428
12.7.5. TWBR – Registrador de Endereço (Escravo) do TWI ....... 429
12.7.6. TWAM – Reg. de Máscara de Endereço (Escravo) do TWI .. 429
12.8. Resumo sobre a Interface TWI .................... 430
12.9. Exercícios Resolvidos ...................... 434
12.10. Exercícios Propostos ..................... 462

Capítulo 13: Comparador Analógico
13.1. Fundamentos da Comparação Analógica ................ 465
13.2. Entrada Multiplexada do Comparador Analógico ........... 466
13.3. Registradores do Comparador .................. 467
13.3.1. ADCSRB – Registrador B de Controle e Estado do ADC ........ 467
13.3.2. ACSR – Reg. de Estado e Contr. do Comp. Analógico ... 468
13.3.3. DIDR1 – Registrador 1 para Desabilitar Entrada Digital ....... 469
13.4. Resumo sobre Comparador Analógico ................. 470
13.5. Exercícios Resolvidos ...................... 471
13.6. Exercícios Propostos ....................... 475

Capítulo 14: Mostrador LCD
14.1. Introdução ao Mostrador LCD ................... 479
14.2. Pinagem dos Mostradores LCD ................... 480
14.3. Formato do LCD ......................... 482
14.4. Operação do LCD ......................... 483
14.5. Controle de Acesso ao LCD ................... 485
14.5.1 Envio de Instruções (RS = 0 e RW = 0) ............... 487
14.5.2 Leitura do Bit Ocup. e Conteúdo de AC (RS = 0 e R/W = 1) ..... 488
14.5.3 Escrita de Dados (RS = 1 e R/W = 0) ............... 489
14.5.4 Leitura de Dados (RS = 1 e R/W = 1) ............... 489
14.6. Reset do Mostrador LCD ..................... 489
14.7. Temporização para Acesso ao Mostrador LCD ............. 491
14.8. Interface com Mostradores LCD .................. 491
14.9. Resumo sobre o LCD ....................... 493
14.10. Exemplo de Programa para o LCD .................. 493
14.10.1. Exemplo com a Biblioteca LiquidCrystal ............ 494
14.10.2. Exemplo de Rotinas Rápidas com o LCD ........... 494
14.11. Mostrador LCD Gráfico ..................... 500
14.11.1. Envio de Instr. para o LCD Gráfico (D/I = 0 e R/W = 0) ...... 502
14.11.2. Leitura do Byte de Estado (D/I = 0 e R/W = 1) .......... 503
14.11.3. Escrita de um Dado (D/I = 1 e R/W = 0) .............. 504
14.11.4. Leitura de um Dado (D/I = 1 e R/W = 1) .............. 504

Capítulo 15: MPU 6050: Acelerômetro e Giroscópio
15.1. Introdução ............................ 507
15.2. Princípios sobre Acelerômetros e Giroscópios .............. 508
15.3. O Circuito do MPU 6050 ..................... 511
15.3.1. Placas com o MPU 6050 para Arduino ............... 511
15.3.2. Conexão Elétrica do MPU 6050 (GY-521) ............. 512
15.4. A Operação do MPU 6050 ..................... 513
15.4.1. Interpretação das Leituras do MPU 6050 (GY-521) ........ 514
15.4.2. Preparação do MPU 6050 (GY-521) e Barramento I2C (TWI) .... 517
15.4.3. Retirada do MPU do Modo Sleep e Teste da Comun. ...... 518
15.4.4. Realização do Self_Test do MPU ................. 518
15.4.5. Calibração do MPU ..................... 520
15.4.6. Seleção da Banda Pass. do Filtro Dig. Passa Baixas (LPDF) .. 520
15.4.7. Seleção da Taxa de Amostragem do MPU 6050 ......... 521
15.4.8. Emprego da FIFO do MPU 6050 ................ 522
15.4.9. Interrupção com o MPU 6050 ................. 523
15.4.10. Seleção de Limiar para a Detecção de Movimento ......... 524
15.4.11. Listagem de Todos os Registradores do MPU .......... 525
15.5. Resumo para Uso do MPU 6050 ................. 526
15.6. Exercícios Resolvidos ...................... 529