Jump to content

    
Sign in to follow this  
VslavX

Проблема с LPC1768

Recommended Posts

Upd: почитал про DWT (Data Watchpoint and Trace) - не пойдет, процессор именно останавливается, а не генерирует исключение. Таки остается только MPU.

А про Flash Patch and Breakpoint (FPB)? Как я понимаю, надо читать документацию от ARM, а не от NXP.

 

Share this post


Link to post
Share on other sites
А про Flash Patch and Breakpoint (FPB)? Как я понимаю, надо читать документацию от ARM, а не от NXP.

Угу, нуна читать "Cortex™-M3 r2p0 Technical Reference Manual".

FPB патчит I-шину, можно "на лету" заменить код инструкции. Мест там несколько, и одной инструкцией на место не обойдешься. На подпрограмму просто не перейдешь RAM от BootROM далеко, LR испортится, появляется вариабельность по версиям загрузчика и прочее. Проще патчить D-шину, а такой фичи в FPB нету. Хотя... Можно пропатчить на инструкцию SWI. Но, блин, это исключение у меня тоже используется. Думаю что на MPU сделать проще, во-первых не весь загрузчик дизассемблирован, возможно где-то есть еще обращения к глючной таблице, во-вторых c MPU уже досконально разобрался и он уже для виртуализации используется, проблема только в выносе части кода в RAM.

 

Upd: вчера провели ревизию склада - куплено пока всего две упаковки по 90 штук, на одной из них есть зеленая круглая наклейка и этикетка "RESCREEN". С MPU решил не возиться, вместо этого разбираю алгоритм прямой записи, хочется еще маленькими кусочками память писать а не по 256 байт.

Share this post


Link to post
Share on other sites
С MPU решил не возиться, вместо этого разбираю алгоритм прямой записи, хочется еще маленькими кусочками память писать а не по 256 байт.

Вроде итак можно, хоть по 16 байт. Только ненужные байты забиваются 0xff.

Edited by GetSmart

Share this post


Link to post
Share on other sites

Этот же баг обнаружился в LPC1759, SN1566.1 01 ZSD1009-.

Версия загрузчика 4.2.

Кстати, чтобы собрать всю информацию в одном месте:

Если смотреть память процессора через SWD с притянутой к земле P2.10 (запуск загрузчика), то по нулевым адресам видно ПЗУ загрузчика. Если с отпущенной - видно зашитую программу.

То же самое происходит при попытке верификации 0 сектора через ISP - возникает ошибка верификации.

 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this