SISTEMAS MICROPROCESSADOS - SOFTWARE
Por: Jeison Bueno • 5/5/2016 • Trabalho acadêmico • 2.417 Palavras (10 Páginas) • 482 Visualizações
UNIVERSIDADE PAULISTA – UNIP
NOTA DE AULA MICROPROCESSADOS – II Prof. Ms. Marco Antonio Baptista. Pg. 1
SISTEMAS MICROPROCESSADOS - SOFTWARE
NOTA DE AULA
Instruções de Movimentação:
O PIC possui apenas um registrador conhecido por “W” (Work). Todas as
instruções podem ser executadas através de valores de W juntamente com o
conteúdo de uma posição de memória RAM, que aqui é chamado de “f” (file).
Quando se quer se referir a uma constante em uma instrução, este é
representado por “L” (Literal)
Quando se quer indicar que um número é hexadecimal, coloca-se “0x” a frente
do numero. Exemplo o número 7A em hexa é representado por 0x7A
Abaixo será apresentado as instruções básicas do PIC
MOVLW K Mover literal K para registrador W
onde: K= é um número de 0 a FF
EXEMPLO: Se desejarmos carregar o numero 4F no registrador W:
MOVF f,d Mover (copiar) valor de uma posição de memória “f” para um
destino , conforme valor de “d”:
• Caso “d” = 0, move “f” para W.
• Caso “d” = 1, move “f” para si mesmo “f”.(???????)
onde: “f”= Endereço de memória de 00 a 7Fh
EXEMPLO: Se copiar o valor guardado no endereço 2C para o W, utilizaríamos
a seguinte instrução:
w 13
MOVLW 0x4F
MOVF 0x2C,0
End. Valor
2A
2B
2C 13
2D
End. Valor
w 4F
4F
UNIVERSIDADE PAULISTA – UNIP
NOTA DE AULA MICROPROCESSADOS – II Prof. Ms. Marco Antonio Baptista. Pg. 2
MOVWF f Mover (copiar) valor guardado em “W” para a posição de
memória “f”
EXEMPLO: Se copiar o valor guardado no endereço W para o endereço 18,
utilizaríamos a seguinte instrução:
CLRW : Move valor zero para registrador “W”,
EXEMPLO: Caso se queira zerar o registrador W, utilizaríamos a seguinte
instrução:
CLRF f : Move valor zero para registrador “f”,
EXEMPLO: Caso se queira zerar o endereço 32, utilizaríamos a seguinte
instrução:
MOVWF 0x18
End. Valor
16
17
18 85
19
End. Valor
w 85
CLRW
Valor
00
End. Valor
w 00
CLRF 0x32
Valor
00
End. Valor
30 nn
31 nn
32 00
33 nn
UNIVERSIDADE PAULISTA – UNIP
NOTA DE AULA MICROPROCESSADOS – II Prof. Ms. Marco Antonio Baptista. Pg. 3
Instruções de Bits
Supondo que tenhamos a situação acima onde temos ligado em um PIC com 3
botões na porta A, um motor no bit 1 da porta B e 1 led no bit 2 da porta B, que
utilizaremos para exemplificar a aplicação das instruções abaixo.
BSF f,b “Setar” (Forçar 1) no bit “b” do endereço “f”
onde: f= Endereço de memória de 00 a 7Fh
b= Bit de 0 a 7
Exemplo: Supondo queira ligar o motor conectado ao bit 1 da porta B do
esquema acima, sabendo-se que o endereço de memória da porta B é 06,
utilizaria no programa a seguinte instrução.
BCF f,b “Clear” (limpa) o bit “b” do endereço “f”
onde: f= Endereço de memória de 00 a 7Fh
b= Bit de 0 a 7
BSF 0x06 , 1
UNIVERSIDADE PAULISTA – UNIP
NOTA DE AULA MICROPROCESSADOS – II Prof. Ms. Marco Antonio Baptista. Pg. 4
Exemplo: Supondo queira desligar o motor conectado ao bit 1 da porta B do
esquema acima, sabendo-se que o endereço de memória da porta B é 06,
utilizaria no programa a seguinte instrução:
COMF “f”,”d” Faz o complemento (inverte os bits) do conteúdo de um
endereço “f” colocando resultado em:
• Caso “d” = 0, resultado vai para W.
• Caso “d” = 1, resultado decrementado volta para “f”.
onde: “f”= Endereço de memória de 00 a 7Fh
“d”= 0 ou 1: onde será armazenado o resultado.
EXEMPLO: Supondo que queiramos
...