ATMEL Corporation

Transcrição

ATMEL Corporation
Componentes:
ATMEL Corporation
•Empresa fundada em 1984.
Clarissa Cassales Marquezan
•memórias flash e EPROM.
Fábio Scharcanski de Faria
Lenon Scortegagna
•Produz, também, a família 8051 sob licença da Intel.
Milene Händel
•AVR é o primeiro projeto próprio.
Telmo Brugnara
•Projeto AVR foi adquirido em 1995. Inicialmente foi
desenvolvido por pesquisadores em Trondheim, Noruéga.
AVR - RISC 8 bits Microcontrolador
AVR - RISC 8 bits Microcontrolador
•Desenvolvidos para explorar vantagens da arquitetura RISC: clock mais
rápido, melhor performance, melhor otimização de compilação (número
reduzido de instruções)
•Os primeiros AVR foram comercializados em 1997.
•Concorrente dos 6805, 68HC11, 8051 e PIC.
•Conforme as necessidades da aplicação pode haver outros
modelos mais simples ou mais complexos.
•32 registradores de 8 bits.
•Todas instruções são register-to-register.
•Os modelos eram o 90S1200, ‘2313, ‘4414 e ‘8515.
•Redução das dependências de memória (cj regs e melhoria da
velocidade)
•Tiny (ATtiny): não suporta tipos de dados de 16 bits, nem
compatibilidade binária. Utilizado em brinquedos, sistemas
de controle, itens de consumo.
•Os AVR são CMOS de baixo consumo de energia.
•Mega (ATmega):
•Operações realizadas, em sua maioria, em um ciclo de clock. (busca de
operandos, execução de instruções e armazenamento de resultados.
•Alcançam aproximadamente 1 MIPS por MHz.
Arquitetura AT90S8515
Características Gerais do AT90S8515
Características Gerais do AT90S8515 (parte 2)
•Microcontrolador de 8 - bits baseado na Arquitetura ARV RISC.
• Utiliza Arquitetura de Harvard - memória e barramentos separados para
dados e programa.
•Timer/counters flexíveis, com modos de comparação.
• 32 registradores de trabalho de propósitos gerais, conectados diretamente
com a ALU.
• UART serial programável.
• Interrupções internas e externas.
• 8K bytes de In-System Programmable Flash, utilizada para armazenamento
de programas.
• Watchdog Timer programável com oscilador interno.
• 512 bytes de EEPROM
• Dois modos de Power-Saving selecionados por software
• 512 bytes de SRAM
• 32 linhas de I/O de propósitos gerais
• Uma porta serial SPI.
Diagrama de Bloco do AT90S8515
Pinagem
• VCC
•GND
•Port A (PA7..PA0)
•Port B (PB7..PB0)
•Port C (PC7..PC0)
•Port D (PD7..PD0)
•RESET
•XTAL1
•XTAL2
•ICP
•OC1B
•ALE
Características Gerais do AT90S8515 (parte 3)
Características Gerais do AT90S8515 (parte 4)
• PC (Program Counter) possui 12 bits, endereça a memória programável.
• Todas as instruções são palavras de 16 ou 32 bits.
• Memória de programa executada em dois estágios de pipeline.
• Enquanto uma instrução está sendo executada, o pre-fetch da próxima
instrução na memória de programas é realizado.
• Unidade de Interrupção possui registradores de controle no espaço de
I/O, com um bit de habilitação de interrupção no registrador de status.
• As interrupções possuem vetores de interrupção e tabelas de vetores de
interrupções separadas, localizadas no início da memória de programa.
• As diferentes interrupções possuem prioridade de acordo com a posição
do seu vetor de interrupção.(Os menor endereços dos vetores de
interrupção possuem maior prioridade)
Mapa de Memória
Banco de Registradores de Propósitos Gerais
Banco de Registradores de Propósitos Gerais (parte 2)
Banco de Registradores de Propósitos Gerais (parte 3)
• Registrador X, Registrador Y e Registrador Z
• Registradores de propósitos gerais possuem tempo de acesso de um ciclo de
relógio. (Durante um ciclo de relógio uma operação da ALU é executada)
• Instruções aritméticas e lógicas entre constantes e registradores (SUBI,
ANDI, etc) e a instrução LDI podem utilizar somente os registradores
pertencentes a segunda metade do Banco de Registradores (R16,..,R31).
• Operações entre registradores podem utilizar qualquer registrador do Banco
de Registradores.
• 6 dos 32 registradores podem ser usados como 3 registradores de 16 bits
utilizados para endereçamento indireto.
- São utilizados como endereços de ponteiros para o endereçamento
indireto da área dos dados (SRAM).
ALU - Arithmetic Logic Unit
Registrador de Status - SREG
• Está localizado na área de I/O (registradores de I/O).
• A ALU suporta operações aritméticas e lógicas entre registradores e entre
uma constante e um registrador.
• Opera em um ciclo de relógio.
• Opera diretamente ligada aos 32 registradores de propósitos gerais.
• Possui suas operações divididas em três principais categorias:
- aritméticas;
- lógicas;
- funções sobre bits.
- Bit 7 - I : Global Interrupt Enable = o bit I setado habilita interrupções. Quando o
bit I estiver zerado nenhuma interrupção será habilitada, independente das
configurações de habilitações individuais.
- Bit 6 - T: Bit Copy Storage = utilizado pelas instruções de load e store bits (BLD e
BST) como fonte e destino para o bit operado.
- Bit 5 - H: Half-Carry Flag = indica a ocorrência de um half-carry em alguma
operação aritmética.
Registador de Status - SREG (parte 2)
Stack Pointer - SP
• Possui 16 bits constituídos por dois registradores de 8 bits na área de I/O.
• Bit 4 – S: S = N⊕V = Bit sinal
• Bit 3 – V:Complemento de Dois do flag de Overflow
• Bit 2 – N: Flag negativo
• Bit 1 – Z: Flag zero
• Bit 0 – C: Flag de carry
O Registrador de Status não é automaticamente armazenado quando se entra ou
retorna de uma rotina de interrupção, isto deve ser visto por software.
• Antes de uma chamada de subrotina ser executada ou uma interrupção
habilitada o espaço da pilha na SRAM deve ser definido.
Conjunto de Registradores
• “GPRs” – Registradores de propósito geral (Geral Purpose Register),
32 registradores de 8 bits
Conjunto de Instruções
• 91 instruções pode ser executadas com o auxílio desses registradores.
(Operações Aritméticas/ de desvio)
• Somente modo de endereçamento direto para os GPRs e a ALU.
Instruções utilizam 1 ou 2 registradores
1o = fonte e destino
2o = 2o parâmetro/parte da instrução
Add R1, R2
Registrador STATUS
BIT
0
1
2
3
4
5
6
7
ID
C
Z
N
V
S
H
T
I
Descrição
Flag de Carry/Borrow
Flag de Zero
Flag de Negativo
Flag de Overflow
Flag de Sinal
Flag de Half Carry/Borrow
Bit Temporário
Interupções Globais Habilitadas
•
Zero Flag - Setado quando o resultado de alguma operação é Zero
•
Carry/Borrow Flag -Utilizado em operações de soma e subtração, juntamente com operações de
rotate e shift de bits.
•
Half Carry/Borrow Flag -Leva em consideração somente um nibble do registrador(EX. Se o resultado
da soma é maior do que 1 nibble este flag é ativado(set), senão é desativado(reset).
•
Temporary Bit - Utilizado para armazenar valores das instruções BST e BLD usadas para passar um
simples bit como parâmetro.
A=A+B
Introdução
•
•
Conjunto de instruções bem completo (121 instruções).
Cuidados na hora de programar
– Muitas instruções podem acessar somente os 16 GPRs significativos ou offsets, e
constates podem ser totalmente restringidas e não estar no alcance que você está
esperando.
– É importante ter conhecimentos dessas aplicações quando se estiver planejando
utilizar GPR valores de constantes que você usará nas estruturas de dados.
•
•
•
•
A maior parte das instruções é executada em somente um ciclo de clock.
É também importante ter o conhecimento sobre o número de ciclos das
instruções já que algumas podem ter variados (“CPSE” pode executar em 1,
ou 3 ciclos)
1200 – Modelo de baixo custo (contém somente um subconjunto das
instruções).
Programação fácil apesar dos detalhes.
•
•
•
•
Conjunto de Instruções :
subconjuntos
AVR Instruções de transferência
de dados
AVR Instruções de transferência de dados
AVR Instruções Lógicas e Aritméticas
AVR Instruções de Desvio
AVR Instruções Binárias e de Teste
• Grande número de instruções para esse
propósito
• Instruções implementadas para
programação em alto-nível
• “in” e “out”: instruções para registradores
de E/S
• “push” e “pop”: instruções para controle da
pilha
AVR Instruções Lógicas e
Aritméticas
• Facilidade para quem está habituado a
utilizar os microprocessares 8085 e 8086
• Nas Operações o primeiro parâmetro é o
fonte e destino e o segundo é o segundo
parâmetro
• (Add A, B => A = A + B)
AVR Instruções de Desvio
• Chamada para subrotina
• Instruções geralmente ocupam 2 ou 4 bytes.
• Intenções para o futuro (mercado de
microprocessadores)
• 12bits para deslocamento do program counter (+/2K).
• PC <- PC + offset
AVR Instruções Binárias e de
Teste
• Instruções que trabalham com o registrador de
STATUS.
• Alteram apenas uma parte dos registradores de
E/S. (Solução para o restante:fazer uma cópia para
um dos registradores GPRs, R16 ao R32)
• Instruções BST e BLD que permitem uma simples
transferência de bits entre registradores
Conjunto de Instruções :
subconjuntos
•
•
•
•
MODOS DE
ENDEREÇAMENTO
AVR Instruções de transferência de dados
AVR Instruções Lógicas e Aritméticas
AVR Instruções de Desvio
AVR Instruções Binárias e de Teste
Timers
Watchdog
Interrupções
Timers
• A fonte do times pode ou ser o clock de
instruções, ou um clock externo
• Pode ser pré-escalado ou usado diretamente
(seleção por multiplexador)
• Registrador de controle TCCR0
• Timer0(8 bits)
WatchDog
• Ativado a cada período de tempo
• Deve ser zerado para que o
microcontrolador não seja reiniciado
• O valor nos registradores WDP0 a WDP2
determina o período
– Leitura e escrita
• Timer1(16 bits)
– Funções extras
– PWN timer (2 modos de operação)
Reset e Manipulador de Interrupção
• sbi WDTCR, WDTTOE ; Habilitar
• cbi WETCR, WDE
; Desabilitar
Fontes de Reset
• O AT90S8515 possui três fontes de reset:
• O AT90S8515 possui 13 diferentes fontes de interrupções.
• Todas as interrupções são assinaladas com um bit individual de habilitação,
somente quando este bit o o bit I do Registrador de Status estiverem habilitados a
interrupção será realizada.
- Power-on Reset: MCU é resetada quando a voltagem está abaixo do Poweron Reset Threshold (Vpot);
- External Reset : MCU é resetada quando o pino RESET apresenta uma baixa
voltagem por mais de 50ns;
- Watchdog Reset : MCU é resetada quando o perído de Watchdog timer
acaba e o Watchdog é habilitado.
Manipulador de Interrupções
• Existem dois registradores de 8 bits de controle de mascara para interrupções:
Manipulador de Interrupções (parte 2)
- TIMSK (Timer/Counter Interrupt Mask Register)
- GIMSK (General Interrupt Mask Register)
Manipulador de Interrupções (parte 3)
Tempo de Resposta da Interrupção
• A resposta de execução de uma interrupção para todas as interrupções
habilitadas é de quatro ciclos de relógio (no mínimo).
• Interrupções Externas
- As interrupções externas são disparadas pelos pinos INT1 e INT0 mesmo
que esses pinos estejam configurados como saídas.
- Isso permite que uma interrupção por software seja gerada.
• Quatro ciclos de relógio após o flag da interrupção ser setado, o vetor de
endereço do programa para a rotina de manipulação de interrupções é executado.
• O vetor é normalmente um jump relativo a rotina de interrupção, isso leva dois
ciclos.
• Se uma interrupção ocorre durante a execução de uma instrução multi-ciclo, a
instrução é terminada antes que a interrupção seja atendida.
• Um microcontrolador sempre retorna de uma interrupção para o programa
principal e executa uma instrução a mais, antes de atender outra interrupção
pendente.
Organização Memória
Entrada e Saída
Dispositivos de E/S no AVR AT90S8515:
Entrada e Saída
Porta A (PA7..PA0)
! Porta bi-direcional de E/S com 8 bits;
! Comparador Analógico Interno;
! UART Serial Programável;
! Interface Serial SPI Mestre/Escravo;
! 32 Linhas Programáveis de E/S, em 4 portas de 8 bits,
mapeadas na memória: Porta A, Porta B, Porta C e Porta D.
Cada porta de E/S tem três endereços, um para cada valor
associado: Data Register (Read/Write), Data Direction
Register (Read/Write), Input Pins Address (Read Only).
! Pode ser configurada para ser utilizada como
barramento (multiplexado) de endereço e dados no acesso
à memória SRAM externa;
Quando a porta A é configurada para a função alternativa (uso da
SRAM externa habilitado) pelo bit SRE (external SRAM enable) no
MCUCR (MCU Control Register), o Registrador Data Direction é
ignorado.
PORTA – Porta A Data Register
Porta B (PB7..PB0)
! Porta bi-direcional de E/S com 8bits;
DDRA – Porta A Data Direction Register
!Usada também por funções especiais.
Pinos da Porta B para estas funções:
PINA – Porta A Input Pins Address
PINA não é um registrador; este endereço possibilita o acesso ao
valor físico de cada pino da porta. A leitura de PORTA nos fornece o
dado no latch da porta A, enquanto a leitura de PINA nos fornece os
valores lógicos nos pinos.
PORTB – Porta B Register Register
Quando os pinos são usados para outras funções, os registradores
DDRB e PORTB devem ser configurados de acordo.
Porta C (PC7..PC0)
! Porta bi-direcional de E/S com 8bits;
DDRB – Porta B Data Direction Register
PINB – Porta B Input Pins Address
PINB não é um registrador; este endereço possibilita o acesso ao valor
físico de cada pino da porta. A leitura de PORTB nos fornece o dado no
latch da porta B, enquanto a leitura de PINB nos fornece os valores
lógicos nos pinos.
! Utilizada como saída de endereço no uso de SRAM
externa. A porta C tem outras funções relacionadas ao uso
externo da SRAM. A porta C pode ser configurada para
“high-order address byte” durante o acesso a memória
externa de dados.
Quando a porta C é configurada para a função alternativa (uso da SRAM
externa habilitada) pelo bit SRE (external SRAM enable) no MCUCR
(MCU Control Register), o Registrador Data Direction é ignorado.
Porta D (PD7..PD0)
PORTC – Porta C Data Register
! Porta bi-direcional de E/S com 8bits;
DDRC – Porta C Data Direction Register
!Usada também por funções especiais.
Pinos da Porta D para estas funções:
PINC – Porta C Input Pins Address
PINC não é um registrador; este endereço possibilita o acesso ao
valor físico de cada pino da porta. A leitura de PORTC nos
fornece o dado no latch da porta C, enquanto a leitura de PINC
nos fornece os valores lógicos nos pinos.
Quando os pinos são usados para outras funções, os registradores
DDRD e PORTD devem ser configurados de acordo.
PORTD – Porta D Data Register
Portas A, B, C e D como E/S Digital
DDRD – Porta D Data Direction Register
O bit DDxn do registrador DDRx seleciona a
direção deste pino; se setado, o pino funciona como saída;
caso contrário, como entrada.
PIND – Porta D Input Pins Address
Nas portas A, B e C todos os 8 pinos tem as
mesmas funcionalidades.
Funções da Porta D
PIND não é um registrador; este endereço possibilita o acesso ao
valor físico de cada pino da porta. A leitura de PORTD nos fornece o
dado no latch da porta D, enquanto a leitura de PIND nos fornece os
valores lógicos nos pinos.
• RD – Bit 7: Controle de leitura da memória externa de dados
• WR – Bit 6: Controle da escrita na memória externa de
dados.
• OC1A – Bit 5: “Output compare match output.” Pode ser
Comparador Analógico
usado como saída externa quando o Timer/Counter1 compara
“matches” ou como saída para modo PWM do timer.
• INT1 – Bit 3: “External Interrupt source 1”. O PD3 pode ser
usado como fonte de interrupção externa do MCU.
• INT0 – Bit 2: “External Interrupt source 0.” O PD2 pode ser
utilizado como uma fonte de interrupção externa do MCU.
• TXD – Bit 1: “Transmit Data.” Utilizado como saída de dados
da UART quando o transmissor UART está habilitado.
• RXD – Bit 0: “Receive Data”. Utilizado como entrada de
O comparador analógico compara os valores da
entrada posiva PB2 (AIN0) e da entrada negativa em
PB3 (AIN1). Quando a voltagem em PB2 for maior
que em PB3, a saída do Comparador Analógico é
setada.
A saída do comparador pode ser configurada para
fazer o trigger de interrupções externas ou do
Timer/Counter1.
dados da UART quando o receptor UART está habilitado.
Interface para SRAM Externa
Diagrama de Blocos do Comparador Analógico
A interface para a SRAM externa consiste de:
• Porta A: barramento de dados e endereços “low-order”
• Port C: barramento de endereços “high-order”
• The ALE pin: habilita “Address latch”
• The RD and WR pins: strobes de leitura e escrita
A SRAM externa é habilitada setando o bit SRE (external
SRAM enable) do MCUCR (MCU Control Register) e e
ignora a configuração do Data Direction Register (DDRA).
Quando ALE vai de high para low, há um endereço válido na
Porta A.
Serial Peripheral Interface (SPI)
SRAM Externa Conectada ao AVR
O SPI permite a comunicação síncrona de alta velocidade
entre o AT90S8515 e dispositivos periféricos ou entre
diversos dispositivos AVR.
Features do SPI no 90S8515:
• Full-duplex, 3 linhas de transmissão síncrona (singlebufferd na transmissão e double-buffered na recepção)
• Operação Mestre ou Escravo
• Transmissão LSB First ou MSB First
• Quatro possíveis Bit Rates
• Flag de Interrupção para fim da Transmissão
• Flag de Proteção para Colisão de Escrita
• Wake-up do Modo Idle (Somente para Escravos)
Diagrama de Blocos do SPI
Na comunicação entre AVRs Mestre e Escravo, o pino SCK
precisa mudar de saída para entrada no dispositivo escravo.
Para habilitar o microcontrolador escravo, o bit SPE do
Registrador de controle do SPI (SPCR) precisa estar setado.
Nesse registrador, o modo mestre deve estar selecionado, mas se
o pino “_SS” estiver “pulled low”, o SPI só irá rodar em modo
escravo.
Os bits “SPR” do SPRC são utilizados para determinar a taxa de
transmissão de dados no mestre. Não é possível utilizar clock
externo, e há somente 4 divisores de clock disponíveis.
O AVR mestre inicia a transferência de dados escrevendo no SPI
Data Register (SPDR). Para determinar o término da
transmissão, o mestre faz polling (ou espera por interrupção) no
bit SPIF do SPI Status Register (SPSR).
Conexão Mestre/Escravo no SPI
SPDR - SPI Data Register
Quando o SPI é habilitado, a direção dos pinos MOSI, MISO,
SCK e _SS é configurada conforme a tabela a seguir:
O SPI Data Register é um registrador de leitura e escrita
usado para a transferência de dados entre register file e o
SPI Shift Register.
A escrita neste registrador inicia a transmissão de dados.
A leitura faz o Shift Register Receive buffer ser lido.
SPCR - SPI Control Register
• Bit 3 – CPOL: Clock Polarity: Se setado, SCK é high quando
em idle; se zerado, SCK é low em idle.
• Bit 2 – CPHA: Clock Phase: Relacionado com a fase e a
polaridade dos dados.
• Bit 7 – SPIE: SPI Interrupt Enable: Se o bit SPIF no
registrador SPSR estiver setado e as interrupções globais habilitadas, o
SPIE executa a interrupção do SPI.
• Bit 6 – SPE: SPI Enable: Se setado, habilita o SPI.
• Bit 5 – DORD: Data Order: Se setado, a parte menos
significativa do dado é transmitida primeiro; se zerado, a parte mais
significativa é transmitida primeiro.
• Bit 4 – MSTR: Master/Slave Select: Se setado, seleciona o
Modo Mestre do SPI; caso contrário, seleciona o Modo Escravo.
• Bits 1, 0 – SPR1, SPR0: SPI Clock Rate Select 1 and 0:
Controlam a taxa SCK do Mestre, não influenciam o escravo.
A relação entre o SCK e o oscilador de frequência é mostrado na tabela
abaixo:
SPSR - SPI Status Register
Universal Asynchronous Receiver
and Transmitter (UART)
No AT90S8515, dados seriais podem ser recebidos e
transmitidos através de um UART full-duplex (diferentes
registradores para transmissão e recepção).
• Bit 7 – SPIF: SPI Interrupt Flag: Quando uma transmissão
serial está completa, o SPIF é setado e uma interrupção é gerada.
• Bit 6 – WCOL: Write Collision Flag: O WCOL é setado
quando o SPI Data Register (SPDR) é escrito durante uma transmissão. É
zerado quando for lido.
• Bits 5..0 – Res: Reserved Bits: Bits reservados; no AT90S8515
são sempre lidos como zero.
Principais características:
• Grande variedade de baud rates (bps)
• Altas taxas de baud rates a baixas frequências do XTAL
• 8 ou 9 bits de dados
• Filtragem de Ruídos
• Detecção de Overrun
• Detecção de Erro de Framing
• Detecção de Falso Start Bit
• Três interrupções distintas para TX Completo, TX Data
Register Vazio and RX Completo.
BAUD Rate
Transmissão de Dados
O gerador de baud rate é um divisor de freqência que gera o
baud rate de acordo com a seguinte equação:
A transmissão de dados é iniciada escrevendo o dado a ser
transmitido no UART I/O Data Register, UDR. O dado é
transferido do UDR para o Transmit shift register quando:
• Um novo caracter foi escrito no UDR depois que o stop
bit do caracter anterior foi enviado. Neste caso, o “shift
register” é carregado imediatamente.
• Um novo caracter foi escrito no UDR antes que o stop bit
do caracter anterior tenha sido enviado. Então, o “shift
register” é carregado quando já tiver enviado o stop bit do
caracter sendo transmitido.
BAUD = f / (16 * (UBRR + 1))
BAUD = Baud rate
f = Frequência do clock
UBRR = Conteúdo do UART Baud Rate Register
Transmissor UART
Recepção de Dados
Quando o receptor da UART detecta um start bit válido, ele
começa o “polling” dos bits de dados recebidos.
Além disso, este dipositivo também atualiza o UART Status
Register (USR) quando um byte é recebido ou quando ocorre
um erro de condição, como o registrador RX ser sobrescrito
(dado foi recebido antes que o dado anterior tivesse sido lido
do RX) ou um erro de framing (dado recebido em tamanho
diferente do esperado, geralmente devido à perda de um stop
bit).
Receptor UART
UDR - UART I/O Data Register
O registrador AVR é, na verdade, dois registradores físicos
que dividem o mesmo endereço de E/S. Ao escrevermos no
registrador, o UART Transmit Data register é escrito. Ao
lermos do UDR, o UART Receive Data register é lido.
UCR - UART Control Register
USR - UART Status Register
• Bit 7 – RXC: UART Receive Complete: Setado quando um
caracter é transmitido Receiver Shift register para o UDR.
• Bit 6 – TXC: UART Transmit Complete: Setado quando o
caracter no Transmit Shift register foi lido e nenhum novo dado foi escrito no
UDR.
• Bit 5 – UDRE: UART Data Register Empty: Setado quando o
caracter escrito no UDR é transferido para o Transmit Shift register.
• Bit 4 – FE: Framing Error: Setado ao detectar um erro de framing.
• Bit 3 – OR: Overrun: Setado ao detactar um erro de overrun.
• Bits 2..0 – Res: Reserved Bits: Bits reservados, no AT90S8515 é
sempre lido como zero.
• Bit 7 – RXCIE: RX Complete Interrupt Enable
• Bit 6 – TXCIE: TX Complete Interrupt Enable
• Bit 5 – UDRIE: UART Data Register Empty Interrupt Enable
• Bit 4 – RXEN: Receiver Enable: Quando setado, habilita o UART
receiver.
• Bit 3 – TXEN: Transmitter Enable: Quando setado, habilita o UART
transmitter.
• Bit 2 – CHR9: 9-bit Characters: Quando setado, os caracteres do
transmissor e do receptor tem comprimento de 9 bits mais o start e o stop bits. O
nono bit de dados pode ser usado como um stop bit extra ou um bit de paridade.
• Bit 1 – RXB8: Receive Data Bit 8: Quando CHR9 é setado, RXB8 é o
nono bit a ser recebido.
• Bit 0 – TXB8: Transmit Data Bit 8: Quando CHR9 é setado, TXB8 é
o nono bit a ser transmitido.
Ferramentas de
Desenvolvimentos
• AVR Studio 3.22 (windows/freeware)
Ferramentas de
Desenvolvimento
– Ambiente para programação.
– Simulação de todos os componentes do
microcontrolador (Memória, E/S,
Registradores).
• AVRGCC (linux)
– Compilador A
– Geração do código Obj
Características Elétricas - ATtiny
• Consumo de Energia a 4 MHz, 3V, 25°C
Active: 2.2 mA
Idle Mode: 0.5 mA
Power-down Mode: <1 µA
Características
Elétricas
• Alimentação
1.8 - 5.5V (ATtiny12V-1)
2.7 - 5.5V (ATtiny11L-2 and ATtiny12L-4)
4.0 - 5.5V (ATtiny11-6 and ATtiny12-8)
• Freqüência de Operação
0 - 1 MHz (ATtiny12V-1)
0 - 2 MHz (ATtiny11L-2)
0 - 4 MHz (ATtiny12L-4)
0 - 6 MHz (ATtiny11-6)
0 - 8 MHz (ATtiny12-8)
• Temperatura
Variam dentro de duas faixas: comercial
0°C a 70°C e
industrial -40°C a 85°C
Características Elétricas - AT90S8515
Características Elétricas - ATmega103
• Consumo de Energia a 4 MHz, 3V, 25°C
Active: 3.0 mA
Idle Mode: 1.0 mA
Power-down Mode: <1 µA
• Consumo de Energia a 4 MHz, 3V, 25°C
Active: 5.5 mA
Idle Mode: 1.6 mA
Power-down Mode: <1 µA
• Alimentação
2.7 - 6.0V (AT90S8515-4)
4.0 - 6.0V (AT90S8515-8)
• Alimentação
2.7 - 3.6V (ATmega103L)
4.0 - 5.5V (ATmega103)
• Freqüência de Operação
0 - 4 MHz (AT90S8515-4)
0 - 8 MHz (AT90S8515-8)
• Freqüência de Operação
0 - 4 MHz (ATmega103L)
0 - 6 MHz (ATmega103)
• Temperatura
Variam dentro de duas faixas: comercial
0°C a 70°C e
industrial -40°C a 85°C
• Temperatura
Variam dentro de duas faixas: comercial
0°C a 70°C e
industrial -40°C a 85°C
Aplicações
•Comparador analógico
•Bubble Sort
•Half Duplex Interrupt Driven Software UART
Aplicações
•XmodemCRC Receive
•Controlador de motor de passos
•Gravador de som digital
•Saída de vídeo
•Real-Time clock e termômetro
Bibiografia
! http://www.atmel.com
! Michael, Predko - Handbook of Microcontrolles;
McGrawn-Hill, 1998
!http://bray.velenje.cx/avr/
!http://medo.fov.uni-mb.si/mapp/uTools/
!http://members.nbci.com/_XMCM/eletron/1200_1.htm

Documentos relacionados

Material sobre porta serial e porta paralela

Material sobre porta serial e porta paralela quando o THR ficar vazio. Interrupção de terceiro nível de prioridade. bit 2: ELSI - Enable Receiver Line Status Interrupt - Habilita que ocorra interrupção quando o registrador de controle de linh...

Leia mais

OS COMPONENTES BÁSICOS DE UM COMPUTADOR A função de

OS COMPONENTES BÁSICOS DE UM COMPUTADOR A função de especial, denominado contador de programa (program counter - PC), cuja função é armazenar o endereço no qual está armazenada a instrução que está sendo executada. Como normalmente as instruções são...

Leia mais

Introdução para o iniciante à Linguagem Assembly dos

Introdução para o iniciante à Linguagem Assembly dos Hardware para programação em Assembler AVR.....................................................................................3 A interface ISP da família de processadores AVR........................

Leia mais

Capítulo TRÊS Componentes do computador e modelo de von

Capítulo TRÊS Componentes do computador e modelo de von e é denominada de instrução. OPERAÇÃO especifica a função que será desempenhada. OPERANDOS fornece a maneira de calcular a posição atual dos dados com os quais a operação será realizada. Um program...

Leia mais

Curso de Microcontroladores PIC 16f84

Curso de Microcontroladores PIC 16f84 O pic 16F84 é um microcontrolador que pode operar de DC até 10MHz (ciclo de instrução de 400 ns) e devido as suas características de projeto funciona com um mínimo de componentes externos. Possui a...

Leia mais

Microcontrolador – 16F84A

Microcontrolador – 16F84A OSC1/CLKIN – cristal ou entrada de clock externo (P16). OSC2/CLKOUT – cristal ou saída do clock/4 quando usado sinal externo (P15). Principais características : 1 K (1024) palavras de 14 bits para ...

Leia mais