Relatório Microcontroladores LED's 1
Por: Daniel Callado • 2/2/2016 • Relatório de pesquisa • 1.307 Palavras (6 Páginas) • 551 Visualizações
Página 1 de 6
UFF - Universidade Federal Fluminense
Introdução aos microcontroladores
Relatório 1 - Leds
Autor: Daniel Callado Parrilha de Lima Matricula: 114031080
Professor: John Reed
Curso: Ciência da Computação
Data: 17/12/2015
Introdução
- O que é o experimento;
- O experimento consiste em acender leds, de forma ordenada em sequência, utilizando-se da manipulação de tabelas.
- Objetivo | O que se pretende
- Introduzir o aluno na disciplina, combinando experimento prático com conceitos teóricos, apresentando o mesmo ao hardware, assim como suas funcionalidades. Assim como a melhor utilização de memória e endereçamento.
- Como foi feito | O experimento (arranjo) físico | Esquema;
- Foram utilizados no experimento os seguintes equipamentos:
- Placa PJRC;
- Microcontrolador 8051;
- Notebook com teclado e mouse;
- Software Reads51 v4.20 - Rigel Corp - Instalado no notebook (que compila o código em Assembly para linguagem de máquina);
- Software Hyperteminal - Instalado no notebook (que faz a conexão do computador com a placa através de cabo serial);
- Software Paulmon 2 - Já instalado no 8051(Que recebe o código e executa na placa PJRC);
- Projetor para mostrar à todos os alunos o passo-a-passo da programação.
- Foi utilizado código pré-programado, entregue pelo professor, para que coubesse aos alunos somente analisar cada linha de comando, aprender sobre cada parte do mesmo, inclusive utilizando do assistente da IDE, que indicava o que cada comando fazia ao pressionar a tecla “F1” com o cursor parado em cima do mesmo. Um aluno ficava responsável por ser o “piloto”, o que consistia em operar o notebook. Foram apresentados conceitos como o cabeçalho do Paulmon2, dentre outros e a cada linha de comando, era solicitado que fosse comentado de forma mais literal e de linguagem humana possível, não somente definindo o que fazia de fato, mas quais implicações daquela linha de comando.
- Estratégia adotada
Através de utilização de tabela, onde cada byte indicava qual LED deveria estar aceso (0 para aceso, 1 para apagado), foi utilizado de acumulador que percorria cada linha da tabela e levava esse byte para a saída “porta C”, responsável pelo comportamento dos LEDS. Devido a disposição dos bytes escolhida para a tabela, cada linha representava uma “ida e vinda” horizontal de até três LEDS acesos. Como o ciclo de máquina é muito rápido, essa percorrida na tabela não seria visível devido a velocidade com que se acenderiam os LEDS, portanto foi adotada uma estratégia de loops utilizando NOP (No Operation), que consome, cada um, um ciclo de máquina, ou seja, um delay para que pudesse ser vista a movimentação dos LEDS. Foram utilizadas sub-rotinas para tal (no código apresentada como DELAY). Para finalização do programa, era necessário somente que o usuário apertasse a tecla “esc”
- O que aconteceu:
- Sucesso \ aperfeiçoamento \ Adaptações
- O código foi compilado e executado com sucesso, tendo pequenos problemas somente na conexão do notebook com a placa. Como aperfeiçoamento, podemos ressaltar a inclusão da sub-rotina “EXIT”, que apagava todos os LEDS, antes de passar o comando da execução para o Paulmon2, já que antes, sem essa sub-rotina, os LEDS ficavam parados na última posição da tabela na qual foi interrompido.
- Foi feita uma adaptação (diminuição) na constante que definia a quantidade de loops do delay, o que resultou numa maior velocidade do movimento dos LEDS
- O que aprendemos
- Novos conhecimentos adquiridos
- Sendo esta a primeira aplicação feita utilizando o 8051, tudo o que foi apresentado é novo conhecimento, mas podem ser retratados conceitos de manipulação de tabelas, alocação inteligente de memória e recursos como registradores, desenvolvimento de raciocínio mais crítico na programação, maior organização e identificação de código (comentários).
- O que fazer com isso: Novos horizontes \ Aplicações
- Os conceitos adquiridos nessa aplicação, serão de grande valia para futuras novas aplicações que utilizarão, talvez, maior quantidade de dados de tabelas, que servirão para refletir o mundo real para a programação. Assim como , sabendo como funcionam programas em sua base e seus conceitos, fica mais perceptível a necessidade de otimização e melhor aproveitamento dos mesmos.
- Anexos
- Código
- Data sheet
...
Disponível apenas no TrabalhosGratuitos.com