Vítejte na Elektro Bastlírn?
Nuke - Elektro Bastlirna
  Vytvořit účet Hlavní · Fórum · DDump · Profil · Zprávy · Hledat na fóru · Příspěvky na provoz EB

Vlákno na téma KORONAVIRUS - nutná registrace


Nuke - Elektro Bastlirna: Diskuzní fórum

 FAQFAQ   HledatHledat   Uživatelské skupinyUživatelské skupiny   ProfilProfil   Soukromé zprávySoukromé zprávy   PřihlášeníPřihlášení 

Arduino NTC teplomer s MAX7219
Jdi na stránku Předchozí  1, 2
 
Přidat nové téma   Zaslat odpověď       Obsah fóra Diskuzní fórum Elektro Bastlírny -> Miniaturní počítače (Arduino, Raspberry a další)
Zobrazit předchozí téma :: Zobrazit následující téma  
Autor Zpráva
Mahoney



Založen: Oct 26, 2019
Příspěvky: 610

PříspěvekZaslal: čt listopad 13 2025, 9:25    Předmět: Citovat

jankrizan: To co máš na mysli je uint (unsigned int)
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
jankrizan



Založen: Dec 30, 2007
Příspěvky: 143

PříspěvekZaslal: čt listopad 13 2025, 16:13    Předmět: Citovat

Chlapi, veľmi dobre mi radíte, čo si cením a chcem vás ešte poprosiť o radu s touto konštrukciou. V kocke- jedná sa trojitý termostat s diagnostikou poruchových stavov. Chcem tam implementovať ten teplomer, ktorý sme riešili. V podstate to celé funguje tak ako si predstavujem, ak tam vložím iba jeden ten teplomer. Bohužiaľ druhý a tretí je nad moje sily, neviem definovať prikazy pre druhý a tretí displej. Skúšal som aj vložiť ich na začiatok -ešte pred void setup, tak ako sú tie ostatné, ale nefunguje to, ovplyvňujú to asi tie "živé setDigit". Momentálne sú za komentom, aby neboli aktívne, takto to ide -len jeden. Pomôžte mi prosím. Ďakujem.


Thermometer32_3xNTC_ver_MAX7219_test.zip
 Komentář:

Stáhnout
 Soubor:  Thermometer32_3xNTC_ver_MAX7219_test.zip
 Velikost:  3.16 kB
 Staženo:  4 krát

Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
jankrizan



Založen: Dec 30, 2007
Příspěvky: 143

PříspěvekZaslal: čt listopad 13 2025, 17:10    Předmět: Citovat

Opravujem program, zabudol som ešte nejaké údaje doplniť.


Thermometer32_3xNTC_ver_MAX7219_test.zip
 Komentář:

Stáhnout
 Soubor:  Thermometer32_3xNTC_ver_MAX7219_test.zip
 Velikost:  3.19 kB
 Staženo:  5 krát

Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
asdf



Založen: Oct 06, 2022
Příspěvky: 467

PříspěvekZaslal: čt listopad 13 2025, 18:02    Předmět: Citovat

No, udělal jsi z toho hrozný prasečinec. Smile Zkusil jsem upravit ten program pro jednu teplotu, aby to dělal třikrát.
kód:
#include "LedControl.h"
LedControl lc(2,4,3,3);

int ThermistorPina = A0;
int ThermistorPinb = A1;
int ThermistorPinc = A2;
float teplotaa;
float teplotab;
float teplotac;

void setup(){
  for ( int i = 0; i < 3; i++ )
  {
    lc.shutdown(i, false);
    lc.setIntensity(i, 0);
    lc.clearDisplay(i);
  }
}

static void zpracujTeplotu(int adresa, int termistorPin, float *teplota)
{
  int Va;
  int tempC;
  float Reading;
  float R1 = 10000;
  float logR2, R2, T, Tc, Tca, Tf;
  float c1 = 1.009249522e-03, c2 = 2.378405444e-04, c3 = 2.019202697e-07;
  char minus;
 
  Va = analogRead(termistorPin);
  R2 = R1 * (1023.0 / (float)Va -1);
  logR2 = log(R2);
  T = (1.0 / (c1 + c2*logR2 + c3*logR2*logR2*logR2));
  Tca = (T - 273.15);
  Tf = (T * 9.0)/ 5.0 + 32.0;
  tempC=Tca*10;
  minus = ' ';
  if ( tempC < 0 ){minus = '-'; tempC *= -1;}
 
  int temp1 =  (tempC % 10); // one of temp
  int temp2 =  (tempC / 10) % 10; // tens of temp
  int temp3 =  (tempC / 100) % 10; // units of temp

   lc.setRow(adresa,7,15);     
   lc.setRow(adresa,6,0);     
   lc.setRow(adresa,5,0);
 if ( temp3 == 0 ){
   lc.setChar(adresa,4,' ',false);
   lc.setChar(adresa,5,minus,false);}
 else {lc.setChar(adresa,5,minus,false);
   lc.setDigit(adresa,4,temp3,false);}   
   lc.setDigit(adresa,3,temp2,true);
   lc.setDigit(adresa,2,temp1,false);
   lc.setRow(adresa,1,99);
   lc.setRow(adresa,0,78);
   *teplota = Tca;
}
 
void loop(){
  zpracujTeplotu(0, ThermistorPina, &teplotaa);
  zpracujTeplotu(1, ThermistorPinb, &teplotab);
  zpracujTeplotu(2, ThermistorPinc, &teplotac);
  delay(300);
}
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovy WWW stránky
jankrizan



Založen: Dec 30, 2007
Příspěvky: 143

PříspěvekZaslal: čt listopad 13 2025, 18:30    Předmět: Citovat

Dík, ale tento program sa zaoberá iba zobrazením teploty, ale ja potrebujem zobrazovať aj poruchové informácie pri dosiahnutí nastavených teplôt a porušení niektorých podmienok. Ak nedokážem urobiť príkazy pre jednolivé displeje, rozhodne nedokážem to nejako napasovať do seba a hlavne aby to bolo funkčné. Máš pravdu, že je to chaotické a aj zložito napísané, ale je to zatiaľ funkčné a hlavne tomu rozumiem, čo chcem vyjadriť a rozumie tomu aj arduino. Jasné, že som mal použiť millis namiesto delay, bohužiaľ je to pre mňa (vysoká škola jadrovej fyziky).
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
asdf



Založen: Oct 06, 2022
Příspěvky: 467

PříspěvekZaslal: čt listopad 13 2025, 18:38    Předmět: Citovat

Tak do té funkce loop() můžeš dopsat ten zbytek.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovy WWW stránky
jankrizan



Založen: Dec 30, 2007
Příspěvky: 143

PříspěvekZaslal: čt listopad 13 2025, 18:48    Předmět: Citovat

Presne tak aj ja uvažujem. Je to naozaj prehľadné a skúsim to zmiešať, čo to povie. Ale až zajtra, už mám z toho osýpky. Zatiaľ veľmi pekne ďakujem. Ak budeš mať záujem mi pomôcť, budem veľmi rád, osobne nemám s kým tieto veci diskutovať. Možeme pokračovať na SZ, nebudeme zahlcovať forum. Ešte raz ďakujem.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
asdf



Založen: Oct 06, 2022
Příspěvky: 467

PříspěvekZaslal: čt listopad 13 2025, 19:14    Předmět: Citovat

Napsal jsem ti SZ.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovy WWW stránky
Zobrazit příspěvky z předchozích:   
Přidat nové téma   Zaslat odpověď       Obsah fóra Diskuzní fórum Elektro Bastlírny -> Miniaturní počítače (Arduino, Raspberry a další) Časy uváděny v GMT + 1 hodina
Jdi na stránku Předchozí  1, 2
Strana 2 z 2

 
Přejdi na:  
Nemůžete odesílat nové téma do tohoto fóra.
Nemůžete odpovídat na témata v tomto fóru.
Nemůžete upravovat své příspěvky v tomto fóru.
Nemůžete mazat své příspěvky v tomto fóru.
Nemůžete hlasovat v tomto fóru.
Nemůžete připojovat soubory k příspěvkům
Můžete stahovat a prohlížet přiložené soubory

Powered by phpBB © 2001, 2005 phpBB Group
Forums ©
Nuke - Elektro Bastlirna

Informace na portálu Elektro bastlírny jsou prezentovány za účelem vzdělání čtenářů a rozšíření zájmu o elektroniku. Autoři článků na serveru neberou žádnou zodpovědnost za škody vzniklé těmito zapojeními. Rovněž neberou žádnou odpovědnost za případnou újmu na zdraví vzniklou úrazem elektrickým proudem. Autoři a správci těchto stránek nepřejímají záruku za správnost zveřejněných materiálů. Předkládané informace a zapojení jsou zveřejněny bez ohledu na případné patenty třetích osob. Nároky na odškodnění na základě změn, chyb nebo vynechání jsou zásadně vyloučeny. Všechny registrované nebo jiné obchodní známky zde použité jsou majetkem jejich vlastníků. Uvedením nejsou zpochybněna z toho vyplývající vlastnická práva. Použití konstrukcí v rozporu se zákonem je přísně zakázáno. Vzhledem k tomu, že původ předkládaných materiálů nelze žádným způsobem dohledat, nelze je použít pro komerční účely! Tento nekomerční server nemá z uvedených zapojení či konstrukcí žádný zisk. Nezodpovídáme za pravost předkládaných materiálů třetími osobami a jejich původ. V případě, že zjistíte porušení autorského práva či jiné nesrovnalosti, kontaktujte administrátory na diskuzním fóru EB.


PHP-Nuke Copyright © 2005 by Francisco Burzi. This is free software, and you may redistribute it under the GPL. PHP-Nuke comes with absolutely no warranty, for details, see the license.
Čas potřebný ke zpracování stránky 0.15 sekund