RW-Bereich istPower-Out - Speicherregister des HMI: Adresse 0x0000 ~ 0x7FFF Gesamt 64 KB (32768 × 2 Byte), basierend auf Flash-Speicher, Einschalt-Standardwert 0xFFFF. Parameter, Rezeptur, Betriebszustand wie "Stromausfall kann nicht verloren gehen" Daten hier platziert. Aber es hat eine Lebensdauer und Gruben, die mit schlechtem wird die Firmware zerstören.
1. Eigenschaften der RW-Zone
| Eintrag | 值 |
|---|---|
| Adressbereich | 0x0000 bis 0x7FFF (32768 Wörter) |
| Speichermedium | Flash (Power-Out - Speicher) |
| Standard | 0xFFFF |
| Flash-Lebensdauer | ca. 100.000 Löschen |
| Schreibmechanismus | Interne 4KB Schreib-Cache - Warteschlange, das Löschen pro ca. 400 Schreibvorgänge auslöst |
2. und️ Tödliche Gefahr: Übermäßiges Löschen zerstört die Firmware
der RW-Region undsind physisch benachbart。Wiederholtes Löschen von RW Wenn es in den Firmware-Bereich verbreitet wird, wird das Gerät direkt beschädigt: schwarzer Bildschirm, keine Firmware Blauer Bildschirm. Es ist eine schwere Verletzung, nicht eine Angst.
Flash drücken.fällt(niedrige Adresse zuerst schreiben), die Flag-Bits über die Sektoren haben einKonsistenzrisiko- zwei Bytes eines Flags fallen in verschiedenen Sektoren, Schreiben halb ausgeschaltet kann halb neu und halb alt.
3. Richtige Nutzung der Haltung
- Kontinuierliche Adresse zuweisenKonzentrieren Sie sich auf die Parameter, nicht überall.
- set_array Batch-Schreiben: Schreiben Sie eine Gruppe nach dem anderen
- Set-Schreiben - Frequenz: Schreiben Sie nur, wenn sich der Wert ändert, nicht periodisch
- Flag-Bits im gleichen Sektor: Erfordert Atom-Flags zusammen
- Starten Sie die Grenzwerte überprüfen: Lese RW-Verifizierung der Legitimität (0x55AA Magische Zahl)
function on_init()
-- 上电检查 RW 是否已初始化(魔数 0x55AA)
if get_uint16(VT_RW, 0x2000) ~= 0x55AA then
-- 首次上电,写入默认参数
set_uint16(VT_RW, 0x2000, 0x55AA) -- 魔数
set_uint16(VT_RW, 0x2001, 50) -- 温度上限默认值
set_uint16(VT_RW, 0x2002, 4800) -- 波特率默认值
else
-- 已初始化,检查参数边界
local t = get_uint16(VT_RW, 0x2001)
if t 100 then
set_uint16(VT_RW, 0x2001, 50) -- 越界恢复默认
end
end
endEmpfohlen wird, "das gleiche Sektor-Flagwort + Parameter-Grenze - Überprüfung" Doppel-Strategie: die magische Zahl bestätigt initialisiert, Grenze-Prüfung gegen schmutzige Daten.
Aus dem LUA-Tutorial "RW-Speicher" von Guangzhou Dacai Technology VisualHMI-Entwicklungsdokument (hmi-doc.gz-dc.com), das Urheberrecht im Besitz von Dacai Technology.
Antwort veröffentlichen