O chip de microcontrolador ATtiny85 é uma alternativa econômica e poderosa para outros microcontroladores Arduino, especialmente quando você deseja reduzir seu projeto. O chip possui 8 pinos, dos quais seis são pinos de E / S (incluindo reset) e dois são pinos de alimentação. Mas como programá-lo, uma vez que não possui uma interface USB como outras placas de microcontrolador? Portanto, neste artigo, vou orientá-lo no processo de programação do ATtiny85 a partir do IDE do Arduino com a ajuda do Arduino Uno. Basicamente, usaremos o Arduino UNO como o programador ATtiny85.
Componentes necessários para programação ATtiny85
- Arduino UNO
- ATtiny85 IC
- CONDUZIU
- Resistor de 220 ohms
- Tábua de pão
- Jumper Wires
Chip de microcontrolador ATtiny85 - Introdução
O ATtiny85 da Atmel é um microcontrolador de 8 bits de baixo consumo e alto desempenho baseado na Arquitetura RISC Avançada. Este microcontrolador possui 8 KB de memória flash ISP, 512B EEPROM, 512 bytes SRAM, 6 linhas de E / S de uso geral, 32 registros de trabalho de uso geral, um temporizador / contador de 8 bits com modos de comparação, um de 8 bits de alta velocidade temporizador / contador, USI, interrupções internas e externas, conversor A / D de 4 canais e 10 bits, temporizador de watchdog programável com oscilador interno, três modos de economia de energia selecionáveis por software e debugWIRE para depuração no chip. Pinagem ATtiny85 é fornecida abaixo:
A maioria dos pinos de E / S do chip tem mais de uma função. Verifique a tabela abaixo para saber sobre a descrição do pino ATtiny85 para cada pino.
Pin No. |
Nome do Pin |
Descrição do pino |
1 |
PB5 (PCINT5 / ADC0 / dW) |
PCINT5: Interrupção de mudança de pino 0, Fonte5 RESET: Reset Pin ADC0: Canal de entrada 0 do ADC dW: depurar WIRE I / O |
2 |
PB3 (PCINT3 / XTAL1 / CLKI / ADC3) |
PCINT3: Interrupção de mudança de pino 0, Fonte3 XTAL1: Pino 1 do oscilador de cristal CLKI: entrada de relógio externo ADC3: Canal de entrada 3 do ADC |
3 |
PB4 (PCINT4 / XTAL2 / CLKO / OC1B / ADC2) |
PCINT4: Interrupção de mudança de pino 0, Fonte 4 XTAL2: Pino 2 do oscilador de cristal CLKO: Saída de relógio do sistema OC1B: Timer / Contador 1 Comparação de Saída B ADC2: Canal de entrada 2 do ADC |
4 |
GND |
Pino de aterramento |
5 |
PB0 (MOSI / DI / SDA / AIN0 / OC0A / AREF / PCINT0) |
MOSI: Saída de dados mestre SPI / entrada de dados escravo DI: entrada de dados USI (modo de três fios) SDA: entrada de dados USI (modo de dois fios) AIN0: Comparador analógico, entrada positiva OC0A: Timer / Counter0 Compare Match A saída AREF: Referência Analógica Externa PCINT0: Interrupção de mudança de pino 0, fonte 0 |
6 |
PB1 (MISO / D0 / AIN1 / OC0B / OC1A / PCINT1) |
MISO: entrada de dados mestre SPI / saída de dados escravo DO: Saída de dados USI (modo de três fios) AIN1: Comparador analógico, entrada negativa OC0B: Saída de comparação B do temporizador / contador0 OC1A: Timer / Counter1 Compare Match A Output PCINT1: Interrupção de mudança de pino 0, Fonte 1 |
7 |
PB2 (SCK / USCK / SCL / ADC1 / T0 / INT0 / PCINT2) |
SCK: entrada serial do relógio USCK: Relógio USI (modo de três fios) SCL: Relógio USI (modo de dois fios) ADC1: Canal 1 de entrada ADC T0: Fonte de Relógio Timer / Counter0 INT0: Entrada de Interrupção Externa 0 PCINT2: Interrupção de mudança de pino 0, Fonte 2 |
8 |
VCC |
Pino de tensão de alimentação |
Etapa 1: Configurando o Arduino Uno como um ISP:
Como o ATtiny85 é apenas um microcontrolador, ele requer que um ISP (Programação no sistema) seja programado. Portanto, para programar o ATtiny85, precisamos primeiro configurar o Arduino Uno como ISP para atuar como um programador do ATtiny85. Para isso, conecte o Arduino Uno ao laptop e abra o IDE do Arduino. Depois disso, navegue até Arquivo> Exemplo> ArduinoISP e faça upload do código do Arduino ISP.
Etapa 2: Diagrama de circuito para programação ATtiny85:
O esquema completo para Programação ATtiny85 com Arduino Uno é fornecido abaixo:
O pino positivo do LED é conectado ao pino 0 do ATtiny85 IC através de um resistor de 220Ω enquanto o pino GND é conectado ao GND do IC. As conexões completas são fornecidas na tabela abaixo:
Pin ATtiny85 |
Pin Arduino Uno |
Vcc |
5V |
GND |
GND |
Pino 2 |
13 |
Pino 1 |
12 |
Pino 0 |
11 |
Redefinir |
10 |
Etapa 3: Programando ATtiny85 usando o IDE Arduino:
Para programar o ATtiny85 com o IDE do Arduino, primeiro, precisamos adicionar o suporte do ATtiny85 ao IDE do Arduino. Para isso, vá para Arquivo> Preferências e adicione o link abaixo nos URLs do Gerenciador de placas adicionais e clique em 'OK'.
Depois disso, vá para Ferramentas> Painel> Gerenciador de Painel, procure por 'attiny' e instale a versão mais recente.
Depois de instalá-lo, agora você poderá ver uma nova entrada no menu do Quadro intitulada 'Attiny25 / 45/85'.
Agora, vá para Arquivo > Exemplos> Básico e abra o exemplo Blink.
Altere o número do pino de LED_BUILTIN para 0.
Agora volte para Ferramentas -> Placa e selecione “Attiny25 / 45/85”, então selecione ATtiny85 em Ferramentas> Processador.
Agora, vá em frente e carregue o código. Se o LED conectado ao Pino 0 do Attiny85 IC piscar, o código foi carregado com sucesso.
É assim que você pode programar o chip do microcontrolador ATtiny85 usando o Arduino IDE e o Arduino Uno. Um vídeo de trabalho é fornecido abaixo. Se você tiver alguma dúvida, deixe-a na seção de comentários. Você também pode postar suas dúvidas técnicas em nosso Fórum de Eletrônicos para obter melhores informações.