Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Переход с LPC2132 на LPC1766. Сложности?
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > ARM
Altemir
Доброго времени суток, коллеги. Провожу рестайлинг старого проекта на LPC2132, добавляю ряд функций и возникла необходимость в использовании более мощного проца. Основные причины в порядке влияния:
1. БОльший объём Flash и RAM (применяются новые алгоритмы, в старый не влезет весь код)
2. БОльшая тактовая частота (алгоритмы ЦОС добавляются)
3. Расширенная периферия (SSP неплохо было бы один дополнительный иметь и таймер)
4. Большее кол-во выводов (аппаратно несколько меняется платформа)
5. Более низкая цена относительно 2136 (на ~1..1.3$)

Отсюда возникает вопрос - что лучше выбрать: LPC2136 (минимум переработок как кода, так и аппаратно) или LPC1765(1766)? В первую очередь интересует:
1. Подойдёт ли старый ISP? Где взять подобие LPC 2000 Flash Utility для этого семейства?
2. Серьёзно ли придётся перерабатывать загрузчик (на IAP), который исправно работает уже 3 года?
3. Сильно ли изменится построение кода и работа с периферией? (бегло глянул - регистры периферии очень схожи)
4. Среда остаётся той же - IAR, но переход с 4.xx на 5.xx, с этим разберусь
5. Будут новые заморочки?

Да, с плавучкой не будет быстрее работать при той же тактовой относительно ARM7? Конкретно - сложение и умножение float и double.

Спасибо
rezident
Цитата(Altemir @ Oct 11 2010, 12:59) *
Подойдёт ли старый ISP? Где взять подобие LPC 2000 Flash Utility для этого семейства?
Да, подойдет. FlashMagic.
igorsk
Цитата(Altemir @ Oct 11 2010, 08:59) *
Отсюда возникает вопрос - что лучше выбрать: LPC2136 (минимум переработок как кода, так и аппаратно) или LPC1765(1766)? В первую очередь интересует:
1. Подойдёт ли старый ISP? Где взять подобие LPC 2000 Flash Utility для этого семейства?
2. Серьёзно ли придётся перерабатывать загрузчик (на IAP), который исправно работает уже 3 года?
3. Сильно ли изменится построение кода и работа с периферией? (бегло глянул - регистры периферии очень схожи)
4. Среда остаётся той же - IAR, но переход с 4.xx на 5.xx, с этим разберусь
5. Будут новые заморочки?

1. как уже сказали, Flashmagic поддерживает.
2. что особенного в загрузчике? вообще вроде бы интерфейс почти такой же, но меняется карта памяти
3. если используется ассемблер, некоторые куски возможно придется переписать
4. возможно (зависит от того, какие хидеры поставляются с компилятором) придется делать глобальную замену, типа FIO0PIN на LPC_GPIO0->FIOPIN. Поначалу может быть непривычно, но имхо делает код читабельнее.
5. а куда ж без них? из того, что приходит в голову:
а) другая архитектура прерываний. Вместо VIC теперь полная таблица векторов в начале памяти.
б) другой процесс стартапа
Цитата
Да, с плавучкой не будет быстрее работать при той же тактовой относительно ARM7? Конкретно - сложение и умножение float и double.

На той же тактовой может и нет. Зависит от библиотек. В принципе, у Cortex-M3 инструкций больше, так что некоторые алгоритмы можно сделать меньшим числом инструкций.
Но имхо будет лучше выставить полную частоту, быстренько посчитать то что надо, и уйти спать.
zuy
Цитата(Altemir @ Oct 11 2010, 09:59) *
Отсюда возникает вопрос - что лучше выбрать: LPC2136 (минимум переработок как кода, так и аппаратно) или LPC1765(1766)? В первую очередь интересует:
1. Подойдёт ли старый ISP? Где взять подобие LPC 2000 Flash Utility для этого семейства?
2. Серьёзно ли придётся перерабатывать загрузчик (на IAP), который исправно работает уже 3 года?
3. Сильно ли изменится построение кода и работа с периферией? (бегло глянул - регистры периферии очень схожи)
4. Среда остаётся той же - IAR, но переход с 4.xx на 5.xx, с этим разберусь
5. Будут новые заморочки?


1. FlashMagic
2. У меня заняло немного времени, не считаю, что переделки "серьезные".
3. У нас код работы с переферией пошел практически сразу.
4. Не знаю, использую Keil.
5. Не должно быть. По мне, так наоборот стало проще и удобней, чем на сериях 21хх и 23хх
Altemir
Спасибо всем. Покурил ещё доки, вроде всё достаточно логично и с минимальными переделками. Боялся за загрузчик, а там работы для переделок и отладки максимум на пару часов выходит. Решено - буду использовать Кортекса. Заодно подложу соломки для будущих модернизаций проекта (алгоритмических). Со старым боевым товарищем LPC2132 проект живёт уже три года с ежемесячными модернизациями, улучшениями и учётом пожеланий эксплуатационщиков.
Кстати, а что там за ограничения на использование FlashMagic для производственных (коммерческих) целей?
rezident
Цитата(Altemir @ Oct 12 2010, 11:01) *
Кстати, а что там за ограничения на использование FlashMagic для производственных (коммерческих) целей?
Free-версию FlashMagic можно использовать только для разработки. Если собираетесь использовать ее на производстве и/или передавать заказчику как средство программирования ваших изделий, то нужно "отслюнявить" за это EMBEDDED SYSTEMS ACADEMY, INC. отдельную денежку. В противном случае эти действия запрещены лицензионным соглашением.
IgorKossak
Если никому не хочется ничего "отслюнявить", поищите на этом форуме командлайновый программатор at200 от zltigo.
Например.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.