» Eletrônicos » Arduino »Relógio de pulso no Attiny85 com tela Oled

Relógio de pulso em Attiny85 com uma tela OLED

Relógio de pulso em Attiny85 com uma tela OLED


Boa tarde, hoje quero compartilhar instruções sobre a fabricação de relógios baseados no Attiny 85 com uma tela Oled. Os recursos do meu relógio não se limitam ao meu relógio. Eles também podem ser usados ​​como desktop e você também pode esmagar um sensor de temperatura digital.

Para fazer caseiro vamos precisar de:

- Alça sintética (qualquer cor)
- Velcro para roupas
- Digispark Attiny85
- Tela Oled com resolução de 128x64, I2C
- ds18b20 - sensor digital de temperatura (opcional)
- Resistor 4,7 Kom 0,25 W
- Arduino Placa de firmware Digispark Attiny85 (programador ISP)
- Folha de plástico fino
- fios coloridos
- Conectores Dupont 2,54 mm "fêmea"
- Botões 2 unid.
- Placa de circuito pequena ou um pequeno pedaço de placa de circuito
- Ferro de solda, solda, resina
- Linha, agulha, tesoura
- faca de escritório
- Pistola de cola quente
- Cola quente
- Fita dupla face

Etapa 1 Preparando o cinto.
Você pode comprar uma pulseira em qualquer loja de bordados. Escolha uma cinta de 25 mm de largura. Alguma cor. Precisamos de uma tira de cerca de 50 cm. Dobre a alça ao meio e costure ao longo das bordas. Então, no meio da alça, fazemos um slot, mas apenas em uma das partes. Costure o velcro pelas extremidades da tira.

Coloque a linha com a agulha ao lado e pegue o ferro de soldar.

Etapa 2 Prepare a placa e o display OLED.
O "cérebro" do nosso relógio será o controlador Digispark Attiny85. Eles estão disponíveis em várias versões. Você deve comprar uma placa com um conector Micro USB. Outras versões do quadro não cabem no estojo de relógio.

Se você comprou uma placa com contatos soldados, primeiro retire a sua venda. Então pegamos fios de cores diferentes, precisamos de 9 cores diferentes. Corte cerca de 15 cm de cada fio, descasque e solde ao Attiny85. Imediatamente, vale a pena anotar qual fio ao qual o pino é soldado para não confundir mais tarde.

No meu caso, os fios por cores são assim:

PB0 MOSI - Amarelo
PB1 MISO - Azul
PB2 CSK - Azul
PB3 - Roxo
PB4 - Branco
PB5 NRES - Cinza
GND - preto
+5 - vermelho
Vin - Laranja

Suas cores dos fios podem variar, o principal é anotá-las.

Vamos para a tela. Usaremos uma exibição antiga. Resolução de tela 128x64, funciona no barramento I2C. À venda, existem telas de cores diferentes: branco, azul, azul e amarelo. Cuidado! A palavra “duas cores” na descrição e no título desta tela indica a presença de uma faixa de cores diferente da faixa principal na parte superior da tela, e não a capacidade de exibir duas cores com essa tela! Todas as telas desse tipo exibem apenas uma cor ou, na parte superior, uma faixa de uma cor, na parte inferior de outra. Gostei da tela azul, com uma barra amarela no topo. A cor não desempenha um papel especial; escolha qual você gosta. Tal como acontece com o Attiny85, se você comprou uma tela com contatos soldados, você deve primeiro dessoldá-los.


Na parte de trás da tela, você deve soldar pequenos fios. É melhor usar fios das mesmas cores do Attiny85, para não confundi-los mais tarde. No meu caso, soldo o fio amarelo ao SDA da tela, ao SCL - azul, GND - preto, VCC - vermelho.


Em uma fita dupla face, anexamos o Attiny85 à parte traseira da tela Oled. Attiny85 não deve ir além da placa de tela Oled.


Soldamos Attiny85 e Oled juntos.

PB0 MOSI Attiny85 - Amarelo - SDA Oled
PB2 CSK Attiny85 - Azul - SCL Oled
GND Attiny85 - Preto - GND Oled
+5 Attiny85 - Vermelho - VCC Oled

Coletamos todos os fios em uma linha, para obter um loop. Nós o enrolamos com fita isolante em vários lugares para que não se desfaça.


Vá ao poder de nossos relógios. Para fazer isso, pegue uma pequena bateria de lítio. Solde os fios a ele.


Se não houver bateria, uma bateria do tipo A27 ou A23 pode ser usada.


Colocamos o acumulador ou a bateria no canto mais distante do bolso, formado pela alça dobrada ao meio. Se estiver usando uma bateria, forneça um slot para substituí-lo.
No orifício feito no meio da tira, enfiamos o cabo nos fios.


E as esticamos até o final da pulseira, para que fiquem destacadas e o relógio fique exatamente acima do slot, para que o slot feche por horas.


Cortamos os excessos e prensamos todos os fios dos conectores “mãe” Dupont de 2,54 mm. Nós o inserimos em caixas plásticas e o envolvemos com fita isolante, para obter um conector limpo, com todos os fios Attiny85. Aqui também vale a pena escrever, ou melhor ainda, esboçar todos os contatos do conector resultante. GND Attiny, GND Oled e menos a bateria podem ser imediatamente conectados e cravados em um contato. Para preenchimento adicional do esboço e conexão de complementos, é mais conveniente organizar os contatos da seguinte maneira:

PB0 PB1 PB2 PB5 +5 ATTINY | GND ATTINY

PB3 PB4 VCC OLED | GND OLED | Vin ATTINY + MTD



Agora é hora de seguir para o casco.

Etapa 3 Fazendo o caso.
Para o corpo, você precisará de plástico fino. Pode ser comprado na loja online. Ou você pode comprar uma pasta com uma capa plástica grossa na papelaria e fazer um estojo para fora da capa. No plástico, marcamos a varredura do relógio. Linhas sólidas são linhas de corte, linhas tracejadas - dobra.


Usando uma faca de escritório, corte cuidadosamente a janela no meio. Dobramos todas as linhas pontilhadas. Deve ser assim:


E por outro lado:


Colocamos uma fenda na tela, dobramos as bordas e, usando adesivo hot-melt, montamos o corpo. Também vale a pena colar o estojo na tira, de preferência no interior, para que a cola não saia.


Etapa 4 Preparando o ambiente de programação.
Para trabalhar com o firmware (ou esboço), usaremos o IDE do Arduino. Faça o download do arquivo ou instalador no site oficial Arduino IDE.

Além disso, precisamos adicionar o suporte Attiny ao IDE do Arduino. Para fazer isso, execute o Arduino IDE e, em seguida, Arquivo - Configurações - no campo "URLs adicionais do gerenciador de placas", insira o link:

https://raw.githubusercontent.com/damellis/attiny/ide-1.6.x-boards-manager/package_damellis_attiny_index.json


Clique em OK (você pode inserir vários links separados por vírgula neste campo). Em seguida, vá em Tools - Board - Boards Manager no campo de filtro, digite Attiny e selecione "attiny by David A. Mellis". Clique em Instalar e aguarde o download terminar.

Você também precisará de uma biblioteca para trabalhar com a tela Oled. Há muitos deles, gostei e recomendo usar o TinyOzOLED. É conveniente e, o mais importante, cabe na memória:
tinyozoled-master.rar [15.99 Kb] (downloads: 100)


No futuro, você pode expandir a funcionalidade do relógio adicionando um sensor de temperatura. Adicione uma biblioteca para este sensor imediatamente. Biblioteca OneWire.
onewire.rar [16.75 Kb] (downloads: 71)


Instale essas bibliotecas. Para fazer isso, você pode diretamente no ambiente de programação do Arduino IDE, sem descompactar os arquivos baixados, selecione o menu Sketch - Connect Library. No topo da lista suspensa, selecione o item "Adicionar biblioteca .Zip". Na caixa de diálogo exibida, selecione a biblioteca que você deseja adicionar, neste caso, duas baixadas. Agora abra o menu Sketch - Connect Library novamente. Na parte inferior da lista suspensa, você verá novas bibliotecas. A partir de agora, as bibliotecas podem ser usadas em programas. Depois de tudo isso, reinicie o IDE do Arduino. Você também pode simplesmente descompactá-lo para a pasta “bibliotecas” localizada na pasta com o IDE do Arduino instalado.

Etapa 5 Preparando o programador.
O Digispark Attiny85 pode ser programado através do conector micro USB na placa usando o IDE do Arduino. No entanto, você precisa sacrificar 2 KB de memória Flash de 8 KB para o carregador de inicialização.O esboço do relógio não se encaixa no carregador de inicialização; portanto, você deve usar o programador do ISP, apagando o carregador de inicialização. Se você não tem um programador de ISP em mãos (como o meu), pode usar a placa Arduino. Vou usar o Arduino Uno. Mas você pode usar qualquer outra placa. Portanto, conectamos o Arduino Uno ao computador. Inicie o Arduino IDE, abra Arquivo - Exemplos - Arduino ISP. Selecione no menu Ferramentas - Placa - Arduino Uno. Selecionamos a porta à qual está conectado, o Arduino, e clicamos no download. O esboço começa com uma dica sobre como conectar o Arduino ao controlador programável.

// 10: reset do escravo
// 11: MOSI
// 12: MISO
// 13: SCK

Esquema de conexão com o Digispark Attiny85:
Arduino UNO - Digispark Attiny85

D11 - P0
D12 - P1
D13 - P2
D10 - P5


Etapa 6 Prepare o fio para carregar o esboço.
Existem várias opções para o esboço e, apenas para a conveniência do download, fabricaremos um fio que conecta o Arduino Uno (como programador do ISP) e nosso relógio. Aqui também recomendo o uso de fios coloridos que correspondem à cor que já usamos. Por um lado, deve haver um bloco:

PB0 Amarelo | PB1 azul | PB2 azul | PB5 Cinza | +5 vermelho | GND Black

Este bloco se conecta ao relógio, na parte superior do bloco do relógio.
Por outro lado, existem dois pads para conectar ao Arduino Uno:

Pino 10 cinza | Pino 11 amarelo | Pino 12 azul | Pin 13 Blue

+5 vermelho | GND Black

Deve ser algo como isto:


Etapa 7 Firmware.
Então, escrevi algumas opções de esboço para nossos relógios. Escreverei mais tarde quais são as diferenças e apresentarei tudo. Para preencher o esboço, execute o IDE do Arduino, selecione o menu Ferramentas, defina os seguintes parâmetros:

Conselho - Attiny 25/45/85
Processador - Attiny 85
Relógio - interno 16

Selecione a porta serial à qual o programador ISP ou o Arduino está conectado como programador. Além disso, no menu Ferramentas - Programador, selecione "Arduino como ISP". Agora selecione Sketch - Download via programador. Resta aguardar a conclusão do download.

Etapa 8 Esboços.
A primeira opção é um relógio com uma data. Para definir a hora, você precisará conectar botões, algo como isto:


Para os pinos PB1, PB3, PB4.
attiny85_oled_spi.rar [1.9 Kb] (downloads: 110)


A segunda opção é apenas um relógio. Para definir o tempo que você precisa usar o USB-TTL.


E a terceira opção, um relógio de mesa com data e termômetro.
attiny85_oled_spi_term_2.rar [2,78 Kb] (downloads: 101)


Etapa 9 Inicie.
Para iniciar o relógio, se você usar uma bateria de lítio, precisará instalar um jumper no bloco entre os contatos BAT, +5 e VCC. Você pode usar um pequeno pedaço de fio fino. Se você tiver uma bateria, precisará de dois jumpers, coloque o primeiro entre BAT e Vin, o segundo - + 5 e VCC.
8.8
8.9
7.3

Adicionar um comentário

    • sorrirsorrisosxaxaoknão seiyahoonea
      chefearranhartolosimsim simagressivosegredo
      desculpedançardance2dance3perdãoajudabebidas
      pararamigosbomgoodgoodapitodesmaiarlíngua
      fumaçapalmascraydeclararirônicodon-t_mentionbaixar
      calorirritantelaugh1mdareuniãomoskingnegativo
      not_ipipocapunirlerassustarsustospesquisar
      provocarthank_youistoto_clueumnikagudoconcordar
      malbeeeblack_eyeblum3corargabar-setédio
      censuradobrincadeirasecret2ameaçarvitóriayusun_bespectacled
      sacudirrespektlolpreviubem vindoKrutoyya_za
      ya_dobryiajudantene_huliganne_othodifludproibirfechar

Aconselhamos que você leia:

Entregue-o para o smartphone ...