Fórum témák
» Több friss téma |
A klónok CH340 Soros-USB illesztőjének drivere (Letöltés)
Flash Memory 32 KB (ATmega328P)
of which 0.5 KB used by bootloader SRAM 2 KB (ATmega328P) EEPROM 1 KB (ATmega328P) Bővebben: Link
Kicsit össze szedtem:
Sketch uses 1 962 bytes (6%) of program storage space. Maximum is 32 256 bytes. Global variables use 55 bytes (2%) of dynamic memory, leaving 1 993 bytes for local variables. Maximum is 2 048 bytes. A hozzászólás módosítva: Okt 31, 2016
Kösz megkaptam - továbbadtam de most még durcos, mert jo 2 orat ült rajta és semmi sem megy. ....
![]()
Gép ujraindít, arduino leszed, újrarak, gép ujraindít, tesztel.
Nálam már előfordult ilyen.
Ezt a programot töltsd fel és soros porton figyeld a címzést. 0x27 vagy 0x35.
Köszi, igen ez megvan meg ismerem is, azt csak azért írtam, hogy azon lefordítottam, hogy maga a program menyit foglal. De amire feltölteném az attiny85 elvileg 6012bytes helye van.
De szerintem valami a servo.h val kapcsolatosan nem tetszik senki csak még nem tudom mi.
Szia. De jó fej vagy,köszönöm.
![]() ![]()
A megszakítások nem tetszenek neki gondolom mert ezen a panelen nincs quarz, így sajnos ez a progi nem fog itt lenni
![]() A hozzászólás módosítva: Okt 31, 2016
Ne igazán győztél meg!
Már kaptam így, kellemetlenül erőszakos reklám küldő vírust! Inkább hiszek az Esetnek! És mellőzöm a kíváncsiskodást!
Bármit én sem nyitok meg, de icserny kolléga megbízható helyen oszt meg.
Sziasztok!
Van egy program ami RTC-ből veszi a dátumot és az időt (ezt nevezzük "pontos időnek"), a feladatom az lenne, hogy egy más általam megadott időpontot (dátum, óra, perc) hasonlítson össze a pontos idővel és ha a két érték egyforma, vagy a pontos idő már elhaladt a megadott időponton akkor egy kimenet magas állapotba kéne hogy kerüljön. Ez így megoldható akár egy ilyen iffel is:
Viszont ez csak azt figyeli hogy megegyezik e a két időpont és ugye ez csak 1 percig áll fent. Ezzel az a baj, hogy ha ebben az időpontban áramszünet van akkor a program le marad az eseményről. (Nyilván a megadott időpontot is az eepromba kell írnom.) Valami nagyobb egyenlő megoldás kéne, de az meg kilőve a ciklikus ismétlődés miatt (0-59-0 stb).
Szia!
Egyelőre csak annyit tennék, hogy egymásba ágyaznám a feltételeket és a másodperceket is figyeltetném.
Áramszünet esetén, ha ujra indul akkor belefut, és ha éppen kellene neki kapcsolnia akkor fog. Ha olyat szeretnél, hogy akkor is jelezzen, ha áramszünet volt, de eltellt az idő, akkor egy logikai változót kellene még valahova felvenni, és azt elmenteni. Természetesen összevonhatod ezeket az if szerkezeteket, de talán így átláthatóbb.
Amit én csinálnék: Hónap, nap, óra, perc. Ezeket a számokat egymás mellé rendezném, pl. December 5, 13:30 --> 12051330. Ezt eljátszani mindkét oldalon. Ha a két érték egyezik vagy az RTC értéke magasabb mint a megadott, mehet az akció.
Már csak azt kell tisztáznod, hogy mennyivel utána is jelezzen még, ugyanis. Ha te január 5.-én akarsz egy riazstást, akkor egészen december 31 -ig bezárólag aktiválódni fog. Ez kicsit kevesebb, mint 12 hónap. Ha december 10.-én kell jelezni, akkor december 31-ig csak 21 nap van, január 1-től már nem fog a kimenet magasra állítódni. Érdemes belevenni az évet is és meghatározni, hogy az esetleges mulasztás meddig legyen érvényben.
Ok, félreértettem a feladatot. Bocsánat.
Kicsit fáradt vagyok, ha nem értem a feladatot akkor bocsánat.
Ha az a gond, hogy hoszabb áramszünet volt, ami átfedte a kapcsolási eseményt és szeretnéd, hogy kapcsoljon akkor is, akkor egy lehetséges megoldás. Az eepromba az időpont mellé felveszel egy byte-ot is, ami megmondja, hogy lefutott-e ez az esemény az Arduino felől. Kezdetben ez 0. Ha belefut a fenti kódodba, akkor az adott esemény utáni byte legyen 1. (digital write után írni kellene az eepromba) Arra kell figyelni, hogy az eeprom írás is csak 1x fusson le az alarm alatt, mert hamar kinyiffanhat. (felesleges több százszor írni) Namármost, kellene egy függvény, amit a setup-ból hívsz meg. Ez a függvény végignézi az eepromban naplózott időpontokat, vizsgálja, hogy van-e olyan esemény (események), ami már eltelt, de a mellette lévő byte 0. Ha igen, akkor jelezzen akár 1 percig is, majd adja vissza a vezérlést a main loop-nak. (vagy míg a felhasználó valamilyen billentyű kombóval meg nem szakítja.)
Sziasztok,
Adott az alábbi forráskód, amivel az a baj, hogy ha 0-val kezdődő Hexadecimálist akarok kiírni, akkor a 0-ás lemarad a kiírt eredmény elejéről.
Szerintetek mi lehet a gond? Hogyan lehetne megoldani, hogy a 0-ást is kiírja soros monitorra? A választ előre is köszönöm!
Küldd el szövegként. 0xA0 = 160, 0x0A = 10. A 0x utáni két karakter egy számot jelöl, nem pedig két karaktert.
0000000A = A A0000000 = A0000000 Vagy keress olyan monitort, ami automatikusan kiírja a nullát is az A elé.
Köszi ez jó ötlet, viszont valóban bele kell vennem az évet ennél a logikánál. Kicsit többet le írok a lényegéről hogy jobban érthető legyen mit is akarok. Ez egy zárt ládika amiből addig nem lehet kivenni semmit, amíg az adott időpontot el nem értük, miután elértük nyitható és visszacsukás után be lehet állítani egy másik időpontot. Pl a karácsonyi ajándékot oda tudom adni októberben, de megnézni csak dec 24 este 6 után lehet
![]()
Elég nagy aljasság így ajándékozni.
![]()
Köszönöm szépen mindenki válaszát!
Bakman: Holnap megprobálom a Bray Teminal-al. Kiváncsi vagyok, hogy az mutassa-e. pjg: Ha idézőjel közé teszem, az nem oldja meg a problémát, mert az érték a program futása közben változik. (Most csak példaképpen írtam oda, hogy 0xA0). Agent_Z: A linken amit küldtél a második (bootsector által írt) hozzászolásban lévő forráskodót kiprobáltam és jónak tünik. Holnap még kifogom egészíteni azzal, hogy az &ByteDatum méretét ne kelljen mindig megadni, hanem maga a függvény számolja ki.
Gondolom, nekem még nem volt. A rendes sem nagy durranás, egy szintillesztő az elején (talán 3 tranzisztor, meg két kimenet igénye van) rákapcsolja a 12V-ot, a végén meg le. A többi folyamat 5V-on zajlik. Talán az égető impulzusra van időbeli megkötés ( de az is 5V -os jel. )
Ha rtc-t használsz, talán van olyan, ami helyből tudja a megszakítás lábon jelezni, ha a két beírt időpont egyezik.(ds3231) Ha az elemről megy, akkor lehet processzor csak a felprogramozáshoz kell, utána le is kapcsolható.(ami akár a dobozba rakást is lehetővé teszi.) A másik ha az ajándékozottat érdekli mi van a dobozban, csak figyel az időpontra.( ha csak úgy nem jár a dobozzal, mint Wilson bácsi a virággal )
A hozzászólás módosítva: Okt 31, 2016
Szia. Megcsináltam,beraktam egy tranzisztort. tökéletes két szálon lehet vezérelni a fogásirányt és a sebességet. Köszönöm ismét
![]()
Nektek mit dob a soros monitoron értéknek?
Nekem -21072. Most én vagyok hülye?
Teljesen jól csinálja. Egy szóval sem mondtad neki, hogy a szorzást ne 16bites előjeles számokkal csinálja, hanem 32bites módon.
Bakman: A Bray Terminálban is ugyanugy jelenik meg, mint a soros monitorban.
Agent_Z: Amit linkeltél, annak az első hozzászolásában található kódot copy-pasteltem és jól müködik. A mérettel végül nem kellett foglalkozzak, mert 16 elemből álló arrayt kell mindig kiírni. |
Bejelentkezés
Hirdetés |