Slides - Microprocessadores e Microcontroladores

209 downloads 278009 Views 4MB Size Report
Curso Engenharia de Controle e Automação. Alex Vidigal ... computador pessoal cuja CPU seja um microcontrolador; ... O PIC possui um número reduzido de.
Microcontroladores Curso Engenharia de Controle e Automação

Alex Vidigal Bastos www.decom.ufop.br/alex/ [email protected]

1

Sumário • Microprocessadores – CPU • Microcontrolador • Firmaware • Registrador • Registradores de Função Especial (SFR) • Portas (I/O) • Interrupções • Linguagem de Máquina

Microprocessadores • São máquinas elétricas onde podemos armazenar instruções lógicas, aritméticas e de tomada de decisão; • CPU (Central Processing Unit – Unidade Central de Processamento)

CPU (Central Processing Unit) • Processsa as instruções contidas no programa e é dividida em: – Unidade de Controle (UC); – Unidades Lógicas e Aritméticas (ULA); – Decodificador de Instrução; – Registradores;

CPU (Central Processing Unit)

Evolução para microcontroladores • Barateamento dos CI's e o surgimento de microprocessadores (CPUs) mais poderosos, começou-se a usar as CPUs mais simples para implementar tarefas dedicadas: controle de impressora, reguladores de velocidade, acionadores de motores de passos, etc

Basicamente

CPU Controle

ROM programa controle

RAM pilha e dados

Portas Paralela

Porta Serial comunicação

I/O

Timers temporização

AD / DA sinais analógicos

Por quê Microcontroladores? • Estas aplicações tinham o custo dependente do preço da CPU e dos periféricos; • A idéia foi colocar todos os periféricos dentro do chip da CPU.

Por quê Microcontroladores? • Por outro lado, uma CPU dedicada a um determinado controle não precisa ser muito rápida nem tampouco ter um conjunto de instruções extenso e poderosos; • Não são necessárias instruções para trabalhar com ponto flutuante, com strings ou vetores e mecanismos de endereçamento;

Por quê Microcontroladores? • Os microcontroladores são específicos para controle, não tem grande capacidade de processamento e por isso nunca haverá computador pessoal cuja CPU seja um microcontrolador; • Eles podem estar presentes nos PCs, apenas para controlar periféricos;

Microprocessador x Microcontrolador

Diagrama de Bloco

Microprocessador x Microcontrolador Microprocessor

Microcontroladores

• CPU, RAM, ROM, Timers • CPU, RAM, ROM, Timres ficam em um mesmo chip; ficam separados; • Expansivos; • Versatilidade; • Proposta Geral;

• Para aplicações em que o custo, energia e espaço são críticos;

Microcontrolador

Microcontrolador

Diagrama geral de blocos de um microcontrolador

Critérios para a escolha de um Microcontrolador 

Satisfazer as necessidades de computação da tarefa de forma eficiente e custo efetivo  Velocidade, a quantidade de ROM e RAM, o número de portas I/O e timers, energia



Facilidade de upgrade



Custo por unidade

Critérios para a escolha de um Microcontrolador 

Avaliar as ferramentas de desenvolvimento de software;



Debugadores, Compiladores, Simuladores, Suporte técnico, etc;

Sistemas Processados 







Programa (Software): conjunto de instruções arranjadas de forma organizada que apresenta uma função específica; Firmaware: programa que está armazenado em memória não volátil (ROM); Hardware: partes eletrônicas de um microcomputador Microcontrolador: microcomputador integrado num único chip (microprocessador + periféricos)

Sistemas Processados 

Periféricos: – Circuitos acessórios ao computador que específicas;

realizam

– Exemplos: • Timers • CCP (Comparação, Captura e PWM); • Conversores AD/DA • Portas de Comunicação (USART, I2C, SPI, USB, CAN...)

tarefas

Arquitetura Von-Neuman Von Neumann: “Instruções e dados compartilham a mesma unidade física de memória”

Arquitetura Von-Neuman

Arquitetura Harvard Harvard: “Instruções e dados são armazenados em memórias diferentes”

– Vantagem: Instruções e dados podem ser acessados simultaneamente, aumentando o desempenho. – O PIC segue esta arquitetura! Um barramento de dados de 8 bits e outro para instrucões (12, 14 ou 16 bits)

Arquitetura Harvard

Arquitetura Harvard

Barramento Permite a transferência de sinais elétricos entre diferentes partes do compuatdor.

Instruction Set • Conjunto de instruções que um processador compreende; •

Cada processador possui seu próprio conjunto de instruções, inviabilizando, na maioria dos casos, a portabilidade;

Instruction Set CISC – Complex Instruction Set Computing - Computação onde o número de instruções é muito grande;

RISC – (Reduced Instruction Set Computing) - Computação onde um número reduzido de instruções estão disponíveis.

O PIC possui um número reduzido de Instruction Set (RISC)

Instruction Set Considerações sobre o RISC e CISC: – Uma única instrução CISC pode equivaler a várias instruções RISC; – Uma instrução CISC precisa realizar passos semelhantes aos realizados pelas RISC; – CISC minimiza o número de acessos a memória de programa; – RISC simplifica a decodificação de instruções, deixando esta etapa mais rápida;

Instruction Set Vantagens CISC: Apesar do conjunto de instruções ser muito grande, oferece um número maior de instruções (“ferramentas”) ao programador Assembly; 

Menor quantidade de instruções são necessárias para desenvolver um programa (programas ocupam menos memória). 

Instruction Set Vantagens RISC: Etapa de decodificação tão simples que pode, em alguns casos, ser eliminada; 

Com um número menor de instruções, os parâmetros destas podem ser agregados no opcode (código de máquina de uma instrução), simplificando inclusive o FETCH. 



Simplificação dos circuitos eletrônicos.

Ciclo de vida de uma CPU

PIC São uma família de microcontroladores fabricados pela Microship Technology que processam dados de 8bits, 16 bits e 32 bits.

PIC

Firmware • Conjunto de instruções operacionais programadas diretamente no HARDWARE de um equipamento eletrônico; • É armazenado permanentemente em um circuito integrado (chip);

Registradores • Responsável por armazenar todos os dados sobre os quais serão realizados algum tipo de operação (ADD, MOVE, SHIFT, etc);

Registradores • No PIC18F4550 esses registradores são chamados de GPR (General Purpose Register – Registradores de Propósito Geral);

Registradores de função especial (SFR) • São registradores cujas funções são pré-determinadas pelo fabricante. Ex: • temporizadores (timers); • Conversores (A/D) • Osciladores

Registradores de função especial (SFR) No caso dos registradores de 8 bits, cada SFR funcionará como 8 chaves (liga/desliga) que comandam alguns pequenos circuitos dentro do microcontrolador.

Registradores de função especial (SFR) No PIC18F4550 este circuito está associado a um SFR chamado TRIS. - Bit ajustado para lógica 1 – Entrada (Input) - Bit ajustado para lógica 0 – Saída (Output)

Registradores de função especial (SFR) Exemplos: STATUS – utilizado para armazenamento de flags matemáticos e de estado da CPU, além dos bits da seleção do banco de memória RAM; INTCON – utilizado para controle de interrupções;

Registradores de função especial (SFR) Exemplos: OPTON_REG – utilizado para configurar o funcionamento de alguns periféricos internos ao PIC; PORT– utilizado para a leitura ou escrita nos pinos do PIC; TRIS – utilizado para configurar os pinos das portas como entrada ou saída(input/output);

Portas I/O (Entrada / Saída) Os microcontroladores possuem um ou mais registradores de funções especiais chamadas de PORT conectados aos seus pinos de I/O (pinos de entrada/saída); *** Valor máximo de corrente por isoladamente) e por conjunto de pinos ;

pino

I/O(operando

Portas I/O (Entrada / Saída)

Interrupções Sem interrupções, o fluxo do programa é determinado pelo programa principal;

Problema: – Alguns periféricos precisam de tempo para executar suas tarefas; – Espera ocupada: Não faz nada até que uma variável ou um flag mude de valor – pooling!

Interrupções Solução: Interrupção – Sistema capaz de avisar quando uma determinada tarefa acabou. – A tarefa então é executada, sem prejuízo para o fluxo do programa principal.

Interrupções

Interrupções

Arquitetura de um computador genérico

Arquitetura de um Sistema Embutido

Exercícios • PIC18F4550

50

Perguntas