STE29008-2019-1
Revisão de 15h01min de 20 de março de 2019 por Roberto.matos (discussão | contribs) (→Desenvolvimento:)
Sistemas Embarcados
- Professor: Roberto de Matos
- Encontros: quartas às 13:30h e sextas às 15:40h no Laboratório CAD 1.
13/02/2019 – Apresentação
- Apresentação do professor.
- Apresentação da disciplina.
- 2017 Embedded Markets Study
15/02/2019 – Introdução
- Notas de Aula:
20/02/2019 – Experimento GPIO
- Experimentos:
22/02/2019 – Experimento UART
27/02/2019 – ADC
- Finalizar o UART mestre escravo
- Consulta:
- Experimentos:
01/03/2019 – Interrupções
- Desafio:
- Usando Round Robin sem interrupções implementar um sistema com um LED e um botão. O sistema deve piscar o LED a cada 2 segundos e ao botão ser pressionado envia uma mensagem pela serial.
- Notas de Aula:
- Experimentos:
- Referências:
08/03/2019 – Usando C++
Mudança de nível de abstração
- Arduino Mega --> ATmega2560 (Ex.: I/O Ports)
- Esquemático Arduino Mega
- Esquemático Arduino Mega - CLONE
Fonte: https://www.arduino.cc/en/Hacking/PinMapping2560
ATmega2560: I/O Ports
- Tabela verdade de configuração das portas:
- Endereços registradores de I/O:
GCC, avr-libc
Fluxo Ferramentas:
AVR-LIBC:
Desenvolvimento:
- É obrigatório a instalação das ferramentas (Toolchain e o AVR-Libc).
- O aluno pode escolher usar o Eclipse ou montar seu próprio Makefile.
- Ferramentas Necessárias:
- Instalação do Eclipse:
- Eclipse IDE Neon.2 para Linux 64-bits (última atualização em 24/02/2017) - Mantido pelo Prof. Arliones.
- OU
- Instalação do Eclipse para C/C++ e Plugin dentro do Eclipse
- Guia Eclipse:
- Makefile:
Prática
- Implemente um programa usando GCC e avr-libc para ligar um led quando um botão for pressionado (exemplo)
- Operação de Bits em C/C++
- Operações Booleanas em C/C++
- Programming 101 - By Eric Weddington
13/03/2019 – Não Houve Aula
15/03/2019 – Usando C++ (cont.)
Atividade - A1
Re-implementar as seguintes atividades usando C++ e AVR-Libc:
- Lab 01: GPIO - Hello LED
- Lab 02: UART - Serial Communication
- Lab 04: UART - ADC e Sensor Reading
- Lab 06: GPIO and External Interrupts - part 1
- Lab 07: GPIO and External Interrupts - part 2
Entregar:
- Código fonte
- Relatório apresentando principais registradores utilizados para cada atividade.
- Usar as dicas em: Atmel AVR4027: Tips and Tricks to Optimize Your C Code for 8-bit AVR Microcontrollers
Deadline: 31/03/2019
20/03/2019 – Auxílio Atividade (Serial)
- Análise dos registradores de controle
- Funcionamento bloqueante da Serial