Помогите! Проблема с программированием Flash в dsPIC33FJ256GP710. Например необходимо стереть сектор (512 команд) по адресу 0x002800.
Вот кусок программы стирания сектора по этому адресу:
mov #0x4042, w2
mov w2, NVMCON
mov #0,w1
mov w1, TBLPAG
mov #0x2800,w0
mov w0, [w0]
disi #2
disi #5
mov #0x55, w0
mov w0, NVMKEY
mov #0xAA, w0
mov w0, NVMKEY
bset NVMCON, #WR
nop
nop
Но почему-то всегда стирается первый сектор (0...0x3FE), независимо от указанного адреса.
Причем это наблюдается и в симуляторе и на контроллере.
Что я делаю не так?