Цитата(novlev @ May 25 2008, 14:52)

((((((((( нет, вру - не выкрутился. Ситуация следующая:
есть буфер из 20 байтов, начало по адресу 0100 в XRAM. При отправке этого буфера на персоналку периодически пакет портится, а именно 18 и 19 байты меняют значения, при этом контрольная сумма остается правильной(для первоначального пакета). Вот пример процедуры (упрощенный, но ошибка осталась) :
mov DPTR, #000100h
nah_otsuda0:
movx a, @DPTR
mov r6, a
mov r7, #00h;
;-----------------------------------------------------------------------------
;----------------------------------------------------------------------------
call quart_wr;
inc DPTR
djnz r3, nah_otsuda0
Если прерывания запретить, то все нормально работает. Но прерывание только одно(от таймера) и с XRAM я в нем не работаю. Указатель адреса и страници сохраняю в стеке, аккумулятор и регистр расширения(В)...
Надоумте, в чем проблема ????????(ну кроме как в днк)))
Чудес не бывает.
Выкладывайте quart_wr и обработчики всех ваших прерываний.
Да ичто находится между двух строк ;-------------- ?????Если там кусок кода, то выложите этот цикл полностью.
Удачи.