 |

|
|
Elektronika.lt portalo forumas
Jūs esate neprisijungęs lankytojas. Norint dalyvauti diskusijose, būtina užsiregistruoti ir prisijungti prie forumo.
Prisijungę galėsite kurti naujas temas, atsakyti į kitų užduotus klausimus, balsuoti forumo apklausose.
Administracija pasilieka teisę pašalinti pasisakymus bei dalyvius,
kurie nesilaiko forumo taisyklių.
Pastebėjus nusižengimus, prašome pranešti.
Dabar yra 2025 12 18, 16:44. Visos datos yra GMT + 2 valandos.
|
|
|
 |
Forumas » Mikrovaldikliai » tiesioginis patekimas į atmintį
|
Jūs negalite rašyti naujų pranešimų į šį forumą Jūs negalite atsakinėti į pranešimus šiame forume Jūs negalite redaguoti savo pranešimų šiame forume Jūs negalite ištrinti savo pranešimų šiame forume Jūs negalite dalyvauti apklausose šiame forume
|
|
|
 |
 |
tiesioginis patekimas į atmintį |
Parašytas: 2007 07 25, 18:58 |
|
|
|
|
gal galit pateikt kodo pavyzdžių kaip tiesiogiai skaityt ir rašyt į atmintį (pvz: noriu iš adreso 0x00F01234 perskaityt reikšmę; noriu į adresą 0x00F01234 įrašyt reikšmę 0xA2)
ar mikrokontroleryje galiu naudotis visais programavimo kalbų "perliukais": dinaminiais masyvais, įrašais ir t.t. ar galiu naudotis tokiomis funkcijomis kaip new() delete().
iš kur kompas (čia bendrinis atvejis) žino kuri atminties dalis laisva (kokie new() ir delete() veikimo principai)? aš pavyzdžiui 'užsirezervuoju' masyvui adresus nuo 0x00F00100 iki 0x00F00800. paskui noriu užsirezervuot dar 4MB vietos dar vienam masyvui. iš kur kompas žino kad nuo 0x00F00100 iki 0x00F00800 atmintis jau užimta? sektoriai ( )? |
|
|
|
|
|
 |
 |
tiesioginis patekimas į atmintį |
Parašytas: 2007 07 25, 21:06 |
|
|
|
|
| tai priklauso nuo to koki memory allocator naudosi. jei tiesiog tupa malloc () f-ja, tai jis tau bet kaip ir isskirs atminti. gali pasirasyt savo malloc () f-ja, o jau koki algoritma sugalvosi, tavo reikalas. optimalaus visiem varijantam nera. taciau bet kuriuo atveju 'konkuruoja' dvi puses - arba blogiau isnaudojama RAM atmintis, arba nukencia nasumas. kuo protingesnis malloc algoritmas, tuo geriau isnaudojama RAM atmintis, bet sistema tuo paciu vis labiau tolsta nuo real-time. |
|
|
|
|
|
 |
 |
tiesioginis patekimas į atmintį |
Parašytas: 2007 07 25, 21:27 |
|
|
|
|
kai kalbi apie tokiua dalykus reikia pasakyti koki procesoriu naudoji.
vienas paprascasuaiu budu irasyti viena baita bus toks:
(*int)(0x439876)= 30;
o gal sitaip
(int)(*0x439876)= 30;
nesu labai isitikines del sintakeses nesu tikras, nes pats dariau sitaip:
#define GPIO_OR 0xEF600700
int *mem;
mem=GPIO_OR;
*mem=0x0018F000;
tokiu pat budu galima visa masyva ar struktura padeti reikiamoje vietoje.
su arm visi isoriniai registrai tai atmintis todel daryk taip kaip ir rasytum betkur uzsidefink nauja registra, kaip koki uart ar ADC ir rasyk arba skaityk is jo.
maloc naudojamas kai reikia dinamines atminties kuria galetum paimti paskui atiduoti. paskui vel paimti, ir t.t. |
|
|
|
|
|
 |
tiesioginis patekimas į atmintį |
Parašytas: 2007 07 26, 11:04 |
|
|
|
|
| a tai vat iš kur tas malloc žino kuri atmintis paimta, kuri ne? papildomai valgo atmintį tokiems dalykams? |
|
|
|
|
|
 |
tiesioginis patekimas į atmintį |
Parašytas: 2007 07 26, 11:26 |
|
|
|
|
| maloc turi panaudotos atminties sarasa, ir kai tu kazkike jos paprasai, maloc tau duoda pointeri i ta atminti, ir pasizymi kad kol du negrazinni niekam daugiau jos neduoti |
|
|
|
|
|
|
 |
Google paieška forume |
|
|
 |
Naujos temos forume |
|
 |
FS25 Tractors
Farming Simulator 25 Mods,
FS25 Maps,
FS25 Trucks |
 |
ETS2 Mods
ETS2 Trucks,
ETS2 Bus,
Euro Truck Simulator 2 Mods
|
 |
FS22 Tractors
Farming Simulator 22 Mods,
FS22 Maps,
FS25 Mods |
 |
Dantų protezavimas
All on 4 implantai,
Endodontija mikroskopu,
Dantų implantacija |
 |
FS25 Mods
FS25 Maps,
FS25 Cheats,
FS25 Install Mods |
 |
FS25 Mods
Farming Simulator 25 Mods,
FS25 Maps |
 |
ATS Trailers
American Truck Simulator Mods,
ATS Trucks,
ATS Maps |
 |
Must have farming mods
Farming simulator modhub,
Best farming simulator mods |
|

|
 |