laboratório de hardware - ccfacape.webnode.com · laboratório de hardware ... n diminuição das...

20
Laboratório de Hardware Introdução ao Microcontrolador PIC Prof. Sergio Ribeiro Ciência da Computação Laboratório de Arquitetura de Computadores Microprocessadores n Os microprocessadores são circuitos integrados compostos por diversas portas lógicas que realizam operações matemáticas e lógicas diversas. São destinados a uso geral, ou seja, simplesmente processar informações. n Os sistemas microprocessados são compostos de dispositivos separados: microprocessador, memória, interface de entrada e saída (compostas por transistores, acopladores ópticos, etc). n Mas por que não incluir todos estes dispositivos em um encapsulamento? 2

Upload: lycong

Post on 08-Nov-2018

215 views

Category:

Documents


0 download

TRANSCRIPT

Laboratório de Hardware

Introdução ao Microcontrolador PIC

Prof. Sergio Ribeiro

Ciência da Computação

Laboratório de Arquitetura de Computadores

Microprocessadores

n Os microprocessadores são circuitos integrados compostos por diversas portas lógicas que realizam operações matemáticas e lógicas diversas. São destinados a uso geral, ou seja, simplesmente processar informações.

n Os sistemas microprocessados são compostos de dispositivos separados: microprocessador, memória, interface de entrada e saída (compostas por transistores, acopladores ópticos, etc).

n Mas por que não incluir todos estes dispositivos em um encapsulamento?

2

Laboratório de Arquitetura de Computadores

Microcontroladoresn A união das memórias com os microprocessadores

possibilitou o advento dos microcontroladores.n Estes circuitos integrados são compostos por pelo menos

uma unidade de processamento, uma unidade lógico-aritmética, um banco de memória de programa e um banco de memória de dados.

n Além disto, os microcontroladores devem possuir uma interface com o ambiente externo, ou seja, entradas e saídas para que o desenvolvedor de hardware possa realizar operações diversas, como por exemplo, ligar um relé, um transistor, acender um LED, etc.

3

Laboratório de Arquitetura de Computadores

Microcontroladoresn Microcontroladores são dispositivos voltados a sistemas

embarcados e aplicações específicas, ao contrário dos μPs, destinados a PCs e aplicações de uso geral.

n Memórias de programa e de dados também são frequen-temente integradas ao chip, o que não ocorre nos μPs.

n Principais razões da integração das memórias aos μCs:n Redução do número de pinos do encapsulamento;n Redução dos custos com componentes externos;n Diminuição das dimensões da montagem;n Simplificação do circuito de aplicação;

n Porém, tal integração tem como desvantagem:n Limitação da complexidade do programa embarcado, devido ao

tamanho reduzido da memória nos μCs.4

Microcontroladores

n Visão geral da organização de um microcontrolador:

Laboratório de Arquitetura de Computadores 5

Laboratório de Arquitetura de Computadores

Aplicações Típicasn Tipicamente, μCs são usados no controle em:

n Periféricos de informátican Eletrônicos de consumon Sistemas de supervisãon Instrumentaçãon Automaçãon Robótica

6

Laboratório de Arquitetura de Computadores

Marcas de Microcontroladoresn Algumas marcas e modelos:

n ATMEL: ATMEGA, AT91, AT90;n INTEL: MCS51 ou 8051 (vários fabricantes fabricam este modelo,

mas a Intel foi a primeira a produzi-lo, em 1977);n Microchip: PIC, DSPIC.n Freescale (Motorola): 68HC, MPC.n Texas Instruments: MSP430, TMS370

Microchip

7

Os Microcontroladores PICn Os PIC, ou PICmicro, são microcontroladores da

Microchip Technologies.n Seu nome é uma sigla para “Programmable Interface

Controller” e origina-se no início dos anos 80, quando foi concebido para operar como interface controladora de periféricos para a CPU CP1600 da General Instruments.

n São mais de 570 uCs divididos em 3 grandes grupos:n 8 bitsn 16 bitsn 32 bits

n Núcleo composto por uma máquina RISC:n As versões mais simples tem apenas 33 instruções.n Memória segue a arquitetura de Havard.

Laboratório de Arquitetura de Computadores 8

Os Microcontroladores PIC

Família de Microcontroladores PIC:

Laboratório de Arquitetura de Computadores 9

Os Microcontroladores PIC

Os Microcontroladores PIC de 8 bits

n São mais de 300 uCs, reunindo desde os mais simples e pequenos (6 pinos) a dispositivos de alta gama, com maior poder de processamento, periféricos e interfaces, chegando a 100 pinos.

n Dividem-se em 4 categorias, de acordo com a complexidade da aplicação a que se destinam:n Baselinen Mid-Rangen Enhanced Mid-Rangen PIC18

Laboratório de Arquitetura de Computadores 10

Os Microcontroladores PICPIC 8-bits: Memória de Programa vs N° de Pinos

Laboratório de Arquitetura de Computadores 11

O PIC 18F4550

Laboratório de Arquitetura de Computadores

n Microcontrolador “Mid-Range” de 8 bits, com 40 pinos.n Reúne os principais pontos de interesse no estudo da

arquitetura de sistemas digitais.n É o microcontrolador inserido no Kit XM118 da Exsto

presente no Laboratório de Hardware da Facape, e que será adotado nas aplicações práticas do laboratório.

12

Laboratório de Arquitetura de Computadores

Principais Características do PIC18F4550

n Memória FLASH de programa: 32 Kbytes.n Memória SRAM para armazenamento de dados: 2 Kbytes.n Memória EEPROM de dados: 256 bytes.n Pinos configuráveis como entradas ou saídas digitais: 35.n Pinos configuráveis como canais de entrada analógica: 13.n Módulo CCP (Capture / Compare / PWM)

n Capture Þ Permite a medição do tempo de duração de um evento.n Comparação Þ compara valores entre os registros do TMR1 e

CCPR.n PWM (Pulse Width Modulation) Þ gera sinais de frequência e

variáveis.

13

Laboratório de Arquitetura de Computadores

Principais Características do PIC18F4550

n Porta paralela: de 8 bits (SPP – Streaming Parallelal Port).n Temporizadores de 8 e 16 bits: 4.n Watchdog Timer: sim.n Frequência de operação: de até 48 MHz.n Múltiplas fontes de interrupção: até 20.n Comparadores: 2.n Periféricos avançados de comunicação: Porta de

comunicação serial, Porta de comunicação USB 2.0.n Arquitetura Harvard: tecnologia RISC com um conjunto de

75 instruções de máquina.

14

Laboratório de Arquitetura de Computadores

Pinagem do PIC18F4550

n Portas de entrada e saída (RA, RB, RC, RD e RE).

n Canais de entradas analógicas (AN).

n Pinos de alimentação (VDD e VSS).

n Pinos de entrada para o oscilador externo (OSC).

n Portas de comunicação serial (RX e TX).

n Porta de comunicação USB (D+ e D-).

** Os pinos podem ter mais de uma função.

15

Laboratório de Arquitetura de Computadores

n Os 35 pinos de I/O configuráveis, estão agrupados em 5 grupos denominados PORTAS, sendo:n PORT A

n PORT B

n PORT C

n PORT D

n PORT E

Pinagem do PIC18F4550

16

Laboratório de Arquitetura de Computadores

Pinagem do PIC18F4550

17

Dia

gra

ma

de

Blo

co

do

PIC

18

F4

55

0

Laboratório de Arquitetura de Computadores 18

Laboratório de Arquitetura de Computadores

n O laboratório de Hardware da Facape é equipado com kits educacionais da Exsto.

n O kit usado em Arquitetura de Computadores é o XM118 que possui o microcontrolador PIC18F4550.

n O hardware do Kit Educacional XM118 foi concebido para permitir a maior fexibilidade possível nas ligações.

n Os pinos com diversas funções foram ligados a chaves dipswitch, de forma a permitir a conexão com diferentes circuitos de aplicação.

n Para configurar corretamente o hardware para suas necessidades, verifique as funções das chaves no manual.

Kit Educacional

19

Laboratório de Arquitetura de Computadores

n O kit educacional XM118 é equipado com duas fontes chaveadas independentes de +5VDC/3A e +12VDC/1A.

n As fontes de alimentação estão disponíveis para o usuário em conectores apropriados.

n Seu uso, contudo, deve respeitar a corrente máxima disponível.

Fonte de Alimentação

20

PIC 18F4550n O kit foi baseado no PIC 18F4550.n Trata-se de um microcontrolador de 8 bits de alto

desempenho com uma série de periféricos.n Além do PIC 18F4550, outros microcontroladores de 40

pinos podem ser usados na placa do kit, desde que sejam compatíveis pino a pino. Ex: PIC 18F4520 e o PIC 16F877A.

Laboratório de Arquitetura de Computadores 21

Laboratório de Arquitetura de Computadores

n Imediatamente acima do protoboard, existem conectores que dão acesso direto aos pinos do microcontrolador.

n Quando usar um pino do microcontrolador para aplicações externas, desligue as chaves de configuração associadas ao pino em questão (se houver).

Conectores para Acesso de I/O

22

Laboratório de Arquitetura de Computadores

n O kit XM118 é equipado com um gravador PICkit-2 que fica embutido dentro do gabinete do kit.

n O PICkit-2 está conectado ao XM118 e consequentemente ao microcontrolador nele instalado através da chave U8.

n Essa chave permite desconectar os pinos do PIC18F4550 do PICkit-2 quando necessário.

n O conector CON9 permite gravar outros componentes externos através do header (placa para gravação de componente) que acompanha o kit.

PICkit-2 e o Conector ICSP

23

Laboratório de Arquitetura de Computadores

Configuração

n O microcontrolador tem um número limitado de pinos para poder interagir com todos os circuitos presentes no kit.

n Alguns circuitos estão simplesmente ligados em paralelo, como LEDs e LCD, teclado e chaves.

n Outros circuitos são selecionados através de chaves de configuração.

n A tabela a seguir apresenta algumas configurações possíveis, indicando o portal do microcontrolador, o sinal utilizado, sua função e direção.

n A tabela completa deve ser consultada no manual de operação do kit.

24

Configuração

Laboratório de Arquitetura de Computadores 25

Laboratório de Arquitetura de Computadores

Teclado Matricialn Um teclado matricial está disponível no kit e opera por

varredura. Isto significa que, ao aplicar diferentes valores nas linhas, é possível identificar a tecla pressionada por meio do valor lido nas colunas.

n O teclado está ligado ao PIC conforme a tabela abaixo.n Obs: para o correto funcionamento do teclado, é necessário

ativar os resistores de pull-up internos do PIC por software.

26

Laboratório de Arquitetura de Computadores

Chavesn Há oito chaves dip switch ligadas à porta B do PIC.n Essas chaves foram projetadas para ser baixo ativas, ou

seja, ao serem ligadas, elas aterram os pinos do PIC.n Estando aberto, o nível alto nas entradas do PIC é

garantido pelos resistores de pull-up internos.n Obs: para o correto funcio-

namento do teclado, énecessário ativar os resis-tores de pull-up internosdo microcontrolador porsoftware.

27

n Existem cinco chaves pulsativas (push-buttons) ligados aos pinos do microcontrolador.

n Alguns desses pinos possuem funções especiais, como interrupções e contadores.

n Essas chaves também são baixo ativas.n A tabela abaixo mostra a ligação dessas

chaves ao PIC.

Push-Buttons

Laboratório de Arquitetura de Computadores 28

Laboratório de Arquitetura de Computadores

n O kit possui um display LCD alfanumérico de 2 linhas por 16 colunas.

n O ajuste de contraste desse LCD é feito pelo trimpot R42.n Mais informações sobre o uso do LCD na apostila do kit.

Display LCD

29

Laboratório de Arquitetura de Computadores

n O kit XM118 possui 4 displays de sete segmentos.n Estes displays trabalham de forma multiplexada, isto é,

seus segmentos estão todos ligados em paralelo e os comuns dos displays são acionados por um processo de varredura (impressão de estarem simultaneamente ativos).

Display de 7 Segmentos

30

n Na porta D do microcontrolador estão ligados 8 ledsconvencionais baixo ativos (acendem com nível lógico baixo).

n Há também 2 leds bicoloresligados a outros pinos domicrocontrolador (consultarmanual).

Laboratório de Arquitetura de Computadores

LEDs

31

n Um buzzer piezelétrico permite a geração de sons no kit.n Para esse buzzer operar é necessário aplicar um sinal

variável na frequência que se deseja ouvir.n Ele não produzirá som algum se for simplesmente

alimentado.

Laboratório de Arquitetura de Computadores

Buzzer

32

Laboratório de Arquitetura de Computadores

Relésn Quatro relés estão disponíveis para aplicações do

usuário.n É possível ter acesso aos terminais Com (comum), NA

(normalmente aberto) e NF (normalmente fechado).n Os relés tem capacidade de acionar cargas de até 10A,

com tensão máxima de até 250V.

33

Laboratório de Arquitetura de Computadores

Outros Módulosn Outras partes do kit XM118 podem ser consultadas no

manual de operação, como:n Lâmpada DC

n Resistência para aquecimento

n Ventoinha

n Sensor de rotação

n Potenciômetro

n Sensor de temperatura

n Interface USART

n Interface USB

n Gerador de frequência, entre outros.

34

n Como ferramentas para o desenvolvimento de aplicações para o PIC 18F4550 são usados o simulador Proteus, o ambiente de desenvolvimento MPLAB e um compilador C.

n O Proteus é um ótimo software de simulação de circuitos.n Usaremos o MPLAB como meio para gravar o PIC.n Há muitos compiladores C para microcontroladores PIC,

como: PCW, C18, MikroC, entre outros.n A Exsto, fabricante do kit XM118, adotou o compilador

C18 da Microchip.n Porém, verificou-se que este compilador gera o firmware

não muito otimizado (ocupa mais memória no PIC) e o aprendizado da linguagem C é um pouco mais demorado.

Laboratório de Arquitetura de Computadores

Ferramentas de Desenvolvimento

35

Laboratório de Arquitetura de Computadores

Ferramentas de Desenvolvimento

n Por este motivo, o compilador C a ser usado no laboratório é o MikroC da Mikroeletrônica.

n O MikroC é um dos compiladores mais adotados para a programação de microcontroladores PIC.

n Isso se deve ao fato dele gerar um firmware menor, ocupando menos espaço de memória no PIC.

n E outra vantagem do MikroC é sua total compatibilidade com o C padrão ANSI e a facilidade de programar em sua linguagem C, com uma curva de aprendizado mais curta.

n Ao programar em C, recomenda-se consultar o datasheetdo PIC 18F4550, assim como o help do compilador.

36

Laboratório de Arquitetura de Computadores

Compilador MikroC

37

Laboratório de Arquitetura de Computadores

Exemplo de um programa Cn Segue abaixo um programa para fazer piscar o led

conectado ao pino D0 do PIC 18F4550 no kit.n Isso equivale a um “hello world” quando se está aprendendo

a programar em C.void main(){ // pisca o led a uma frequência de 1 Hz

TrisD = 0x00; // configura toda a porta D como saída

PortD = 0x00; // atribui nível baixo a todos os pinos em D

while(1){ // laço infinito

RD0_bit = 0; // nível baixo em D0 (apaga led)

delay_ms(500); // atraso de 500ms (0,5s)

RD0_bit = 1; // nível alto em D0 (acende led)

delay_ms(500);

}

}38

Laboratório de Arquitetura de Computadores

Exemplo de um programa C

n Programa equivalente ao anterior.

#define Led RD0_bit // macro Led associado ao pino D0

void main(){ // pisca o led a uma frequência de 1 Hz

TrisD = 0x00; // configura toda a porta D como saída

PortD = 0x00; // atribui nível baixo a todos os pinos em D

while(1){ // laço infinito

Led = ~Led; // inverte o nível lógico do pino D0

delay_ms(500); // atraso de 500ms (0,5s)

}

}

39