TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

Hardware e software

Tese: Hardware e software. Pesquise 863.000+ trabalhos acadêmicos

Por:   •  15/11/2013  •  Tese  •  718 Palavras (3 Páginas)  •  682 Visualizações

Página 1 de 3

Curso PIC 1

Desbravando o PIC

Eng. Diego Camilo Fernandes

Labtools – Mosaico Didactic DivisionO que fazemos ...



Desenvolvimento de projetos (

hardware e software

);



Consultoria em engenharia eletrônica e produção;



Serviços completos: da idéia ao produto;



Treinamentos em microcontroladores;



Elaboração de materiais didáticos.A Mosaico HPS já desenvolveu projetos com

microcontroladores para diversas áreas:



bioengenharia (médicos / odontologia / estética);



automação & controle (controladores / indicadores);



instrumentação (sensores);



sistemas de energia (estabilizadores /

no breaks

);



sistemas de segurança (alarmes);



telecomunicações (telefonia).

Com quem trabalhamos ...PIC

Entradas

PIC PIC

SaSaídas í

das

ProgramaAs fam

í

lias de PIC...Desempenho das fam

í

lias do PIC

16Fxxx

10Fxxx

12Fxxx

18Fxxxx

0.75 kBytes

24 Bytes

3.5 kBytes

128 Bytes

14 kBytes

368 Bytes

128 kBytes

3968 Bytes

Prog

Mem:

Data

Mem:

Performance

Mem

ó

riaArquitetura do

microcontrolador



A Microchip adotou a

arquitetura Harvard para a

sua linha de

microcontroladores.



RISC – set de instruções

reduzido, a linha 16 possui

35 instruções.



Possui dois tipos de

memória, uma para dados e

outra para instruções.



Barramento de dados

separados para memória de

dados e memória de

programa.Arquitetura do

microcontroladorEstrutura

ç

ão InternaOs ciclos de m

á

quinaMapa da Mem

ó

ria de ProgramaMapa da Mem

ó

ria de DadosSet de instru

ç

ões

Instrução

•

[W] Work

•

[F] File (Registrador)

•

[L] Literal

•

[B] Bit

•

[T] Test

•

[Z] Zero

•

[S] Skip (Pula)

•

[C] Clear (0)

•

[S] Set (1)

Argumento

•

[f] File (Endereço)

•

[d] Destino (W/F)

•

[b] Bit (Número)

•

[k] Literal (Valor)

Instru

ç

ão

•

[W]

Work

•

[F]

File (Registrador)

•

[L]

Literal

•

[B]

Bit

•

[T]

Test

•

[Z]

Zero

•

[S]

Skip

(Pula)

•

[C]

Clear

(0)

•

[S]

Set (1)

Argumento

•

[f]

File (Endere

ç

o)

•

[d]

Destino (W/F)

•

[b]

Bit (N

ú

mero)

•

[k]

Literal (Valor)

Instrução

•

[ADD] Soma

•

[AND] “E”

•

[CLR] Limpar

•

[COM] Complementa

•

[DEC] Decrementa

•

[INC] Incrementa

•

[IOR] “OU”

•

[MOV] Move

•

[RL] Rotaciona Esq.

•

[RR] Rotaciona Dir.

•

[SUB] Subtrai

•

[SWAP] Inverte

•

[XOR] “OU” exclusivo

•

[RET] Retornar

Instru

ç

ão

•

[ADD]

Soma

•

[AND]

“

E

”

•

[CLR]

Limpar

•

[COM]

Complementa

•

[DEC]

Decrementa

•

[INC]

Incrementa

•

[IOR]

“

OU

”

•

[MOV]

Move

•

[RL]

Rotaciona

Esq.

•

[RR]

Rotaciona

Dir.

•

[SUB]

Subtrai

•

[SWAP] Inverte

•

[XOR]

“

OU

”

exclusivo

•

[RET]

RetornarComandos em

Assembly

Lidando com os dados – pág. 85

MOVLW

– move uma constante (literal) para o

acumulador

Sintaxe:

MOVLW k ;onde k é uma constante

Exemplo:

mover o número 10 para o acumulador

MOVLW 10 ;Comandos em

Assembly

Lidando com os dados – pág. 85

MOVWF

– move o conteúdo do acumulador para um

registrador (ou variável);

Sintaxe:

MOVWF f ;onde f é um registrador

Exemplo:

mover o número 30 para registrador PORTB

MOVLW 30 ;

MOVWF PORTB ;Comandos em

Assembly

Lidando com os dados – pág. 85

MOVF

– move o conteúdo de um registrador para o

acumulador ou para o próprio registrador;

Sintaxe:

MOVF f,d ;onde f é um registrador e d o destino

(W ou F)

Exemplo:

mover o conteúdo do registrador PORTB

para o acumulador

MOVF PORTB,W ;Comandos em

Assembly

Lidando com os dados – pág. 85

CLRF

– limpa um registrador;

Sintaxe:

CLRF f ;onde f é um registrador

Exemplo:

limpar o registrador PORTB

CLRF PORTB ;Comandos em

Assembly

Lidando com os dados – pág. 85

CLRW

– limpa o acumulador;

Sintaxe:

CLRW

Exemplo:

limpar o acumulador

CLRWComandos em

Assembly

Trabalhando com rotinas – pág. 91

GOTO

– desvia o fluxo do programa para um

determinado ponto da memória de programa

Sintaxe:

GOTO nome ;onde o nome é uma identificação

para onde deseja pular.

Exemplo:

GOTO INICIO ; desvia programa para a label início.Comandos em

Assembly

Trabalhando com rotinas – pág. 91

CALL

– desvia o fluxo do programa para um determinado

ponto da memória de programa e gasta um nível de pi

lha

Sintaxe:

CALL nome ;onde o nome é uma identificação

da rotina.

Exemplo:

CALL DELAY ; chama a rotina DELAYComandos em

Assembly

Trabalhando com rotinas – pág. 91

RETURN

– finaliza a execução de uma rotina voltando ao

último endereço guardado na pilha sem afetar o

acumulador

Sintaxe:

RETURN

Exemplo:

RETURNComandos em

Assembly

Trabalhando com rotinas – pág. 91

RETLW

– finaliza a execução de uma rotina voltando ao

último endereço guardado na pilha e com um valor

guardado no acumulador;

Sintaxe:

RETLW k ; onde k é uma constante (literal)

Exemplo:

RETLW 10 ; retorna de uma rotina com o valor 10 no

acumuladorComandos em

Assembly

Tomando decisões e fazendo desvios – pág. 94

BTFSC

– testa bit do registrador e pula a próxima linha se

o resultado for 0

Sintaxe:

BTFSC f,b ; onde f é um registrador e b o bit a ser

testado

Exemplo:

testar o bit Z do registrador STATUS

BTFSC STATUS,Z ; testa bit Z de STATUS

GOTO RESULT_UM

GOTO RESULT_ZEROComandos em

Assembly

Tomando decisões e fazendo desvios – pág. 94

BTFSS

– testa bit do registrador e pula a próxima linha se

o resultado for 1

Sintaxe:

BTFSS f,b ; onde f é um registrador e b o bit a ser

testado

Exemplo:

testar o bit 0 do registrador PORTA

BTFSS PORTA,0 ; testa bit 0 de PORTA

GOTO RESULT_ZERO

GOTO RESULT_UMComandos em

Assembly

Tomando decisões e fazendo desvios – pág. 94

BSF

– seta um bit do registrador

Sintaxe:

BSF f,b ; onde f é um registrador e b o bit a ser set

ado

Exemplo:

setar um o bit 0 do registrador PORTA

BSF PORTA,0 ; seta bit 0 de PORTAComandos em

Assembly

Tomando decisões e fazendo desvios – pág. 94

BCF

– limpa um bit do registrador

Sintaxe:

BCF f,b ; onde f é um registrador e b o bit a ser lim

pado

Exemplo:

limpar o bit 0 do registrador PORTA

BCF PORTA,0 ; limpa bit 0 de PORTAComandos em

Assembly

Fazendo operações aritméticas básicas – pág. 101

Somando

INCF

– incremento unitário do registrador

Sintaxe:

INCF f,d ; onde f é um registrador e d o destino

(W ou F)

Exemplo:

incrementar o registrador PORTB e o

resultado no próprio registrador

INCF PORTB,F ; incremento do PORTB

...

Baixar como  txt (6.5 Kb)  
Continuar por mais 2 páginas »