Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: IAR ARM 5.30 и его примеры
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему > ARM, 32bit
Astron
Помогите, пожалуйста
Осваиваю lpc2378, поставил IAR 5.30 для ARM, разбирался в примерах иара для lpc2378.
Всё прекрасно работает, кроме примеров с USB, не могу понять почему.
Особенно меня интересует MassStorage.
Кто-нибудь сталкивался с подобной проблемой, и есть ли доступные работающие исходнки MassStorage в иаре для lpc2378 или lpc2388?
P.S.: Вшиваемые примеры находится в папке C:\Program Files\IAR Systems\Embedded Workbench 5.4\arm\examples\NXP\LPC23xx\IAR-LPC-2378-SK\MassStorage\*.*
Astron
Здравствуйте
Кто нибудь запускал в железяке примеры IAR ARM 5.30 для USB lpc2378?
Никак не могу понять почему не работает пример MassStorage для lpc2378.
Andy Mozzhevilov
Посмотрите errata по USB. Посмотрите в исходниках, возможно где-то через #define задается ревизия чипа и в условной компиляции обходятся какие-то баги USB. Внимательнее посмотрите, как управляется подсоединение к шине USB резистора 1.5К, и происходит ли оно физически. Гляньне осциллом, возможно в пошаговом режиме.
zltigo
Цитата(Andy Mozzhevilov @ Apr 1 2009, 10:09) *
Посмотрите...

Для начала, вообще-то неплохо рассказать, что значит "не работают" sad.gif.
Astron
Не работают - это так:
Компилирую проект в ИАРе, (лежит в папке C:\Program Files\IAR Systems\Embedded Workbench 5.4\arm\examples\NXP\LPC23xx\IAR-LPC-2378-SK\MassStorage\), всё без проблем собирается, из настроек проекта ничего не трогал, зашиваю в lpc2378, USB устройсво комп не видит.
Поставил уже USB монитор, при подключении устройства - никакой реакции, даже не видит что устройство к шине вообще подключено. Смотрел программу, инициализацию USB по шагам, всё по даташиту делается...

errata по USB смотрел, вроде ничего фатального нет, использую USB№2. define и поддягивающий резистор посмотрю, спасибо за совет.

Забыл добавить:
В проект добавлял после всех инициализаций дрыганье ногой в вечный цикл, с ноги меандр выходит,
То есть программа по крайней мере крутится
Andy Mozzhevilov
У вас плата своя, или какая-то из eval-board?
Astron
Плата своя, но я вшивал пример в стартеркит http://www.starterkit.ru/new/index.php?nam...=page&pid=1
и пробывал вшивать в http://www.starterkit.ru/new/index.php?nam...page&pid=13 (lpc2388). (Посмотрел, различий в инициализации между 2378 2388 нет вроде).
Andy Mozzhevilov
А что значит - вы используете USB №2? Альтернативные пины для USB порта? А в проекте, который вы компилируете, именно эти порты вы настраиваете на функции D+ и D- ?
А на других платах какие порты используются?
А порт управления подключением резистора 1.5К к линии USB D+ для всех этих плат совпадает с тем, что в проекте используется?
А осциллографом вы посмотрели, подключается ли реально к шине D+ резистор 1.5К?
Для начала нужно ответить себе на эти вопросы, прежде чем задавать очередные.
Astron
Во всех платах используется USB, который выходит с 37(-) и 38(+) ног, в проекте настраивается именно этот USB.
Похоже и вправду что-то с инициализацией ног, к шине не подключается резистор 1.5к по каким-то причинам.
Достал работающий проект под GCC, там всё работает, резистор подключается.
Думаю, придется разбираться в ассемблерном коде.
Если кто-то запускал USB под иаром, хоть обнадёжте, что работает smile.gif ошибки найду сам.
Жуть как неохота уходить с иаровского компилятора, но время поджимает.
Andy Mozzhevilov
Цитата(Astron @ Apr 2 2009, 22:07) *
Думаю, придется разбираться в ассемблерном коде.
Если кто-то запускал USB под иаром, хоть обнадёжте, что работает smile.gif ошибки найду сам.

Да причем тут IAR. У вас проблема либо с инициализацией порта, или с фичей SoftConnect USB контроллера в NXP.
Найдите в коде место, где производится управление портом, подключающим резистор 1.5К , пройдите пошагово, посмотрите что не работает.
Или можно просто проанализировать код, сравнить его с работающим проектом.
Делов тут на 10 минут, а то вы "из-за приспущенного колеса уже машину менять собрались".
HARMHARM
Цитата(Andy Mozzhevilov @ Apr 3 2009, 07:10) *
Да причем тут IAR. У вас проблема либо с инициализацией порта, или с фичей SoftConnect USB контроллера в NXP.
Найдите в коде место, где производится управление портом, подключающим резистор 1.5К , пройдите пошагово, посмотрите что не работает.

Подключите резистор вручную как GPIO. Далее или Windows ругнётся на неправильное устройство, либо все заработает, чего Вам и желаю.
Сам проходил это год назад, причем запускал под IAR 4.40. Все реально, и не так уж сложно, не пугайтесь smile.gif
Михаил86
Добрый вечер!! Увидел ваши заметки подключению сд-карты ....

А вот такой вопрос еще, у меня на работе программисты столкнулись с проблеммой, хотят втиснуть свой проект пример из IAR Mass storage на базе AT91SAM9XE512. Но у них он не запускается, виснет, не определяется вообще. Приборчик сам работает под управлением ОС ucoz. Загрузчик прошивается во встроеную флеш МК, а файл прошивки во внешнюю Нандфлеш, затем крутится во внешнем сд-рам памяти....
Может что-то похожее делали или наталкивались на то, как правильно запускать сие дело, если смотреть под джитагом, виснет в функции конфигурации сд-карты, странности какие-то...

А может сможете сказать где, чего не так...используем демо-плату от Атмела AT91SAM9XE512-EK
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.