Перейти к содержанию
    

Оба семейства мне подходят (и на сейчас есть что выбрать и на перспективу). Я было выбрал STM32F103 по цене, но прочитал здесь про STM отзывы аж с 2008 сколько смог и приуныл. Глюки в документации, работа с периферией через библиотеки, а если нет (как я обычно), то недокументировано и т.д. Версия ядра с глюками... Кто сейчас активно их использует - изменилось что-нибудь в лучшую сторону или только цена привлекает по прежнему? Или LPC понадежней будет?

И заодно, с LPC23xx наверное уже не стоит связываться в свете наличия Cortex'ов?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если не нужна внешняя шина - LPC. Если нужен USB host - LPC.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

По поводу STM32 - необходимость расковыривать библиотеки для того, чтобы написать нормальный код, действительно огорчает. Но к этому быстро привыкаешь (ИМХО). Кроме того - не вполне настоящий DMA - в смысле того, что он не имеет своей шины. Но в остальном - вполне рабочая лошадка.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Оба семейства мне подходят (и на сейчас есть что выбрать и на перспективу). Я было выбрал STM32F103 по цене, но прочитал здесь про STM отзывы аж с 2008 сколько смог и приуныл. Глюки в документации, работа с периферией через библиотеки, а если нет (как я обычно), то недокументировано и т.д. Версия ядра с глюками... Кто сейчас активно их использует - изменилось что-нибудь в лучшую сторону или только цена привлекает по прежнему? Или LPC понадежней будет?

Приунывать - не стоит. Правда я не работал с LPC17xx, но документация на STM32F (user manual) вполне приличная. Просто сам контроллер, в плане переферии, уж больно навороченный. Поэтому сложно разобраться и нюансов возникает куча. Есть и некоторые вопросы к разработчикам. Например по целессообразности и т.п.

 

Работа с библиотеками - ваше дело. Я попробовал работать ч/з них. С одной стороны - общий подход и стиль. Развитие дальнейшее. Очень большой объём описаний. Особенно учитывая что средний переферийный блок - 20-30 регистров. То есть с одной стороны - большой объём проделанной работы за вас. С другой - они не могут писать на все случаи жизни. То есть иногда - хочется переписать либо изменить. Универсальность также привела к большому колличеству избыточного кода. Ещё один очень отрицательный момент - это очень слабое описание ф-ций. Точнее - функции описаны не до уровня работы железа. Таким образом для работы с библиотекой один фиг надо сначала прочитать мануал, разобраться в нём, понять что нужно сделать, потом перечитать описание библиотеки и подобрать средства - как именно сделать то, что ты хочешь, с помощью данной библиотеки. Не помешает также посмотреть и примеры приведённые.

Отдельный момент, что очень слабо в мануале просматриваются взаимосвязи. Ну скажем, читаешь какой-нибудь АЦП. Разобрался - настроил - а он не работает. Оказывается в RCC надо ему частоту подать. И там это описано, а в самом ADC - нет. (Это я для примера).

 

Ошибку я одну нашёл но только не в библиотеке, а в примере. Причём пример какой-то левый.

 

Я не претендую на полноту картины, и, пока, мало работал с контроллером, но, просто объективности ради хотел пару слов здесь привести.

 

Ну и ещё из того что мне нравится - один кристалл - много корпусов. Кристалл достаточно дубовый. Так мне на порт завели 8 ног 24V ч/з резистор 1к (входы). Я практически полностью отладил прогу, покак он задымился. Понравилась мне и возможность работы с 5V сигналами. В частности на плате MBI5168, полевики с 5V, и умудрились ресивер CAN поставить 5V. Всё удалось запустить лишь навесив резисторы подпоры.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Малое потребление мне не критично, а вот хорошее описание, пусть и на английском - да. Так что похоже все же LPC, тем более что я последние проекты делал на LPC21xx/22xx. Кроме этого я тут обнаружил что не все выводы портов STM32 совместимы с 5V. Спасибо за советы.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

работа с периферией через библиотеки, а если нет (как я обычно), то недокументировано

По поводу STM32 - необходимость расковыривать библиотеки для того, чтобы написать нормальный код, действительно огорчает.

тоесть хотите сказать,что в документации регистры периферии не описаны?

посмотрел док. "RM0008 Reference manual STM32F101xx, STM32F102xx, STM32F103xx, STM32F105xx and STM32F107xx advanced ARM-based 32-bit MCUs" - описание регистров есть. сильно не вникал правда

с либами работать не планирую, все чиство вручную...

 

пс. я тоже сейчас выбираю кортексы ибо AT32UC3 атмел зажал, со складов пропали... STM32 - более доступные, есть на складах, LPC17xx - доступны только LPC1752FBD80 пока

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

... а вот хорошее описание, пусть и на английском - да. .... Кроме этого я тут обнаружил что не все выводы портов STM32 совместимы с 5V.

 

 

тоесть хотите сказать,что в документации регистры периферии не описаны?

 

Ещё раз повторю - описание очень даже не плохое. По-моему - всё внятно, чётко, достаточно детально. Сначала идёт полное описание узла, потом режимы работы и, в конце, регистры.

 

Не совместимы с 5V линии ADC. По-моему, там этого и не должно быть.

PS: Посмотрел LPC13xx - действительно у них все ноги толерантны.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ещё раз повторю - описание очень даже не плохое. По-моему - всё внятно, чётко, достаточно детально. Сначала идёт полное описание узла, потом режимы работы и, в конце, регистры.

спасибо. прикуплю парочку данных девайсов на пробу ;)

 

Не совместимы с 5V линии ADC. По-моему, там этого и не должно быть.

согласен

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

тоесть хотите сказать,что в документации регистры периферии не описаны?...

 

Описаны, конечно... Только мне этого не хватило. Без текстов библиотек до нужной степени не разобрался. Но допускаю, что это только мои проблемы...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

я обычно, когда запускаю usb на новом для меня контроллере без примеров тоже не обходится.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Глюки в документации, работа с периферией через библиотеки, а если нет (как я обычно), то недокументировано и т.д. Версия ядра с глюками...

Использую STM32, раньше доводилось использовать STR710. Глюков в документации не встречал, библиотеки для периферии никогда не применял, ничего недокументированного не встречал, глюков ядра не видел. Откуда все эти страшилки?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Откуда все эти страшилки?

сам впервые "слышу", но тк с ними не работал, решил переспросить :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Может офф, но я работал с LPC17xx - документация отличная. Пытался работать с STM32 - не так притягивает. Если кто будет пользоваться библиотекой CMSIS - будьте внимательны, очень много багов.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Глюков в документации не встречал...

С USB, наверно, не работали? В режиме двойной буферизации для bulk endpoints?

Описание регистров Transmission\Reception byte count для этого режима не соответствует действительности :(

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...