• Nenhum resultado encontrado

APLICAÇÃO DA PROGRAMAÇÃO DE MICROCONTROLADORES 8051 UTILIZANDO LINGUAGEM C

N/A
N/A
Protected

Academic year: 2022

Share "APLICAÇÃO DA PROGRAMAÇÃO DE MICROCONTROLADORES 8051 UTILIZANDO LINGUAGEM C"

Copied!
10
0
0

Texto

(1)

Erick Barros Nascimento

APLICAÇÃO DA PROGRAMAÇÃO DE

MICROCONTROLADORES 8051 UTILIZANDO LINGUAGEM C

Paulo Afonso – BA Novembro/2009

(2)

Erick Barros Nascimento

APLICAÇÃO DA PROGRAMAÇÃO DE

MICROCONTROLADORES 8051 UTILIZANDO LINGUAGEM C

Projeto apresentado ao curso de Bacharelado

em Sistemas de Informação para

cumprimento da disciplina Trabalho de Conclusão de Curso - TCC, sob orientação do professor Msc. Igor Medeiros Vanderlei e co-orientação do professor Esp. Ricardo Azevedo Porto.

Paulo Afonso – BA Novembro/2009

(3)

Erick Barros Nascimento

APLICAÇÃO DA PROGRAMAÇÃO DE

MICROCONTROLADORES 8051 UTILIZANDO LINGUAGEM C

Projeto apresentado ao curso de Bacharelado

em Sistemas de Informação para

cumprimento da disciplina Trabalho de Conclusão de Curso - TCC, sob orientação do professor do professor Msc. Igor Medeiros Vanderlei e co-orientação do professor Esp. Ricardo Azevedo Porto.

Aprovada por:

__________________________________________

Prof. Msc. Igor Medeiros Vanderlei (Orientador)

__________________________________________

Membro convidado 1

__________________________________________

Membro convidado 2

Paulo Afonso – BA Novembro/2009

(4)

NASCIMENTO, E. B. Aplicação da Programação de Microcontroladores 8051 utilizando Linguagem C. 2009, 80p. Monografia (Curso Bacharelado em Sistemas de Informação).

Faculdade Sete de Setembro – FASETE, Paulo Afonso – BA.

Com o continuado avançado da tecnologia atualmente os Microcontroladores fazem parte das nossas vidas. As aplicações desses dispositivos são as mais variadas, sendo encontrados, por exemplo, em máquinas de lavar, televisores, DVDs, rádios, controles remotos, microondas, entretenimento, segurança, controle de acesso, etc. Esses dispositivos utilizam software que executam tarefas pré-programadas, são encontrados na maioria dos equipamentos, e na maioria das vezes, os usuários não percebem sua presença. Com a utilização da eletrônica digital nas grandes empresas, o emprego dos Microcontroladores vem sendo muito requisitado para obter um controle preciso dos processos, gerando ganho de produtividade para as empresas. Para desenvolvimento de software para Microcontroladores são necessários software e hardware específicos para cada família de Microcontrolador.

Inicialmente, os Microcontroladores foram desenvolvidos para trabalharem com linguagens de programação de baixo nível, mas ao longo dos anos, esses dispositivos passaram a trabalhar com linguagens de alto nível, tornando o desenvolvimento de sistemas embarcados mais flexíveis e mais portáveis em relação ao hardware. A proposta da pesquisa está em apresentar um protótipo de um sistema embarcado funcionando na arquitetura de um Microcontrolador. Para realizar essa proposta foi utilizada pesquisa bibliográfica tendo como referências livros, artigos e sites além do uso de um KIT de programação para Microcontroladores para mostrar o uso de linguagens de alto nível nessa arquitetura.

Palavras chave: Microcontroladores, software, hardware.

(5)

NASCIMENTO, E. B. Application of the Programming of Microcontrollers 8051 using Language C. 2009, 80p. Monograph (Course of Bachelor of Information Systems).

Faculdade Sete de Setembro – FASETE, Paulo Afonso – BA.

With the continued advancement of the technology currently Microcontrollers are part of our lives. The applications of these devices are highly diverse, being found, for example, in washing machines, televisions, DVDs, radios, remote controls, microwave, entertainment, security, access control, etc. These devices use software that perform pre-programmed tasks, are found in many devices, and in most cases, users do not notice their presence. With the use of digital electronics in large companies, the use of microcontrollers has been a staple for precise control of processes, generating productivity gains for companies. To develop software for microcontrollers are necessary software and hardware specific to each family of microcontroller. Initially, the microcontrollers are designed to work with programming languages, low level, but over the years, these devices have to work with high-level languages, making the development of embedded systems more flexible and more portable compared to hardware. The research proposal is to present a prototype of an embedded system running on the architecture of a microcontroller. To accomplish this proposal was used as bibliographic references and books, articles and websites in addition to using a kit for programming microcontrollers to show the use of high-level languages such architecture.

Keywords: Microcontrollers, software, hardware.

(6)

LISTA DE FIGURAS

Figura 1: Lógica de funcionamento de um Sistema Embarcado ... 18

Figura 2: Sensor de proximidade, ângulo e atuador para freios. ... 20

Figura 3: Arquitetura das Linguagens de Programação... 30

Figura 4: Diferenças entre Microprocessador e Microcontrolador – Nº de circuitos... 34

Figura 5: Modelo simplificado de uma unidade de memória de um Microcontrolador ... 35

Figura 6:Exemplo simplificado de uma unidade de E/S... 39

Figura 7: Diferença que existe entre a transmissão em série com a transmissão em paralelo . 40 Figura 8: Exemplo da arquitetura de Von Neumann ... 44

Figura 9: Núcleo de um Microcontrolador da família 8051... 45

Figura 10: Demultiplexação de dados e endereços usando o port P0... 47

Figura 11: Comprometimento do Port P3 sendo utilizado para funções especiais ... 48

Figura 12:Organização de ROM interna/externa em função do valor lógico do pino EA... 49

Figura 13: Esquema de circuito com Reset automático e Reset forçado ... 50

Figura 14: Eclipse com perspectiva para C/C++ ... 56

Figura 15: Perspectiva ajustada para Java e QuantumDB... 57

Figura 16: Simulação de contagem binária de 8 bits e gravação no PORT P2... 59

Figura 17: Tela Principal do SPI-Flash Programmer... 61

Figura 18: KIT8051LS em funcionamento ... 64

Figura 19: Conexão do LCD e Potenciômetro ... 65

Figura 20: Porta de expansão ligada ao Port P3 ... 65

Figura 21: Barramento com 8 LED's ... 65

Figura 22: Teclados tipo push ... 66

Figura 23: Conector da alimentação e Porta serial ... 66

Figura 24: Microcontrolador AT89S8252... 67

Figura 25: Cooler de Ventilação... 69

Figura 26: Cabo Serial e Esquema da pinagem ... 69

Figura 27: Desenho do circuito de um Microcontrolador acionando motor ... 70

(7)

TABELAS

Tabela 1: Resumo das Funções especiais do Port P3 ... 49 Tabela 2: Grandes fabricantes e principais informações sobre suas características... 51 Tabela 3:Tipos de variáveis contempladas pelo SDCC ... 58

(8)

LISTA DE ABREVIATURAS E SÍMBOLOS

AD Analógico / Digital

CMB Conjunto Motor Bomba

DA Digital /Analógico

EPROM Erasable Programmable Read Only Memory ETA Estação de Tratamento de Água

GSM Global System for Mobile Communications

IHM Interface Homem - Máquina

ISO Organização Internacional para Padronização LED Light Emitting Diode

RAM Random Access Memory ROM Read Only Memory SDCC Small Device C Compiler USB Universal Serial BUS

(9)

SUMÁRIO

LISTA DE FIGURAS... v

TABELAS... vi

LISTA DE ABREVIATURAS E SÍMBOLOS... vii

1. CONSIDERAÇÕES INICIAIS... 11

1.1 Introdução... 11

1.2 Justificativa... 12

1.3 Problema da Pesquisa... 13

1.4 Hipóteses... 13

1.5 Objetivos... 14

1.5.1 Objetivo Geral... 14

1.5.2 Objetivos Específicos ... 14

1.6 Metodologia da Pesquisa... 15

1.7 Estrutura do Trabalho... 15

2. SISTEMAS EMBARCADOS... 17

2.1 Definições e Aplicações dos Sistemas Embarcados... 18

2.2 Características dos Sistemas Embarcados... 22

2.2.1 Interação com o ambiente... 22

2.2.2 Capacidade limitada de recursos... 23

2.2.3 Forte acoplamento entre hardware s software... 24

2.2.4 Importância das respostas de tempo real nos sistemas embarcados ... 25

2.3 Linguagens de Programação para Sistemas Embarcados... 26

2.3.1 Linguagem de Máquina ... 26

2.3.2 Linguagem Assembly... 27

2.3.3 Vantagens e Desvantagens da linguagem Assembly ... 28

2.3.4 Linguagens de Alto Nível... 29

2.3.5 Linguagem C... 29

2.3.6 Vantagens e Desvantagens da linguagem C ... 29

2.3.7 Linguagens de Quarta Geração ... 30

2.3.8 Análise e escolha da linguagem ... 30

3. MICROCONTROLADORES... 32

3.1 O que são os Microcontroladores... 33

3.2 Microcontroladores versus Microprocessadores... 34

3.3 Arquitetura dos Microcontroladores... 35

3.3.1 Unidade de Memória ... 35

3.3.2 Unidade Central de Processamento – CPU ... 36

3.3.3 Barramentos ... 36

3.3.4 Unidade de Entradas e Saídas... 37

3.3.5 Comunicação Serial dos Microcontroladores... 39

3.3.6 CLOCK – O relógio do Microcontrolador ... 40

3.3.7 TIMER... 41

3.3.8 WatchDog – Cão de Guarda ... 42

3.4 O Microcontrolador 8051... 43

3.4.1 Arquitetura física dos Microcontroladores 8051 ... 44

3.4.2 Organização da Pinagem dos Microcontroladores 8051 ... 46

3.4.2.1 Port P0... 46

3.4.2.2 Ports uso geral para E/S e uso das memórias internas e externas-P1,P2,P3... 47

3.4.3 Fabricantes do Microcontrolador 8051 ... 51

(10)

3.4.4 Microcontroladores 8051 mais potentes – Arquitetura ISAC ... 52

4. FERRAMENTAS DE PROGRAMAÇÃO PARA 8051... 54

4.1 Software de Desenvolvimento para Microcontroladores... 55

4.1.1 Eclipse.... ... 55

4.1.2 Small Device C Compiler – SDCC... 57

4.1.3 PDS – 52... 58

4.1.4 SPI – Flash Programmer... 60

4.1.4.1 Os lock-bits... 62

4.2 KIT de Programação 8051LS... 62

4.2.1 O KIT8051LS ... 63

4.2.2 Os seus componentes... 64

4.3 Protótipo de teste do Microcontrolador 8051... 67

4.3.1 Sistemática do protótipo ... 68

4.3.2 Especificação técnica da parte física do protótipo ... 69

5. CONSIDERAÇÕES FINAIS... 72

5.1 Conclusão... 72

REFERÊNCIAS... 75

Referências

Documentos relacionados

remeteu para fiscalização prévia do Tribunal de Contas um contrato de aquisição de serviços técnicos de desenvolvimento aplicacional e administração de

Fonte: elaborado pela autora, output SPSS. Este nível de significância inferior a 0,05 leva a rejeição da hipótese nula, a qual afirma que as médias são iguais ao longo do tempo.

O pagamento será isento somente nos casos de doenças infecto contagiosas (mediante atestado médico) e falecimento na família.. ATENÇÃO: Os conteúdos das provas

Utilizando a Estrutura de Repetição “do-while” desenvolva um bloco de código fonte em linguagem C para executar a mudança de nível lógico no pino RD3 trinta e três

Quanto maior a escolaridade dos pais e seu nível socioeconômico, maior o escore das habilidades sociais; quanto menor a importância atribuída pelos pais às

Diretoria de Tecnologia Educacional Editora executiva: Kelly Mayumi Ishida Coordenadora editorial: Ivonete Lucirio. Editores: Andre Jun, Felipe Jordani e Natália Coltri

Para o efeito utilizaram-se os dados recolhidos nas árvores verrumadas das parcelas e aos dados recolhidos nas árvores abatidas em povoamentos a corte, na medida em que dispúnhamos

A diferença central é que neste chip é que ao definir as linhas do teclado como entrada de dados, os respectivos I/O’s apresentam estado lógico coletor aberto, que