Mudanças entre as edições de "STE29008-2018-1"
Ir para navegação
Ir para pesquisar
(4 revisões intermediárias por 2 usuários não estão sendo mostradas) | |||
Linha 66: | Linha 66: | ||
− | = (06/04/2018) – | + | = (06/04/2018) – Usando C++= |
==Mudança de nível de abstração== | ==Mudança de nível de abstração== | ||
Linha 100: | Linha 100: | ||
*[https://www.geeksforgeeks.org/bitwise-hacks-for-competitive-programming/ Operação de Bits em C/C++] | *[https://www.geeksforgeeks.org/bitwise-hacks-for-competitive-programming/ Operação de Bits em C/C++] | ||
*[http://www.cplusplus.com/doc/boolean/ Operações Booleanas em C/C++] | *[http://www.cplusplus.com/doc/boolean/ Operações Booleanas em C/C++] | ||
+ | |||
+ | |||
+ | |||
+ | = (09/04/2018) – GPIO: avr-libc = | ||
+ | |||
+ | = (13/04/2018) – GPIO: avr-libc (cont.) = | ||
+ | |||
+ | |||
+ | = (16/04/2018) – Mapeamento em memória (GPIO_Port) = | ||
+ | |||
+ | = (20/04/2018) – Mapeamento em memória (GPIO_Port) = | ||
+ | |||
+ | = (23/04/2018) – Análise Eficiência de código (obj_dump) = | ||
+ | |||
+ | = (27/04/2018) – Serial e Interrupção Externa = | ||
+ | |||
+ | Avaliação 1: | ||
+ | * Implementar | ||
+ | ** Classe Serial (bloqueante) | ||
+ | ** Classe Interrupção Externa | ||
+ | ** Códigos de testes da classe | ||
+ | ** Entrega: 07/05 (via Moodle) | ||
+ | |||
+ | *Referências: | ||
+ | ** [http://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-42735-8-bit-AVR-Microcontroller-ATmega328-328P_Datasheet.pdf Datasheet ATmega328p] | ||
+ | ** [http://maxembedded.com/2013/09/the-usart-of-the-avr/#UARTnUSART USART AVR] | ||
+ | ** [https://sites.google.com/site/qeewiki/books/avr-guide/external-interrupts-on-the-atmega328 EXTINT] | ||
+ | |||
+ | = (04/05/2018) – Serial e Interrupção Externa (cont.)= | ||
+ | |||
+ | |||
+ | = (07/05/2018) – FIFO e Serial com FIFO= |
Edição atual tal como às 15h08min de 7 de maio de 2018
Sistemas Embarcados
- Professor: Roberto de Matos
- Encontros: segundas e sextas às 13:30 no Laboratório de Programação.
Aula 1 (16/02/2018) – Apresentação
- Apresentação do professor.
- Apresentação dos alunos: Nome, perfil, preferências, etc.
- Apresentação da disciplina.
(26/02/2018) – Mercado de Sistemas Embarcados
(02/03/2018) – Introdução a Sistemas Embarcados
(05/03/2018) – Introdução a Sistemas Embarcados
- Notas de Aula:
- Experimentos:
(09/03/2018) – Introdução a Sistemas Embarcados (cont.)
- Notas de Aula:
- Experimentos:
(16/03/2018) – ADC (cont.)
- Tarefa:
- 1- Mudar a implementação da Leitura do ADC de "float" para "long" e verificar o ganho em memória de programa e dados.
(23/03/2018) – 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 pela serial uma mensagem.
- Round Robin com Interrupções
- Interrupções (IRQ, ISR). Estudo de caso AVR.
(26/03/2018) – Interrupções
(02/04/2018) – PWM
(06/04/2018) – Usando C++
Mudança de nível de abstração
- Arduino --> ATmega328p (Ex.: I/O Ports)
ATmega328p: I/O Ports
- Tabela verdade de configuração das portas:
- Endereços registradores de I/O:
GCC, avr-libc
- avr-libc
- A simple Project
- Eclipse IDE Neon.2 para Linux 64-bits (última atualização em 24/02/2017) - Mantido pelo Prof. Arliones.
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++
(09/04/2018) – GPIO: avr-libc
(13/04/2018) – GPIO: avr-libc (cont.)
(16/04/2018) – Mapeamento em memória (GPIO_Port)
(20/04/2018) – Mapeamento em memória (GPIO_Port)
(23/04/2018) – Análise Eficiência de código (obj_dump)
(27/04/2018) – Serial e Interrupção Externa
Avaliação 1:
- Implementar
- Classe Serial (bloqueante)
- Classe Interrupção Externa
- Códigos de testes da classe
- Entrega: 07/05 (via Moodle)
- Referências: