Зачем копировать ram в xram?
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено иа 18 августа 2003 г. 21:25
В ответ на: Спецы по С166 (Keil):есть вопрос такого рода: отправлено ALEX_Mir 18 августа 2003 г. 20:45

почему бы просто не реализовать напр walking "0", walking "1" при пом этого макроса сразу по внешней памяти? имхо a66 работает быстрее ...

а так??


//-----------------------------------------------------------------------------
int write_word(long addr, unsigned int value)
{unsigned int _ch;
MVAR(unsigned int, addr)= value; // - write word
return _ch;
}
//-----------------------------------------------------------------------------
int verify_word(long addr, unsigned int value)
{unsigned int ch;
ch = MVAR(unsigned int, addr);
if(ch != value)
{printf("\nSab80C16x> Verify Error[at %06lx [%04x - %04x]] \n", addr, (unsigned int)value, (unsigned int)ch);
return _MC_VERIFY_ERROR;}
return _MC_OK;
}
//-----------------------------------------------------------------------------
int write_buf(unsigned int *wbuf, long addr, int size)
{int i;
int rc;
for(i= (size>>1); i > 0; i--, wbuf++)
{if((rc= write_word(addr, *wbuf))!= _MC_OK) { putchar(rc);return rc;}
addr+=2;}
reset_flash();
return rc;
}
//-----------------------------------------------------------------------------
int verify_buf(unsigned int *wbuf, long addr, int size)
{int i;
int rc;
for(i= (size>>1); i > 0; i--, wbuf++)
{if((rc= verify_word(addr, *wbuf))!= _MC_OK) { putchar(rc);return rc;}
addr+=2;}
return rc;
}


Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru