AVR_pt
63 pág.

AVR_pt


DisciplinaAnálise Textual9.564 materiais293.973 seguidores
Pré-visualização23 páginas
Introdução para o iniciante à
Linguagem Assembly dos
Microprocessadores ATMEL­AVR
por
Gerhard Schmidt
http://www.avr­asm­tutorial.net
Dezembro de 2003
Versão corrigida em Julho de 2006
Correções adicionais e atualizações em Janeiro de 2008
Traduzido por Guilherme Groke \u2013 ggroke@gmail.com
Avr-Asm-Tutorial 1 http://www.avr-asm-tutorial.net
Conteúdo
Porque aprender Assembler?......................................................................................................................1
Curta e fácil...........................................................................................................................................1
Veloz.....................................................................................................................................................1
Assembler é de fácil aprendizado..........................................................................................................1
AVRs são ideais para se aprender assembler........................................................................................1
Teste!.....................................................................................................................................................2
Hardware para programação em Assembler AVR.....................................................................................3
A interface ISP da família de processadores AVR................................................................................3
Programador para a porta paralela do PC..............................................................................................3
Placas experimentais.............................................................................................................................4
Placa experimental com ATtiny13...................................................................................................4
Placa experimental com um AT90S2313/ATmega2313..................................................................5
Placas de programação comerciais para a família AVR........................................................................6
STK200.............................................................................................................................................6
STK500.............................................................................................................................................6
AVR Dragon.....................................................................................................................................7
Ferramentas para programação assembly AVR ........................................................................................8
De um arquivo texto a palavras de instrução para a memória flash......................................................8
O editor.............................................................................................................................................8
O assembler......................................................................................................................................9
Programando os chips.........................................................................................................................10
Simulação no studio............................................................................................................................11
Registrador...............................................................................................................................................13
O que é um registrador?......................................................................................................................13
Registradores diferentes......................................................................................................................14
Registradores ponteiros.......................................................................................................................14
Recomendação para uso dos registradores..........................................................................................15
Portas........................................................................................................................................................17
O que é uma Porta?..............................................................................................................................17
Deatlhes de portas relevantes do AVR................................................................................................18
O registrador de status como a porta mais utilizada............................................................................18
Detalhes das portas..............................................................................................................................19
SRAM......................................................................................................................................................20
Usando SRAM em linguagem assembler AVR .................................................................................20
O que é SRAM?..................................................................................................................................20
Para que propósitos posso usar a SRAM?...........................................................................................20
Como usar a SRAM?...........................................................................................................................20
Use of SRAM as stack.........................................................................................................................21
Definindo SRAM como pilha.........................................................................................................21
Uso da pilha....................................................................................................................................22
Bugs com a operação de pilhas.......................................................................................................22
Saltos e Desvios.......................................................................................................................................24
Controlando a execução seqüencial de um programa.........................................................................24
O que acontece durante um reset?..................................................................................................24
Execução linear do programa e desvios..............................................................................................25
Temporização durante a execução do programa.................................................................................25
Macros e execução do programa.........................................................................................................26
Subrotinas............................................................................................................................................26
Interrupções e a execução do programa..............................................................................................28
Cálculos....................................................................................................................................................30
Sistemas numéricos em assembler......................................................................................................30
Números positivos inteiros (bytes, palavras, etc.)..........................................................................30
Números com sinal (inteiros)..........................................................................................................30
Dígitos Codificados em Binário, BCD (Binary Coded Digits)......................................................30
BCDs compactados.........................................................................................................................31