Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: LPC, загрузка через серийник ...
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > ARM
3.14
Терзаю LPC2378, собрал макет, подключил DTR и RTS согласно апликейшену по филисовой утилите программирования флешек LPC, все ок (правда ругается на неподдерживаемый чип и версию бутлоадера ID 117702437,BootID 3.1, но программируется нормально).
Стал собирать второй макет с LPC2378 (другой проект, но схематика подключения серийника такая же), и тут началось, утилита никак не может сконнектится с платой. Причем осциллом вижу входной поток для чипа и его ответ, в добавок, если TX0 (LPC) линию разорвать то процесс попытки синхронизации затягивается, PC постоянно шлет (судя по всему 0х3f) а LPC постоянно отвечает. Если линия TX0 (LPC) на месте, то процесс синхронизации происходит очень быстро (относительно разорваной TX0) и заканчивается ошибкой связи.
Далее, полез в доку, там сказано, в режиме "бутования" хост должен послать 0x3f и ждать "Synchronized" ...
Взял рабочий макет, шлю терминалкой 0x3f (без <CR><LF>), никакого ответа ни в терминале ни на осцилле...
Конекчусь флешовой утилитой, вижу на осцилле 0х3f и тут же ответ...
Andy Mozzhevilov
Цитата(3.14 @ Jan 22 2007, 12:34) *
Далее, полез в доку, там сказано, в режиме "бутования" хост должен послать 0x3f и ждать "Synchronized" ...
Взял рабочий макет, шлю терминалкой 0x3f (без <CR><LF>), никакого ответа ни в терминале ни на осцилле...
Конекчусь флешовой утилитой, вижу на осцилле 0х3f и тут же ответ...


C этим не работал, но все встроенные в LPC буты используют символ '?' (код 3F) для определения скорости обмена. И когда я цеплялся терминалкой к LPC2132, то ответ получал только после посылки нескольких символов '?'
3.14
Действительно, обратил внимание, насчитал 37 '?' во время синхронизации флешовой утилиты. Но вот на '?' от терминалки чип не хочет отвечать, что просто с клавы что файлом отправлять.
Alexey Bishletov
Цитата(3.14 @ Jan 22 2007, 11:16) *
Действительно, обратил внимание, насчитал 37 '?' во время синхронизации флешовой утилиты. Но вот на '?' от терминалки чип не хочет отвечать, что просто с клавы что файлом отправлять.

A DTR-RTS эта терминалка правильно выставляет?
3.14
2 Alexey Bishletov
Это она не трогает, я перед эти чип стираю ...
zltigo
На какой скорости RS232 пытаетесь? Синхронизироваться LPC может только на ограниченном количестве скоростей в зависимости от кварца.

P.S.
Я тут загрузчик AT200 выкладывал - так он в отладочном режиме весь обмен в отображает, если интересно.
ID 117702437 - это точно для LPC2378? Надо будет добавить в AT200

z.
Alex03
Цитата(zltigo @ Jan 22 2007, 14:47) *
На какой скорости RS232 пытаетесь? Синхронизироваться LPC может только на ограниченном количестве скоростей в зависимости от кварца.

А вот тут не очень понятно.
С одной стороны например в UM для LPC2103 в 19.4.2 сказано "The auto-baud routine measures the bit time ....", потом есть ограничение на то что кварец д.б. 10 и более MHz. И всё. Это всё для "установки соединения"/"синхронизации".
Далее уже в 19.8.2 описывается ISP команда "Set baud rate" и приводится таблица "Correlation between possible ISP baudrates and external crystal frequency".
В этой таблице нет 12MHz кварца вообще, при этом я прошивал LPC2103 с 12MHz кварцем на 19200.
zltigo
Цитата(Alex03 @ Jan 22 2007, 12:08) *
В этой таблице нет 12MHz кварца вообще, при этом я прошивал LPC2103 с 12MHz кварцем на 19200.

Это не страшно - на низких скоростях синхронизируется нормально почти при любом кварце, ну а потом,
после сообщения частоты загрузчику, вообще работает без проблем. В принципе частоту по умолчанию можно и в BOOT поменять и
потом уже шить на больших скоростях.
3.14
Повествую далее ...
Для начала, действительно, в суете я не заметил что терминалка устанавливает DTR(reset), оборвал, чип стал отвечать "Synchronized" yf "?". Причем на обоих макетках, а вот флешовая утилита со второй платой так и не хочет связыватся sad.gif ...
Конекчусь на 115200 (перебрал все скорости, поведение не меняется), LPC2378 во время бутования тактируется от внутреннего RC-генератора на 4 МГц.
ID 117702437 - это показания флешовой утилиты ...
3.14
Вот это чудеса ...
Оказывается все дело в RS232 преобразователе MAX3232CSE.
Для первой макетки его покупал в радиомагазине, перепаял его на вторую макетку, все встало на свои места.
Осталдьные преобразовали куплены в Промэлектронике, сменил уже 3 штуки, поведение одинаковой, через терминалку синхронизируется а через флешовую утилиту не хочет. Уровни сигналов и форма в норме. Единственно, какие-то глюки со вторым входом, если на него подавать RS232 уровень у внутренних преобразователей напряжение падает ... такое чувство что распиновка не совпадает, но как такое может быть.
Маркировка.
Нормальный чип:
MAX3232
CSE 0608
Глюкавые:
MAX3232
CSE + 0619
Кто-нибудь с подобными фокусами сталкивался?

ЗЫ теперь вопрос больше к MAX3232, переношу обсуждение туда http://electronix.ru/forum/index.php?showtopic=26276
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.