|
LPC 2366 проблема в ISP, Не получается перезаписать начальные адреса Flash |
|
|
|
Mar 25 2015, 12:38
|
Участник

Группа: Участник
Сообщений: 34
Регистрация: 16-01-15
Пользователь №: 84 635

|
Здравствуйте форумчане! Прошу помочь, т.к. уже не знаю что делать... Пишу внутрисистемный (ISP) программатор для LPC 2366, и столкнулся с тем, что в процессе прошивки не получается стереть полностью весь флэш, адреса с 0x00 по 0x40 зарезервированы под вектора прерываний. При форматировании всего флэша посредством ISP-команды "E 0 14\r\n" в этом диапазоне остается что-то, все остальное как и положено - FF. Согласно hex-файлу прошивки, которую я пытаюсь туда записать, в этом диапазоне должны находиться определённые данные, которые туда не записываются. Вот то что надо записать в формате Intel HEX, адрес предшествует данным.
Вот как выглядит флэш после полного форматирования:
Вот что я пытаюсь записать из оперативной памяти во флэш по адресу 0x0:
Во флэше по указанному адресу это появляется в следующем искаженном виде:
Что скажете?
|
|
|
|
|
 |
Ответов
|
Apr 9 2015, 20:25
|
Участник

Группа: Участник
Сообщений: 34
Регистрация: 16-01-15
Пользователь №: 84 635

|
Цитата(Golikov A. @ Apr 9 2015, 19:09)  надо сложить не 5 значений! а всю таблицу векторов, то есть 8 значений (c 0 gj 7), но пропустить 5 слово. а потом инвертировать....
Вам надо сделать так, чтобы сумма первых 8 чисел (32 битных чисел) в итоге давала 0. Вот и рассчитайте какое там должно стоять число чтобы после суммирования стало 0.
очевидно что это сумма всех кроме 5 числа, взятая со знаком минус, суммирование без знаковое. Ну и надо не забывать что данные в памяти лежат в формате LittleEnadian то есть с младшего конца то есть если в памяти лежит 0x11 0x22 0x33 0x44, то это число 0x44332211 откуда ж я знал что там Little Endian... спасибо! теперь все стало на свои места!
|
|
|
|
Сообщений в этой теме
lavrik LPC 2366 проблема в ISP Mar 25 2015, 12:38 Golikov A. Уже было тут недавно про не стираемое начало флеши... Mar 25 2015, 13:57 KRS Цитата(lavrik @ Mar 25 2015, 15:38) Пишу ... Mar 25 2015, 16:03 Golikov A. ну я так понимаю что он мапит бут ром в начало фле... Mar 25 2015, 17:02 KRS Цитата(Golikov A. @ Mar 25 2015, 20:02) н... Mar 25 2015, 18:13  jcxz Цитата(KRS @ Mar 26 2015, 00:13) Но это в... Mar 26 2015, 05:44   KRS Цитата(jcxz @ Mar 26 2015, 08:44) Что-то ... Mar 26 2015, 18:57   KRS Цитата(jcxz @ Mar 26 2015, 08:44) Это-же ... Mar 26 2015, 20:10    jcxz Цитата(KRS @ Mar 27 2015, 02:10) Все прог... Mar 26 2015, 20:17     lavrik Цитата(jcxz @ Mar 26 2015, 23:17) Ну что-... Mar 26 2015, 23:16 Golikov A. ну не знаю...
мне казалось бут пин зажал, там и ре... Mar 25 2015, 19:24 Golikov A. Вот и мне так кажется...
Единственное что я сейча... Mar 26 2015, 05:56 Сергей Борщ Цитата(Golikov A. @ Mar 26 2015, 07:56) Е... Mar 26 2015, 07:42 Палыч ТС знает ли о существовании CRP (Code Read Protect... Mar 26 2015, 07:54  lavrik Цитата(Палыч @ Mar 26 2015, 10:54) ТС зна... Mar 26 2015, 11:06 Golikov A. ЦитатаBlank check
Не что-то вы обманываете
UM1060... Mar 26 2015, 09:51 Сергей Борщ Цитата(Golikov A. @ Mar 26 2015, 11:51) Н... Mar 26 2015, 10:46 Golikov A. чудно однако....
ведь FlashMagic реально сначала ... Mar 26 2015, 11:07 KRS Кроме того если нужно ускорить прошивку. можно заг... Mar 26 2015, 20:32 KRS загрузить в ОЗУ, например по адресу
0x40000200
24... Mar 27 2015, 00:20 jcxz Цитата(KRS @ Mar 27 2015, 06:20) но тут о... Mar 28 2015, 04:34  KRS Цитата(jcxz @ Mar 28 2015, 07:34) На всех... Mar 29 2015, 20:54 lavrik Спасибо всем огромное! В очередной раз форумча... Apr 2 2015, 12:13 lavrik Думал что на этом эпопея закончится, ан нет...
Но... Apr 8 2015, 07:41 KRS Цитата(lavrik @ Apr 8 2015, 10:41) и посл... Apr 8 2015, 07:45  lavrik Цитата(KRS @ Apr 8 2015, 10:45) Именно пе... Apr 8 2015, 08:12   KRS При записи по 0 адресу:
Код uint32_t s;
s=... Apr 8 2015, 08:32    lavrik Цитата(KRS @ Apr 8 2015, 11:32) При запис... Apr 8 2015, 08:49     KRS Цитата(lavrik @ Apr 8 2015, 11:49) пока ч... Apr 8 2015, 08:58 Golikov A. Надо отпустить ногу бута. Apr 8 2015, 08:02 lavrik Цитата(Golikov A. @ Apr 8 2015, 11:02) На... Apr 8 2015, 08:04 KRS Если контрольная сумма векторов прерываний не посч... Apr 8 2015, 08:11 Golikov A. а записать ее надо в серединку таблицы прерываний ... Apr 8 2015, 08:35 lavrik Там же возможна запись из ОЗУ во Flash только блок... Apr 8 2015, 09:04 KRS Цитата(lavrik @ Apr 8 2015, 12:04) Там же... Apr 8 2015, 09:11 jcxz Цитата(lavrik @ Apr 8 2015, 15:04) Там же... Apr 8 2015, 09:38  KRS Цитата(jcxz @ Apr 8 2015, 12:38) В LPC17x... Apr 8 2015, 09:41   jcxz Цитата(KRS @ Apr 8 2015, 15:41) Но это то... Apr 8 2015, 09:51    den_po Цитата(jcxz @ Apr 8 2015, 14:51) Можно. Е... Apr 8 2015, 12:35     jcxz Цитата(den_po @ Apr 8 2015, 18:35) Одно в... Apr 8 2015, 16:30      den_po Цитата(jcxz @ Apr 8 2015, 21:30) Писали н... Apr 9 2015, 03:38       jcxz Цитата(den_po @ Apr 9 2015, 09:38) Нет, т... Apr 9 2015, 09:42    KRS Цитата(jcxz @ Apr 8 2015, 12:51) Можно. Е... Apr 8 2015, 19:41     jcxz Цитата(KRS @ Apr 9 2015, 01:41) Только во... Apr 9 2015, 02:26 Golikov A. В вашей прошивке в начале лежит таблица прерываний... Apr 8 2015, 09:37 lavrik Цитата(Golikov A. @ Apr 8 2015, 12:37) В ... Apr 9 2015, 10:35  KRS Цитата(lavrik @ Apr 9 2015, 13:35) То ест... Apr 9 2015, 10:49   lavrik Цитата(KRS @ Apr 9 2015, 13:49) там выдел... Apr 9 2015, 11:09    KRS Цитата(lavrik @ Apr 9 2015, 14:09) В моем... Apr 9 2015, 13:42 Golikov A. да не в размере дело, а в том что надо поправить 4... Apr 8 2015, 09:41 Golikov A. так же как нельзя писать в не стертую флэшь (если ... Apr 8 2015, 09:43 Golikov A. на то место куда уже писали нельзя, хоть как кратн... Apr 8 2015, 10:36 Сергей Борщ А я заставил линкер gcc считать контрольную сумму.... Apr 9 2015, 05:13 KRS Цитата(Сергей Борщ @ Apr 9 2015, 08:13) А... Apr 9 2015, 09:48  Сергей Борщ Цитата(KRS @ Apr 9 2015, 11:48) А у Вас н... Apr 9 2015, 11:02   Сергей Борщ Цитата(Сергей Борщ @ Apr 9 2015, 13:02) к... Apr 9 2015, 11:19    lavrik Цитата(Сергей Борщ @ Apr 9 2015, 14:19) ... Apr 9 2015, 11:37   jcxz Цитата(Сергей Борщ @ Apr 9 2015, 17:02) А... Apr 10 2015, 01:51    Сергей Борщ Цитата(jcxz @ Apr 10 2015, 03:51) но никт... Apr 10 2015, 05:09     lavrik Цитата(Сергей Борщ @ Apr 10 2015, 08:09) ... Apr 10 2015, 06:23     jcxz Цитата(Сергей Борщ @ Apr 10 2015, 11:09) ... Apr 10 2015, 09:00      Сергей Борщ Цитата(jcxz @ Apr 10 2015, 11:00) Использ... Apr 10 2015, 09:16 lavrik Появился сдвиг! Я сделал следующее: прошил чер... Apr 9 2015, 12:52 Obam Так как написано в User Manual:
"…Criterion ... Apr 9 2015, 13:20 KRS Цитата(Golikov A. @ Apr 9 2015, 19:09) а ... Apr 10 2015, 13:01 Golikov A. Цитатаоткуда ж я знал что там Little Endian... sad... Apr 10 2015, 04:59 IgorKossak Когда я слышу фразу: "... каждый такт на счет... Apr 10 2015, 09:30 jcxz Цитата(IgorKossak @ Apr 10 2015, 15:30) К... Apr 10 2015, 09:38 Golikov A. под инвертировать имел ввиду, конечно, инверсию зн... Apr 10 2015, 15:33
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|