Aktív témák
-
Blackmate
senior tag
Helloka Mindenki!
Egy algoritmus-ra lenne szüksegem, amely egy 512 byte-kra darabolja fel az adatot.
Egy kis körites, hogy vilagos legyen: adott egy speci mikrokontroller, amelynek 32 kbyte belsö memoriaja van. Attol speci, hogy USB-n kapcsolodik a gephez, es egy FPGA van rakötve. Az FPGA 512 byte-os adatokat tud fogadni, ezert kell az USB-n keresztül informaciot reszekre darabolni.
Peldaul:
''Ez egy hetvenhet karakterböl allo szöveg amelyet ket reszre szeretnek bontani''
Ezt a szöveget 2 reszre bontva, 2 csomagba akarom elküldeni valahogy igy:
1. darab: ''Ez egy hetvenhet karakterböl allo szöveg amelyet ket reszre szer'' //64 unicode karakter
2. darab: ''etnek bontani''
Remelem erthetö voltam, es elöre is köszönök minden ötletet, segitseget.
Üdv: Blackmate -
Blackmate
senior tag
válasz TheVeryGuest #2 üzenetére
Huha Az micsoda?
I´m too LaMe -
TheVeryGuest
senior tag
Veszel egy sima unsigned char tömböt, mondjuk 10x512byte-osat. Fogsz egy pointert, ami a buffer kezdetét fogja mutatni, meg egyet, ami a végét. Kezdetben mindkettő a tömböd elejére mutat. Szükslég lesz még egy változóra a felhasznált bufferhossznak. Evidens, hogy egyszerre, csak teljes méret (10x512) - felhasznált méret bájtot tudsz csak beleírni. Mikor beírsz valamit, mindig az aktuális végmutató utáni helyre írod. Csak arra kell figyelni, hogy ne lógj túl a tömbön. Ha túllógnál, akkor kiírod azt a részt, ami még kifér, a maradékot, meg a tömb elejétől, a buffer kezdetetét mutató pointerig lehet írni.
Tehát körbe-körbe haladsz a buffer használata során, ettől ringbuffer.
Miután beleírtál valamit fogod megnézed, hogy a felhasznált méret > 512 byte, ha nagyobb akkor kiírhatsz egy csomagot az USB-n keresztül. Majd lépteted a buffer elejét mutató pointert 512byte-tal. Ha eléred a tömb végét, akkor folytatod a léptetést, az elejétől.
Nem tom mennyire világosan írtam le, ehhez inkáb rajzolni kellene, de talán az ötletet megérted, és akkor csak a megvalósítással kell pöcsölni. Már ha jól értettem a problémát.“Perfection is attained not when there is nothing more to add, but when there is nothing more to remove” Antoine de Saint-Exupéry
Aktív témák
- Honda topik
- VR topik (Oculus Rift, stb.)
- Kamionok, fuvarozás, logisztika topik
- Exkluzív funkcióval tenné vonzóbbá az ARM-os PC-ket a Microsoft
- Milyen okosórát gyermekeknek?
- Alkoholista nevelde
- Windows 10
- Azonnali VGA-s kérdések órája
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Gaming notebook topik
- További aktív témák...
- XBOX ONE/PS4/PS5/XBOX SERIES/NINTENDO SWITCH konzolt vásárolnék!
- XBOX SERIES/PS4/PS5/XBOX ONE/NINTENDO SWITCH konzolt vásárolnék!
- PS5/PS4/XBOX ONE/XBOX SERIES/NINTENDO SWITCH konzolt vásárolnék!
- Új Dobozos Lenovo Ideapad Flex 5 x360 Érintős Ultrabook Óriás Tab 16" -40% Ryzen 5 5500U 16/512 QHD
- PS4/PS5/XBOX ONE/XBOX SERIES/NINTENDO SWITCH konzolt vásárolnék!