Microcontrolador MSP430G2xxx:
|
|
- Ruth Sousa Frade
- 6 Há anos
- Visualizações:
Transcrição
1 Microcontrolador MSP430G2xxx: Microcontrolador da Texas Instruments CPU de 16 bits com arquitetura RISC Arquitetura von-neumann com barramento de dados e barramento de endereços: MDB - Memory Data Bus MAB - Memory Address Bus Sistema de Clock flexível Aplicações de baixo consumo
2 Arquitetura do MSP430G2xxx
3 Arquitetura do MSP430G2x53 Encapsulamento de 28 Pinos
4
5 Mapeamento de Memória (Address Space) do MSP430 0C000h 256 bytes Information Memory MSP430G bytes 03FFh
6 Direção do Pino Função do Pino Pull-up Pull-down Saída Entrada
7 Registrador de Direção dos pinos: PxDIR Cada bit dos registradores PxDIR (P1DIR ou P2DIR) define a direção do pino correspondente da Porta de Entrada/Saída Bit = 0, o pino é configurado como entrada Bit = 1, o pino é configurado como saída Exemplo: P1DIR P1.7, P1.5, P1.4, P1.2 e P1.1 : Entrada P1.6, P1.3 e P1.0 : Saída
8 Registrador para habilitar Pull-up/Pull-down: PxREN Cada bit dos registradores PxREN (P1REN ou P2REN) habilita ou desabilita o resistor de pull-up/pull-down no pino correspondente da Porta de Entrada/Saída Bit = 0, resistor de pull-up/pull-down habilitado Bit = 1, resistor de pull-up/pull-down desabilitado Exemplo: P2REN Resistor de pull-up/pull-down do pino P2.3 habilitado
9
10 Registrador de entrada: PxIN Cada bit dos registradores PxIN reflete o estado do pino correspondente da Porta de Entrada/Saída, quando o mesmo for configurado como entrada. Bit = 0, o pino está no nível baixo Bit = 1, o pino está no nível alto
11 Registrador de saída: PxOUT Cada bit dos registradores PxOUT define o valor a ser colocado no pino correspondente da Porta de Entrada/Saída, quando o mesmo for configurado como saída e o resistor de pull-up / pull-down estiver desabilitado. Bit = 0, o pino é colocado no nível baixo Bit = 1, o pino é colocado no nível alto Se o resistor de pull-up / pull-down estiver habilitado cada bit do registrador PxOUT seleciona se o resistor é colocado em pull-up ou pull-down. Bit = 0, coloca o resistor em pull-down Bit = 1, coloca o resistor em pull-up
12 Watchdog Timer - WDT O Watchdog timer+ counter (WDTCNT) é um contador de 16 bits que não é acessível diretamente através de software. O WDTCNT é controlado através do registrador WDTCTL. A fonte de clock para o WDTCNT pode ser o ACLK ou o SMCLK, selecionável através do bit WDTSSEL. Após a condição de Reset, o módulo WDT é automaticamente configurado no modo Watchdog, com clock de 32768Hz. O usuário deve alterar o registrador WDTCTL para desabilitar, configurar ou zerar o WDT para evitar um novo reset no sistema.
13 Watchdog Timer - WDT Registrador WDTCTL
14 CPU do MSP430:
15 Registrador R0: Program Counter (PC) O Program Counter (PC) é o ponteiro para a próxima instrução a ser executada. Cada instrução do MSP430 utiliza um número par de bytes (2, 4 ou 6 bytes), e o PC é incrementado de acordo com o número de bytes da instrução. O alinhamento das instruções é feito em words, assim o Program Counter (PC) é alinhado em endereços pares.
16 Registrador R1: Stack Pointer (SP) O Stack Pointer (SP) é utilizado pela CPU para armazenar o endereço de retorno de uma sub-rotina ou de uma interrupção. O Stack Pointer é pré-decrementado e pós-incrementado: Armazenar um endereço na pilha: o SP é inicialmente decrementado e após o endereço é colocado na pilha. Retirar um endereço da pilha: o endereço é retirado da pilha e o SP é incrementado. O Stack Pointer pode ser utilizado como operando em qualquer instrução. O Stack Pointer deve ser inicializado pelo usuário, em um endereço da RAM (normalmente o endereço mais alto da RAM).
17 Registrador R2: Registrador de Estado (Status Register-SR)
18 Registradores de Propósito Geral: R4 a R15 Os 12 Registradores, R4 a R15, são de Propósito Geral. Todos eles podem ser utilizados como registradores de dados, como ponteiros de endereços ou indexadores, podendo ser acessados através de instruções do tipo word ou byte. Transferência Registrador-Byte Transferência Byte-Registrador
19 Reset e inicialização do microcontrolador O Power On Reset(POR) é gerado por um dos seguintes eventos: Energização do dispositivo; Nível baixo no sinal RST/NMI, quando configurado como RESET; Uma condição de nível baixo no SVS.
20 Condições iniciais após o Power On Reset Após o Power On Reset as condições iniciais do MSP430 são: O pino RST/NMI é configurado no modo RESET; Os pinos de I/O são configurados como entrada; Os periféricos e registradores são configurados no modo default; O Registrador de Estado(SR) é resetado; O Watchdog Timer é ativado no modo Watchdog O PC é carregado com o valor armazenado no endereço 0xFFFE (Vetor de reset)
21 Após o Reset o usuário deve inicializar o MSP430 de acordo com os requisitos da aplicação: Inicializar o Stack Pointer(SP), usualmente no final da RAM; Configurar ou desativar o Watchdog ; Configurar os periféricos de acordo com os requisitos da aplicação; Configurar as portas de I/O
22 Anatomia de uma listagem de programa assembly #include "msp430g2553.h" org 0xfffe bc16 main rseg code main: mov.w #0x03FF,SP mov.w #WDTPW+WDTHOLD,&WDTCTL bis.b # b,&P1DIR bic.b # b,&P1OUT loop: xor.b #0x01,&P1OUT mov.w #50000,R15 delay: dec.w R15 jnz delay jmp loop END
23 Diretiva do Assembly Anatomia de uma listagem de programa assembly /* Programa para inverter o estado do LED vermelho da placa MSP-EXP430G2 com delay entre as mudanças de estado do led */ #include "msp430.h" // Definicões do MSP430 org 0xFFFE bc16 main RSEG CODE main: mov.w #0x0400,SP ; Inicializar stack pointer Comentários Comentários Label (Rótulo) mov.w #WDTPW+WDTHOLD,&WDTCTL ; Desativar WDT bis.b # b,&P1DIR ; Pino P1.0 como saída bic.b # b,&P1OUT ; Pino P1.0 = 0 loop: xor.b #0x01,&P1OUT ; Inverter o pino P1.0 mov.w #50000,R15 ; Carregar registrador R15 delay: dec.w R15 ; Decrementar R15 jnz delay ; Desvia para delay se R15 # 0 Mnemônico jmp loop ; Desvia para loop da Instrução Operandos de Máquina END
24 Conjunto de Instruções do MSP430 O MSP430 possui um Conjunto de Instruções contendo 27 instruções nativas e 24 instruções emuladas. Cada uma das 27 instruções nativas possui um Código de Operação que pode ser decodificado pela CPU. As instruções emuladas são instruções que facilitam a codificação e a leitura do programa, porém não possuem um Código de Operação específico. Essas instruções são automaticamente substituidas pelo montador (Assembler), por instruções nativas equivalentes. O Conjunto de Instruções nativas do MSP430 está dividido em 3 grupos: Instruções com dois operandos Instruções com um operando Instruções de desvio
25 Conjunto de Instruções nativas do MSP430 Instruções com 2 operandos: Mnemônico Operandos Operação MOV[.W/.B] src,dst src dst ADD[.W/.B] src,dst src + dst dst ADDC[.W/.B] src,dst src + dst + C dst SUB[.W/.B] src,dst dst src dst SUBC[.W/.B] src,dst dst src C dst CMP[.W/.B] src,dst dst src DADD[.W/.B] src,dst src + dst + C dst (decimal) BIT[.W/.B] src,dst src.and. dst BIC[.W/.B] src,dst zerar bits em dst BIS[.W/.B] src,dst setar bits em dst XOR[.W/.B] src,dst src.xor. dst dst AND[.W/.B] src,dst src.and. dst dst
26 Conjunto de Instruções nativas do MSP430 Instruções com 1 operando: Mnemônico Operando Operação RRC[.W/.B] dst rotacionar dst com o Carry RRA[.W/.B] dst rotacionar dst sem o Carry PUSH[.W/.B] src colocar src na pilha SWPB dst trocar bytes de dst CALL dst chamada a sub-rotina RETI retorno de interrupção SXT dst propagar bit de sinal
27 Conjunto de Instruções nativas do MSP430 Instruções de desvio: Mnemônico Operando Operação JEQ/JZ label desvia para label se Z = 1 JNE/JNZ label desvia para label se Z = 0 JC label desvia para label se C = 1 JNC label desvia para label se C = 0 JN label desvia para label se N = 1 JGE label desvia para label se (N.xor. V) = 0 JL label desvia para label se (N.xor. V) = 1 JMP label desvia incondicionalmente para label
28 Modos de Endereçamento Código da operação Operando de Origem Operando de Destino O MSP430 possui 7 modos de endereçamento para o operando de origem e 4 modos de endereçamento para o operando de destino. Modos de Endereçamento: Registrador Indexado Simbólico Absoluto Indireto Indireto com auto-incremento Imediato Operando de Origem e de Destino Operando de Origem
29 Modo de Endereçamento a Registrador MOV.W R10, R11 mover o conteúdo do Registrador R10 para o Registrador R11 Antes Depois R10: 0x1234 R10: 0x1234 R11: 0x80A5 R11: 0x1234 MOV.B R10, R11 Antes Depois R10: 0x1234 R10: 0x1234 R11: 0x80A5 R11: 0x0034
30 Modo de Endereçamento Indexado MOV.W 6(R10), 10(R11) mover o conteúdo do endereço de memória 6 + (R10) para o endereço de memória 10 + (R11) Antes Depois R10: R11: 0xC01A 0x0200 C022 C021 C020 C01E C01C C01A 020A xA002 0x4567 0x1B0A 0x025C 0x1BC0 0x0135 0x1234 6(R10) +6 10(R11) +10 C022 C021 C020 C01E C01C C01A 020A xA002 0x4567 0x1B0A 0x4567 0x1BC0 0x0135 0x1234
31 Modo de Endereçamento Simbólico MOV.W origem, destino mover o conteúdo do endereço simbólico de memória origem para o endereço simbólico de memória destino. Antes Depois destino origem E 020C 020A x1506 0x1B50 0xFFC7 0x0201 0x025C 0x1BC0 0x4567 0x E 020C 020A x1506 0x1B50 0xFFC7 0x4567 0x025C 0x1BC0 0x4567 0x1234
32 Modo de Endereçamento Absoluto MOV.W &0x0206, &0x0210 mover o conteúdo do endereço de memória 0x0206(origem) para o endereço de memória 0x0210(destino). Antes Depois destino origem E 020C 020A x1506 0x1B50 0xFFC7 0x0201 0x025C 0x1BC0 0x4567 0x E 020C 020A x1506 0x1B50 0xFFC7 0x4567 0x025C 0x1BC0 0x4567 0x1234
33 Modo de Endereçamento Indireto 0(R11) mover o conteúdo do endereço de memória apontado pelo registrador R10, para o endereço de memória 0 + (R11) Antes Depois R10: R11: 0xC01E 0x0208 C024 C022 C020 C01E C01C C01A 020A xA002 0x4567 0x1234 0x0C05 0x025C 0x1BC0 0x3001 0x015A C024 C022 C020 C01E C01C C01A 020A xA002 0x4567 0x1234 0x0C05 0x025C 0x1234 0x3001 0x015A R10: R11: 0xC01E 0x0208
34 Modo de Endereçamento Indireto com auto-incremento 0(R11) mover o conteúdo do endereço de memória apontado pelo registrador R10, para o endereço de memória 0 + (R11). Após a operação, o registrador R10 é acrescido de 1 ou 2 conforme a operação seja tipo.b/.w Antes Depois R10: R11: 0xC01E 0x0208 C024 C022 C020 C01E C01C C01A 020A xA002 0x4567 0x1234 0x0C05 0x025C 0x1BC0 0x3001 0x015A C024 C022 C020 C01E C01C C01A 020A xA002 0x4567 0x1234 0x0C05 0x025C 0x1234 0x3001 0x015A R10: R11: 0xC020 0x0208
35 Modo de Endereçamento Imediato MOV.W #0x6789, &0x0210 mover o valor 0x6789 para o endereço de memória 0x0210. Antes Depois E 020C 020A x1506 0x1B50 0xFFC7 0x0201 0x025C 0x1BC0 0x4567 0x E 020C 020A x1506 0x1B50 0xFFC7 0x6789 0x025C 0x1BC0 0x4567 0x1234
36 Instruções nativas do MSP430 MOV[.W/.B] src, dst (move source to destination) src dst Descrição: o operando de origem é movido para o operando de destino. O operando de origem não é modificado. Bits do Registrador de Estado afetados: nenhum Exemplo: MOV.B #0x47, &P2OUT MOV.B &P1IN, R12 0(R15)
37 Instruções nativas do MSP430 JMP label (Jump unconditionally) desvia para label Descrição: é executado um desvio incondicional para o endereço(label) especificado. Bits do Registrador de Estado afetados: nenhum Exemplo: JMP label
38 Instruções nativas do MSP430 ADD[.W/.B] src, dst (Add source to destination) src + dst dst Descrição: o operando de origem é somado ao operando de destino e o resultado fica armazenado no operando de destino. O operando de origem não é modificado. Bits do Registrador de Estado afetados: N = 1 se o resultado for negativo N = 0 se o resultado for positivo Z = 1 se o resultado for zero Z = 0 se o resultado for diferente de zero C = 1 se houve a ocorrência de carry na operação C = 0 se não houve a ocorrência de carry na operação V = 1 se ocorreu um estouro(overflow) V = 0 se não ocorreu estouro Exemplo: ADD.W #1234, R6 ADD.W ADD.W R6, R13 R13, soma
39 Instruções nativas do MSP430 ADDC[.W/.B] src, dst (Add source and carry to destination) src + dst + C dst Descrição: o operando de origem mais o bit de Carry são somados ao operando de destino e o resultado fica armazenado no operando de destino. O operando de origem não é modificado. Bits do Registrador de Estado afetados: N, Z, C, V Exemplo: ADDC.B #45, R6 ADDC.W R5, R10 soma
40 Instruções nativas do MSP430 DADD[.W/.B] src, dst (Source and carry added decimally to destination) src + dst + C dest Descrição: o operando de origem mais o bit de Carry são somados ao operando de destino e o resultado fica armazenado no operando de destino. A operação é feita em BCD. O operando de origem não é modificado. Bits do Registrador de Estado afetados: N, Z, C Exemplo: DADD.W #0x1234, R5 20(R8) DADD.B #0x08, R7
41 Instruções nativas do MSP430 BIC[.W/.B] src, dst (Clear bits in destination).not. src.and. dst dst Descrição: é realizada uma operação lógica AND entre o complemento do operando de origem e o operando de destino e o resultado fica armazenado no operando de destino. O operando de origem não é modificado. Bits do Registrador de Estado afetados: nenhum Exemplo: BIC.W #0x040F, R5 BIC.W R8, 20(R12) &P1OUT
42 Instruções nativas do MSP430 AND[.W/.B] src, dst (source AND destination) src.and. dst dst Descrição: é realizada uma operação lógica AND entre os operandos e o resultado fica armazenado no operando de destino. O operando de origem não é modificado. Bits do Registrador de Estado afetados: N, Z, C, V Exemplo: AND.B #5A, R5 AND.W R8, 20(R12) &P1OUT
43 Instruções nativas do MSP430 BIS[.W/.B] src, dst (Set bits in destination) src.or. dst dst Descrição: é realizada uma operação lógica OR entre o operando de origem e o operando de destino e o resultado fica armazenado no operando de destino. O operando de origem não é modificado. Bits do Registrador de Estado afetados: nenhum Exemplo: BIS.W #0x0F15, R5 BIS.W R10, 40(R15) BIS.B #0x20, &P1OUT
44 Instruções nativas do MSP430 BIT[.W/.B] src, dst (Test bits in destination) src.and. dst Descrição: é realizada uma operação lógica AND entre o operando de origem e o operando de destino. O resultado afeta somente os flags do Registrador de Estado. Nenhum dos operandos é modificado. Bits do Registrador de Estado afetados: N, Z, C, V Exemplo: BIT.W #0x0F00, R5 10(R15) BIT.B #0x08, &P1IN
45 Instruções nativas do MSP430 CALL dst (Call subroutine) dst tmp SP 2 SP tmp PC Empilha o endereço de retorno Coloca no PC o endereço de desvio Descrição: uma chamada a sub-rotina pode ser feita para qualquer endereço dentro dos 64kB do address space. Qualquer modo de endereçamento pode ser utilizado. Bits do Registrador de Estado afetados: nenhum Exemplo: CALL #calcular CALL 40(R5)
46 Instruções nativas do MSP430 CMP[.W/.B] src, dst (Compare source and destination) dst src Descrição: o operando de origem é subtraído do operando de destino. O resultado afeta somente os flags do Registrador de Estado. Nenhum dos operandos é modificado. Bits do Registrador de Estado afetados: N, Z, C, V Exemplo: CMP.W #0x1234, R5 10(R15) CMP.B #0x08, &P1IN
47 Instruções nativas do MSP430 JC label (Jump if carry set) JHS label (Jump if higher or same) desvia se Carry = 1 Descrição: o estado do bit de Carry verificado. Se C = 1, desvia para o endereço (label) especificado. Se C = 0, a instrução seguinte ao JC é executada. Bits do Registrador de Estado afetados: nenhum Exemplo: JC label JHS label
48 Instruções nativas do MSP430 JEQ JZ label label desvia se Z = 1 Descrição: o estado do bit de Zero(Z) é verificado. Se Z = 1, desvia para o endereço (label) especificado. Se Z = 0, a instrução seguinte é executada. Bits do Registrador de Estado afetados: nenhum Exemplo: JEQ label JZ label
49 Instruções nativas do MSP430 JGE label (Jump if greater or equal) desvia se (N.XOR. V) = 0 Descrição: os estados dos bits N e V são verificados. Se os dois bits forem iguais, ocorre o desvio para o endereço (label) especificado. Se os dois bits forem diferentes, a instrução seguinte é executada. Bits do Registrador de Estado afetados: nenhum Exemplo: JGE label
50 Instruções nativas do MSP430 JL label (Jump if less) desvia se (N.XOR. V) = 1 Descrição: os estados dos bits N e V são verificados. Se os dois bits forem diferentes, ocorre o desvio para o endereço (label) especificado. Se os dois bits forem iguais, a instrução seguinte é executada. Bits do Registrador de Estado afetados: nenhum Exemplo: JL label
51 Instruções nativas do MSP430 JN label (Jump if negative) se N = 1, desvia para label Descrição: se o bit N do Registrador de Estado estiver setado, é realizado um desvio para o endereço(label) especificado. Se o bit N estiver zerado, a instrução seguinte é executada. Bits do Registrador de Estado afetados: nenhum Exemplo: JN label
52 Instruções nativas do MSP430 JNC label (Jump if carry not set) JLO label (Jump if lower) se C = 0, desvia para label Descrição: se o bit C do Registrador de Estado estiver zerado, é realizado um desvio para o endereço(label) especificado. Se o bit C estiver setado, a instrução seguinte é executada. Bits do Registrador de Estado afetados: nenhum Exemplo: JNC label JLO label
53 Instruções nativas do MSP430 JNE label (Jump if not equal) JNZ label (Jump if not zero) se Z = 0, desvia para label Descrição: se o bit Z do Registrador de Estado estiver zerado, é realizado um desvio para o endereço(label) especificado. Se o bit Z estiver setado, a instrução seguinte é executada. Bits do Registrador de Estado afetados: nenhum Exemplo: JNE label JNZ label
54 Instruções nativas do MSP430 PUSH[.W/.B] src (Push word/byte onto stack) src Descrição: o Stack Pointer(SP) é decrementado por 2 e, após isso, o operando é movido para o endereço de memória RAM apontado pelo SP (TOS Topo da Pilha) Bits do Registrador de Estado afetados: nenhum Exemplo: PUSH.B #0x55 PUSH.W 30(R15)
55 Instruções nativas do MSP430 RETI TOS SR SP + 2 SP TOS PC SP + 2 SP (Return from Interrupt) Descrição: o Registrador de Estado(SR) que foi colocado na pilha no início da interrupção é restaurado e o Stack Pointer é incrementado por 2. O endereço de retorno é colocado no PC e o Stack Pointer é incrementado por 2. Bits do Registrador de Estado afetados: O Registrador de Estado é restaurado, com o valor do início da interrupção Exemplo: RETI
56 Instruções nativas do MSP430 RRA[.W/.B] dst (Rotate right arithmetically) MSB MSB, MSB MSB-1,... LSB+1 LSB, LSB C Descrição: o operando de destino é deslocado um bit para a direita. O bit mais significativo(msb) é mantido. O bit menos significativo vai para o Carry. Bits do Registrador de Estado afetados: N, Z, C, V Exemplo: RRA.B R10 RRA.W 70(R13)
57 Instruções nativas do MSP430 RRC[.W/.B] dst (Rotate right through carry) C MSB, MSB MSB-1,... LSB+1 LSB, LSB C Descrição: o operando de destino é deslocado um bit para a direita. O Carry vai para o bit mais significativo(msb) é mantido. O bit menos significativo vai para o Carry. Bits do Registrador de Estado afetados: N, Z, C, V Exemplo: RRC.B R10 RRC.W 70(R13)
58 Instruções nativas do MSP430 SUB[.W/.B] src, dst (Subtract source from destination) dst src dst Descrição: o operando de origem é subtraído do operando de destino e o resultado é armazenado no operando de destino.. O operando de origem não é modificado. Bits do Registrador de Estado afetados: N, Z, C, V Exemplo: SUB.B #23, R5 SUB.W R8, R12 20(R10)
59 Instruções nativas do MSP430 SUBC[.W/.B] src, dst (Subtract source and borrow/.not. carry from destination) SBB[.W/.B] src, dst dst +.NOT. src + C dst Descrição: o operando de origem é subtraído do operando de destino somando o complemento de 1 do operando de origem e o Carry. O resultado é armazenado no operando de destino. Bits do Registrador de Estado afetados: N, Z, C, V Exemplo: SUBC.B R9, R5 SUBC.W 0(R8), R12 20(R10)
60 Instruções nativas do MSP430 SWPB dst (Swap bytes) bits 15 a 8 bits 7 a 0 Descrição: os bytes mais significativo e menos significativo do operando de destino são trocados. Bits do Registrador de Estado afetados: nenhum Exemplo: SWPB R5 SWPB 60(R10)
61 Instruções nativas do MSP430 SXT dst (Extend Sign) bit 7 bit 8 bit 15 Descrição: o bit de sinal (bit 7) é replicado para os bits 8 a 15. Bits do Registrador de Estado afetados: N, Z, C, V Exemplo: SXT R7 SXT 30(R5)
62 Instruções nativas do MSP430 XOR[.W/.B] src, dst (Exclusive OR of source with destination) src.xor. dst dst Descrição: é realizada uma operação lógica XOR entre os operandos e o resultado fica armazenado no operando de destino. O operando de origem não é modificado. Bits do Registrador de Estado afetados: N, Z, C, V Exemplo: XOR.B #5A, R5 XOR.W R8, 20(R12) &P1OUT
63 Instruções emuladas do MSP430 ADC[.W/.B] dst (Add carry to destination) dst + C dst Emulação: ADDC.W #0, dst 0 + C + dst dst Descrição: o Carry é somado ao operando de destino. BR/BRANCH dst (Branch to destination) dst PC Emulação: MOV.W dst, PC Descrição: é realizado um desvio incondicional para o endereço especificado.
64 Instruções emuladas do MSP430 CLR[.W/.B] dst (Clear destination) 0 dst Emulação: MOV[.W/.B] #0, dst 0 dst Descrição: o operando de destino é zerado. CLRC (Clear Carry bit) 0 C Emulação: BIC.W #0x0001, SR Descrição: o bit de Carry no Registrador de Estado é zerado.
65 Instruções emuladas do MSP430 CLRN (Clear negative bit) 0 N Emulação: BIC.W #0x0004, SR Descrição: o bit de negativo no Registrador de Estado(N) é zerado. CLRZ (Clear Zero bit) 0 Z Emulação: BIC.W #0x0002, SR Descrição: o bit de Zero no Registrador de Estado é zerado.
66 Instruções emuladas do MSP430 DADC[.W/.B] dst (Add carry decimally to destination) C + dst dest (BCD) Emulação: DADD[.W/,B] #0, dst Descrição: o bit de Carry é somado ao operando de destino, em BCD. DEC[.W/.B] dst (Decrement destination) dst - 1 dst Emulação: SUB[.W/.B] #1, dst Descrição: o operando de destino é decrementado em 1.
67 Instruções emuladas do MSP430 DECD[.W/.B] dst (Double-decrement destination) dst 2 dest Emulação: SUB[.W/.B] #2, dst Descrição: o operando de destino é decrementado em 2. DINT (Disable general interrupts) 0 GIE Emulação: BIC.W #0x0008, SR Descrição: o bit de Habilitação Geral de Interrupções(GIE), no Registrador de Estado é zerado.
68 Instruções emuladas do MSP430 EINT (Enable general interrupts) 1 GIE Emulação: BIS.W #0x0008, SR Descrição: o bit de Habilitação Geral de Interrupções(GIE), no Registrador de Estado é setado. INC[.W/.B] dst (Increment destination) dst + 1 dst Emulação: ADD[.W/.B] #1, dst Descrição: o operando de destino é incrementado em 1.
69 Instruções emuladas do MSP430 INCD[.W/.B] dst (Double-increment destination) dst + 2 dest Emulação: ADD[.W/.B] #2, dst Descrição: o operando de destino é incrementado em 2. INV[.W/.B] dst (Invert destination).not. dst dst Emulação: XOR.W #0xFFFF, dst XOR.B #0xFF, dst Descrição: os bits do operando de destino são complementados.
70 Instruções emuladas do MSP430 NOP (No operation) nenhuma Emulação: MOV.W R3, R3 Descrição: nenhuma operação é executada, porém é utilizado um ciclo de máquina. POP[.W/.B] dst (Pop word/byte from stack to dst SP + 2 SP Emulação: dst Descrição: o conteúdo do endereço apontado pelo Stack Pointer(TOS) é movido para o operando de destino.
71 Instruções emuladas do MSP430 RET (Return from PC SP + 2 SP Emulação: PC Descrição: o endereço de retorno, colocado na pilha pela instrução CALL é movido para o PC. O programa continua a execução na instrução seguinte à instrução CALL. RLA[.W/.B] dst (Rotate left arithmetically) C MSB MSB-1 LSB+1 LSB 0 Emulação: ADD[.W/.B] dst, dst Descrição: o operando de destino é deslocado um bit para a esquerda. O MSB vai para o Carry e o LSB é preenchido com zero.
72 Instruções emuladas do MSP430 RLC[.W/.B] dst (Rotate left through carry) C MSB MSB-1 LSB+1 LSB C Emulação: ADDC[.W/.B] dst, dst Descrição: o operando de destino é deslocado um bit para a esquerda. O Carry vai para o LSB e o MSB vai para o Carry. SBC[.W/.B] dst (Subtract borrow from destination) dst + 0FFFFh + C dst Emulação: SUBC[.W/.B] #0, dst Descrição: o operando de destino é somado ao Carry menos 1.
73 Instruções emuladas do MSP430 SETC[.W/.B] (Set Carry bit) 1 C Emulação: BIS #1, SR Descrição: O bit de Carry é setado. SETN (Set Negative bit) 1 N Emulação: BIS #4, SR Descrição: o bit de Negativo é setado.
EL08D - MICROCONTROLADORES
Curso Técnico de Nível Médio Integrado Eletrônica - 8o Período Disciplina de Microcontroladores 2 (EL08D) 1º Sem 2016 Professor Gabriel Kovalhuk Email: kovalhuk@utfpr.edu.br Página pessoal: http://paginapessoal.utfpr.edu.br/kovalhuk
Prof. Gabriel Kovalhuk
Curso Técnico de Nível Médio Integrado Eletrônica - 8º Período Disciplina de Microcontroladores 2 (EL08D) 1º Sem 2016 Professor Gabriel Kovalhuk Email: kovalhuk@utfpr.edu.br Página pessoal: http://paginapessoal.utfpr.edu.br/kovalhuk
MICROCONTROLADORES 2 EL08D - TURMA M12
MICROCONTROLADORES 2 EL08D - TURMA M12 SISTEMA DE RESET E SISTEMA DE CLOCK Prof. Gabriel Kovalhuk E-mail: Kovalhuk@utfpr.edu.br Site: http://pessoal.utfpr.edu.br/kovalhuk MSP430 SISTEMAS DE RESET E SISTEMAS
SEL 0415 INTROD. À ORGANIZAÇÃO DE COMPUTADORES
SEL 0415 Aula 11 Microcontrolador 8051 Parte 3 SEL 0415 INTROD. À ORGANIZAÇÃO DE COMPUTADORES Prof. Dr. Marcelo A. C. Vieira SEL 415 INTERRUPÇÃO Estrutura de Interrupção do 8051 n 5 Fontes [ 2 Externas
Conjunto de Instruções do 8051
Apêndice B Conjunto de Instruções do 8051 A.G. e E.T.M. / 2001 (revisão) O 8051 apresenta 111 tipos de instruções, sendo 49 de um byte, 45 de dois bytes e 17 de três bytes. Levando-se em contas as variações
Sistemas Microprocessados
Sistemas Microprocessados satoutfpredubr http://pessoal.utfpr.edu.br/sato/ A satoutfpredubr Sobre o material Essas transparências foram baseadas no manual do ATmega8 da Atmel,
Professor: Dr. Rogério Rodrigues de Vargas.
UNIVERSIDADE ESTADUAL DE SANTA CRUZ DEPARTAMENTO DE CIÊNCIAS EXATAS E TECNOLÓGICAS Bacharelado em Ciência da Computação Software Básico Linguagem de Programação Assembly: Uma introdução no Linux/i386 (AT&T)
Microprocessadores I ELE Aula 7 Conjunto de Instruções do Microprocessador 8085 Desvios
Microprocessadores I ELE 1078 Aula 7 Conjunto de Instruções do Microprocessador 8085 Desvios Grupos de Instruções do 8085 As instruções no 8085 são distribuídas em 5 grupos: 1. Grupo de transferência da
Interrupção. Prof. Adilson Gonzaga
Interrupção Prof. Adilson Gonzaga Estrutura de Programação Assembly Programa Principal Chamada de Sub-rotina1 Programa Principal Chamada de Sub-rotina2 Sub-rotina1 Subrotina2 Programa Principal Chamada
Microprocessadores I ELE Conjunto de Instruções do Microprocessador 8085 Aula 9 - PILHA E SUBROTINAS -
Microprocessadores I ELE 1078 Conjunto de Instruções do Microprocessador 8085 Aula 9 - PILHA E SUBROTINAS - 9.1 - Grupos de Instruções As instruções no 8085 são distribuídas em 5 grupos: 1. Grupo de transferência
MSP430 - Arquitertura
Curso Técnico de Nível Médio Integrado Eletrônica - 8o Período Disciplina de Microcontroladores 2 (EL08D) Professor Gabriel Kovalhuk Email: kovalhuk@utfpr.edu.br Página pessoal: http://paginapessoal.utfpr.edu.br/kovalhuk
Prof. Adilson Gonzaga
Microprocessadores são Máquinas de Estado Seqüenciais Síncronas que operam mediante a execução de uma seqüência de códigos binários armazenados em memória. Prof. Adilson Gonzaga 1 As ordens ou comandos
CONJUNTO DE INSTRUÇÕES
CONJUNTO DE INSTRUÇÕES Rn - Registrador R0 R7 do banco de registradores selecionado. direto - 8-bits de endereço da posição da RAM de dados Podem ser referentes tanto à RAM interna (0 7F) como ao espaço
Prof. Adilson Gonzaga
Prof. Adilson Gonzaga Temporização da CPU Todos os Microcontroladores da família MCS-51 têm um oscilador interno. Para uso deste oscilador deve-se conectar um cristal entre os pinos Xtal1 e Xtal2 da CPU.
Sistema Digitais. Bacharelado de Informática UEM DIN - Prof. Elvio v. 17a
5197 - Sistema Digitais Bacharelado de Informática UEM DIN - Prof. Elvio v. 17a Roteiro A Família AVR Introdução ao ATmega328 Características Gerais Memórias Família AVR AVR = Advanced Virtual RISC Fundadores
2.5 - Instruções Lógicas do ULA
2.5 - Instruções Lógicas do 8085 - ULA Todas as operações lógicas e aritméticas em qualquer microprocessador são realizadas em uma unidade dedicada denominada Unidade Lógica e Aritmética (ULA). Para auxiliar
Sistemas Embutidos Prática. Prof. Marcos Augusto Menezes DCC/ /UFMG
Sistemas Embutidos Prática Prof. Marcos Augusto Menezes Vieira mmvieira@dcc.ufmg.br DCC/ /UFMG Arquivos IAR http://www.dcc.ufmg.br/~mmvieira/se/slac050ag.zip Arquivos dos Projetos http://www.dcc.ufmg.br/~mmvieira/se/praticas.zip
7. PROGRAMANDO O MICROCONTROLADOR. Microcontroladores - Prof: Demantova
7. PROGRAMANDO O MICROCONTROLADOR 1 7. PROGRAMANDO O MICROCONTROLADOR: Hardware parte física do circuito eletrônico CPU onde está localizado o microcontrolador. Dentro do microcontrolador existe um conjunto
Microcontrolador 8051
Microcontrolador 8051 Inicialmente fabricado pela INTEL, atualmente fabricado por várias empresas; Possui uma grande variedade de dispositivos, com diversas características, porém compatíveis em software;
Temporização Interrupções. Prof: Evandro L. L. Rodrigues. Rotinas de Atraso
Temporização Interrupções Prof: Evandro L. L. Rodrigues Rotinas de Atraso Temporização da CPU Todos os Microcontroladores da família MCS-51 têm um oscilador interno. Para uso deste oscilador deve-se conectar
Introdução ao PIC. Guilherme Luiz Moritz 1. 6 de novembro de DAELT - Universidade Tecnológica Federal do Paraná
Guilherme Luiz Moritz 1 1 DAELT - Universidade Tecnológica Federal do Paraná 6 de novembro de 2013 Características do PIC Arquitetura Harvard RISC, 35 instruções 8 a 84 pinos Mais de 180 modelos Vários
Tópicos: 1 - Modos de endereçamento do Pilha e instruções de Pilha. 3 - Instruções que usam pilha: - instrução CALL - instrução RET
Tópicos: 1 - Modos de endereçamento do 8051 2 - Pilha e instruções de Pilha 3 - Instruções que usam pilha: - instrução CALL - instrução RET 4 - Interrupção 1 - Modos de Endereçamento do 8051 Os modos de
Microarquitetura IJVM. Datapath mic-1. Função dos Registradores. mic-1
Microarquitetura IJVM mic-1 Datapath mic-1 Este é mais um exemplo de datapath para microarquitetura IJVM desenvolvida por Andew Tanenbaum Parte da CPU que contém a ALU, suas entradas e saídas 2 Função
Símbolos e abreviaturas utilizadas na descrição das instruções
Símbolos e abreviaturas utilizadas na descrição das instruções acumulador registo A addr endereço de 16 bits data quantidade de 8 bits data 16 quantidade de 16 bits byte 2 segundo byte da instrução byte
Cesar - características CESAR. Registradores. Modos de endereçamento. Endereçamento de memória. Modo Registrador. (As bases da civilização atual)
Cesar - características CESAR (As bases da civilização atual) Largura de dados e s de 16 bits Dados representados em complemento de dois 8 de uso geral de 16 bits (R-R) 1 registrador de estado com 4 códigos
Aula 10 Microcontrolador Intel 8051 Parte 2
SEL 0415 Aula 10 Microcontrolador Intel 8051 Parte 2 SEL 0415 INTROD À ORGANIZAÇÃO DE COMPUTADORES Prof Dr Marcelo A C Vieira SEL 415 Mapeamento das memórias internas Memória de dados interna (RAM) n 8051
Neander - características
NEANDER x RAMSES (Ou porque da necessidade de upgrade :-) Texto original: ftp://ftp.inf.ufrgs.br/pub/inf108/ramses-instrucoes.ppt Neander - características Largura de dados e endereços de 8 bits Dados
Curso de Microcontroladores PIC 16F84A
Curso de Microcontroladores PIC 16F84A João Neto Caetano Jnetcaetano@hotmail.com Marciel Gonçalves Azevedo Marcielgazevedo@hotmail.com Célio Rodrigues Pinto Treinamentos em geral, suporte a alunos universitários
SEL-614 MICROPROCESSADORES E APLICAÇÕES. Adilson Gonzaga
SEL-614 MICROPROCESSADORES E APLICAÇÕES Prof: Adilson Gonzaga HISTÓRICO Microprocessador Circuito integrado ( chip ) capaz de executar instruções. 1971 Intel Corporation lançou no mercado o microprocessador
Assembly Sintaxe do Assembly. Instruções que afectam Flags. Aplicações de Microprocessadores 2006/2007
Assembly 8051 Aplicações de Microprocessadores 2006/2007 Sintaxe do Assembly [Label] Op-code [Operando] [Comentário] tabela: movc a,@a+dptr ; vai à tabela buscar o seu correspondente ASCII 2 2 Instruções
Sistemas Microprocessados. sato<at>utfpr<dot>edu<dot>br
Sistemas Microprocessados satoutfpredubr http://pessoal.utfpr.edu.br/sato/ Assembly do 805 satoutfpredubr Sobre o material Essas transparências foram baseadas em materiais elaborados
Microcontroladores 2 EL08D Turma M12
Microcontroladores 2 EL08D Turma M12 Prof. Gabriel Kovalhuk E-mail: kovalhuk@utfpr.edu.br Site: http://paginapessoal.utfpr.edu.br/kovalhuk TEMPORIZADORES / CONTADORES NO MSP430 Este material foi retirado
Temporização da CPU SEL-433 APLICAÇÕES DE MICROPROCESSADORES I. Ciclos de Máquina. Ciclos de Máquina. Temporização Interrupções Rotinas de Atraso
SEL-433 APLICAÇÕES DE MICROPROCESSADORES I Temporização da CPU Todos os Microcontroladores da família MCS-51 têm um oscilador interno. Para uso deste oscilador deve-se conectar um cristal entre os pinos
29/03/2017. Temporização da CPU SEL-433 APLICAÇÕES DE MICROPROCESSADORES I. Ciclos de Máquina. Ciclos de Máquina
SEL-433 APLICAÇÕES DE MICROPROCESSADORES I Temporização da CPU Todos os Microcontroladores da família MCS-5 têm um oscilador interno. Para uso deste oscilador deve-se conectar um cristal entre os pinos
Organização e Projeto de Computadores 3: Modo de Endereçamento, Sub-Rotina, Instruções de E/S, Interrupção
Organização e Projeto de Computadores 3: Modo de Endereçamento, Sub-Rotina, Instruções de E/S, Interrupção 1 Modo de Endereçamento Determina como o operando é obtido durante a execução de uma ins trução.
Arquitetura de Computadores Conceitos Fundamentais. Graduação em Engenharia Elétrica - UFPR Prof. Carlos Marcelo Pedroso 2016
Arquitetura de Computadores Conceitos Fundamentais Graduação em Engenharia Elétrica - UFPR Prof. Carlos Marcelo Pedroso 2016 Um Computador Muito Simples CPU UC ULA A B PC IR FLAGS SP CS DS SS... 0A 09
ELE Microprocessadores I
ELE 1078 - Microprocessadores I AULA 13 Conjunto de Instruções do Microprocessador 8085A - Entrada e Saída (I/O) - 13.1 - Grupos de Instruções As instruções no 8085 são distribuídas em 5 grupos: Grupo
PRÁTICAS. Microcontroladores: (LT36D) Prof: DaLuz. Práticas - 2º sem Microcontroladores LT36D - 26/04/ :56 1/16
PRÁTICAS Microcontroladores: (LT36D) Prof: DaLuz 1/16 Laboratório 01: - Laboratórios Instrução / diretiva (ORG e END), exemplos: ORG 0000h posiciona o código na linha 0000h da EPROM ORG 0100h posiciona
Data types. In C: char. short. int/long. double/long long AC 2017/2018. Pedro Serra / Sérgio Ferreira
x86 Data types In C: char short int/long double/long long 2 O stack O stack cresce em direção a endereços de memória menores Instruções fundamentais: push, pop 0xFF90 0xA331 0xFF8E 0xFF8C 0xFF8A 0x4712
1.1 Noções básicas sobre interrupções em Microcontroladores
Capítulo 1 Interrupções 1.1 Noções básicas sobre interrupções em Microcontroladores PIC Interrupções é obrigação em uma programação profissional. Quando um evento ocorrer, uma bandeira de interrupção será
Sistemas de Microprocessadores I Lista de exercícios (questões de provas de semestre anteriores)
Sistemas de Microprocessadores I Lista de exercícios (questões de provas de semestre anteriores) 1 - Fazendo uma comparação entre a arquitetura proposta por Von Neumann e a arquitetura de um microcomputador
Microcontrolador PIC 16F877
Microcontrolador PIC 16F877 Parte 1 Instruções de MOV, e PORT Microcontrolador PIC 16F877 Termos utilizados nas instruções: Campo f w ou W b k d Descrição registro entre 0 e 127 registro Work bit utilizado
Estrutura Básica de um Computador
SEL-0415 Introdução à Organização de Computadores Estrutura Básica de um Computador Aula 2 Prof. Dr. Marcelo Andrade da Costa Vieira INTRODUÇÃO n Organização Æ implementação do hardware, componentes, construção
Trabalhos Práticos Arquitetura de Computadores I Prof. Fabian Vargas
Trabalhos Práticos Arquitetura de Computadores I Prof. Fabian Vargas Material a ser utilizado: Kits de desenvolvimento de sistemas microprocessados para aplicações em DSP Texas DSK-TMS320C67xx. Apresentação
Microcontroladores 8051
Microcontroladores 8051 1. Microcontroladores Microcontrolador é o nome dado ao componente que incorpora em um só "chip" todos os elementos necessários a um microcomputador. Deve ter : CPU, Memória e Interfaces
No. de bits. O primeiro IBM PC foi construído com o 8088 (versão de 8 bits do 8086).
Cap2.1 2. Arquitetura do microprocessador 8086 2.1 A família Intel iapx86 (ou 80X86) Processador Co-proc. Ano de introdução No. de bits No. de transistores Velocidade (MHz) 4004-1971 4 2.205-8008 - 1972
EEL Microprocessadores
EEL7030 - Microprocessadores 8086 Primeiro (1980) da família do Pentium (80x86). Componente com arquitetura similar (8088) utilizado no primeiro IBM PC. Cada descendente executa código dos antepassados
Microcontrolador Assembly UTFPR / DAELN Microcontroladores 1 Prof. Gabriel Kovalhuk
Assembly 8051 Num sistema microprocessado, geralmente, não existe um sistema operacional; O programa desenvolvido pelo programador deve cuidar tanto da lógica do programa, bem como da configuração e acesso
Aula 4 Conjunto de Instruções do Microprocessador 8085 Grupo Aritmético
Microprocessadores I Aula 4 Conjunto de Instruções do Microprocessador 8085 Grupo Aritmético 4.1 - Grupos de Instruções As instruções no 8085 são distribuídas em 5 grupos: 1. Grupo de transferência da
ESTRUTURA E FUNCIONAMENTO DO COMPUTADOR
ESTRUTURA E FUNCIONAMENTO DO COMPUTADOR Prof. Filippo Valiante Filho http://prof.valiante.info Estrutura do Computador Computador CPU (Central Processing Unit) Sistema de Armazenamento (Memórias) Sistema
Aula 8 Microcontrolador 8051
SEL 0415 Departamento de Engenharia Elétrica e de Computação EESC-USP SEL 0415 Introdução à Organização de Computadores Aula 8 Microcontrolador 8051 Profa. Luiza Maria Romeiro Codá Autores: Prof. Dr. Marcelo
Sistemas Processadores e Periféricos Aula 2 - Revisão
Sistemas Processadores e Periféricos Aula 2 - Revisão Prof. Frank Sill Torres DELT Escola de Engenharia UFMG Adaptado a partir dos Slides de Organização de Computadores 2006/02 do professor Leandro Galvão
Aula 8 Microcontrolador 8051
SEL 0415 Departamento de Engenharia Elétrica e de Computação EESC-USP SEL 0415 Introdução à Organização de Computadores Aula 8 Microcontrolador 8051 Profa Luiza Maria Romeiro Codá Autores: Prof Dr Marcelo
1. Instruções de Desvio
1. Instruções de Desvio Def.: Estas instruções permitem que, de forma condicional ou não, seja feito um desvio na seqüência de uma programa. O desvio é efetuado fazendo com que o valor carregado no PC
Arquitetura de Computadores. Prof. João Bosco Jr.
Arquitetura de Computadores Prof. João Bosco Jr. Aula 4 (nivel ISA Arquitetura PIC) Características do Controlador 16F628A 18 Pinos Até 20 Mhz (5M instruções por segundo) PortA e PortB 10 Interrupções
Aula 14 Funcionamento de Processadores (Visão específica)
Aula 14 Funcionamento de Processadores (Visão específica) Com base nas aulas de Prof. José Delgado (autorizado) Anderson L. S. Moreira anderson.moreira@recife.ifpe.edu.br http://dase.ifpe.edu.br/~alsm
Programação de Microprocessadores. Programação de Microprocessadores SEL-433 APLICAÇÕES DE MICROPROCESSADORES I
SEL-433 APLICAÇÕES DE MICROPROCESSADORES I Programação de Microprocessadores Microprocessadores são Máquinas de Estado Seqüenciais Síncronas que operam mediante a execução de uma seqüência de códigos binários
As 5 partes fundamentais. Linguagem de Programação Pinagem Características Elétricas Ambiente de Desenvolvimento Integrado - IDE
SEL-433 APLICAÇÕES DE MICROPROCESSADORES I Como conhecer/estudar um Microprocessador/Microcontrolador As 5 partes fundamentais Programação de Microprocessadores Prof: Evandro L. L. Rodrigues Arquitetura
Processamento e Linguagem de Máquina. O processador Programação Assembler (Linguagem de Máquina)
Processamento e Linguagem de Máquina O processador Programação Assembler (Linguagem de Máquina) O PROCESSADOR Literatura Tanenbaum e Stallings Abordagens similares mas divergentes Foco maior em funcionamento
Linguagem de Montagem Assembly
Linguagem de Montagem Assembly Especificações O programa em Assembly Fica sobre a camada do Sistema Operacional Efetua chamadas ao Sistema Operacional O montador Chama-se Assembler Traduz a linguagem de
TRABALHO PROCESSADOR H8
TRABALHO PROCESSADOR H8 abel ferreira 05132002 eberle rambo- 05132118 Monografia abel ferreira 05132002 eberle rambo - 05132118 Prefácio. A família do micro processador h8 inclui diversas versões. Nesse
Prof. Adilson Gonzaga
Prof. Adilson Gonzaga Memória de Dados Interna (RAM Interna) O endereçamento é feito com 8 bits Chips com 128 bytes de RAM não possuem a área I (Apenas Endereçamento Indireto) Memória de Dados Interna
SSC510 Arquitetura de Computadores 1ª AULA
SSC510 Arquitetura de Computadores 1ª AULA REVISÃO DE ORGANIZAÇÃO DE COMPUTADORES Arquitetura X Organização Arquitetura - Atributos de um Sistema Computacional como visto pelo programador, isto é a estrutura
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 04: ASPECTO BÁSICO DO PROJETO DE UMA CPU SIMPLES E LINGUAGEM DE MONTAGEM Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia
Notas de Aula Guilherme Sipahi Arquitetura de Computadores
Notas de Aula Guilherme Sipahi Arquitetura de Computadores Conjunto de Instruções: Elementos de uma instrução: Operation Code (Opcode): especifica a operação a ser executada. Source operand reference:
Organização de Computadores
Organização de Computadores Aula 25 Conjunto de Instruções: Características e Funções Rodrigo Hausen 10 de novembro de 2011 http://cuco.pro.br/ach2034 1/92 Apresentação 1. Bases Teóricas 2. Organização
PSI3441 Arquitetura de Sistemas Embarcados
PSI31 Arquitetura de Sistemas Embarcados - Arquitetura do µprocessador Escola Politécnica da Universidade de São Paulo Prof. Gustavo Rehder grehder@lme.usp.br Prof. Sergio Takeo kofuji@usp.br Prof. Antonio
Organização e Projeto de Computadores
Organização e Projeto de Computadores 1 Processamento no Computador Operações principais: leitura de instrução do programa leitura de dados processamento: execução da instrução escrita de resultado entrada/saída
Descrição de uma Unidade Processadora Discreta Microprogramável
Descrição de uma Unidade Processadora Discreta Microprogramável EDNA MIE KANAZAWA WILIAN SOARES LACERDA UFLA Universidade Federal de Lavras DCC Departamento de Ciência da Computação Cx. Postal 37 CEP 37.200-000
Computador Cleópatra
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES Computador Cleópatra Assembly Alexandre Amory Edson Moreno 2 / 36 Na Aula Anterior Vimos a máquina de estados da Cleo 3 / 36 Arquitetura Cleópatra - Von Neumann
Sistemas Microcontrolados
Sistemas Microcontrolados Aula 3: Microcontroladores PIC e Programação Assembly Marco Jose da Silva mdasilva@utfpr.edu.br Especificação de um uc Qual escolher? Capacidade de processamento 8 bits (16 bits
LISTA 02 CONJUNTO DE INSTRUÇÕES - GABARITO
LISTA 02 CONJUNTO DE INSTRUÇÕES - GABARITO 1) Identifique na instrução em linguagem de máquina armazenada na memória, os elementos da instrução 2) Na figura acima, qual a quantidade de código de operações
A arquitectura IA32. A arquitectura de um processador é caracterizada pelo conjunto de atributos que são visíveis ao programador.
A arquitectura IA32 A arquitectura de um processador é caracterizada pelo conjunto de atributos que são visíveis ao programador. Tamanho da palavra Número de registos visíveis Número de operandos Endereçamento
NEANDERWIN. Algumas características do processador Neander são:
NEANDERWIN O NeanderWin é um simulador da máquina Neander, definida no livro do Raul F. Weber (UFRGS), Fundamentos de Arquitetura de Computadores, Ed. Sagra Luzzatto. A máquina original foi estendida aqui
Sistemas Microprocessados
Sistemas Microprocessados satoutfpredubr http://pessoal.utfpr.edu.br/sato/ Assembly do ATmega8 satoutfpredubr Sobre o material Essas transparências foram baseadas no manual
Ministério da Educação UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ. Aula 2. Cibele Lemos Freire Viginoski
Aula 2 Cibele Lemos Freire Viginoski Registradores R0-R7: disponíveis para todas as instruções R8-R15: disponíveis para algumas instruções R13: SP (Stack Pointer) Pilha obrigatoriamente LIFO decrescente
UTFPR Departamento Acadêmico de Eletrônica Curso Técnico em Eletrônica Microcontroladores 1 - Prof. Cion nov/2010 (atualizado em jul 2015)
UTFPR Departamento Acadêmico de Eletrônica Curso Técnico em Eletrônica Microcontroladores 1 - Prof. Cion nov/2010 (atualizado em jul 2015) Interrupção e Contadores/Temporizadores Este texto apresenta uma
Disciplina: Arquitetura de Computadores
Disciplina: Arquitetura de Computadores Estrutura e Funcionamento da CPU Prof a. Carla Katarina de Monteiro Marques UERN Introdução Responsável por: Processamento e execução de programas armazenados na
AJProença, Sistemas de Computação, UMinho, 2017/18 1. Componentes (físicos) a analisar: a unidade de processamento / o processador:
Introdução aos Sistemas de Computação (4) Estrutura do tema ISC 1. Representação de informação num computador 2. Organização e estrutura interna dum computador 3. Execução de programas num computador 4.
SEL PROGRAMAÇÃO EM C
SEL0337 1 8051 PROGRAMAÇÃO EM C LINGUAGEM C Linguagem que pode ser utilizada atualmente na programação de quase todos os microcontroladores; Há microcontroladores com instruções otimizadas para programação
Microcontrolador 8051:
Microcontrolador 8051: Fonte: CORRADI 2009 O Microcontrolador 8051: Começou a ser produzido no início da década de 80, pela Intel; Hoje é fabricado por várias empresas e com muitas variações; Atualmente,
Arquitetura e Organização de Computadores
Arquitetura e Organização de Computadores Conjunto de Instruções Givanaldo Rocha de Souza http://docente.ifrn.edu.br/givanaldorocha givanaldo.rocha@ifrn.edu.br Material do prof. Sílvio Fernandes - UFERSA
Universidade de São Paulo
Conjunto Instruções ARM Universidade de São Paulo Sistemas Embarcados Jorge Luiz e Silva ARM versões. ARM Linguagem Assembly. ARM modelo de programação. ARM organização de memória. ARM operação com dados.
Jadsonlee da Silva Sá
Introdução aos Sistemas Microcontrolados Jadsonlee da Silva Sá Jadsonlee.sa@univasf.edu.br www.univasf.edu.br/~jadsonlee.sa Introdução aos Sistemas Microcontrolados Assembly, C, java,... Circuito Reset
PARTE II - CONJUNTO DE INSTRUÇÕES ARQUITETURA DE COMPUTADORES ANTONIO RAMOS DE CARVALHO JÚNIOR
PARTE II - CONJUNTO DE INSTRUÇÕES ARQUITETURA DE COMPUTADORES ANTONIO RAMOS DE CARVALHO JÚNIOR Introdução Instruções são representadas em linguagem de máquina (binário) E x i s t e m l i n g u a g e n
Arquitetura e Organização de Computadores
UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO DEPARTAMENTO DE CIÊNCIAS EXATAS E NATURAIS CURSO DE CIÊNCIA DA COMPUTAÇÃO Arquitetura e Organização de Computadores Conjunto de Instruções Prof. Sílvio Fernandes
Revisão: Modo Real, pt 2 Interrupções
Revisão: Modo Real, pt 2 Interrupções Interrupção Evento (interno ou externo) que faz o processador parar o programa em execução para tratar a interrupção Ex: ler o teclado, comunicação com os dispositivos
Microcontroladores PIC
Microcontroladores PIC Prof. Adilson Gonzaga 1 Arquitetura de Microcomputadores Arquitetura von Neumann: Há apenas um barramento (duto) de dados e um de endereço. As Instruções e os dados ocupam o mesmo
Arquitectura de Computadores
Nuno Cavaco Gomes Horta Universidade Técnica de Lisboa / Instituto Superior Técnico Sumário Introdução Unidade de Processamento Unidade de Controlo Conjunto de Instruções (CPU) Unidade de Entrada/Saída
14/3/2016. Prof. Evandro L. L. Rodrigues
SEL 433 APLICAÇÕES DE MICROPROCESSADORES I SEL-433 APLICAÇÕES DE MICROPROCESSADORES I Prof. Evandro L. L. Rodrigues Tópicos do curso Conceitos básicos - Aplicações e utilizações dos microcontroladores
Conjunto de Instruções e Modelos de Arquiteturas
Departamento de Engenharia Elétrica e de Computação EESC-USP SEL-0415 Introdução à Organização de Computadores Conjunto de Instruções e Modelos de Arquiteturas Aula 7 Prof. Marcelo Andrade da Costa Vieira
7. A pilha e subrotinas
Cap7.1 7. A pilha e subrotinas 7.1 Organização da Pilha (stack) Stack: estrutura de dados de uma dimensão organizada em algum trecho (segmento) da Memória; o primeiro item adicionado é o último a ser removido
A linguagem ASSEMBLY
A linguagem ASSEMBLY Assembly é uma linguagem de baixo nível, chamada freqüentemente de linguagem de montagem É uma linguagem considerada difícil, principalmente porque o programador precisa conhecer a
Organização de Computadores
Organização de Computadores Aula 25 Conjunto de Instruções: Modos de Endereçamento e Formatos Rodrigo Hausen 11 de novembro de 2011 http://cuco.pro.br/ach2034 1/26 Apresentação 1. Bases Teóricas 2. Organização
Solução Lista de Exercícios Processadores
Solução Lista de Exercícios Processadores Questão 1 A ULA é o dispositivo da CPU que executa operações tais como : Adição Subtração Multiplicação Divisão Incremento Decremento Operação lógica AND Operação
Microcontrolador PIC 16F877
Microcontrolador PIC 16F877 Parte 2 Instruções de ADD, SUB e DECF Instruções Aritméticas (ADD) : ADDLW k Descrição: Soma uma constante k é somada com W Operação: w = w + k Limites: 0 a 255 Nro de Ciclos:
MSP 430 Lab 04 Fontes de clock e configuração das entradas e saídas digitais
MSP 430 Lab 04 Fontes de clock e configuração das entradas e saídas digitais Teste com o sociloscópio Neste Lab iremos descrever os passos necessários para inicialização de duas fontes de clock da CPU
NOTAS DE AULA 06 MICROCONTROLADOR 8051
NOTAS DE AULA 06 MICROCONTROLADOR 8051 SUMÁRIO DO VOLUME NOTAS DE AULA 06 1 INTRODUÇÃO AOS MICROCONTROLADORES 2 PROGRAMANDO EM LINGUAGEM ASSEMBLY - 8051 3 INSTRUÇÕES: JUMPS, LOOPS E CALL 4 DESCRIÇÃO DOS
William Stallings Arquitetura e Organização de Computadores 8 a Edição
William Stallings Arquitetura e Organização de Computadores 8 a Edição Capítulo 11 Conjuntos de instruções: Modos de endereçamento e formatos slide 1 Diagrama do endereçamento imediato Instrução Opcode
SEL-433 APLICAÇÕES DE MICROPROCESSADORES I
SEL 433 APLICAÇÕES DE MICROPROCESSADORES I SEL-433 APLICAÇÕES DE MICROPROCESSADORES I Apresentação do curso Critério de avaliação Média final = 0.8 * MP + 0.2 * ME onde MP = (P1 + P2) / 2 e ME = Notas