İçindekiler:
- Gereçler
- Adım 1: Del Funcionamiento'nun Tanımı
- Adım 2: Devreler
- Adım 3: Programlama
- 4. Adım: Sonuçlar
- Adım 5: Bağlantılar Y Lecturas Relacionados
Video: Attiny85 Termometro OLED: 5 Adım
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:17
Tahmini proyecto en un termómetro pequeño y basit que muestra la temperatura aktüel, la humedad relativa ve el índice de temperatura. ATmega328p'yi, her türlü etkileşimi gerçekleştirmeyi ve ATtiny85'i bir araya getirmeyi ve bunları birleştirmeyi en iyi şekilde gerçekleştirin.
Bir süreklilik tanımı, en çok işlevli, en sık kullanılan devreler ve sonlandırmalar, genel programların yorumlanması ve yorumlanması.
Gereçler
1 x ATtiny85
1 x Arduino UNO/PRO/etc (programador del ATtiny)
1 x 128x64 pantalla I2C OLED
1 x Sensör sıcaklığı DHT22
1 x Direnç 4.7MOhm (1/4W)
1 x Kondansatör elektrolitik 0.1uF
1 x Fuente de 3.3V - 5V 10+ x Jumper'lar
Adım 1: Del Funcionamiento'nun Tanımı
OLED, özel, ikincil, bağımsız uyku dahil olmak üzere, en iyi olanaklar arasında, en büyük ve en büyük değer yargıları OLED, yeniden yapılandırma el kitabının genişletilmesi ve genişletilmesi için geçerlidir. la batería.
Yeni programların her biri için en uygun proceso: Leer temperatura -> Mostrar temperatura tr pantalla -> Apagar ATtiny -> Reiniciar al presionar botón.
Para cada uno de esos pasos dejaremos la belediye başkanı parte del trabajo bir las librerías ya da varolanlar, yeniden icat yok. DHT sensör kitaplığı Adafruit (el IDE'de dağıtılabilir) y Tiny4kOLED ve Github'dan gelen datacute que, al parecer, el autor orijinal es datacute y, además, necesitaremos modificarla un poco luego.
El método de reinicio puede ser tanto ve botón como dos placas metálicas que se tocan para encender el eko. En kişisel olarak, en iyi şekilde etkileşime girer.
Adım 2: Devreler
En la primer görüntü, encuentra el Circuito que requerimos para programar el ATtiny85. Arduino ISP, que se encuentra en Archivos -> Ejemplos -> 11. ArduinoISP'yi programlamak için Arduino'nun temel çizimi. ATtiny85'i yeniden programlamak için Arduino'yu yeniden yapılandırın.
El ATtiny se puede alimentar directamente del Arduino. Arduino y el ATtiny85 için en uygun ortam kullanımı.
Colocar un botón giriş pin 13 del Arduino ve 2 del ATtiny puede facilitar el hacer pruebas ya da que la pantalla no puede estar conectada cuando se programa al ATtiny.
En las görüntülere bakın. El pin SDA del ATyiny es el 0 ve SCL/CLK es el 2. Nuestro DHT está conectado en el pin 4.
Adım 3: Programlama
Primeramente, debemos seçici "ISP olarak Arduino" ortak programcısı. ATtiny, Spence Konde'yi tavsiye ederim. Öngörülen bir sorun değil.
OptiBoot için 8 MHz interno y sin n BOD, con un reloj d e n e n e n e n e n e n e n e n e n e n e n e n e n e n e n e n e n e n e n e n e n e n e n e n e n e n e n e n e n e n i konfigüre etme olanağı tanır. I2C'de 1MHz iletişim ve 16MHz harici harici, dijital cihazlar, tüketim enerjisiyle ilgili önemli bilgilerden yararlanılamaz.
Tiny4kOLED'in arşivlenmesi ve arşivlenmesi için gerekli değişiklikler. El arşivi değişiklikleri "font8x16.h" y o cambiado la línea 117 por el siguiente código con el fin de cambiar el símbolo ~ por ° que usaremos en °C.
0x00, 0x06, 0x01, 0x01, 0x02, 0x02, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
Devamlı bir taslak.
#include #include #include #include #define I_PINB PCINT3 #define I_PIN PB3 #define I_VECTOR PCINT0_vect #define adc_disable() (ADCSRA &= ~(1<<aden)) dönüştürücü #define DHTPIN 4 #define DHTTYPE DHT22 DHT dht(DHTPIN, DHTTYPE); const uint8_t genişlik = 128; const uint8_t yükseklik = 64; uçucu bool döndü = yanlış; /* * * Kesinti işleyicisi * */ ISR(PCINT_VECTOR){ //interrupt her zaman uykudan kurtarılır if(digitalRead(I_PIN) == HIGH) { turn = true; // bayrağı ekranı yeniden çizecek şekilde ayarla } }void setup() { cli(); //kesmeleri kapat PCMSK |= (1 << I_PINB); GIMSK |= (1 << PCIE); pinMode(I_PIN, GİRİŞ); ben(); //kesmeleri aç adc_disable(); //dönüştürücüyü kapatarak güç tasarrufu yapın set_sleep_mode(SLEEP_MODE_PWR_DOWN); //uyku türünü derin uykuya ayarla oled.begin(width, height, sizeof(tiny4koled_init_128x64br), tiny4koled_init_128x64br); //oled nesnesini başlat oled.setFont(FONT8X16); //bu yazı tipi diğerinden daha iyi görünüyor drawScreen(); oled.on(); gecikme(2000); dht.begin(); döndü = doğru; // ekran çizimi için bayrak } void sleep(){ sleep_enable(); uyku_cpu(); } void loop() { if (döndü){ cli(); //kesmeleri kapat oled.on(); float h = dht.readHumidity();//dht önbellek gecikmesini sıfırlamak için yanlış okuma(2200);//dht'nin yüklenmesini bekle h = dht.readHumidity(); float t = dht.readTemperature(); float i = dht.computeHeatIndex(t, h, false); oled.setCursor(55, 1); oled.print(t); oled.print("~C"); oled.setCursor(55, 3); oled.print(h, 0); oled.print("%"); oled.setCursor(55, 5); oled.print(i); oled.print("~C"); // kütüphanede ~ sembolü ° derece sembol gecikmesi gibi görünecek şekilde değiştirildi (5000); //5 saniye göster oled.off(); döndü = yanlış; sei();//kesmeleri tekrar ekle } sleep(); //her zaman sonunda uykuya geç } void drawScreen() { //çerçeveyi ve ana metni (uint8_t y = 0; y < 8; y++) { oled.setCursor(0, y); oled.startData(); for (uint8_t x=0; x<128; x += 2) { oled.sendData(0b10101010); oled.sendData(0b011010101); } oled.endData(); } oled.setCursor(0, 0); oled.startData(); oled.sendData(0b11111111); oled.repeatData(0b00000101, genişlik - 2); oled.sendData(0b11111111); oled.endData(); for (uint8_t y = 1; y < (yükseklik - 8) / 8; y++) { oled.setCursor(0, y); oled.startData(); oled.sendData(0b11111111); oled.repeatData(0b00000000, genişlik - 2); oled.sendData(0b11111111); oled.endData(); } oled.setCursor(0, (yükseklik - 8) / 8); oled.startData(); oled.sendData(0b11111111); oled.repeatData(0b10100000, genişlik - 2); oled.sendData(0b11111111); oled.endData(); oled.setCursor(4, 1); oled.print("Sıcaklık:"); oled.setCursor(4, 3); oled.print("Hımm:"); oled.setCursor(4, 5); oled.print("Sens:"); }
4. Adım: Sonuçlar
Önemsiz bir şey, önemsiz bir şey, en az bir amplia gama de aplicaciones ve en las que podemos'un uygulanması için en iyi kontrol, en büyük günahın işlenmesidir. Kişisel bilgiler, uykunun kontrol altına alınması ve hafızanın kontrol altına alınması için mümkün değildir. Dichozamente, el programa entrado en nuestro ATtiny
OLED'ler için mevcut. GFX'in Adafruit'ten temin etmesine izin vermeme, her bir karar verilişine ilişkin karşılaştırmalı incelemeler için ayrıntılı bilgi için, her bir kütüphane ve çözümlemeler ve keşifler için mevcut
Elverişli değil. 500 yıllık süre içinde 3000 mAh (NiMH veya LiIon) için geçerli değildir. Algılayıcıyı en aza indirgemek ve azaltmak için sensörleri kontrol etmek için, gerekli olan hiçbir şeyi göz önünde bulundurmayın
Según Technoblogy.com'un en büyük işbirlikçisi, en üst düzeydeki resmi, en iyi proyecto'yu, en iyi proyecto'yu, tek başına bir imajı elde etmek için kullanıyor. El tüketim de la batería sürekliliği siendo lo suficientemente bajo como para ser un proyecto fasılabl
Adım 5: Bağlantılar Y Lecturas Relacionados
www.technoblogy.com/show?KX0&fbclid=IwAR0qu…
github.com/SpenceKonde/ATTinyCore
www.electroschematics.com/am2302-dht22-dat…
ww1.microchip.com/downloads/en/DeviceDoc/A…
embeddedthinkts.com/2016/06/06/attiny85-i…
www.instructables.com/id/ATtiny85-Interrup…
www.technoblogy.com/show?WNM
www.technoblogy.com/show?2F5D
Önerilen:
Daha Büyük ve Geliştirilmiş Noel Yıldızı Neopixel Attiny85: 3 Adım (Resimlerle)
Daha Büyük ve Geliştirilmiş Noel Yıldızı Neopixel Attiny85: Geçen yıl küçük bir 3D baskılı Noel yıldızı yaptım, bkz. https://www.instructables.com/id/Christmas-Star-LE…Bu yıl bir iplikten daha büyük bir yıldız yaptım 50 Neopiksel (5V WS2811). Bu daha büyük yıldızın daha fazla deseni vardı (hala ekliyorum ve geliştiriyorum
ATtiny85 Giyilebilir Titreşimli Aktivite Takibi Saat ve Programlama ATtiny85 Arduino Uno ile: 4 Adım (Resimlerle)
ATtiny85 Giyilebilir Titreşimli Etkinlik İzleme Saati ve Programlama Arduino Uno ile ATtiny85: Giyilebilir etkinlik izleme saati nasıl yapılır? Bu, durgunluk algıladığında titreşmek üzere tasarlanmış giyilebilir bir cihazdır. Siz de benim gibi bilgisayar başında vakit geçiriyor musunuz? Farkında olmadan saatlerce mi oturuyorsunuz? O zaman bu cihaz f
Adım Adım Arduino Uno ile Akustik Kaldırma (8 adım): 8 Adım
Arduino Uno ile Akustik Kaldırma Adım Adım (8 adım): ultrasonik ses dönüştürücüler L298N erkek dc pinli Dc dişi adaptör güç kaynağı Arduino UNOBreadboardBu nasıl çalışır: İlk olarak, Arduino Uno'ya kod yüklersiniz (dijital ile donatılmış bir mikrodenetleyicidir) ve kodu dönüştürmek için analog bağlantı noktaları (C++)
ATtiny85 ve OLED Ekran SSD1306'da Flappy Bird: 6 Adım (Resimlerle)
ATtiny85 ve OLED Ekran SSD1306'da Flappy Bird: Herkese Merhaba, Bugün size oluşturduğum basit bir flappy bird klonunu ve benzer bir oyunu nasıl yapabileceğinizi göstereceğim. Esasen kodumu sizinle birlikte inceleyeceğim ve yolun her adımında nasıl çalıştığını açıklayacağım. Bu oyun ru için inşa edilmiştir
Kartvizit/Oyun Konsolu: ATtiny85 ve OLED Ekran: 5 Adım (Resimli)
Kartvizit/Oyun Konsolu: ATtiny85 ve OLED Ekran: Herkese merhaba!Bugün size arkadan aydınlatmalı I2C OLED ekran ve ATtiny85 Mikroişlemci içeren kendi kartvizitinizi/oyun konsolunuzu/hayal edebileceğiniz her şeyi nasıl oluşturabileceğinizi göstereceğim. Bu Eğitilebilir Kitapta size nasıl tasarladığım bir PCB'yi anlatacağım