Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
INSTRUES DE DESVIO
RJMP IJMP RCALL ICALL RET k k Desvio relativo Desvio indireto para (Z) Chama de sub-rotina Chamada indireta para (Z) Retorno de sub-rotina Retorno de interrupo Rd, Rr Rd, Rr Rd, Rr Rd, K Rr, b Rr, b P, b P, b s, k s, k k k k k k k k k k k k k k k k k k k Compara, pula se igual Compara Compara com Carry Compara registrador com valor imediato Pula se o bit do registrador estiver limpo (0) Pula se o bit do registrador estiver ativo (1) Pula se o bit do registrador de I/O estiver limpo (0) Pula se o bit do registrador de I/O estiver ativo (1) Desvia se o bit de sinalizao de status estiver ativo (1) Desvia se o bit de sinalizao de status estiver limpo (0) Desvia se igual Desvia se diferente Desvia se o bit de Carry estiver ativo (1) Desvia se o bit de Carry estiver limpo (0) Desvia se igual ou maior Desvia se menor Desvia se negativo Desvia se positivo Desvia se maior ou igual, com sinal Desvia se menor que zero, com sinal Desvia se o bit sinalizador de meio Carry estiver ativo (1) Desvia se o bit sinalizador de meio Carry estiver limpo (0) Desvia se o bit sinalizador T estiver ativo (1) Desvia se o bit sinalizador T estiver limpo (0) Desvia se o bit sinalizador de estouro estiver ativo (1) Desvia se o bit sinalizador de estouro estiver limpo (0) Desvia se a interrupo estiver habilitada Desvia se a interrupo estiver desabilitada PC PC + k + 1 PC Z PC PC + k + 1 PC Z PC STACK PC STACK if(Rd=Rr) PC PC + 2 ou 3 Rd - Rr Rd Rr - C Rd - K if(Rr(b)=0) PC PC + 2 ou 3 if(Rr(b)=1) PC PC + 2 ou 3 if(P(b)=0) PC PC + 2 ou 3 if(P(b)=1) PC PC + 2 ou 3 if(SREG(s)=1) PC PC + k + 1 if(SREG(s)=0) PC PC + k + 1 if(Z=1) PC PC + k + 1 if(Z=0) PC PC + k + 1 if(C=1) PC PC + k + 1 if(C=0) PC PC + k + 1 if(C=0) PC PC + k + 1 if(C=1) PC PC + k + 1 if(N=1) PC PC + k + 1 if(N=0) PC PC + k + 1 if(N V = 0) PC PC + k + 1 if(N V = 1) PC PC + k + 1 if(H=1) PC PC + k + 1 if(H=0) PC PC + k + 1 if(T=1) PC PC + k + 1 if(T=0) PC PC + k + 1 if(V=1) PC PC + k + 1 if(V=0) PC PC + k + 1 if(I=1) PC PC + k + 1 if(I=0) PC PC + k + 1 Nenhum Nenhum Nenhum Nenhum Nenhum I Nenhum Z,N,V,C,H Z,N,V,C,H Z,N,V,C,H Nenhum Nenhum Nenhum Nenhum Nenhum Nenhum Nenhum Nenhum Nenhum Nenhum Nenhum Nenhum Nenhum Nenhum Nenhum Nenhum Nenhum Nenhum Nenhum Nenhum Nenhum Nenhum Nenhum Nenhum 2 2 3 3 4 4 1/ 2/ 3 1 1 1 1/ 2/ 3 1/ 2/ 3 1/ 2/ 3 1/ 2/ 3 1/ 2 1/ 2 1/ 2 1/ 2 1/ 2 1/ 2 1/ 2 1/ 2 1/ 2 1/ 2 1/ 2 1/ 2 1/ 2 1/ 2 1/ 2 1/ 2 1/ 2 1/ 2 1/ 2 1/ 2
Clocks
Mnemnico
Operan -dos
Descrio
Operao
Flags
1 1 1 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 BRIE BRID BRTS BRTC BRVS BRVC SBIS BRBS BRBC BREQ BRNE BRCS BRCC BRSH BRLO BRMI BRPL BRGE BRLT BRHS BRHC
2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Legenda: Rd Rr s, b K P q Rdl X, Y, Z = registrador de destino (e origem). = registrador de origem. = constante (0..7); pode ser uma expresso constante. = constante, faixa de valores depende da instruo; pode ser uma expresso constante. = constante (0..31/63), pode ser uma expresso constante ou um registrador de I/O. = constante (0..63), pode ser uma expresso constante. = R24, R26, R28, R30, usado nas instrues ADIW e SBIW. = registradores de 16 bits para endereamento indireto (X=R27:26, Y=R29:28 e Z=R31:30). Todos as instrues que operam com registradores de uso geral tem acesso direto em um nico ciclo a todos eles. As excees so as cinco instrues lgicas e aritmticas entre uma constante e um registrador, SBCI, SUBI, CPI e ORI, e a instruo para carga de constante imediata, LDI. Essas instrues se aplicam somente a metade dos registradores de uso geral superiores (R16..R31). As instrues SBUC, SUB, CP, AND, OR e as demais operaes entre um ou dois registradores se aplicam a todo o banco de registradores.
7 I L/E 0
6 T L/E 0
5 H L/E 0
4 S L/E 0
3 V L/E 0
2 N L/E 0
1 Z L/E 0
0 C L/E 0
BIT 7 I: Global Interrupt Enable Este bit a chave geral para habilitar as interrupes. Cada interrupo individual possui seus registradores de controle. O bit I limpo quando uma interrupo ocorre (impedindo que outras ocorram simultaneamente) e volta a ser ativo quando se termina o tratamento da interrupo (instruo RETI). BIT 6 T: Bit Copy Storage Serve para copiar o valor de um bit de um registrador ou escrever o valor de um bit em um registrador (instrues BLD e BST). BIT 5 H: Half Carry Flag Indica quando um meio Carry (em um nibble) ocorreu em alguma operao aritmtica. til em aritmtica BCD. BIT 4 S: Sign Bit, S = N V O bit S o resultado de um ou exclusivo entre o flag negativo N e o flag de estouro do complemento de dois V. BIT 3 V: Twos Complement Overflow Flag O flag de estouro do complemento de dois ajuda na aritmtica com complemento de dois. BIT2 N: Negative Flag O flag negativo indica quando uma operao aritmtica ou lgica resulta em um valor negativo. BIT1 Z: Zero Flag O flag zero indica quando uma operao aritmtica ou lgica resulta em zero. BIT 0 C: Carry Flag O flag de Carry indica quando houve Carry numa operao matemtica ou lgica.
BIBLIOGRAFIA
Lima, Charles Borges de. Tcnicas de Projetos Eletrnicos com os Microcontroladores AVR. Edio do autor - Clube de Autores, 1 ed. Nov/2010. ISBN 978-85-911400-0-8