Страница 1 из 1

Энергонезависимая память (RW, RW_A, RW_bit, RWI, RBI)

СообщениеДобавлено: 27 мар 2014, 12:58
VanMo
В: Почему после записи в энергонезависимую память и выключения панели, значение не сохраняется?
О: Запись непосредственно в энергонезависимую память происходит не чаще раза в минуту. Поэтому, после записи в ячейку RW/RW_A должна пройти минимум минута чтобы значение сохранилось. Это сделано для сохранения ресурса энергонезависимой памяти.

В: Как записать данные в энергонезависимую память не дожидаясь пока панель соизволит сделать это?
О: Используйте системный бит LB-9029, установка этого бита производит немедленное сохранение регистров RW и RW_A.

В: Если я хочу сохранять данные в энергонезависимую память каждую секунду, при этом используя LB-9029, на долго ли хватит ресурса памяти?
О: В этом случае, так же не надо беспокоиться о ресурсе памяти, у панели есть другие механизмы экономии ресурса.
Например, при многократной записи в одну и ту же физическую ячейку, панель может использовать другие свободные ячейки.

В: Чем отличается RW от RW_A?
О: Это две разные области энергонезависимой памяти, по использованию они ни чем не отличаются.
Например, адреса RW-8 и RW_A-8 ссылаются на разные ячейки памяти.

В: Что такое RW_bit и RW_A_bit?
О: Это побитовая адресация к областям энергонезависимой памяти RW и RW_A. Правило задания битового адреса есть в отдельной теме.

В: Что такое RWI?
О: RWI - это индексная адресация для RW. В регистре LW-9000 задается смещение.
Например, если задать адрес для объекта - RWI-1, а в регистре LW-9000 будет "0", то это все равно что объект был бы связан с RW-1.
Но если вы меняете значение LW-9000, то адрес будет смещаться на величину LW-9000. Если записать туда, например, 3, то адрес будет ссылаться уже на RW-4.

В: Что такое RBI?
О: RBI тоже ссылается на RW, но побитово, смещение так же берется из LW9000. Номер бита при этом задается жестко.

В: Сохраняются ли значения в этих регистрах при обновлении прошивки (firmware) панели?
О: Сохраняются.