Escolar Documentos
Profissional Documentos
Cultura Documentos
microprocessadores e
microcontroladores
Disciplina : Microprocessadores
Prof. Jabson
Componentes fundamentais
CPU (Central Processing Unit) – é a componente que realiza a parte
fundamental do trabalho do computador, e que consiste em processar
electronicamente dados ou informação
Esquema básico
de um microprocessador
Na memória primária ou
central é armazenada
Unidade de aquisição e de informação codificada, que vai
interface com a memória primária
ser chamada ao processador,
para este realizar as
Unidade operações ou instruções
Lógico Unidade de Memória contidas nessa informação
Aritmética Controle Primária
(ALU)
A unidade de controle envia aos outros componentes
sinais de ativação e sincronização das operações
Registros (Registers)
Os registros são pequenos circuitos de armazenamento
temporário de instruções e dados
Componentes fundamentais
Estrutura Simplificada de O processador apenas entende os sinais
elétricos que percorrem os circuitos que
uma Memória (RAM) o constituem
células Os computadores funcionam com o
sistema de informação binário (zeros e
ums)
BIT – entidade minima de informação
com que lida um SI (pode ser 0 ou 1)
N
Byte – agrupamento de 8 bits
endereços
9
8
7 Todos os dados e instruções que
6
5
circulam entre o processador e a
4 memória estão sobre a forma de bits e
3 têm significado quando resultam do
2
1
agrupamento de bits (bytes)
0
Um programa é armazenado em
memória sobre a forma de uma
sequência de instruções (bytes) podendo
ser diretamente executado pelo
processador – PROGRAMA OBJETO
Execução de um programa
Informação que entra para um sistema informático
Instruções de programas
Dados manipulados por esses programas
Instruções e dados são armazenados temporáriamente na RAM e
codificadas e executadas no processador
Cada instrução é executada através de um ciclo de instrução
Ciclo de Instrução – processo que consiste em fazer com que cada instrução
passe da memória para o processador, para aí poder ser executada
1. Em cada instante, o processador contém num registo próprio (Instruction Pointer-IP
ou Program Counter-PC) o endereço ou posição de memória onde se encontra a
próxima instrução a ser executada
2. A unidade de controle envia um sinal à memória pedindo o conteúdo da instrução
que está no endereço dado por IP
3. A instrução pedida é devolvida para um outro registro do processador (Instruction
Register – IR) para então ser descodificada e executada pelo
1.2. Níveis de um Sistema Informático
O Computador é um sistema que integra e articula dois tipos fundamentais de
componentes:
Físicos - Hardware (compon. mecânicos, electrónicos e electromecânicos)
Lógicos - Software (programas = conjunto de instruções codificadas)
Software de Programas de
Aplicação Aplicação
Software de
Programação
Software de Interface de Comandos (Shell)
Sistema Núcleo (Kernel)
Hardware - Máquina
Linguagem Natural
Linguagens de Programação
de “Baixo nível”
(Assembly)
Programa-fonte
Assemblador Programa
tradutor
Programa-objecto
ou executável
Linguagem máquina ou código-máquina
2.1. Da Linguagem Natural à Linguagem Máquina
Linguagem Natural
Linguagens de Programação
de “Baixo nível” de “Alto Nível”
(Assembly) (Pascal, C, C++, Java, ...)
Programa-fonte Programa-fonte
Programa-objecto Programa-objecto
ou executável ou executável
Linguagem máquina ou código-máquina
2.1. Da Linguagem Natural à Linguagem Máquina
Linguagem Natural
Linguagens de Programação
de “Baixo nível” de “Alto Nível”
(Assembly) (Pascal, C, C++, Java, ...)
Programa-fonte Programa-fonte
Compilador
Ou tradutor
Assemblador Programas
tradutores
Programa-objecto
ou executável
Linguagem máquina ou código-máquina
2.1. Da Linguagem Natural à Linguagem Máquina
Linguagem Natural
Linguagens de Programação
de “Baixo nível” de “Alto Nível”
(Assembly) (Pascal, C, C++, Java, ...)
Programa-fonte Programa-fonte
Linguagem máquina
2.2. Ambientes de programação
Tipos de Ficheiros:
Ficheiro de texto simples (ASCII) – informação em formato de caracteres =>
programa em código fonte
Ficheiro binário – informação em formato binário => programa executável
(em formato binário directamente executável)
Linguagens Orientadas
por Objectos
Complexidade do SW
Linguagens estruturadas,
4GL
Primeiras linguagens
Linguagens máquina,
assembly
Algol
Linguagens Estruturadas
Simula
Pascal
C
Linguagens percursoras
OO
Smalltalk
Linguagens
OO Objective C
Módula-2
C ++ Ada
Eiffel
OO Pascal
Actor
Java
C#
Arquitetura do microcontrolador
Ex.: TRISA = 0xFF80; // 1111 1111 1000 0000 pinos RA0 até RA6
serão saída, os demais entradas.
PORTx
Ex.: PORTB = 0xFFFE; // 1111 1111 1111 1110 Ler um nível lógico "1" de
uma posição (bit) q do registrador PORTB, significa dizer que o pino q
recebeu um nível lógico digital alto em sua entrada. Da mesma forma que
se lermos "0", significará que o pino q está em nível lógico digital baixo.
cabeçalhos
// INCLUDES #include <p32xxxx.h> //include para o PIC16f84a
Familia PIC16F84A
Data Sheet
ARQUITETURA DE HARDWARE
Características Gerais
Apenas 35 palavras de instrução para aprender
Todas instruções com um ciclo exceto para desvios que
levam dois ciclos
Velocidade de operação: DC até 20 Mhz de clock
Instruções com 14 bits de largura
Barramento de dados de 8 bits
16 registradores de funções especiais de hardware
Pilha com 8 níveis de profundidade
Modos de endereçamento direto, indireto e relativo para
dados e instruções.
Capacidade de interrupção
Características dos periféricos
13 pinos de I/O individualmente configurados
Temporizador/Contador de 8 bits com 8 bits de “pré-escala”
Power-On Reset (POR)
Temporizador Watch-Dog (WDT) com oscilador próprio para operações
seguras
Proteção de Código Programável
Modo SLEEP para diminuição de consumo de energia.
Opções de oscilador selecionável:
– RC – oscilador RC de baixo custo
– XT – cristal padrão
– HS – Cristal de alta velocidade
– LP – Cristal de baixa freqüência (redução de consumo)
Programação Serial “in-circuit” (através de dois pinos)
4 bytes de identificação (ID) programáveis pelo usuário
Organização da Memória de Programa
Verbos ou
termos (inglês) Ação do verbo ou tradução do termo
(mnemônicos)
T test Testar
WDT watch dog timer É o registro de RAM onde está o temporizador do periférico "watch dog"
Z zero Zero