Anda di halaman 1dari 8

UNIVERSIDADE FEDERAL DE UBERLNDIA

FACULDADE DE ENGENHARIA ELTRICA


CURSO DE GRADUAO EM
ENGENHARIA ELTRICA

PLANO DE ENSINO

COMPONENTE CURRICULAR: Sistemas Embarcados 1

CDIGO: FEELT31609 PERODO/SRIE: 6 TURMA: U

CH TERICA: CH TOTAL: OBRIGATRIA: ( X ) OPTATIVA: ( )


CH PRTICA:
30 30 60

PROFESSOR (A): Fbio Vincenzi Romualdo da Silva ANO/SEMESTRE: 2017/2

EMENTA
Arquiteturas de hardware, programao em baixo e alto nvel e metodologia de projeto de sistemas
dedicados microcontrolados e microprocessados.

JUSTIFICATIVA
Atualmente, os sistemas embarcados fazem parte do dia-a-dia dos habitantes de todos os pases do
mundo. Eles esto presentes nos micro-ondas, geladeiras, carros, caminhes, nibus, avies, navios,
trens, na automao residencial, predial, smartphones, tablets, dentre outros dispositivos. Assim, a
disciplina de Microprocessadores ir proporcionar ao aluno matriculado meios para compreender as
caractersticas de hardware de um sistema embarcado e utilizar uma linguagem empregada na
programao destes dispositivos.

OBJETIVOS

Objetivo Geral:
Compreender as caractersticas de hardware de um sistema embarcado e seu uso atravs
de linguagens de programao.

Objetivos Especficos:
1. Analisar, identificar, especificar e utilizar microprocessadores e microcontroladores;
2. Compreender as caractersticas e limitaes de hardware de um dispositivo embarcado
(CPU, memrias e perifricos) e elaborar o respectivo firmware, capacitando o sistema
a prover solues computacionais na rea de engenharia;
3. Utilizar ferramentas computacionais para a programao e simulao de sistemas
embarcados.

4. Incentivar o desenvolvimento de projetos interdisciplinares e servir como base para


disciplinas posteriores que necessitem de sistemas embarcados.

DESCRIO DO PROGRAMA

DIMENSO TERICA
1. Introduo
1.1. Definies bsicas em Sistemas Embarcados;
1.2. Arquiteturas e Conjunto de Instrues;
1.2.1. Harvard x Von Neumann;
1.2.2. RISC x CISC.
1.3. Viso geral sobre arquitetura de microcontroladores:
1.3.1. Registradores de propsito especfico e de propsito geral;
1.3.2. Ponteiro de Pilha;
1.3.3. Contador de Programa;
1.3.4. Registrador de Status;
1.3.5. Modos de endereamento;
1.3.6. Load e store de memria;
1.3.7. Formato da instruo;
1.3.8. Busca de instrues e pipelines de execuo.

2. Desenvolvimento com e sem sistemas operacionais


2.1. Sistemas sem sistema operacional x com sistema operacional;
2.2. Funes de Alto Nvel e de Baixo Nvel em Sistemas Operacionais;
2.3. Aplicaes complexas e com mltiplas tarefas;
2.4. Sistemas Operacionais de Tempo Real e Crticos.

3. Programao Eficiente
3.1. Tipos primitivos (stdint.h);
3.2. Diretivas de pr-processador e constantes
3.3. Escolhendo bons nomes;
3.4. Variveis e Modificadores de Tipo;
3.5. Operaes atmicas para processadores de 8, 16, 32 e 64bits;
3.6. As regras para alta confiabilidade (MISRA);
3.7. Portabilidade de cdigo.

4. Sistemas de Entrada e de Sada


4.1. Acionamento de Portas E/S Programveis
4.1.1. Baixo Nvel (Descrio de Hardware):
4.1.1.1. Registradores de direo;
4.1.1.2. Registradores de dados.
4.1.2. Alto Nvel (Sistema de Arquivos):
4.1.2.1. Multiplexador das funes de pino;
4.1.2.1 Arquivos de direo;
4.1.2.2 Arquivos de dados.
4.1.3. Manipulao de Registros com o uso do Pr-processador.
4.2. Conversor Analgico Digital (A/D)
4.2.1. Baixo Nvel (Descrio de Hardware):
4.2.1.1. Multiplexador de seleo do canal do A/D;
4.2.1.2. Registrador de seleo de tenso de referncia do A/D;
4.2.1.3. Registradores de controle e de status do A/D.
4.2.2. Alto Nvel (Sistema de Arquivos):
4.2.2.1. Arquivos de leitura dos canais do A/D.
4.3. Modulao por Largura de Pulso (PWM)
4.3.1. Baixo Nvel (Descrio de Hardware):
4.3.1.1. Registradores de Direo para PWM;
4.3.1.2. Registradores de controle e de status do Timer para PWM;
4.3.1.2.1. Modo de sada por comparao de registrador;
4.3.1.2.2. Seleo do modo de gerao de formas de ondas;
4.3.1.2.3. Seleo do clock e configurao do prescaler;
4.3.2. Alto Nvel (Sistema de Arquivos):
4.3.2.1. Arquivo de controle das funes e seleo do pino;
4.3.2.2. Arquivo de controle do perodo do PWM;
4.3.2.3. Arquivo de controle da frequncia;
4.3.2.4. Arquivo de controle da polaridade;
4.3.2.5. Arquivo de controle da razo cclica.
4.4. Comunicao Serial (SPI, I2C, UART, dentre outras)
4.4.1. Comunicao serial sncrona;
4.4.2. Comunicao serial assncrona.
4.5. Timer e Interrupo
4.5.1. Baixo Nvel (Descrio de Hardware):
4.5.1.1. Registradores de controle e de status;
4.5.1.2. Seleo do clock e configurao do prescaler;
4.5.1.3. Polling x Interrupes
4.5.1.4. Rotina de tratamento de interrupo;
4.5.1.5. Vetor de interrupo;
4.5.1.6. Registradores de controle e de status de interrupo;
4.5.1.7. Proteo de memria compartilhada.
4.6. Displays e Interfaces Relacionadas
4.6.1. - Interface de Teclado;
4.6.2. - Display de 7 segmentos;
4.6.2.1. - Converso Serial/Paralela.
4.6.3 - Display de LCD Alfanumrico.
4.7. Programao Usando Mquina de Estados e POSIX Threads
5. Desenvolvimento de Projetos

DIMENSO PRTICA

1. Prticas em Sistemas Embarcados para Baixo e Alto Nvel.


1.1 Compilao de programa;
i.Prompt de Comando;
ii.Ambiente Integrado de Desenvolvimento (IDE).
1.2 Configurao e aplicao de escrita e leitura de portas E/S programveis;
1.3 Configurao e aplicao makefile;
1.4 Configurao e aplicao de conversores analgicos digitais (A/D);
1.5 Configurao e aplicao de PWM;
1.6 Configurao e aplicao de UART;
1.7 Programao e Aplicao de Mquina de Estados;
1.8 Programao e Aplicao de Thread - Para Sistema Operacional;

METODOLOGIA

Cronograma previsto para desenvolvimento do contedo:

Aula Contedo das Aulas Tericas


Apresentao do Plano de Ensino e da Disciplina: data das provas, normas
01
para apresentao dos trabalhos, bibliografia, entre outros assuntos
1.1. Definies bsicas em Sistemas Embarcados;
1.2. Arquiteturas e Conjunto de Instrues;
02
1.2.1. Harvard x Von Neumann;
1.2.2. RISC x CISC.
1.3. Viso geral sobre arquitetura de microcontroladores:
1.3.1. Registradores de propsito especfico e de propsito geral;
1.3.2. Ponteiro de Pilha;
1.3.3. Contador de Programa;
03 1.3.4. Registrador de Status;
1.3.5. Modos de endereamento;
1.3.6. Load e store de memria;
1.3.7. Formato da instruo;
1.3.8. Busca de instrues e pipelines de execuo.
2. Desenvolvimento com e sem sistemas operacionais
2.1. Sistemas sem sistema operacional x com sistema operacional;
04 2.2. Funes de Alto Nvel e de Baixo Nvel em Sistemas Operacionais;
2.3. Aplicaes complexas e com mltiplas tarefas;
2.4. Sistemas Operacionais de Tempo Real e Crticos.
3. Programao Eficiente
3.1. Tipos primitivos (stdint.h);
3.2. Diretivas de pr-processador e constantes
05
3.3. Escolhendo bons nomes;
3.4. Variveis e Modificadores de Tipo;
3.5. Operaes atmicas para processadores de 8, 16, 32 e 64bits;
3.6. As regras para alta confiabilidade (MISRA);
3.7. Portabilidade de cdigo.
4. Sistemas de Entrada e de Sada
4.1. Acionamento de Portas E/S Programveis
4.1.1. Baixo Nvel (Descrio de Hardware):
4.1.1.1. Registradores de direo;
4.1.1.2. Registradores de dados.
06
4.1.2. Alto Nvel (Sistema de Arquivos):
4.1.2.1. Multiplexador das funes de pino;
4.1.2.1 Arquivos de direo;
4.1.2.2 Arquivos de dados.
4.1.3. Manipulao de Registros com o uso do Pr-processador.
4.2. Conversor Analgico Digital (A/D)
4.2.1. Baixo Nvel (Descrio de Hardware):
4.2.1.1. Multiplexador de seleo do canal do A/D;
07 4.2.1.2. Registrador de seleo de tenso de referncia do A/D;
4.2.1.3. Registradores de controle e de status do A/D.
4.2.2. Alto Nvel (Sistema de Arquivos):
4.2.2.1. Arquivos de leitura dos canais do A/D.
4.3. Modulao por Largura de Pulso (PWM)
4.3.1. Baixo Nvel (Descrio de Hardware):
4.3.1.1. Registradores de Direo para PWM;
4.3.1.2. Registradores de controle e de status do Timer para PWM;
08
4.3.1.2.1. Modo de sada por comparao de registrador;
4.3.1.2.2. Seleo do modo de gerao de formas de ondas;
4.3.1.2.3. Seleo do clock e configurao do prescaler;

4.3.2. Alto Nvel (Sistema de Arquivos):


4.3.2.1. Arquivo de controle das funes e seleo do pino;
4.3.2.2. Arquivo de controle do perodo do PWM;
09
4.3.2.3. Arquivo de controle da frequncia;
4.3.2.4. Arquivo de controle da polaridade;
4.3.2.5. Arquivo de controle da razo cclica.
4.4. Comunicao Serial (SPI, I2C, UART, dentre outras)
10 4.4.1. Comunicao serial sncrona;
4.4.2. Comunicao serial assncrona.
4.5. Timer e Interrupo
4.5.1. Baixo Nvel (Descrio de Hardware):
4.5.1.1. Registradores de controle e de status;
4.5.1.2. Seleo do clock e configurao do prescaler;
11 4.5.1.3. Polling x Interrupes
4.5.1.4. Rotina de tratamento de interrupo;
4.5.1.5. Vetor de interrupo;
4.5.1.6. Registradores de controle e de status de interrupo;
4.5.1.7. Proteo de memria compartilhada.
4.6. Displays e Interfaces Relacionadas
4.6.1. - Interface de Teclado;
12 4.6.2. - Display de 7 segmentos;
4.6.2.1. - Converso Serial/Paralela.
4.6.3 - Display de LCD Alfanumrico.
13 4.7. Programao Usando Mquina de Estados e POSIX Threads
14 4.7. Programao Usando Mquina de Estados e POSIX Threads
15 Desenvolvimento de Projeto Interdisciplinar
16 Apresentar o Projeto na Verso Final

Aula Data Contedo das Aulas Prticas


Apresentao do Laboratrio, Kits de desenvolvimento, normas para
apresentao dos trabalhos, bibliografia, entre outros assuntos
Compilao de programa;
01 24/08
Prompt de Comando;
Ambiente Integrado de Desenvolvimento (IDE).
Implementao do exemplo Oi Mundo!!!
02 05/09 Configurao e aplicao de escrita e leitura de portas E/S programveis
03 14/09 Avaliao Oral e Prtica dos Itens 01 e 02
04 21/09 Avaliao da Proposta de Projeto - Primeira Etapa
05 28/09 Configurao e aplicao de conversores analgicos digitais (A/D)
06 05/10 Configurao e aplicao de PWM
Avaliao Oral e Prtica dos Itens 05 e 06
07 19/10
O aluno dever aplicar as boas prticas de programao
08 26/20 Vem pra UFU
Configurao e aplicao de UART
09 09/11
Programao e Aplicao de Mquina de Estados
Avaliao Oral e Prtica do Item 09
10 16/11
O aluno dever aplicar as boas prticas de programao
11 23/11 Avaliao da Segunda Etapa
12 30/11 Timer e Interrupo
Avaliao Oral e Prtica do Item 12
13 07/12
O aluno dever aplicar as boas prticas de programao
14 14/12 Avaliao Final do Projeto - Terceira Etapa
15 21/12 Dia da Avaliao Substitutiva
16 22/12 Entrega das Notas

AVALIAO

As avaliaes sero constitudas de sete ( 3 ) exames oral e prtico e um projeto com trs ( 3 ) etapas
divididas ao longo do semestre.

14 de setembro de 2017: AVALIAO ORAL E PRTICA (10 Pontos)


19 de outubro de 2017: AVALIAO ORAL E PRTICA (10 Pontos)
16 de novembro de 2017: AVALIAO ORAL E PRTICA (15 Pontos)
07 de dezembro de 2017: AVALIAO ORAL E PRTICA (15 Pontos)

21 de setembro de 2017: Avaliao da Proposta de Projeto - Primeira Etapa (10 Pontos)


23 de novembro de 2017: Avaliao da Segunda Etapa do Projeto (10 Pontos)
14 de dezembro de 2017: Avaliao Final do Projeto - Terceira Etapa (30 Pontos)

Projeto: 50 Pontos
21 de dezembro de 2017: AVALIAO SUBSTITUTIVA DA AVALIAO PERDIDA

Horrio de Atendimento: quarta-feira das 9:00 s 11:00 na sala 3N213


BIBLIOGRAFIA BSICA

1. SCHILDT, H. C Completo e Total. 3a Edio. Pearson Hall, 1997.


2. TANENBAUM, A. S. and Woodhull, A. S. Sistemas Operacionais: Projeto e Implementao. Bookman,
2000.
3. SOUZA, J. N. Lgica para Cincia da Computao. Rio de Janeiro: Editora Campus, 2002.

BIBLIOGRAFIA COMPLEMENTAR

1. MIZRAHI, V. V. Treinamento em Linguagem C++. 2 Edio. So Paulo: Pearson Hall, 2006.


2. FARRER, H., at. al. Algoritmos Estruturados. Rio de Janeiro: LTC, 1999.
3. DEITEL, H. M. Java: Como Programar. Prentice Hall, 2005
4. MENEZES, N. N. C. Introduo programao com Python: algoritmos e lgica de programao para
iniciantes. So Paulo: Novatec, 2010.
5. DEITEL, H. M. C++: Como Programar. 5a Edio. So Paulo: Prentice Hall, 2006.
6. MOLLOY, D. Exploring BeagleBone: Tools and Techniques for Building with Embedded Linux. Wiley,
2015.
7. BARRETT, S. and KRIDNER, J. Bad to the Bone: Crafting Electronic Systems with BeagleBone and
BeagleBone Black. Morgan & Claypool, 2013.
8. MISRA, MISRA-C:2004 - Guidelines for the Use of the C Language in Critical Systems. ISBN 0 9524156 4
X. http://www.misra.org.uk/.
9. HOOK, B. Write Portable Code: An Introduction to Developing Software for Multiple Platforms. No
Starch Press, 2005.

APROVAO

Aprovado em reunio do Colegiado do Curso de Graduao em Engenharia Eltrica

Em ___/____/______

_____________________________________
Coordenador do Curso