Jump to content

    
Sign in to follow this  
Fluffy

Выбор между STM32F103 и LPC2478

Recommended Posts

С интересом следил за темой, так как STM32F интересуют и хочется попробовать этот камень. Но, блин, как часто бывает в такого рода топиках получилась никчемная дискуссия:( в стиле "Ату аффтара"

 

Это нормально.

 

Вы бы уже остановились на чем то:) А то вы так и суперкомпутеров, мысленно, додумаетесь, но так и не сдвинитесь с места.

ИМХО все же лучше начать с чего попроще (я имею ввиду ARM7, Cortex), а то "иной класс производительности" может взорвать вам мозг своими проблемами:)

 

Ну это тоже нормально - когда человек ищет проблем себе на попу. ;)

 

Просто дело в чем - мне по работе это пока не нужно (и может вообще не пригодиться в теории, хотя хотелось бы свои труды облегчить), но вы же понимаете, что в нашем деле надо совершенствоваться, чтобы не оказаться на обочине. Вот я и хочу. Сначала на АРМ9 и ориентировался, потом побоялся сложностей, поглядел на АРМ7, теперь вот начитался в Сети и теперь уже и АРМ7 боюсь, а люди советуют брать что помощнее и ставить ось, а там уже..... Короче [censored], по факту будет так - когда я до магазина дойду, то куплю то, что будет, и с тем и буду работать (пока сориентировался уже на LPC2478). Все одно и то же, в конце концов.

Edited by rezident
Нарушение п.2.1б Правил форума.

Share this post


Link to post
Share on other sites
Я думаю, что Вигглер спасет отца русской демократии...

Что значит "никому не нужный"? Он МНЕ нужен. Больше я его никому предлагать не собираюсь.

Я рад, что кому-то что-то нужно, но цель?! Для работы не нужно, для создания чего-то полезного в единичном экземпляре уж слишком большая трудоемкость, гораздо больше, чем стоимость старткита. Потратите много времени. "Ату автора" лишь немного, чтобы был повод задуматься :)

 

А с Вигглером не все так просто. Насколько я помню, он не работает, если частота кварца превышает определенное значение.

 

Share this post


Link to post
Share on other sites
Я рад, что кому-то что-то нужно, но цель?! Для работы не нужно, для создания чего-то полезного в единичном экземпляре уж слишком большая трудоемкость, гораздо больше, чем стоимость старткита. Потратите много времени. "Ату автора" лишь немного, чтобы был повод задуматься :)

 

Именно для возможного применения на работе и нужно (может и не на этой работе). Насчет стоимости - спорно.

 

А с Вигглером не все так просто. Насколько я помню, он не работает, если частота кварца превышает определенное значение.

 

Поглядим.

Share this post


Link to post
Share on other sites
Сначала на АРМ9 и ориентировался, потом побоялся сложностей, поглядел на АРМ7, теперь вот начитался в Сети и теперь уже и АРМ7 боюсь, а люди советуют брать что помощнее и ставить ось, а там уже.....
А зачем Вам ось??? Есть на самом деле задачи на данный момент у Вас, требующие установку RTOS?

С АРМ7, в принципе как и с ARM9, да в принципе как и с х86:) можно работать одной задачей, не заморачиваясь с операционными системами.

Share this post


Link to post
Share on other sites
А зачем Вам ось??? Есть на самом деле задачи на данный момент у Вас, требующие установку RTOS?

 

 

Чесгря необходимости в ОС в принципе нет, не говоря уже о том, что если совсем уж трудно программный цикл организовать, то простая самодельная оська с кооперативной многозадачностью спасет отца русской демократии при любых обстоятельствах. А все остальные сервисы обычных ОС в принципе не нужны. Зачем нам семафоры и мьютексы, если можно добиться реальной атомарности синхронизации. :biggrin:

 

С АРМ7, в принципе как и с ARM9, да в принципе как и с х86:) можно работать одной задачей, не заморачиваясь с операционными системами.

 

Можно, не спорю. Но рано или поздно надо будет и этот сегмент освоить - работа с мейнстримными ОС. Впрочем под АРМ7 они тоже все портированы.....

Share this post


Link to post
Share on other sites
Ну так и начните уже:) Помигайте светодиодом, дальше-больше. Оно потом само пойдет:) Появятся дельные вопросы, а не "быть или не быть":) Да и идеи родятся сами собой.

Share this post


Link to post
Share on other sites

Тема как-то убежала от STM32 микроконтроллеров, на мой взгляд зря.

Работал я и с LPC2368 (ARM7TDMI) и с STM32F10x (Cortex-M3). Все, что будет сказано ниже, естественно, субъективно, но надеюсь будет полезно:

1. По поводу контроллеров NXP на ядре ARM7 (LPC23xx, LPC24xx), ярко запомнились мне слова, сказанные представителями этой компании конференции(не дословно): "Наши контроллеры дешевле конкурентов, за счет экономии на некоторых тестах...", список этих "забытых" тестов я не знаю, но видимо определенный отпечаток на контроллеры этот факт наложил. При работе с семейством LPC23xx умер не один миллион мозговых клеток: кривая работа модуля ускорителя памяти (MAM), т.е. практически его неработоспособность делали МК довольно тормознутым, проблемы при работе с UART, а так же множество разных мелочей, многие из которых к счастью описаны в еррате. Ах да... два контроллера (из разных партий, в разных приборах) просто-напросто приказали долго жить, без всяких на то видимых причин, запускались только под отладчиком а самостоятельно не запускались. Зато порадовало наличие гибкого SSP интерфейса с FIFO, а так же FIFO на USART, что частично позволило компенсировать скудность DMA.

2. По поводу STM32F10x: ну они мне сразу как-то приглянулись, все в них красиво, все расписано чего и как. Очень порадовало то, что на сайте доступны для свободного скачивания и постоянно обновляются библиотеки (STD Peripherial Lib) для этих контроллеров, имеющие порты по Keil, IAR и GCC, с примерами и описаниемхотя в качестве платы прихотится жертвовать производительностью, ибо даже для дергания портом В/В, приходится вызывать функцию, но при желании критичные места можно и самому написать, хоть даже в ассемблере. Таким образом время от начала разработки до более-менее работающего проекта значительно сокращается. Под STM32 работал как с ОС (uC/OS-II), так и без неё, в обоих случаях остался доволен. Врятли эти контроллеры безгрешны, но явных глюков выявлено пока что не было.

Повторюсь, это субъективная оценка, некоторых функций этих контроллеров я не использовал (из-за специфики поставленных задач).

Share this post


Link to post
Share on other sites
Сравнивая цены, заметил, что STM как то получше смотрятся по сравнению с LPC. Про ошибки в LPC читал много и чего то не радует перспектива их обходить. От АТ91SAM7 уже просто устал:) глюков тоже как комаров в тайге.

 

Не совсем понял, что там с ногодрыганием у STM? В августе тоже собираюсь их начать осваивать.

Не радует, что младшие версии не имеют встроенного бута по USB:( Но это, по большому счету мелочи.

Share this post


Link to post
Share on other sites
По поводу контроллеров NXP на ядре ARM7 (LPC23xx, LPC24xx), ярко запомнились мне слова, сказанные представителями этой компании конференции(не дословно)

Представитель? Не верю :).

При работе с семейством LPC23xx умер не один миллион мозговых клеток:

Не умерла ни одна, ну или самую малость :)

кривая работа модуля ускорителя памяти (MAM), т.е. практически его неработоспособность

Только в одном из режимов, только у первых ревизий. В errata описано четко.

делали МК довольно тормознутым,

Ну заливать на надо, ибо за счет 128bit Flash LPC уже не тормознутые, даже если MAM на всю катушку не включен.

проблемы при работе с UART,

UART чистый как слеза 550, как и на IBM PC. Проблемы говорите?

а так же множество разных мелочей, многие из которых к счастью описаны в еррате.

Да errata на крайние ревизии, считайте, вообще пустая. Причем, это действительно так.

Ах да... два контроллера (из разных партий, в разных приборах) просто-напросто приказали долго жить, без всяких на то видимых причин, запускались только под отладчиком а самостоятельно не запускались.

бла...бла...бла... Честно говоря, я однажды целый год ругался на отдельные экземпляры LPC и шаманил с тем-же MAM и WS.... Только потом нашел у себя в загрузчике ошибку - прошивал Flash указав на порядок меньшую частоту. В результате программы работали, но чтение данных из Flash сбоило.

По поводу STM32F10x: ну они мне сразу как-то приглянулись, все в них красиво, все расписано чего и как.

А вот как раз НИФИГА не расписано. Железо сырое, описание скуднейшее, errata практически скрыта, а вместо описаний и errat - получите писанную с бодуна бангалорскими студентами "библиотеку" с заплатками и минимумом функционала и "радуйтесь" :(. На эксперименты по выявлению как оно работает и как не работает уходит масса времени :(.

Share this post


Link to post
Share on other sites

Уважаемый zltigo, Вы уж простите, комментировать каждое Ваше предложение не буду.

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

Проблемы с MAM были как и на LPC2144, так и на LPC2368 и умерли они на пару, LPC2144 - после 3-х месяцев эксплуатации прибора, LPC2368 - на второй день... (помнится даже ветку открывал, думал траблы с CCO, к стати и Вы там засветились, однако дело было не в этом) оба контроллера похоронили с почестями.

На данный момент, возможно, LPC имеют меньше багов и больше фичей, однако они для меня оставили впечатление ненадежных контроллеров как раз потому что, цитирую: "На эксперименты по выявлению как оно работает и как не работает уходит масса времени".

Ну а насчет бангалорских студентов я бы не был столь категоричен, меня, написанная ими библиотека вполне устраивает, на счет ограниченного функционала я Вас не совсем понял, прошу пояснить.

Ну и я так понимаю, что вы достаточно работали с микроконтроллерами STM32 и знаете их слабые места. Если так то прошу о них рассказать, хотя бы в общих чертах, дабы не наступать на ваши грабли.

Share this post


Link to post
Share on other sites

У STM понравилось CSS, но неудобно, что таймеры 16 бит.

В STM32F107RCT при задействовании Ethernet уж больно много периферии "съедается".

Есть LPC1766 с интересной багой (из тестовых образцов NXP): Ethernet память доступна только когда прошил проц через JTAG, после сброса хоть пиши, хоть читай - всегда ноль.

Жертвы "наколенок" есть как с той, так и с этой стороны. Есть LPC2368 у которого кварц стартует через раз, а стортовавши - уход частоты значительный (уровни напряжений тоже сильно отличаются от других). Есть STM с битыми ногами JTAG, жрет много, сильно греется, но работает (словила 220 с незаемленного компа). Хотя все это лирика)

 

Попробовал STM-библиотеку. Запустил USB довольно быстро, но увы так и не нашел, где поменять частоту кварца(

В итоге плюнул, написал за выходные с нуля, без всяких библиотек. На STM делал программную развертку VGA: с UARTа выводит на моник)

 

Сейчас в основном сижу на STM (103, 107), нравятся цены. Из LPC смотрю в сторону LPC11.

Share this post


Link to post
Share on other sites
оба контроллера похоронили с почестями.

Без комментариев. "Дохлых" начиная LPC2114 и до нынешних не имел и не имею. Кроме одного LPC2148 с выбитым статикой генератором на часовом кварце (документирована :) низкая стойкость именно этих пинов ). Выбил собственноручно на макете, а не в изделии на объекте.

я Вас не совсем понял, прошу пояснить.

? Некие крайне небрежно писанные "студенческие" исходники в которых железо используется однобоко и только небольшая часть того, на что "намекают" в скудной документации. Несколько раз их "качество" на форуме обсуждалось. LPC примеры тоже не фонтан, но там по крайней мере на них можно просто не смотреть - удовлетворительная документация.

Ну и я так понимаю, что вы достаточно работали с микроконтроллерами STM32

Нет, только с Circle. Реальных вещей не делал. Но и плотного предыдущего знакомства с STR7xx/STR9xx хватило, что-бы понять - картина не изменилась :(. Пытаются бежать впереди паровоза выбрасывая "новые" чипы и забывая старые проблемы. Работать с чипами, естественно, можно, но только это много более хлопотно, если не быть пофигистом. При этом никаких решающих преимуществ (ну еще ценовая политика в общем-то агрессивная, что неполохо), у ST обычно нет. На STR7 клюнул из-за HDLC - вот уж что оказалось реально совершенно не пригодным для работы, На STR9 падал из-за попугаев но помаялся :( и в конце концов на данный момент заложен появившийся несколько позже LPC2468, не столь быстр, но за счет внешней памяти справляется.

Такой-же подход к делу и у уже бывшего Luminary :( - быстрее, быстрее, все остальное (которое так и не наступает) потом. Тем не менее использую ARM контроллеры и ST и TI, только выбор начинаю с LPC. Не срослось ни разу только с ARM7 от Atmel.

 

P.S.

На STM8 я уже сильно рассчитываю.

 

Share this post


Link to post
Share on other sites
Ну так и начните уже:) Помигайте светодиодом, дальше-больше. Оно потом само пойдет:) Появятся дельные вопросы, а не "быть или не быть":) Да и идеи родятся сами собой.

 

Да ей Богу, начну я, пока руки не доходят хоть что-то купить. :)

Собственно выбор я уже сделал, о чем и была тема. :)

Вы, кстати, зря радуетесь - я ж как начну, так вопросами засыплю. Шутка. :biggrin:

 

Тема как-то убежала от STM32 микроконтроллеров, на мой взгляд зря.

Работал я и с LPC2368 (ARM7TDMI) и с STM32F10x (Cortex-M3). Все, что будет сказано ниже, естественно, субъективно, но надеюсь будет полезно:

 

Вот спасибо, этого и ждал. Учту ваши комментарии.

 

2. По поводу STM32F10x: ну они мне сразу как-то приглянулись, все в них красиво, все расписано чего и как. Очень порадовало то, что на сайте доступны для свободного скачивания и постоянно обновляются библиотеки (STD Peripherial Lib) для этих контроллеров, имеющие порты по Keil, IAR и GCC, с примерами и описаниемхотя в качестве платы прихотится жертвовать производительностью, ибо даже для дергания портом В/В, приходится вызывать функцию, но при желании критичные места можно и самому написать, хоть даже в ассемблере. Таким образом время от начала разработки до более-менее работающего проекта значительно сокращается. Под STM32 работал как с ОС (uC/OS-II), так и без неё, в обоих случаях остался доволен. Врятли эти контроллеры безгрешны, но явных глюков выявлено пока что не было.

 

Ну поскольку для меня сроки ввода не так критичны, то библиотеки - не очень большой плюс. А с доками у них ИМХО большая проблема.

 

Сравнивая цены, заметил, что STM как то получше смотрятся по сравнению с LPC.

 

Причем сильно получше.

 

Про ошибки в LPC читал много и чего то не радует перспектива их обходить. От АТ91SAM7 уже просто устал:) глюков тоже как комаров в тайге.

 

Возможно я вас удивлю, но меня обширная еррата только радует - видно, что производитель хотя бы отслеживает баги, если не фиксит (а филипс фиксит). Вы вот доки от RDC не видели. Еррату на их процы можно найти только у тех, кто уже оные пользовал - например у Фаствела. А сами RDC и их представитель Прософт либо тупо молчат в ответ на прямо поставленные вопросы, либо бубунят всякую шнягу. На два моих вопроса относительно ОЧЕВИДНЫХ ошибок в документации (я так понял, что в проце все же сделано правильно, а это именно баги доков) они долго не отвечали, потом выслали новый даташит, в котором один баг был пофиксен, а касательно другого все так и осталось. Спросил еще раз - Джэки Янг молчит. И это только то, что мне попалось (слава Богу от этих багов все равно ничего не зависит). А сколько было обнаружено другими людьми..... Чего стоит один НЕустанавливающийся бит сброса от ватчдога! Представьте себе - произошел сброс по ватчдогу, а мы об этом никогда не узнаем! Ну ладно, фикс есть - завести ватчдог на NMI (тоже так себе решение), но во-первых они об этом молчали (и если кто-то УЖЕ понадеялся на этот бит, то в перспективе он может и к прокурору попасть), а во-вторых они решительно не хотят сообщать о ревизиях проца, например стали они выпускать процы с буковкой D в конце - и непонятно, пофиксено там это, или нет. Официальный ответ Прософта - фабрику сменили и "чего-то поменяли". Что???

 

На STM8 я уже сильно рассчитываю.

 

Вот! Давайте. :)

Share this post


Link to post
Share on other sites
Ну поскольку для меня сроки ввода не так критичны, то библиотеки - не очень большой плюс. А с доками у них ИМХО большая проблема.

Какая такая "большая проблема", может просветите?

Я никогда (за очень редким исключением) не пользуюсь сторонним софтом, предпочитая писать своё, согласно документации производителя.

И STM32 не стал исключением.

Нормальные у них доки, не хуже NXP.

 

А вот начав знакомство с новым LPC1768, сразу столкнулся с кривым user manual, в котором в регистре PCONP напрочь отсутствовал бит GPIO, без которого оный модуль никак не хотел работать.

 

Даже не знаю, исправили они эту недоработку сейчас, или нет.

Share this post


Link to post
Share on other sites
Так, а теперь БЕЗ трепа за светрое будущее. Давайте расскажите, как купить эти самые 'A' существующие практически только на бумаге, не через полгода (ишак,эмир...) а хотя-бы через недели. Особо интересуют Atmega48PA-AU. Весь внимание. Только учтите, я ведь напишу тому поставщику, которого Вы назовете. Да и "пару штук" образцов по 5-10 баксов меня не интересуют.

 

 

Если так думают на Atmel, то не наладится - такие подлянки бесследно не проходят.

 

Ну так у Поляков появились ATMEGA48PA-AU 1336шт. лежит.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this