You are on page 1of 44

Microcontrolador

Microcontrolador

Curso Tcnico em Mecatrnica - Microcontrolador


SENAI-SP, 2005

Trabalho organizado e atualizado a partir de contedos extrados da Intranet por Meios Educacionais da
Gerncia de Educao e CFPs 1.01, 1.09, 1.23, 3.01, 4.02, 5.01 e 6.01 da Diretoria Tcnica do SENAI-SP.

Equipe responsvel
Coordenao
Elaborao
Reviso tcnica
Reviso de texto
Capa

SENAI

Telefone
Telefax
SENAI on-line
E-mail
Home page

Airton Almeida de Moraes


Lus Carlos Ribeiro dos Santos
lvaro Mamoru Horikoshi
Marcos Luesch Reis
Jos Joaquim Pecegueiro

Servio Nacional de Aprendizagem Industrial


Departamento Regional de So Paulo
Av. Paulista, 1313 - Cerqueira Csar
So Paulo - SP
CEP 01311-923
(0XX11) 3146-7000
(0XX11) 3146-7230
0800-55-1000
senai@sp.senai.br
http://www.sp.senai.br
SENAI-SP INTRANET
AA-376-08

Microcontrolador

Sumrio

Microcontrolador PIC

Ler e escrever nos registradores

19

Manipular registradores

21

Ler e escrever nos dispositivos de entrada e sada

23

Programar rotina de tempo

25

Programar pisca-pisca

27

Programar seqencial com salto incondicional

29

Programar seqencial com salto condicional

31

Programar contador de 0 a 9

33

Programar contador de 0 a 99

35

Programar contador crescente e decrescente

37

Gerar onda quadrada

39

Gerar PWM

41

Referncia bibliogrfica

43

SENAI-SP INTRANET
AA-376-08

Microcontrolador

SENAI-SP INTRANET
AA-376-08

Microcontrolador

Microcontrolador PIC

Este captulo apresenta uma viso geral sobre microcontroladores de 8 bits PIC.
Maiores informaes podem ser obtidas com o estudo do datasheet do componente e
da literatura disponvel em portugus.

Histrico
A empresa Microchip, fundada em 1989, com sede no estado de Arizona, nos Estados
Unidos, fabrica, dentre vrios componentes eletrnicos, uma linha de
microcontroladores que vem se popularizando por sua versatilidade e aceitao por
tcnicos e engenheiros eletrnicos.
O microcontrolador PIC incorpora tecnologia RISC, e muito disseminado devido
facilidade de uso que oferece. Possui, internamente, um pequeno set de instrues e
memria flash EEPROM para gravao do programa desenvolvido pelo projetista.
Um dos mais populares microcontroladores dessa linha o PIC16F84, devido ao seu
baixo custo e enorme quantidade de informaes disponveis na Internet.
O PIC16F84 um microcontrolador com apenas alguns perifricos internos. No
contm, por exemplo, interface serial e conversor AD. Entretanto, conhec-lo
importante porque os sets de instrues da famlia PIC so os mesmos para todos os
componentes da linha. Portanto, se souber programar um 16F84 saber tambm
programar um 16F877. Para tanto, basta consultar o datasheet do 16F877 e verificar
quais perifricos so acrescidos nele em relao ao 16F84.

SENAI-SP INTRANET
AA-235-05

Microcontrolador

A seguir, apresentamos algumas figuras extradas do datasheet do 16F84. As


identificaes so em ingls. No foram traduzidos para que voc se habitue com
termos tcnicos nesse idioma, j que se tornaram universais para quem trabalha com
eletrnica.
Principais caractersticas do PIC16F84

Memria de programa Flash (1.024 linhas de 14bits);

memria de dados 68 bytes para armazenamento temporrio (GPR);

memria de dados 22 bytes para funes especiais (SFR);

memria EEPROM 64 bytes;

13 Entradas/Sadas que podem ser configurados individualmente;

corrente mxima de entrada 25mA por pino;

corrente mxima de sada 20mA por pino;

4 tipos diferentes de interrupo;

code-protection;

modo de economia (sleep);

watchdog timer (WDT).

Pinos

Funo

Vdd e Vss

Alimentao do CI

RA0 a RA4

PortA com 5 bits

RB0 a RB7

PortB com 8 bits

OSC1/CLKIN

Conexo com cristal oscilador / entrada de clock externo

OSC2/CLKOUT

Conexo com cristal oscilador / no modo RC gera clock de 1/4 freqosc

MCLR

Reset e pino de programao

SENAI-SP INTRANET
AA-235-05

Microcontrolador

Arquitetura
A arquitetura interna do PIC do tipo Harvard, e trabalha com dois barramentos, um
de 8 bits para dados e outro para instruo que pode ter 12,14 ou 16 bits. Isso d a
essa arquitetura uma velocidade maior em relao aos microcontroladores de
arquitetura Von Neumam, considerando-se o cristal oscilador.
Observe abaixo o diagrama de blocos do PIC16F84:

Memrias no PIC16F84
O PIC16F84 possui 3 memrias internas:

Memria de programa
-

do tipo ROM de 1.024 linhas de 14 bits, onde ser gravado o programa do


usurio;

SENAI-SP INTRANET
AA-235-05

Microcontrolador

Memria de dados;
-

128 bytes de memria RAM dividida em 2 grupos: GPR, registradores de uso


geral, para dados temporrios e os SFR, registradores de funo especial,
destinados configurao e ao uso do microcontrolador;

Memria de dados permanente.


-

64 bytes do tipo EEPROM para armazenamento de dados de trabalho, mesmo


aps a retirada da alimentao do dispositivo.

Tipos de memria de programa


Basicamente existem 5 tipos de memria de programa.
ROM Os dados so gravados no momento de sua fabricao, e no podem ser
excludos.
OTP (One Time Program) Com auxilio de um gravador e um PC, essa memria
pode ser gravada uma nica vez, e os dados armazenados no podem ser excludos.
EPROM Com auxilio de um gravador e um PC, os dados podem ser gravados e
excludos vrias vezes, submetendo o chip por alguns minutos a raios ultravioleta,
atravs de uma janela de cristal na face superior do chip.
EEPROM Neste tipo de memria, os dados podem ser gravados e excludos
eletricamente.
FLASH Essa memria similar EEPROM, com auxlio de um programador
conectado ao PC, o usurio pode gravar e excluir dados.

Memria de Dados
O microcontrolador PIC 16F84 tem implementado dois bancos de memria de 128
bytes cada, e somente as 80 primeiras posies podem ser acessadas, ou seja, de
00H a 4FH.
As 12 primeiras posies, de 00H a 0BH, esto reservadas para uso dos registradores
de uso especial, os SFR (Special Function Register), e o restante para uso geral GRP
(General Purpose Register).
8

SENAI-SP INTRANET
AA-235-05

Microcontrolador

Os SFR controlam o funcionamento dos recursos internos dos microcontroladores, que


atuam como registro de controle programvel.
Os GPRs correspondem as 68 posies finais de cada banco que so compreendidas
entre 0CH a 4FH, e so utilizados como registradores de uso geral, mapeados no
banco 0 e espelhado no banco 1.

SENAI-SP INTRANET
AA-235-05

Microcontrolador

Unidade Lgica Aritmtica (ULA)


As operaes lgicas e aritmticas so realizadas na ULA, e os resultados podem ser
armazenados em W ou em uma posio de memria GPR.
Existe um registrador interno chamado de registrador W (work). Esse registrador tem a
mesma funo do acumulador em outros microcontroladores. W sempre envolvido
com as operaes ocorridas na ULA.
Ciclo de Mquina
O microcontrolador PIC executa uma instruo ao final de 4 ciclos de clock, que
chamado de ciclo de mquina. Algumas instrues gastam mais de um ciclo de
mquina para serem executadas.
Portando, se tivermos ligado ao PIC um cristal de 4MHz teremos um ciclo de mquina
com uma freqncia de 1MHz.
Como a maioria das instrues executada em 1 ciclo de mquina, temos uma
instruo ocorrendo a cada 1s. Isso nos d 1 milho de instrues em 1 segundo.
Para designar milhes de instrues por segundo na rea de microcontoladores a
unidade usada MIP. Podemos dizer, portanto, que o PIC, est trabalhando em 1 MIP.

10

SENAI-SP INTRANET
AA-235-05

Microcontrolador

Conhecendo os registradores SFR


Registrador STATUS
Este registrador mostra os estados da ULA (Unidade Lgica Aritmtica), e seleciona os
bancos de memria.
Registrador: STATUS

Endereos: 03h e 83h

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

R/W

R/W

R/W

R/W

R/W

R/W

IRP

RP1

RP0

/TO

/PD

DC

IRP: Seletor de banco de memria:


0 = Banco 0 e 1 ( 00h FFh ).
1 = Banco 2 e 3 ( 100h 1FFh ).
Como esse PIC no possui os bancos 2 e 3, ser mantido o status do IRP sempre em
0.
RP1 e RP0: Seletor de banco de memria:
00 = Banco 0 (00h 7Fh ).
01 = Banco 1 (80h FFh ).
10 = Banco 2 (100h 17Fh ).
11 = Banco 3 (180h 1FFh ).
Cada banco possui 128 bytes, porm o PIC 16F84, no possui os bancos 2 e 3, sendo
mantido RP1 sempre em 0.
/TO: Time-out:
0 = Ocorreu um estouro de Watch Dog Time (WDT).
1 = Ocorreu um power up ou foram executadas as instrues de CLRWDT ou SLEEP.
/PD: Power down:
0 = Indica que a instruo SLEEP foi executada.
1 = Ocorreu um power up ou a instruo CLRWDT foi executada.
Z: Zero:
0 = Indica que a ltima operao lgica ou aritmtica no foi zero.
1 = Indica que a ltima operao lgica ou aritmtica resultou em zero.
SENAI-SP INTRANET
AA-235-05

11

Microcontrolador

DC: Digit Carry / Borrow


0 = A ltima operao da ULA no ocasionou um estouro de dgito.
1 = A ltima operao da ULA ocasionou um estouro (carry) entre os bits 3 e 4, isto
quando se trabalha com palavras de 4 bits.
C: Carry / Borrow:
0 = A ltima operao da ULA no ocasionou um estouro (carry).
1 = A ltima operao da ULA ocasionou um estouro (carry) no bit mais significativo, o
resultado ultrapassou os 8 bits disponveis.

Registrador OPTION
Este registrador configura uma srie de opes internas para operao do
microcontrolador. Ele ser referenciado em nossos programas pelo nome OPTIONREG.
Registrador: OPTION

Endereos: 81h

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

R/W

R/W

R/W

R/W

R/W

R/W

R/W

R/W

/RBPU

INTEDG

TOCS

TOSE

PSA

PS2

PS1

PS0

/RBPU: Habilitao dos pull-ups internos do PORTB:


0 = Pull-ups habilitados para todos os pinos do PORTB, configurados como entrada.
1 = Pull-ups desabilitados.
INTEDG: Configurao de interrupo externa no pino RB0:
0 = Interrupo reconhecida na borda de descida.
1 = Interrupo reconhecida na borda de subida.
TOCS: Configurao de clock para o TMR0:
0 = TMR0 ser incrementado pelo clock interno da mquina.
1 = TMR0 ser incrementado externamente pelo pino RA4/TOCKI.
TOSE: Configurao da entrada de clock externo no pino RA4/TOCKI para o TMR0:
0 = O incremento ocorrer na borda de subida.
1 = O incremento ocorrer na borda de descida.

12

SENAI-SP INTRANET
AA-235-05

Microcontrolador

PSA: Aplicao do prescaler:


0 = Ser aplicado no TMR0.
1 = Ser aplicado no WDT.
PS2, PS1 e PS0: Configurao do prescaler:
Bits 2,1,0

TMR0

WDT

000

1:2

1:1

001

1:4

1:2

010

1:8

1:4

011

1:16

1:8

100

1:32

1:16

101

1:64

1:32

110

1:128

1:64

111

1:256

1:128

O TMR0 um contador de 8 bits que pode ser incrementado pelo clock interno da
mquina ou por um sinal externo, estourando a cada 256s, quando utilizado o clock
interno de 1s. O estouro desse contador gera uma interrupo independente do
programa que esta sendo executado.
Para aumentar o tempo em que ocorrer um estouro, utilizamos o prescaler da
seguinte forma:

Se o prescaler estiver configurado em 1:4, significa que o TMR0 s ser


incrementado a cada 4s, portando o estouro s ocorrer em 1024s.

O WDT um contador interno que estoura a cada 18ms sem o uso do prescaler, o que
ocasiona um reset no microcontrolador. A mesma analogia do TMR0 podemos aplicar
ao WDT. Se o prescaler estiver em 1:4 o contador estourar em 72ms.

SENAI-SP INTRANET
AA-235-05

13

Microcontrolador

Registrador INTCON
Este registrador configura e identifica as interrupes.
Registrador: INTCON

Endereos: 0Bh e 8Bh

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

R/W

R/W

R/W

R/W

R/W

R/W

R/W

R/W

GIE

EEIE

TOIE

INTE

RBIE

TOIF

INTF

RBIF

GIE: Habilitao geral das interrupes:


0 = Nenhuma interrupo ser tratada.
1 = As interrupes habilitadas sero tratadas individualmente.
EEIE: Interrupo de final de escrita na EEPROM:
0 = A interrupo no ser tratada.
1 = A interrupo ser tratada.
TOIE: Interrupo por TMR0:
0 = A interrupo no ser tratada.
1 = A interrupo ser tratada.
INTE: Interrupo externa no pino RB0:
0 = A interrupo no ser tratada.
1 = A interrupo ser tratada.
RBIE: Interrupo por mudanas de estados nos pinos RB4 a RB7:
0 = A interrupo no ser tratada.
1 = A interrupo ser tratada.
TOIF: Identificao de estouro do TMR0:
0 = A interrupo no ocorreu.
1 = A interrupo ocorreu.
INTF: Identificao da interrupo externa no pino RB0:
0 = A interrupo no ocorreu.
1 = A interrupo ocorreu.

14

SENAI-SP INTRANET
AA-235-05

Microcontrolador

RBIF: Identificao da interrupo por mudana de estado nos pinos RB4 a RB7.
0 = A interrupo no ocorreu.
1 = A interrupo ocorreu.

Registradores PCL e PCLATH


O PCL um registrador que armazena os 8 bits menos significativos do PC (Program
Counter) e o PCLTH armazena os 5 bits mais significativos, no qual indicada a
prxima linha de programa a ser executada.
Esses registradores so controlados diretamente pelo hardware interno do
microcontrolador, no sendo necessrio acess-los pelo programa. No entanto, esses
registradores podem ser alterados pelo programa, mas isso deve ser feito com muita
cautela, para que o sistema no se perca.

Registradores TRISA e TRISB


Esses registradores permitem configurar os pinos das portas como entrada ou como
sada.
Registrador: TRISA

Endereos: 85h

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

R/W

R/W

R/W

R/W

R/W

RA4

RA3

RA2

RA1

RA0

Registrador: TRISB

Endereos: 86h

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

R/W

R/W

R/W

R/W

R/W

R/W

R/W

R/W

RA7

RA6

RA5

RA4

RA3

RA2

RA1

RA0

SENAI-SP INTRANET
AA-235-05

15

Microcontrolador

Registradores PORTA e PORTB


Os estados lgicos dessas portas podem ser acessados diretamente em duas
posies distintas. Quando o pino desta porta est configurado como entrada e
efetuamos a sua leitura, estaremos lendo o nvel lgico aplicado no pino, e quando
est configurado como sada podemos alterar seu valor, escrevendo diretamente no bit
selecionado.
Registrador: PORTA

Endereos: 05h

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

R/W

R/W

R/W

R/W

R/W

RA4

RA3

RA2

RA1

RA0

Registrador: PORTB

Endereos: 06h

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

R/W

R/W

R/W

R/W

R/W

R/W

R/W

R/W

RA7

RA6

RA5

RA4

RA3

RA2

RA1

RA0

Os registradores EEADR, EEDATA, EECONS so utilizados para leitura e escrita da


EEPROM interna do PIC 16F84. Essa uma memria no voltil, que possui 64
posies de 8 bits, e que mantm os dados armazenados, mesmo quando o sistema
desligado.
Os registradores FSR e INDF so utilizados para acessar indiretamente uma posio
de memria, como se fosse um ponteiro.
Registrador: FSR

Endereos: 04h e 84h

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

R/W

R/W

R/W

R/W

R/W

R/W

R/W

R/W

Ponteiro para endereamento indireto


Registrador: INDF

Endereos: 00h e 80h


Valor do endereamento indireto

16

SENAI-SP INTRANET
AA-235-05

Microcontrolador

Construo dos nomes das instrues


O nome de uma instruo composto por uma funo e uma ao, conforme segue a
seguir: INCFSZ = Incrementa (INC) o registrador (F) e salta (Skip) se o resultado for
zero (Z)

Resumo do set de instrues


Podemos dividir as 35 instrues em quatro grupos que realizam:

operaes com registradores,

operaes com valores literais,

operaes com bits;

operaes de controle.
Operaes com Registradores
Instruo

Argumento

Descrio

ADDWF

f,d

Soma W e f, e guarda o resultado em d.

ANDWF

f,d

Lgica entre W e f, guarda o resultado em d.

CLRF

Limpa o registrador f.

COMF

f,d

Calcula o complemento de f, guarda o resultado em d.

DECF

f,d

Decrementa f e guarda o resultado em d.

DECFSZ

f,d

Decrementa f, guarda o resultado em d, e salta a


prxima instruo se o resultado for zero.

INCF

f,d

Incrementa f e guarda o resultado em d.

INCFSZ

f,d

Incrementa f, guarda o resultado em d, e salta a


prxima instruo se o resultado for zero.

IORWF

f,d

Operao lgica OU entre W e f, guardando o


resultado em d.

MOVF

f,d

Move f para d (cpia).

MOVWF

Move W para f (cpia).

RLF

f,d

Rotaciona f 1 bit para esquerda.

RRF

f,d

Rotaciona f 1 bit para direita.

SUBWF

f,d

Subtrai W de f (f-W), guarda o resultado em d.

SWAPF

f,d

Executa uma inverso entre as partes alta e baixa de f,


guardando o resultado em d.

XORWF

f,d

Operao lgica ou exclusivo entre W e f, guarda o


resultado em d.
SENAI-SP INTRANET
AA-235-05

17

Microcontrolador

Operaes com literais


Instruo

Argumento

Descrio

ADDLW

Soma k com W, guarda o resultado em W.

ANDLW

Lgica E entre W e k, guarda o resultado em W.

IORLW

Lgica OU entre W e k, guarda o resultado em W.

MOVLW

Move k para W.

SUBLW

Subtrai W de k (k-W), guarda o resultado em W.

XORLW

Lgica OU exclusiva entre W e k, guarda o resultado


em W.

Operaes com bits


Instruo

Argumento

Descrio

BCF

f,b

Impe 0 (zero) ao bit b do registrador f.

BSF

f,b

Impe 1 (um) ao bit b do registrador f.

BTFSC

f,b

Testa o bit b do registrador f, e salta a prxima


instruo se ele for 0 (zero).

BTFSS

f,b

Testa o bit b do registrador f, e salta a prxima


instruo se ele for 1 (um).
Operaes de controle

Instruo

Argumento

Descrio

CLRW

Limpa o registrador W.

NOP

Gasta um ciclo de mquina sem executar nada.

CALL

Chama uma sub-rotina R.

CLRWDT

Limpa o registrador WDT para no ocorrer o reset.

GOTO

Desvia para o ponto R, mudando o PC.

RETFIE

Retorna de uma interrupo.

RETLW

Retorna de uma rotina, com K em W.

RETURN

Retorna de uma rotina sem afetar W.

SLEEP

O PIC entra em modo sleep, para economia de


energia.

18

SENAI-SP INTRANET
AA-235-05

Microcontrolador

Ler e escrever nos


registradores

O objetivo desse ensaio ler e escrever valores literais em hexadecimal (dados) nos
registradores internos do microprocessador.

Procedimentos
1. Fazer fluxograma com a lgica a ser executada pelo microprocessador.
2. Fazer programa em assembler.
3. Digitar e executar o programa.
4. Ler o contedo dos registradores internos e comparar com o valor armazenado.

SENAI-SP INTRANET
AA-235-05

19

Microcontrolador

20

SENAI-SP INTRANET
AA-235-05

Microcontrolador

Manipular registradores

O objetivo desse ensaio manipular dados entre os registradores internos do


microprocessador, realizando a transferncia de dados de um registrador para outro.

Procedimentos
1. Fazer fluxograma com a lgica a ser executada pelo microprocessador.
2. Fazer programa em assembler.
3. Digitar e executar o programa.
4. Ler o contedo dos registradores internos e comparar com o valor armazenado.

SENAI-SP INTRANET
AA-235-05

21

Microcontrolador

22

SENAI-SP INTRANET
AA-235-05

Microcontrolador

Ler e escrever nos


dispositivos de entrada e
sada
O objetivo desse ensaio manipular dados entre a CPU e os dispositivos de
entrada/sada.

Procedimentos
1. Fazer fluxograma com a lgica a ser executada pelo microprocessador.
2. Fazer programa em assembler.
3. Digitar o programa.
4. Executar o programa e analisar os resultados.

SENAI-SP INTRANET
AA-235-05

23

Microcontrolador

24

SENAI-SP INTRANET
AA-235-05

Microcontrolador

Programar rotina de tempo

O objetivo desse ensaio elaborar uma rotina de tempo, utilizando comandos de teste
de byte, incremento, decremento e salto condicional.

Procedimentos
1. Fazer fluxograma com a lgica a ser executada pelo microprocessador.
2. Fazer programa em assembler.
3. Digitar o programa.
4. Executar o programa e analisar os resultados.

SENAI-SP INTRANET
AA-235-05

25

Microcontrolador

26

SENAI-SP INTRANET
AA-235-05

Microcontrolador

Programar pisca-pisca

O objetivo desse ensaio elaborar um pisca-pisca com um conjunto de LEDs


conectados a um dispositivo de sada utilizando subrotinas de tempo.

Procedimentos
1. Fazer fluxograma com a lgica a ser executada pelo microprocessador.
2. Fazer programa em assembler.
3. Digitar o programa.
4. Executar o programa e analisar os resultados.

SENAI-SP INTRANET
AA-235-05

27

Microcontrolador

28

SENAI-SP INTRANET
AA-235-05

Microcontrolador

Programar seqencial com


salto incondicional

O objetivo desse ensaio rotacionar para direita e para esquerda o dado armazenado
em um registrador interno da CPU sendo transferido para um conjunto de LEDs
conectados na sada, utilizando salto incondicional.

Procedimentos
1. Fazer fluxograma com a lgica a ser executada pelo microprocessador.
2. Fazer programa em assembler.
3. Digitar o programa.
4. Executar o programa e analisar os resultados.

SENAI-SP INTRANET
AA-235-05

29

Microcontrolador

30

SENAI-SP INTRANET
AA-235-05

Microcontrolador

Programar seqencial com


salto condicional

O objetivo desse ensaio elaborar um programa que teste um bit em um dispositivo de


entrada e rotacione um dado em um registrador interno da CPU para direita ou para
esquerda, mostrando o resultado em um dispositivo de sada por meio de um conjunto
de LEDs, utilizando comandos de salto condicional.

Procedimentos
1. Fazer fluxograma com a lgica a ser executada pelo microprocessador.
2. Fazer programa em assembler.
3. Digitar o programa.
4. Executar o programa e analisar os resultados.

SENAI-SP INTRANET
AA-235-05

31

Microcontrolador

32

SENAI-SP INTRANET
AA-235-05

Microcontrolador

Programar contador de 0 a 9

O objetivo desse ensaio elaborar um contador de 0 a 9, mostrando o resultado em


um conjunto de LEDs conectado sada, utilizando comandos de incremento,
comparao de byte e salto condicional.

Procedimentos
1. Fazer fluxograma com a lgica a ser executada pelo microprocessador.
2. Fazer programa em assembler.
3. Digitar o programa.
4. Executar o programa e analisar os resultados.

SENAI-SP INTRANET
AA-235-05

33

Microcontrolador

34

SENAI-SP INTRANET
AA-235-05

Microcontrolador

Programar contador
de 0 a 99

O objetivo desse ensaio elaborar um contador de 0 a 99, mostrando a dezena nos


quatro LEDs mais significativos e a unidade nos quatro LEDs menos significativos,
utilizando comandos de incremento, comparao de byte, salto condicional e
operaes lgicas.

Procedimentos
1. Fazer fluxograma com a lgica a ser executada pelo microprocessador.
2. Fazer programa em assembler.
3. Digitar o programa.
4. Executar o programa e analisar os resultados.

SENAI-SP INTRANET
AA-235-05

35

Microcontrolador

36

SENAI-SP INTRANET
AA-235-05

Microcontrolador

Programar contador
crescente e decrescente

O objetivo desse ensaio testar um bit em um dispositivo de entrada e fazer uma


contagem crescente ou decrescente de 0 a 9, mostrando o resultado em um conjunto
de LEDs conectado a sada, utilizando comandos de incremento, decremento, teste de
bit, teste de byte e salto condicional.

Procedimentos
1. Fazer fluxograma com a lgica a ser executada pelo microprocessador.
2. Fazer programa em assembler.
3. Digitar o programa.
4. Executar o programa e analisar os resultados.

SENAI-SP INTRANET
AA-235-05

37

Microcontrolador

38

SENAI-SP INTRANET
AA-235-05

Microcontrolador

Gerar onda quadrada

O objetivo desse ensaio gerar uma onda quadrada simtrica, com freqncia de
1kHz, utilizando subrotina de tempo.

Procedimentos
1. Fazer fluxograma com a lgica a ser executada pelo microprocessador.
2. Fazer programa em assembler.
3. Digitar o programa.
4. Executar o programa e analisar os resultados.

SENAI-SP INTRANET
AA-235-05

39

Microcontrolador

40

SENAI-SP INTRANET
AA-235-05

Microcontrolador

Gerar PWM

O objetivo desse ensaio gerar um PWM, variando a largura do pulso (duty cicle) por
meio da leitura de um bit em um dispositivo de entrada.

Procedimentos
1. Fazer fluxograma com a lgica a ser executada pelo microprocessador.
2. Fazer programa em assembler.
3. Digitar o programa.
4. Executar o programa e analisar os resultados.

SENAI-SP INTRANET
AA-235-05

41

Microcontrolador

42

SENAI-SP INTRANET
AA-235-05

Microprocessador

Referncia bibliogrfica

SENAI-SP. Tcnico em mecatrnica - Microprocessadores. Por Gilberto Possatti e


Regina Clia Roland Novaes. So Paulo, 1990.

SENAI-SP INTRANET
AA-235-05

43

Microprocessador

44

SENAI-SP INTRANET
AA-235-05

You might also like