Написал простенькую прогу по записи данных в ОЗУ.
int main()
{
unsigned long *data_inp;
unsigned long *ddr_addr;
data_inp=(unsigned long*)0x4030000;
ddr_addr=(unsigned long*)0x2000003;
while (1)
{
*ddr_addr=*data_inp;
iprintf("input %08x %03i\n", data_inp, *data_inp);
iprintf("ddr %08x %04i\n", ddr_addr, *ddr_addr );
ddr_addr++;
}
}
Результаты в консоли
input 04030000 255
ddr 02000003 0255
input 04030000 255
ddr 02000007 0255
...
input 04030000 255
ddr 02000203 0255
input 04030000 255
ddr 02000207 281018391
input 04030000 255
ddr 0200020b -524288489
...
в начале пишет нормально в ОЗУ, а потом после адреса 02000203 начинает писать всякую ерунду. Что надо прописать в проге, чтобы нормально происходила дальше запись?