|
UNIVERSIDADE FEDERAL DE UBERLÂNDIA Av. João Naves de Ávila, 2121, Bloco 3N - Bairro Santa Mônica, Uberlândia-MG, CEP 38400-902 |
|
Plano de Ensino
IDENTIFICAÇÃO
Componente Curricular: |
|||||||||
Unidade Ofertante: |
|||||||||
Código: |
Período/Série: |
Turma: |
|||||||
Carga Horária: |
Natureza: |
||||||||
Teórica: |
Prática: |
Total: |
Obrigatória: |
Optativa: |
|||||
Professor(A): |
Ano/Semestre: |
||||||||
Observações: |
EMENTA
Estudo e desenvolvimento de sistemas embarcados microcontrolados.
JUSTIFICATIVA
Trabalhar os elementos de projeto envolvidos no desenvolvimento de sistemas embarcados, tanto no aspecto de hardware como de firmware. Trazer a sistemática do processo de desenvolvimento de hardware microcontrolado, técnicas de codificação eficiente, estratégias de criação de firmware, estudo da plataforma ARM Cortex M, desenvolvimento de hardware microcontrolado, criação de placas e circuitos com ferramentas CAD e arquitetura de computadores.
OBJETIVO
Objetivo Geral: |
Esta disciplina tem como objetivo integrar os conceitos apresentados em diversas disciplinas da engenharia Elétrica através do estudo e implementação de hardware e firmware de dispositivos industriais.
|
Objetivos Específicos: |
|
PROGRAMA
METODOLOGIA
Aulas expositivas com utilização de quadro, datashow e mesa digitalizadora e aulas práticas em laboratório. Recursos e plataformas de comunicação e ensino à distância como Microsoft Teams e Moodle poderão ser utilizados para facilitar a comunicação entre o professor e o estudante e como complementação da carga horária.
As aulas expositivas cobrem os temas mais complexos ou que exigem maior experiência. As aulas práticas são direcionadas para a plataforma Cortex M (processadores STM32) com atividades periódicas pontuadas, em geral finalizadas dentro do tempo da aula, favorecendo o compartilhamento de experiências por parte do professor.
A Tabela abaixo mostra o cronograma previsto para as aulas teóricas e práticas para um semestre letivo de 15 semanas.
Aula |
Conteúdo |
|
Aula 01 |
T |
Apresentação da disciplina. |
Aula 01 |
P |
O processo de compilação. Configuração do ambiente de desenvolvimento. |
Aula 02 |
T |
Introdução à arquitetura de computadores. Arquitetura Cortex M. |
Aula 02 |
P |
Microcontroladores STM32 - layout de memória, processo de boot e NVIC. |
Aula 03 |
T |
Revisão da linguagem C. Portabilidade de código e C11. Toolchains e cross compilers (GNU) para ARM Cortex M. |
Aula 03 |
P |
Introdução ao desenvolvimento Bare Metal. Atividade de programação 01 - STM32 GPIO acionamento de LED. |
Aula 04 |
T |
Automatizando o processo de compilação com o Makefile. Analisando o arquivo objeto realocável. |
Aula 04 |
P |
Escrevendo os arquivos de startup e linker script. Analisando o arquivo de mapa de memória. |
Aula 05 |
T |
Efeitos da otimização de código pelo compilador. Utilização do type qualifier volatile. Depuração de código. |
Aula 05 |
P |
STM32 GPIO - HAL ST, registradores Atividade de programação 02 - STM32 GPIO leitura de botões por polling. |
Aula 06 |
T |
Aprimorando o arquivo Makefile. |
Aula 06 |
P |
Atividade de programação 03 - Arquitetura de software STM32 GPIO driver. |
Aula 07 |
T |
IDE para desenvolvimento STM32 HAL ST. Organização do código gerado. |
Aula 07 |
P |
Atividade de programação 04 - Arquitetura de software STM32 GPIO HAL (Hardware Abstraction Layer). |
Aula 08 |
T |
Interrupções. |
Aula 08 |
P |
Atividade de programação 05 - STM32 GPIO interrupções. |
Aula 09 |
T |
Race Conditions - o que são e como evitar. |
Aula 09 |
P |
STM32 SYSTICK - HAL ST, registradores. Atividade de programação 06 - STM32 SYSTICK TIMER. |
Aula 10 |
T |
Temporizadores avançados - PWM. |
Aula 10 |
P |
STM32 TIMERS - HAL ST, registradores. STM32 ADVANCED TIMERS - HAL ST, registradores. Atividade de programação 07 - STM32 TIMER PWM. |
Aula 11 |
T |
Conversores analógico digital - ADC utilizando polling, interrupção e DMA. |
Aula 11 |
P |
STM32 ADC - HAL ST, polling e interrupção. STM32 DMA - HAL ST. Atividade de programação 08 - STM32 ADC. |
Aula 12 |
T |
STM32 USART - HAL ST, polling, interrupção, DMA e estrutura de dados. |
Aula 12 |
P |
Atividade de programação 09 - STM32 USART. |
Aula 13 |
T |
Barramentos seriais: I2C e SPI. |
Aula 13 |
P |
Atividade de programação 10 - STM32 SPI. |
Aula 14 |
T |
Estratégias de construção de firmware: super loop, interrupt driven, co-rotinas e máquinas de estados. |
Aula 14 |
P |
Atividade de programação 11 - Fechadura eletrônica. |
Aula 15 |
T |
Estratégias de construção de firmware: Sistemas Operacionais de Tempo Real (RTOS).
|
Aula 15 |
P |
Atividade de programação 12 - FreeRTOS / NuttX. |
A carga horária total da disciplina é de 75 horas, ou seja, 90 horas-aula. Entretanto, de acordo com o cronograma apresentado estão previstas apenas 75 horas-aula. As 15 horas-aula restantes serão realizadas por meio de atividades assíncronas.
A última semana, será utilizada para atendimento de casos especiais e entrega da ATIVIDADE DE RECUPERAÇÃO.
AVALIAÇÃO
O aprendizado do aluno será acompanhado através da realização de listas de exercícios, questionários para verificação e acompanhamento de aprendizagem, atividades de laboratório e projeto de conclusão da disciplina. A pontuação será distribuída conforme tabelas abaixo
Atividade Laboratório |
Valor |
ATV1: Configuração do ambiente de desenvolvimento |
4 |
ATV2: Vídeo inicial de uso da placa com pisca led |
4 |
ATV3: GPIO no STM32 por polling |
4 |
ATV4: GPIO no STM32 por interrupção |
4 |
ATV5: UART com interrupção e buffer circulares |
4 |
ATV6: Temporizadores |
4 |
ATV7: Input Capture |
4 |
ATV8: ADC com Polling |
4 |
ATV9: ADC com DMA |
4 |
ATV10: Máquinas de estados |
4 |
ATV11: PWM |
4 |
|
44 |
Verificação e acompanhamento de aprendizagem |
Valor |
VAC1: Famílias lógicas e reguladores |
3 |
VAC2: Projeto com microcontroladores |
3 |
VAC3: Arquitetura de computadores |
3 |
VAC4: Portabilidade de código |
3 |
VAC5: SPI e I2C |
3 |
VAC6: Dispositivos de memória |
3 |
|
18 |
Projeto Eletrônico |
Valor |
PRJ1: Documento inicial de requisitos |
4 |
PRJ2: Esquema elétrico e biblioteca de símbolos |
7 |
PRJ3: PCB e biblioteca de footprints |
8 |
PRJ4: Geração de arquivos de fabricação |
3 |
|
22 |
Listas de exercício |
Valor |
LST1: Arquitetura ARM |
8 |
LST2: Microcontroladores STM32 |
8 |
|
16 |
De acordo com a Resolução CONGRAD 46/2022 ao fim do semestre será disponibilizada aos estudantes que não obtiveram o rendimento mínimo para aprovação e com frequência mínima de 75% (setenta e cinco por cento) no componente curricular uma ATIVIDADE DE RECUPERAÇÃO no valor de 15 pontos. O estudante que realizar a ATIVIDADE DE RECUPERAÇÃO terá limitada a sua nota final em 60 pontos.
BIBLIOGRAFIA
Básica
[1] Rodrigo Almeida, Carlos Moraes, and Thatyana Seraphim. Programação de Sistemas Embarcados. Editora Elsivier, 2016.
[2] Joseph Yiu. The Definitive Guide to ARM Cortex-M3 and Cortex-M4 Processors. Newnes, 2014.
[3] Andrew S. Tanenbaum. Organiza¸c˜ao Estruturada de Computadores. Pearson, 2013.
Complementar
[4] Roger S. Pressman. Engenharia de Software. Uma Abordagem Profissional. McGraw-Hill, 2016.
[5] Elecia White. Making Embedded Systems: Design Patterns for Great Software. O’Reilly Media, 2014.
[6] Eric Sink. Version Control by Example. Pyrenean Gold Press, 2011.
[7] Ben Klemens. 21st Century C: C Tips from the New School. O’Reilly Media, 2014.
[8] James W. Grenning. Test Driven Development for Embedded C. Pragmatic Bookshelf, 2011.
[9] Stephen L. Montgomery. MISRA C: Guidelines for the Use of the C Language in Critical Systems 2012. Misra, 2013.
[10] Randall Hyde. Write Great Code: Volume 1: Understanding the Machine. No Starch Press, 2012
APROVAÇÃO
Aprovado em reunião do Colegiado realizada em: ____/____/______
Coordenação do Curso de Graduação: _________________________
| Documento assinado eletronicamente por Daniel Pereira de Carvalho, Professor(a) do Magistério Superior, em 14/04/2022, às 13:52, conforme horário oficial de Brasília, com fundamento no art. 6º, § 1º, do Decreto nº 8.539, de 8 de outubro de 2015. |
| Documento assinado eletronicamente por Marcelo Barros de Almeida, Professor(a) do Magistério Superior, em 14/04/2022, às 21:50, conforme horário oficial de Brasília, com fundamento no art. 6º, § 1º, do Decreto nº 8.539, de 8 de outubro de 2015. |
| A autenticidade deste documento pode ser conferida no site https://www.sei.ufu.br/sei/controlador_externo.php?acao=documento_conferir&id_orgao_acesso_externo=0, informando o código verificador 3525558 e o código CRC 751C0B04. |
Referência: Processo nº 23117.018223/2022-35 | SEI nº 3525558 |