Hirdetés
- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
- OLED TV topic
- Milyen TV-t vegyek?
- Projektor topic
- 3D nyomtatás
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- Picit gazdaságosabb és halkabb lett a PlayStation 5 Pro legfrissebb verziója
- TCL LCD és LED TV-k
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Milyen videókártyát?
Új hozzászólás Aktív témák
-
Szirty
őstag
válasz
horvathcsaba
#252
üzenetére
Helló Csaba!
A kódhoz lenne hozzáfűzni valóm ha nem gond. Kizárólag építő jelleggel, nehogy cseszegetésnek vagy okoskodásnak vedd!
- A ciklusmagon belül, vagy a blokkon belül használt átmeneti értékeket szerintem lokális változókban tárold, de globálisban. (A merkerek és a shared DB minden eleme globálisak). Ennek töb előnye van:
1. Másik blokk, a program egyéb részei nem tudnak véletlenül se belenyúlni, nehezebben rontod el a programot (pl. nem emlékszel, hogy az MW10-et már felhasználtad az egyik blokkban ciklusváltozó ként és egy másik blokkban is fel akarod használni).
2. Miután a blokk lefut, a változóra nincs szükség.
Az ilyen változókat tehát lokálisként érdemes deklarálni (TEMP).És az az érdekes dolog állt elő, hogy csak az utolsó megcímzett elem utáni elem tartalmazott értéket. Na de rájöttem!
Hát igen, ha alacsony (2 byte-on is ábrázolható) értékeket duplaszavakba pakolsz és azokat 2 byte-os átfedéssel rakod le, akkor a következő dupla szó felső 2 byte-ján lévő 00 mindig felülírja az előzőleg lerakott duplaszó alsó két byte-jén lévő nem nulla értéket.
VAn-e arra lehetőség, hogy dinamikusan foglaljak le memóriaterültet? Pl 'x' elemű tömb kellene, de az 'x' a program betöltésekor még nem ismert. Vmilyen felhasználói interakció lévén derül ki.
Tanulmányozd a "STEP 7 - System and Standard Functions for S7-300 and S7-400" címűPDF-et (a Step7 alapból feltelepíti).
Abban is a következő rendszerhívásokat:
- Creating a Data Block with SFC 22 "CREAT_DB"
- Deleting a Data Block with SFC 23 "DEL_DB"
- Generating Data Blocks in Load Memory with SFC 82 "CREA_DBL"
- Reading from a Data Block In Load Memory with SFC 83 "READ_DBL"
- Writing a Data Block in Load Memory with SFC 84 "WRIT_DBL".
- Creating a Data Block with SFC 85 "CREA_DB"Szerintem ezekkel meg tudod oldani. De arra számítani kell, hogy egy csomó folyománya lesz az ügynek. Pl. ellenőrizni kell, hogy a létrehozandó adatblokk egyáltalán elfér-e a szabad memóriában, stb.
vagy ezt úgy érdemes csinálni, hogy jó nagy területet foglalok le és csak bizonyos részét használom?
Igen, sokszor ez az egyszerűbb, és nem utolsó sorban biztonságosabb.
Azonban ez pazarlásnak tűnik.
Bizonyos értelemben igen. De gondolj arra, hogy a PLC memóriája adott. Ha ennek a memóriaterületnek egy részét takarékosságból szabadon hagyod, az ugyanolyan pazarlás, mint az, hogy lefoglalod az egészet, de értelmes adatot valószínűleg nem töltesz bele.

Új hozzászólás Aktív témák
- Megyünk a CES-re! Mi várható?
- Cseresznyepiros és mokka barna Redmi Note 15-ök az újévre
- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
- Luck Dragon: Asszociációs játék. :)
- Gyúrósok ide!
- OLED TV topic
- Sorozatok
- Megtartotta Európában a 7500 mAh-t az Oppo
- NFL és amerikai futball topik - Spoiler veszély!
- Energiaital topic
- További aktív témák...
- Apple iPod Video (5. Gen) 30GB - A1136 - Wolfson DAC - Gyűjtői állapot!
- Olcsón! LG 34WR55QC-B 100Hz 21:9 UltraWide USB-C PD Machez is! Gari: 2027.áprilisig.
- Liquid Freezer III 360 - használt, garancia: Alza 2031.02.16-ig - ALKUKÉPES.
- Asus Rog Strix G513 144hz Laptop Eladó!
- Mobil LTE hotspot router TP-Link M7200 V4 4G/LTE 150Mb/s,WiFi 2,4GHz 300M
- magyar billentyűzet - 165 - Lenovo Legion Pro 7 (16IRX9H) - Intel Core i9-14900HX, RTX 4080
- LG 65C4 - 65" OLED evo - 4K 144Hz - 0.1ms - NVIDIA G-Sync - FreeSync - HDMI 2.1 - 1000 Nits
- ÁRGARANCIA!Épített KomPhone Ryzen 7 7800X3D 32/64GB RAM RX 9070 XT 16GB GAMER PC termékbeszámítással
- Microsoft Surface Laptop 5 13,5" Fekete i7-1265U 16GB 512GB magyarbill 1 év garancia
- HIBÁTLAN iPhone 13 Mini 128GB Starlight -1 ÉV GARANCIA - Kártyafüggetlen, MS4181, 94% Akksi
Állásajánlatok
Cég: Laptopszaki Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest



