Ukladani nastaveni v programu pro MCU
Pavel Hudecek
edizon na seznam.cz
Středa Červen 1 14:47:39 CEST 2016
Udělal bych jednu velkou nadřazenou strukturu, ve které to všechno bude. K ní se pak dá přes pointer přistupovat jako k poli a po bajtech kopírovat mezi EEPROM a RAM.
PH
From: hwnews konference
jiz po nekolikate nad tim dumam a nejsem schopny se rozmyslet jak vec resit...
Rozhodl jsem se prastit do toho MPPT solarniho reglu a nejak jej dotahnout aby byl i uzivatelsky privetivy - hlavne jde o to jej nejak rozumne konfigurovat z nejakeho terminalu.
Jenze nez jsem se dostal k tomu tak jsem zjistil, ze prvotni bude vubec ta data nejak zorganizovat abych se moc nedrel...
V nastaveni reglu je radove desitky konfiguracnich promennych v rozsahu 8-32bitu - navic je nelze menit jednu po druhe, nebot nektere jsou spolu svazane - je tedy nutne mit pracovni banku registru a pak tu konfiguracni a nejakym pokynem z terminalu se to z te konfiguracni prepise cele do te pracovni.
Dalsi vec je, ze pracovni banka by mela byt ulozena v EEPROM, ktera je organizovana osmibitove musim tedy mit nejak zorganizovano kde co konci...
zatim jsem se propracoval k nadefinovani typu registru:
type Reg_dword = record
modi : boolean; //modifikace konfiguracni banky
r0 : dword; // pracovni banka
r1 : dword; // konfiguracni banka
eeprom : word; //pocatecni adresa
delka : byte; //pocet byte registru v EEPROM
end;
type Reg_word = record
modi : boolean;
r0 : word;
r1 : word;
eeprom : word;
delka : byte;
end;
type Reg_byte = record
modi : boolean;
r0 : byte;
r1 : byte;
eeprom : word;
delka : byte;
end;
tohle ale resi popis tech vlastnich promennych - neresi to silenou pracnost s modifikacema a hromadnymi operacemi - idelani by bylo mit moznost tyhle registry v nejakem poli, kde jej pak mohu v prikazech terminalu snadno trefovat stylem pole[1].r0 a v cyklech treba ukladat do EEPROM aniz bych musel striktne resit adresovani - stacilo by si v cyklu pripocitavat aktualni adresu.
Problem je, ze do pole ruzne recordy nenacpu nebo nevim jak na to....
------------- další část ---------------
HTML příloha byla odstraněna...
URL: <http://list.hw.cz/pipermail/hw-list/attachments/20160601/66e33008/attachment.html>
Další informace o konferenci Hw-list