LPC2368FBD100 (прошивка)
Прошивка для INDESIT NBA20DFNFNXH, Нужна прошивка под данну модель холодильника
Помогите подобрать прошивку для выше описаного холодильника. S/N — 204133879 Номер: 58754140010.
СМА Electrolux EWS1064EDW нужна прошивка, Слетела прошивка
Здравствуйте! Помогите с прошивкой на СМА Electrolux EWS1064EDW S/N 30700048 Продуктовый номер.
Сообщение от bommy
Номера пинов с табличкой в даташите не сверял, а по названиям сигналов могу сказать.
(VccIO) и (GND) — правильно;
(TxD) и (RxD) — скорее всего, правильно, но бывают USB-serial адаптеры, где эти две подписи перепутаны; проверяется выяснением (прозвонкой): к каким пинам чипа адаптера присоединены эти контакты "TxD" и "RxD";
(RTS) и (DTR) — откуда информация по этим сигналам? Я бы их вообще не подключал, но, возможно, сам FtoshMagic что-то специальное делает с их помощью?
Update: да, вижу в картинках на FtoshMagic, что он может (опционально) выдавать дополнительные управляющие сигналы через DTR и RTS.
Сообщение от bommy
P0.14 (PSEN) нужен для вхождения в режим работы с прошивкой. Сигнал сброса — тоже. Если в документации на 2368-ой не упоминается P0.14, то, возможно, используется другой пин для вхождения в режим. Например, даташит упоминает P2.10 — не его ли надо соединять с RTS?
В принципе, эти два пина можно и вручную замыкать, а в качестве прошивочного устройства использовать любой копеечный адаптер RS232-serial или USB-serial. Но раз уж у Вас есть специальный адаптер с RTS и DTR, как раз для FtoshMagicа, то можно не упрощать и делать полное подключение.
Сообщение от disototor
Эт точно, в LPC используется защита от чтения — т.н.CRP. Оно есть и в старых LPC ARM, и в новых LPC ARM-Sortix.
Если низкие уровни защиты — CRP1, CRP2 — ещё позволяют с некоторыми ухищрениями читать прошивку из МК, то на высшем уровне CRP3 только сама пошивка может себя читать и выдавать прочитанное наружу по некоторому протоколу.
Если автор пытается читать какой-то серьёзный девайс, то вряд ли в нём разработчики забыли установить CRP 🙂 А вычитывание через спецпротокол, заложенный в прошивку, если и возможно, то только зная этот протокол. Его тоже вряд ли разработчики выложили в интернет 🙂
Сообщение от OtyxPM
Сообщение от disototor
Эт точно, в LPC используется защита от чтения — т.н.CRP. Оно есть и в старых LPC ARM, и в новых LPC ARM-Sortix.
Если низкие уровни защиты — CRP1, CRP2 — ещё позволяют с некоторыми ухищрениями читать прошивку из МК, то на высшем уровне CRP3 только сама пошивка может себя читать и выдавать прочитанное наружу по некоторому протоколу.
Если автор пытается читать какой-то серьёзный девайс, то вряд ли в нём разработчики забыли установить CRP 🙂 А вычитывание через спецпротокол, заложенный в прошивку, если и возможно, то только зная этот протокол. Его тоже вряд ли разработчики выложили в интернет 🙂
Lpc2368fbd100 как прочитать прошивку
Заимел на руки LPC2368 для ознакомления.
Читал документацию, после мучений с AT91SAM7 она мне показалась более "взрослой" и полезной
Припаяв чип на плату и достав свой мостик на CP2103 радовался я недолго.
Наковырял в Keil’е нехитрый код:
Прогнал симулятором — все ок, можно шиться, чем я и занялся посредством Flash Magic.
Прошивка заливается, но на экране осциллоскопа тишина!
Порт P2.12 молчит, осциллятор молчит. Пробовал переключаться на внутренний генератор (CLKSRCSEL = 0x00;) — результат тот же.
Долго курил теорию и лабы Бауманки по этому процу (где достал — сам не понял). Согласно им все должно работать.
Если глядеть в мануал — тактирование на GPIO по дефолту всегда, все пины GPIO после ребута никуда не замаплены.
Подскажите, что с ним (или со мной) не так?
А что это, простите, за вывод? Просмотрел весь UM10211 по линейке LPC236x, там про такой вывод ни слова.
На данный момент у меня служебные пины таковы:
Vss — GND
Vssa — GND
Vdd(3v3) — 3.3V
Dvv(dcdc) — 3.3V
Vdda — 3.3V
Vref — 3.3V
XTAL1, XTAL2 — кварц 12МГц + кондеры по 10пФ
RESET — через 10к на 3.3V
Ну и для обмена с CP2103 подключены пины P0[2]/TXD0 и P0[3]/RXD0.
Из не подключенных служебных остались только RTCX1, RTCX2 и VBAT, но они все, вроде как, относятся к часам реального времени (кварц + дежурная батарейка), которые мне и не нужны.
Сборка печатных плат от $30 + БЕСПЛАТНАЯ доставка по всему миру + трафарет
upd. В этом камне оказывается используется пин P2[10]/EINT0
Источники питания для автомобильной электроники, включая маяки, GPS/ГЛОНАСС-трекеры и охранную сигнализацию, должны обеспечивать бесперебойное питание и безопасность, а также быть устойчивыми к вибрации и исправно работать при низких температурах. Батарейки FANSO EVE Energy обладают всеми необходимыми параметрами для надежной работы оборудования современного автомобиля.
Все верно. В режим программирования я захожу опустив пин P2[10] на GND. Прошиваюсь успешно. Снимаю питание, снимаю перемычку с P2[10].
После запуска МК вроде как должен уйти в обычный BOOT, так гласит и дока, и присланный Вами кусочек странички.
В реальности — контроллер молчит, читаю память (в режиме программирования) — все прошилось успещно.
Или же ему P2[10] после прошивки надо жестко подтянуть к +3.3V?
На складе КОМПЭЛ доступны сетевые адаптеры (внешние блоки питания) производства MEAN WELL, представленные семействами GS, GST и GSM различного конструктивного исполнения: в розетку и настольные. Адаптеры GS и GST предназначены для питания различных промышленных и бытовых приборов, а семейство GSM может применяться для питания устройств медицинского назначения, поскольку соответствует требованиям EN 60601-1 и 60601-1-11. При этом они характеризуются малым потреблением энергии на холостом ходу.
Вы там по Редькину что ли изучаете?
На двух сразу попавшихся бордах.
Не, спасибо, изучал по нему AT91SAM7, плакал
Но однако, здравствуйте! Вечером буду пытать!
Все сделано. Подтяжка P2[10] на 3.3V есть.
Почитав про MEMMAP для 236x в user manual’е, вычитал, что режим запуска с флэша при коде b01 регистра.
Вот пытаюсь ему скормить:
int main(void) <
MEMMAP = 0x1;
FIO2DIR |= (1<<12);
CLKSRCSEL = 0x01;
while(1) <
FIO2SET |= (1<<12);
FIO2CLR |= (1<<12);
>
>;
Пробовал MEMMAP 0x2. А ему хоть бы что, ничего нет на пине P2.12. Вообще ничего!
Добавлено after 12 minutes 44 seconds:
Заглянул в 2300.s, где нашел такие строки:
"не так" — отсутствует JTAG.
Если у вас при пине BOOT установленном на выполнение кода из флеша, при этом входит в код ISP (так как к МК может подключиться FlashMagic), то получается что управление похоже вообще почему-то не передаётся на код во флешь.
Уверены что правильно скомпилили исходник? Симулятор — не аргумент.
Чем компилили? IAR? При компиляции выставили тип МК?
Как вариант: в LPC ROM-стартап-код проверяет контрольную сумму нескольких первых векторов прерываний (находящуюся в одном из векторов), если она неверна или недопустимое значение каких-то векторов, то управление останется в ISP-коде и не будет передано на код во флешь.
Так никто и не плакал
Даташит читан. Если бы читан не был — не задавал бы и вопросов
По коду — компилировано в Keil 4. Тип МК выставлен, выставлена компиляция под ISP, а не под Ethernet.
Ознакомился с Редькиным по LPC2000. Прочитал про переотображение памяти, про чудесный MEMMAP. Результатов пока нет.
Зачем . Эта серия LPC23xx/24xx фигня уж лет 7 как замененая на LPC16xx/LPC17xxx, да и эти уже барахло устарелое.
Не жалко собственного времени ?
Прогнал симулятором — все ок, можно шиться, чем я и занялся посредством Flash Magic.
Прошивка заливается, но на экране осциллоскопа тишина!
Порт P2.12 молчит, осциллятор молчит. Пробовал переключаться на внутренний генератор (CLKSRCSEL = 0x00;) — результат тот же.
Осциллятор чтоб не молчал, его включить сначала надо. и не помню точно про LPC24xx, очень давно делал, но LPC17xx помнится мне, надо еще GPIO колнтроллер сначала включить, а потом к его ногам лезить
Добавлено after 44 minutes 25 seconds:
Зачем вам ARM7TDMI с мозголомными десятью стеками и кучей режимов ? Оно уж в бесконечно далеком прошлом.
На кортексах все куда проще, очевидней и шустрее.
Satyr, ну вот что с извращенца возьмешь?
Все это время я тоже вечерами времени даром не терял и завел его. Работает и внутренний генератор, и внешний кварц, и PLL.
Сейчас не могу понять вот что. имею код в main:
При кварце 12 МГц нога "дрыгается" с частотой 1.92(. )МГц. Та же историй с PLL, настроенным на 72МГц — частота "дрыганий" — 2,4 МГц. При внутреннем генераторе -640 кГц.
Проверил предделитель процессора — 1, периферии — 1.
Есть ли у него какой-то вариант посмотреть тактовую частоту осциллографом, не замаплен ли выход PLL на какую ногу для таких целей?
Кварц, плл — вторично. как и частота ядра. важна частота переферийной шины и собственный делитель на конкретной переферии.
А так же латентность шины между яжром и периферией.
Не стоит думать, что ногой можно будет дрыгать с частотой ядра.
тактов за 5-7 ядра между записью от ядра и сменой состояния ноги — нормальный показатель.
кстати, елси ногами дергать, битбанговые алиасы на регистры в этом антикваре есть ? очень помогает в ногодрыге -))
Радует Ваша неполиткорректность. Хорошо у меня кэш большой, на долго хватает.
За них пока не вчитывался
Не стоит думать, что ногой можно будет дрыгать с частотой ядра.
тактов за 5-7 ядра между записью от ядра и сменой состояния ноги — нормальный показатель.
Lpc2368fbd100 как прочитать прошивку
Прошу помощи с этим камнем — LPC2368FBD100.
У нас на автомобилях стоят терминалы ASC-2 GPS, и я имел глупость согласится отремонтировать один из них.
Устройство подключается через USB к компьютеру для конфигурации, но в один «прекрасный» момент захотелось шефам его переконфигурировать и почему то они обновили прошивку. после этого терминал не определяется в на USB, но в Flash Magic он определяется.
К сожалению залить прошивку не получается, так как она в формате *.bin а Flash Magic понимает только *.hex. С отчаянья переконвертировал с помощью WinHex, но девайс не заработал.
Понимаю что полетел загрузчик на USB, вот только найти готовый что бы залить через Flash Magic я не могу. а написать самому мозгов не хватает.
Может кто то сталкивался с таким или знает как решить данную проблему?
Прошивка LPC2xxx по последовательному порту
Микроконтроллеры NXP LPC2xxx имеют встроенный загрузчик, позволяющий прошивать память программ (flash) через последовательный порт (UART).
Для входа в режим загрузчика во время аппаратного(?) сброса на определённых ногах микроконтроллера должны присутствовать логические уровни:
- Ноль на P0.14 для LPC210x
- Ноль на P2.10 для LPC2368, LPC2478
- …
LPC21ISP
Наиболее оптимальный вариант для прошивки микроконтроллераконтроллера через последовательный порт — воспользоваться консольной программой lpc21isp.
Сборка приложения проста и осуществляется одной командой make .
Использование программы так же не должно вызвать проблемм:
Здесь ключ -control указывает, что линии DTR и RTS управляет сбросом и вводом процессора в режим загрузчика соответственно.
Ключ -verify заставляет сделать проверку правильности записи flash.
- lpc2368_blink.hex — имя файла прошивки.
- /dev/ttyS0 — порт к которому подключён микроконтроллер.
- 57600 — скорость в бодах на которой будет идти обмен с МК.
- 12000 — тактовая частота МК в КГц (например кварцевого резонатора).
Ключ -term позволяет сразу после прошивки войти в режим терминала. Понадобится это может в том случае, если МК использует тот же порт для программирования и для вывода какой-то отладочной информации или диалога с пользователем.
Вы можете скачать простейший пример для того, что бы попробовать lpc21isp
- — готовый бинарник (Собирался с помощью тулчейна от [[soft:arm-toolchain|CodeSourcery]]). — исходный код.
Пример мигает светодиодами подключёнными к портам с P0.4 по P0.7 (4шт.) и посылает строку со счётчиком в UART0.