Hirdetés
- Poco F7 Pro - jó, de az amatőr sem rossz
- Honor Magic7 Pro - kifinomult, költséges képalkotás
- Google Pixel topik
- Milyen okostelefont vegyek?
- One mobilszolgáltatások
- Vivo X200 FE – fenséges méret
- MIUI / HyperOS topik
- Ez lehet az Apple hajlítható telefonjának formája, mérete
- Huawei P40 Pro - kilökték a célegyenesben
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
-
Mobilarena
Arduino hardverrel és szoftverrel foglakozó téma. Minden mikrovezérlő ami arduinoval programozható, és minden arduino program, board, és hardverrel kapcsolatos kérdések helye.
Új hozzászólás Aktív témák
-
JulianSinulf
őstag
Köszi!
Akkor az EEPROM-ba nagyon sok chip elfér, emiatt nem kell aggódnom.Akkor már csak az a kérdés, hogy lehetne ezt megfelelően leprogramozni.
Az elképzelés:
Fut egy alapprogram, mely a beléptetést vezérli. Ami kódokat most néztem, az alapján ez elég egyszerű, mert, ha nincs mit leolvasni, akkor a program mindig visszatér a leolvasáshoz. (Ez volt az egyszerű.)
Ide be lehetne tenni egy olyat, ha lenyomok egy gombot és "nyomva tartom", akkor a program továbbfut a kódbeírás részére.
Illetve, ha valaki megnyomná a csengőt, akkor a kód a dallamos részre ugorna.
Ezek az ugrálások már nem annyira egyszerűek, de a 2WD autó kódjából talán ki tudom hámozni a nekem kellő sorokat.
Chip felvitel:
Szóval megnyomtam a gombot, a kijelzőn megjelenik a "Bevitel" felirat és várja a chip odatartását. Esetleg egy 10s visszaszámlálással, mert hiába nyomom folyamatosan a gombot, az úgyis csak akkor számít, mikor a kódban a lekérdezése sor hajtódik végre.
Ha nem olvas be semmit, akkor 10s után visszatér az alap programhoz. Először azért gondoltam a gomb nyomva tartása opciót, mert akkor nincs szükség erre az időzítésre.
Ha sikerül a beolvasás, akkor kiírja az UID-t, majd egy újabb leolvasást kér és a két eredményt összehasonlítja. Ha megegyezik, akkor beleírja az EEPROM-ba az értéket.
Ami kérdéses számomra, hogy tudom megoldani a visszaszámlálást, miközben a chip-et is be kellene olvasni. És amikor olvasás történik, akkor a visszaszámlálás értelemszerűen leállna. Vagyis a processzornak egyszerre két feladatot kellene ellátnia.
Majd a másik kérdés, hogyan tudom beleírni a kapott eredményt az EEPROM-ba úgy, hogy egy következő chip bevitele ne írja felül akkor sem, ha újraindulna a program (áramszünet, reset).
Beléptetés:
Az EEPROM tartalmát megfelelően ki kell olvasni és eltárolni. Ez lesz összehasonlítva a belépéshez használt chip adataival. Viszont, ha nő a chip-ek száma, akkor a tárolók számát is növelni kell.
Úgy emlékszem erre is van valamilyen megoldás.
A másik megoldás, hogy egy tárolót használok és minden beléptetésnél ebbe a tárolóba olvassa ki a tárolt értékeket addig, míg az egyikkel egyezés van és beléptet vagy a végére érve nem enged be. Értelemszerűen nem akarok 128 UID értéket kiolvasni, ha csak 1, 2, 3, stb. van eltárolva.
Nem tudom, hogy időben ez mit számítana, gyanítom, hogy nem sokat pár chip esetén.És így visszaolvasva az írtakat eszembe jutott, hogy kellene egy törlési rész is. Mert, ha elhagynám a chip-et, akkor nem lenne jó, ha benne maradna a programban.
Akkor viszont sorszámozni kell az UID-ket az EEPROM-ban, hogy törlésnél egyszerű legyen kiválasztani a megfelelőt és olvasásnál értelemszerűen az üreseket kihagyni, de ott nem megállni. Vagyis mégis csak végig kell olvasni az EEPROM-ot.
Hacsak nem lehetne eltárolni az EEPROM egy részén, hogy mennyi chip van felvíve. Ez egy szám lenne. Bevitelnél nőne, törlésnél csökkenne az értéke egyel. És a program csak addig olvasná az EEPROM-ot, míg el nem éri ezt a bizonyos értéket.Így végigolvasva, hogy mit is szeretnék, nagyon szép, de sokkal egyszerűbbnek tűnik, hogy a kódban adom meg az engedélyezett chip-eket és, ha bővíteni kell, akkor bővítem a kódot és újraprogramozom az Arduino-t. Ha meg törölni kell, szintén ugyanez.
Az UID leolvasásához meg:
a) fenntartok egy külön erre a célra készült olvasót (nem valószínű),
b) kiolvasom a meglévő chip-eim adatait és ezt eltárolom megfelelően, így később nem kell már a kiolvasással bajlódnom (új chip vásárlása esetén bukta a dolog, de jelenleg van vagy 10 darab),
c) ha a chip nincs a programban, akkor kiírja az UID-t a kijelzőre. Azt fel tudom írni vagy lefényképezni és be tudom vinni gépen a kódba, majd a gépet az ajtóhoz vinni és felprogramozni helyben (ez a legesélyesebb tekintve, hogy nem számítok túl gyakori módosításra).Várom a javaslatokat, észrevételeket, ötleteket, hibákat a gondolatomban!
Új hozzászólás Aktív témák
- OLED TV topic
- Mit tud egy nagy név? Teszten az Acer Predator Orion 5000 PC
- Synology NAS
- ThinkPad (NEM IdeaPad)
- A foltozásra fókuszált az új GeForce driver
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Abarth, Alfa Romeo, Fiat, Lancia topik
- League of Legends
- Okos Otthon / Smart Home
- Kamionok, fuvarozás, logisztika topik
- További aktív témák...
- PS4 FAT (1216A 12.02 GOLDHEN)
- FÉLÁRON SZINTE ÚJ HP HyperX Cloud Stinger Bolti ár:25k INGYEN FOXPOST
- Bomba ár! Fujitsu Lifebook T936: i5-6G I 8GB I 256SSD I 13,3" FHD Touch I Cam I W10 I Gari!
- Bomba ár! HP ProBook 640 G2 - i3-6GEN I 4GB I 128GB SSD I 14" FHD I Cam I W11 I Garancia!
- több db DELL P2417 full HD 1920x1080 IPS monitor HDMI - gari + számla
- Azonnali készpénzes Sony Playstation 5 lemezes és digitális felvásárlás személyesen/csomagküldéssel
- AKCIÓ! Törött Apple iMac 19.2 i5-8500 Radeon Pro 560X 4GB 16GB 256GB SSD 21.5" 4K Retina
- BESZÁMÍTÁS! Intel Core i7 8700 6 mag 12 szál processzor garanciával hibátlan működéssel
- Apple iPhone 15 ProMax 256GB Kártyafüggetlen 1év Garanciával
- BESZÁMÍTÁS! ASUS ROG Crosshair VIII Extreme alaplap garanciával hibátlan működéssel
Állásajánlatok
Cég: Laptopszaki Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
ekkold

