ASSEMBLY
63 pág.

ASSEMBLY


DisciplinaAnálise Textual9.564 materiais293.973 seguidores
Pré-visualização23 páginas
1 A
OCR1B, Registrador de Saída do Comparador 1 B
PINx, Acesso à Porta de Entrada
PORTx, Port x Output Register
SPL/SPH, Ponteiro de Pilha
SPCR, Registrador de Controle de Periféricos Seriais
SPDR, Registrador de Dados de Periféricos Seriais
SPSR, Registrador de Status de Periféricos Seriais
SREG, Registrador de Status
TCCR0, Registrador de Controle do Timer/Contador Timer0
TCCR1A, Registrador de Controle do Timer/Contador 1 A
TCCR1B, Registrador de Controle do Timer/Contador 1 B
TCNT0, Registrador do Timer/Contador, Contador 0
TCNT1, Registrador do Timer/Contador, Contador 1
TIFR, Flag de Interrupção do Timer
TIMSK, Registrador Mascarado de Interrupção do Timer
UBRR, Registrador de velocidade da UART (Baud Rate)
UCR, Registrador de Controle da UART
UDR, Registrador de Dados da UART
WDTCR, Registrador de Controle do Timer Watchdog
Lista de abreviações
As abreviações usadas foram escolhidas para incluírem a faixa de valores. Pares de registradores são 
nomeadas pelo menor dos dois registradores. Constantes em comandos de salto são automaticamente 
calculadas das respectivas labels durante a compilação.
Categ. Abrev. Significa ... Faixa de Valores
Register
r1 Registradores origem e destino comuns
r2 Registrador fonte comum
R0..R31
rh Registrador de página superior R16..R31
rd Registrador gêmeo R24(R25), R26(R27), R28(R29), R30(R31)
rp Registrador de ponteiro X=R26(R27), Y=R28(R29), Z=R30(R31)
ry Registrador de ponteiro com deslocamento Y=R28(R29), Z=R30(R31)
Constant
k63 Constante ponteiro 0..63
c127 Distância de salto condicional -64..+63
c255 Constante de 8 bits 0..255
c4096 Distância de salto relativo -2048..+2047
c65535 Endereço de 16 bits 0..65535
Bit b7 Posição do bit 0..7
Port
p1 Porta comum 0..63
pl Porta de página inferior 0..31
	Porque aprender Assembler?
	Curta e fácil
	Veloz
	Assembler é de fácil aprendizado
	AVRs são ideais para se aprender assembler
	Teste!
	Hardware para programação em Assembler AVR
	A interface ISP da família de processadores AVR
	Programador para a porta paralela do PC
	Placas experimentais
	Placa experimental com ATtiny13
	Placa experimental com um AT90S2313/ATmega2313
	Placas de programação comerciais para a família AVR
	STK200
	STK500
	AVR Dragon
	Ferramentas para programação assembly AVR 
	De um arquivo texto a palavras de instrução para a memória flash
	O editor
	O assembler
	Programando os chips
	Simulação no studio
	Registrador
	O que é um registrador?
	Registradores diferentes
	Registradores ponteiros
	Recomendação para uso dos registradores
	Portas
	O que é uma Porta?
	Deatlhes de portas relevantes do AVR
	O registrador de status como a porta mais utilizada
	Detalhes das portas
	SRAM
	Usando SRAM em linguagem assembler AVR 
	O que é SRAM?
	Para que propósitos posso usar a SRAM?
	Como usar a SRAM?
	O uso da SRAM como pilha
	Definindo SRAM como pilha
	Uso da pilha
	Bugs com a operação de pilhas
	Saltos e Desvios
	Controlando a execução seqüencial de um programa
	O que acontece durante um reset?
	Execução linear do programa e desvios
	Temporização durante a execução do programa
	Macros e execução do programa
	Subrotinas
	Interrupções e a execução do programa
	Cálculos
	Sistemas numéricos em assembler
	Números positivos inteiros (bytes, palavras, etc.)
	Números com sinal (inteiros)
	Dígitos Codificados em Binário, BCD (Binary Coded Digits)
	BCDs compactados
	Números em formato ASCII
	Manipulação de bits
	Desloca e rotaciona
	Somando, subtraindo e comparando
	Conversão de formatos numéricos
	Multiplicação
	Multiplicação decimal
	Multiplicação binária
	Programa em Assembler AVR
	Rotação binária
	Multiplicação no studio
	Divisão
	Divisão decimal
	Divisão binária
	Passos do programa durante a divisão
	Divisão no simulador
	Conversão numérica
	Frações decimais
	Conversões lineares
	Exemplo 1: Conversor AD 8-bit para saída decimal com ponto fixo
	Exemplo 2: Conversor AD de 10 bits com saída decimal fixa
	Anexo
	Instruções ordenadas por função
	Lista de Diretivas e Instruções em ordem alfabética
	Diretivas de Assembler em ordem alfabética
	Instruções em ordem alfabética
	Detalhes das Portas
	Registrador de Status, Flags do Acumulador
	Ponteiro de pilha
	SRAM e controle externo de interrupções
	Controle de Interrupção Externa
	Controle do Timer de Interrupção
	Timer/Contador 0
	Timer/Contador 1
	Watchdog-Timer
	EEPROM
	Interface de Periféricos Seriais (SPI)
	UART
	Analog Comparator
	Portas E/S
	Portas, ordem alfabética
	Lista de abreviações