Zaslal: út červen 10 2014, 23:01 Předmět: Arduino - delay nebo millis?
Ahoj,
potřebuji měřit teplotu místnosti, ale stačí mi ji měřit cca jednou za 5 minut.
Je pro procesor lepší na tuto dobu dát funkci delay (delay(300000)) a nebo je to jedno a mám to udělat přes millis?
Jde mi o to, jestli procesoru ulehčím práci pomocí funkce delay.
Díky, Mirek
Založen: Jan 12, 2009 Příspěvky: 594 Bydliště: Pelhřimov
Zaslal: st červen 11 2014, 8:32 Předmět:
a co přes časovač a mezitím uP uspat? _________________ Pokud něco chcete a neodpovídám,pošlete SZ
https://chiptron.cz - novinky ze světa elektro (Arduino, Raspberry Pi, ESP8266, STM32, ESP32...)
Peťus
Založen: Jun 14, 2003 Příspěvky: 2804 Bydliště: Blížejov
Zaslal: st červen 11 2014, 16:14 Předmět:
A je třeba, aby Arduino dělalo i něco jiného?
Delay je funkce, kdy to opravdu "čeká" a nic jiného nedělá, dá se z toho stavu dostat pomocí přerušení (pokud bude mít potřebnou prioritu), ale pak už se nemusí vrátit a pokračovat ve správném čase.
Při funkci MILLIS se dá zpracovávat i něco jiného, ale musí se pomocí MILLIS pravidelně zjišťovat, jestli už uplynuly ty správné milisekundy...
Elegantní by to bylo přes přerušení od časovače, jak píše PETUS, pak je jedno, jestli bude SLEEPnutý, nebo nebude dělat nic nebo bude dělat něco jiného.
Nic jiného dělat nebude, pouze změří teplotu a odešle ji na do databáze MySQL pomocí PHP
Díky za pomoc, šlo mi o to, abych nemusel ten procesor třeba za měsíc měnit
Jde mi o to, jestli procesoru ulehčím práci pomocí funkce delay.
...
Díky za pomoc, šlo mi o to, abych nemusel ten procesor třeba za měsíc měnit
Představa, že se procesor dá nějak šetřit aby déle vydržel (jako třeba motor auta), není správná.
Procesor, pokud není v režimu "sleep", vykonává nepřetržitě jednu asemblerovou instrukci za druhou, bez ohledu na to co mu napíšeme v programu.
Takže jeho 'zatížení' je stále stejné, ať čeká v nějaké zpožďovací funkci, nebo počítá složitý matematický příklad.
Možná by mcu ani nemusel padat do SLEEP. Ale pokud jeho plný výkon není třeba jindy např. při odesílání té teploty, tak bych jej taktoval na co nejnižší frekvenci, at zbytečně moc nežere.
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
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.