Mudanças entre as edições de "STE29008-2018-1"
Ir para navegação
Ir para pesquisar
Linha 68: | Linha 68: | ||
= (06/04/2018) – GPIO: avr-libc = | = (06/04/2018) – GPIO: avr-libc = | ||
− | + | ==Mudança de nível de abstração== | |
− | + | *Arduino --> ATmega328p (Ex.: I/O Ports) | |
− | + | [[Arquivo: portas_arduino_uno.png|300px]] | |
− | [[Arquivo:portas_arduino_uno.png|300px | ||
+ | == ATmega328p: I/O Ports== | ||
*[http://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-42735-8-bit-AVR-Microcontroller-ATmega328-328P_Datasheet.pdf Datasheet ATmega328p] | *[http://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-42735-8-bit-AVR-Microcontroller-ATmega328-328P_Datasheet.pdf Datasheet ATmega328p] | ||
− | |||
*[http://www.avr-tutorials.com/digital/about-avr-8-bit-microcontrollers-digital-io-ports Resumo Portas] | *[http://www.avr-tutorials.com/digital/about-avr-8-bit-microcontrollers-digital-io-ports Resumo Portas] | ||
+ | *Tabela verdade de configuração das portas: | ||
+ | [[Arquivo:Port_Pin_Configurations.png|600px]] | ||
+ | *Endereços registradores de I/O | ||
+ | [[Arquivo:io_registers_address.png|800px]] | ||
− | + | ==GCC, avr-libc== | |
− | |||
− | |||
− | |||
*[https://www.nongnu.org/avr-libc/ avr-libc] | *[https://www.nongnu.org/avr-libc/ avr-libc] | ||
− | + | ==Prática== | |
− | [[https://www.geeksforgeeks.org/bitwise-hacks-for-competitive-programming/ Operação de Bits em C/C++ | + | *Implemente um programa usando GCC e avr-libc para ligar um led quando um botão for pressionado ([[ESTE:_General_Purpose_Input_and_Output_(GPIO) | exemplo]]) |
+ | [https://www.geeksforgeeks.org/bitwise-hacks-for-competitive-programming/ Operação de Bits em C/C++] |
Edição das 19h17min de 6 de abril 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) – GPIO: avr-libc
Mudança de nível de abstração
- Arduino --> ATmega328p (Ex.: I/O Ports)
ATmega328p: I/O Ports
- Datasheet ATmega328p
- Resumo Portas
- Tabela verdade de configuração das portas:
- Endereços registradores de I/O
GCC, avr-libc
Prática
- Implemente um programa usando GCC e avr-libc para ligar um led quando um botão for pressionado ( exemplo)