Obsah:

Attiny85 Termómetro OLED: 5 krokov
Attiny85 Termómetro OLED: 5 krokov

Video: Attiny85 Termómetro OLED: 5 krokov

Video: Attiny85 Termómetro OLED: 5 krokov
Video: Урок 22 – ЖК-модуль 1602A 2024, Október
Anonim
Attiny85 Termómetro OLED
Attiny85 Termómetro OLED
Attiny85 Termómetro OLED
Attiny85 Termómetro OLED

Môžu sa skladať z jednoduchých a aktuálnych teplôt, relatívnych a teplých teplôt. Ich realizácia je spojená s používaním ATmega328p, ale predovšetkým medzi rôznymi druhmi použitia ATtiny85 a jeho spotrebou batérií.

Pokračovanie popisu základných funkcií, všeobecných okruhov a konečných programov spojených s programom.

Zásoby

1 x ATtiny85

1 x Arduino UNO/PRO/atď (programátor ATtiny)

1 x 128x64 pantalla I2C OLED

1 x teplota snímača DHT22

1 x odpor 4,7MOhm (1/4W)

1 x elektrický kondenzátor 0,1uF

1 x prepínače 3,3 V - 5 V 10+ x prepojky

Krok 1: Popis del Funcionamiento

Väčšina zariadení obsahuje väčšinu predošlých menovaných OLED, bežných a bežných funkcií spánku, vrátane prerušenia a prerušenia činnosti. la batéria.

Nasledujúce programy môžu obsahovať nasledovné: Teplotný režim -> Väčšina teplých teplôt -> Apagar ATtiny -> Reiniciar al presionar botón.

Väčšina miest, ktoré existujú, existujú, ale existujú, zatiaľ čo neexistujú žiadne nové vynálezy. Knižnica DHT senzorových knižníc (k dispozícii v IDE) a Tiny4kOLED z dostupných zdrojov z Githubu, ako aj z parecera, pôvodných autorských dátových adries, adries, ďalších modifikácií a modifikácií.

Viacnásobné prehrávanie hudby a videí, ktoré môžete hrať, počúvajte a vybavujte. En loo person, it encontrado la opción de las placas metálicas más interactivo.

Krok 2: Okruhy

Okruhy
Okruhy
Okruhy
Okruhy
Okruhy
Okruhy

Základné zábery si predstavili obehové schémy, ktoré sú potrebné pre program ATtiny85. Programy základného programu Arduino (kondenzátor kondenzátora odvodeného z kondenzátora) obsahujú náčrt ArduinoISP, ako je uvedené v archíve -> Ejemplos -> 11. ArduinoISP. Väčšina kondenzátorov obsahuje dva rôzne typy kondenzátorov, ktoré sú dodávané spoločne s programom ATtiny85.

El ATtiny sa dodávajú priamo z Arduina. Používajú sa súčasne všetky druhy batérií, ktoré nepotrebujú žiadne prepojovacie zariadenie (GND) Arduino y el ATtiny85.

Počet farebných vstupov je 13 palcov Arduino y 2 2 ATtiny puede facilitar el hacer pruebas ya que la pantalla no puede estar conectada cuando se programa al ATtiny.

Como se observa en las imágenes. El pin SDA del ATyiny es el 0 y el SCL/CLK es el 2. Nuestro DHT está conectado en el pin 4.

Krok 3: Programovanie

Základné informácie o programe "Arduino as ISP" ako programátorovi. Si aún no han instalado la placa para el ATtiny, recomiendo installr la placa ATtinyCore de Spence Konde. Esta placa no me genero ningún problema de compilación durante la realización del proyecto.

Jedna z najobľúbenejších konfigurácií BOD s 8MHz vnútorným a optickým bootovaním. Používajú sa 1 MHz komunikačnej siete I2C a nie sú k dispozícii žiadne vonkajšie ani 16 MHz frekvenčné pásma, ako je digitálna energia, a spotreba energie.

Odklepnite a upravte svoje archívy a knižnice Tiny4kOLED. Všetky modifikácie môžu byť "font8x16.h" y 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

Pokračovanie náčrtu je potrebné pre ďalšie účely.

#include #include #include #include #define I_PINB PCINT3 #define I_PIN PB3 #define I_VECTOR PCINT0_vect #define adc_disable () (ADCSRA & = ~ (1 << aden)) disable = "" adc = "" converter #define DHTPIN 4 #define DHTTYPE DHT22 DHT dht (DHTPIN, DHTTYPE); const uint8_t šírka = 128; const uint8_t výška = 64; volatile bool turned = false; / * * * Obsluha prerušenia * */ISR (PCINT_VECTOR) {// prerušenie sa vždy preberie z režimu spánku, ak (digitalRead (I_PIN) == HIGH) {turn = true; // nastavenie vlajky na prekreslenie obrazovky}} void setup () {cli (); // vypnutie prerušení PCMSK | = (1 << I_PINB); GIMSK | = (1 << PCIE); pinMode (I_PIN, INPUT); sei (); // zapnúť prerušenia adc_disable (); // úspora energie vypnutím meniča set_sleep_mode (SLEEP_MODE_PWR_DOWN); // nastavenie typu spánku na hlboký spánok oled.begin (šírka, výška, veľkosťof (tiny4koled_init_128x64br), tiny4koled_init_128x64br); // spustenie oled objektu oled.setFont (FONT8X16); // toto písmo vyzerá lepšie ako to ostatné drawScreen (); oled.on (); oneskorenie (2000); dht.begin (); obrátený = pravdivý; // vlajka na kreslenie obrazovky} void sleep () {sleep_enable (); sleep_cpu (); } void loop () {if (otočené) {cli (); // vypnutie prerušení oled.on (); float h = dht.readHumidity (); // false read to reset dht cache delay (2200); // wait dht to load 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"); // symbol ~ bol v knižnici zmenený tak, aby vyzeral ako oneskorenie symbolu ° (5000); // show na 5 sekúnd oled.off (); obrátený = nepravda; sei (); // znova pripojiť prerušenia} sleep (); // vždy na konci choď spať} void drawScreen () {// nakreslí rámček ako hlavný text pre (uint8_t y = 0; y <8; y ++) {oled.setCursor (0, y); oled.startData (); pre (uint8_t x = 0; x <128; x += 2) {oled.sendData (0b10101010); oled.sendData (0b01010101); } oled.endData (); } oled.setCursor (0, 0); oled.startData (); oled.sendData (0b11111111); oled.repeatData (0b00000101, šírka - 2); oled.sendData (0b11111111); oled.endData (); pre (uint8_t y = 1; y <(výška - 8) / 8; y ++) {oled.setCursor (0, y); oled.startData (); oled.sendData (0b11111111); oled.repeatData (0b00000000, šírka - 2); oled.sendData (0b11111111); oled.endData (); } oled.setCursor (0, (výška - 8) / 8); oled.startData (); oled.sendData (0b11111111); oled.repeatData (0b10100000, šírka - 2); oled.sendData (0b11111111); oled.endData (); oled.setCursor (4, 1); oled.print ("Teplota:"); oled.setCursor (4, 3); oled.print ("Hum:"); oled.setCursor (4, 5); oled.print ("Sens:"); }

Krok 4: Závery

Závery
Závery
Závery
Závery

Bez ohľadu na to, či sú tieto položky bezvýznamné, alebo nie, získate 85 rôznych aplikácií, ako sú implementované, kontrolované a kontrolované. Osobné možnosti, ktoré je možné zahrnúť, vrátane kontroly nad spánkom a spánkom, ktoré môžu mať za následok obmedzenie pamäte. Dichozamente, el programa ha entrado en nuestro ATtiny

Existujúce otrasné knižnice sú vybavené OLED. Naše knižnice GFX de Adafruit no me allowiócom compilar por lo que decision bus bus algo precisamente para el ATtiny, per existen otras librerías y soluciones que son interesantes de explorar

K dispozícii sú všetky možnosti. Uvažujte o konštantnej spotrebe, pričom odhadujete, že budete môcť vidieť batériu s kapacitou 3000 mAh (NiMH alebo LiIon) a 500 días. Spotrebný materiál znižuje počet senzorov a snímač sníma priamo z jedného kolíka AT, avšak bez ohľadu na to, čo potrebuje

Väčšina Technoblogy.com pracuje s veľkým počtom užívateľov, ktorí majú záujem o prácu, ale hlavne o starostu. Nepretržitá a bežná prevádzka batérií je dostatočne realistická

Krok 5: Odkazy a súvisiace odkazy

www.technoblogy.com/show?KX0&fbclid=IwAR0qu…

github.com/SpenceKonde/ATTinyCore

www.electroschematics.com/am2302-dht22-dat…

ww1.microchip.com/downloads/en/DeviceDoc/A…

embeddedoughts.com/2016/06/06/attiny85-i…

www.instructables.com/id/ATtiny85-Interrup…

www.technoblogy.com/show?WNM

www.technoblogy.com/show?2F5D

Odporúča: