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

Для этого примера берется тот-же STM32/LPC210x с их мегагерцами и уже быстрыми GPIO за 3USD и все....

 

У нас сравнимый по размеру флеша и количеству лапок LPC210x стоит как мега128, местами даже дороже. И я еще не уверен, смогу ли я пошевелить лапками LPC210x в нужный момент для переключения выходов возбуждения и ключей зарядового усилителя без джитера. Так что неизвестно, сэкономлю я время на разработке с учетом исследования этого вопроса или нет.

 

Да и есть еще один момент. В таких шевелениях лапками я руку набил уже будь-здоров, так что уже знаю, на что можно расчитывать. И не займет у меня уйму времени написание софта, все будет в пределах разумного. Зато каждый доллар, сэкономленный на камне, капнет мне в карман. Даже на серии в 100-200 штук будет приятно. Если задача чисто вычислительная (ну или подобного плана), я конечно буду действовать другими методами (вот и склоняюсь к AVR32, маленькие приятные мелочи в архитектуре радуют).

 

 

Опять же, вот любят говорить - "поставь плис". А чем, собственно говоря, проектирование прошивки плисины отличается от того, что я программу напишу для проца с точно описываемым поведением ядра.

 

Но чето мы от темы отошли. Начали за AVR32, а переехали на AVR8 и на ARM.

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


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

У нас сравнимый по размеру флеша и количеству лапок LPC210x стоит как мега128

Сравнивать бамбуковые цены (точнее размер аппетитов мелких локальных торговцев) занятие бессмысленное - а реальные цены на LPC2101 в той-же России у MT-System 1,6USD.

В таких шевелениях лапками я руку набил...

..

И я еще не уверен, смогу ли я пошевелить лапками LPC210x в нужный момент...

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

А пошевелить, пошевелить сможете - максимальный джитер определяется максимальной длинной прерываемой команды выполняемой из FLASH (реально MAM будет сие улучшать) и частотой контроллера - команды есть и подлиннее AVR-овских 1-5 тактовых( и самые длинные можете в любом случае не использовать), но и частоты повыше - результат, как минимум, не хуже.

Но чето мы от темы отошли. Начали за AVR32, а переехали на AVR8 и на ARM.

Начали с почти гипотетического чипа и переехали на реально существующие, как выяснилось :) покрывающие наши с Вами потребности :), что дает ответ на поставленный вопрос :)

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


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

LPC2101 в той-же России у MT-System 1,6USD.

 

Я туда не помещаюсь. И привезти из России 100-200 камней - целая проблема. А на 100-200 мне и местные "бамбуковые" терйдеры сбросят на AVR. Так вопрос цен пока не в пользу LPC или других армов. Но это дело пятое.

 

максимальный джитер определяется максимальной длинной прерываемой команды выполняемой из FLASH (реально MAM будет сие улучшать)

 

Вот тут и возникают интересные вещи. Допустим, на AVR я могу (если есть запас по тактам) устранить влияние времени реакции на прерывание (ну допустим, банально выполнив сonst-TCNT операций NOP в процедуре обработки прерывания по переполнению). Тем самым я точно могу гарантировать момент переключения вывода или чтения состояния входа с точностью до такта. Теперь вопрос - я, конечно, такой же финт ушами могу провернуть на ARM, никто не мешает (вроде). И дальше я делаю шевеление лапкой через Fast GPIO. Вот будет оно точно в одном и том же месте или нет? И что же там со вводом? Как долго происходит данная операция?

 

Ну да ладно, опять флужу. Фиг бы с ним.

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


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

Как долго происходит данная операция?

В конце концов покупается простенький кит с интересующим контроллером и проверяются теоретические размышления. Китов сейчас много и они дешевы - осваивай новые контроллеры каждую свободную минуту :). Естественно, не все подряд - AVR32 я, пожалуй, в обозримом будущем пробовать не буду - не вижу сколь-нибудь реальных причин этим заниматься - в этой нише предложений много. Думаю, что если Atmel не уговорит на него какого-то массового потребителя, то так на уровне образцов и останется.

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


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

Сравнивать бамбуковые цены (точнее размер аппетитов мелких локальных торговцев) занятие бессмысленное - а реальные цены на LPC2101 в той-же России у MT-System 1,6USD.

ну так и на m128 реальные цены не 7USD.

"не в селухе на мопеде небось." © т2.

 

А пошевелить, пошевелить сможете - максимальный джитер определяется максимальной длинной прерываемой команды выполняемой из FLASH (реально MAM будет сие улучшать) и частотой контроллера - команды есть и подлиннее AVR-овских 1-5 тактовых( и самые длинные можете в любом случае не использовать), но и частоты повыше - результат, как минимум, не хуже.

Вы сами-то верите в то, что пишете?

 

 

Допустим, на AVR я могу (если есть запас по тактам) устранить влияние времени реакции на прерывание. Тем самым я точно могу гарантировать момент переключения вывода или чтения состояния входа с точностью до такта.

+1

 

LPC с MAM'ом и всеми его мегагерцами курит бамбук в сторонке.

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


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

Вы сами-то верите в то, что пишете?

Я знаю :).

LPC с MAM'ом и всеми его мегагерцами курит бамбук в сторонке.

Команды AVR до пяти тактов, посему рассказывать сказки о дергании лапками по/при прерыванию(ях), с точностью до такта, можете кому-нибудь другому в другом месте. Про изделия работающие без прерываний - тоже, тем более про изделия с контроллервми уровня M128 а на Tiny. Радость от "качества" ногодрыгания на AVR часто обусловлена исключительно отсутсвием приличных цифровых осциллографов :(.

МАМ у LPC реально работает, но для особо критических ко времени и стабильности исполнения участков можно и из RAM работать, можно и без MAM. Ну а поскольку некоторым, прежде, чем "дергать" еще и подумать надо, то и 32 бита и мегагерцы очень кстати.

ну так и на m128 реальные цены не 7USD.

Ссылку на реального (не аукцион по продаже неликвидов в USA) поставщика стабильно поставляющего контроллеры.

По LPC2101 я назвал. Цена вывешена официально, на складе есть.

Жду ссылки на конкурентные цены по AVR.

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


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

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

 

Я же вроде объяснил метод выравнивания. Может недостаточно прозрачно объяснил? Могу на примерах показать.

 

Кстати, не 5 тактов, а 4. Хотя, конечно, можно стеки ставить во внешнее озу с максимальным количеством тактов ожидания, тогда и больше можно.

 

Про изделия работающие без прерываний - тоже, тем более про изделия с контроллервми уровня M128 а на Tiny.

 

Без прерываний - это не к нам. Мы обычно ничем не гнушаемся - ни вложенными прерываниями, ни командой IJMP прямо на месте вектора, и еще на машинке вышивать умеем ;)

 

Радость от "качества" ногодрыгания на AVR часто обусловлена исключительно отсутсвием приличных цифровых осциллографов

 

Гм. Вы, признайте, погорячились. Все есть, этыкэток нету.

 

По LPC2101 я назвал. Цена вывешена официально, на складе есть.Жду ссылки на конкурентные цены по AVR.

 

А почему сравниваем младший ARM с далеко не младшим AVR?

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


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

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

 

Таймер запускается с делителем "1". Не вижу причин по которым нельзя гарантировать интервалы между дерганием с точностью до такта, если выполнить коррекцию в ISR'е:

ISR( ... )
begin
    x := CONST - TCNT0;
    wait_takts( x );
    ... <-- дергать здесь
end;

 

Про изделия работающие без прерываний - тоже, тем более про изделия с контроллерами уровня M128, а не Tiny.

dW тем не менее Atmel делает именно на m128..

 

МАМ у LPC реально работает, но для особо критических ко времени и стабильности исполнения участков можно и из RAM работать, можно и без MAM. Ну а поскольку некоторым, прежде, чем "дергать" еще и подумать надо, то и 32 бита и мегагерцы очень кстати.

Можно, можно и протокол пересмотреть.

Но например программный HDLC приемник/передатчик я бы не рискнул делать на LPC, а на AVRе рискнул бы.

 

Жду ссылки на конкурентные цены по AVR.

http://shop.efo.ru/cgi-bin/shop.pl?categor...p;mh=50&a=1

сорри на адекватные m128-au цены там "договорные",

но можно ориентироваться по ближайшим аналогам:

mega64-AU - 3.75$ (абсолютно то же самое что m128, разница только во флеш 64k вместо 128k)

mega128L-MU - 5.6$ (индекс "L" означает - для "Loh'ov", чип такой же как m128 только не работает на 16Mhz, но платить надо больше.. да еще и корпус MLF)..

 

красная цена m128 - 4-4.5$. это не 1.6, но и не 7.

 

Ну и справедливости ради, LPC2101 (8kb flash/ 2kb sram) должен конкурировать не с m128, а с m8/m88

http://shop.efo.ru/cgi-bin/shop.pl?categor...p;mh=50&a=1

к сожалению m8 - цена опять договорная, а

m88 - 1.32$.

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


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

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

Не вижу причин не поступить аналогично для ARM :) и время можно для конкретной ситуации вхда в обработчик подогнать или, что еще проще пользуясь (4-5 кратным)запасом по частоте заняться сканированием того-же счетчика.

Но например программный HDLC приемник/передатчик я бы не рискнул делать на LPC, а на AVRе рискнул бы.

Как я уже писал, нет проблем используя запас по скорости, или угробив оную в угоду повторяемости сделать из АRM7 "AVR". Что касается HDLC - я даже и не думал делать "программный", просто взял одного из представителей ARM семейства STR711 и все. Можно было и Samsung. Возможность выбора не заморачиваясь на одного производителя великое дело.

цены там "договорные",

:(

Ну и справедливости ради, LPC2101 (8kb flash/ 2kb sram) должен конкурировать не с m128, а с m8/m88

Ну так гамма LPC не ограничивается LPC2101. Есть и старшие модельки с 128K Flash и "обычной" ценой не хуже "красной эксклюзивной" цены M128. Есть тот-же ST32 c ценами за 64K (как и у M64) в три бакса, и низким потреблением, и хорошей периферией, только вот частота у него до 72Mhz и 32бита даются, получается, бесплатно.

 

 

Кстати, не 5 тактов, а 4.

Хорошо, 4, но для контроллеров с ограничением в 128K

Хотя, конечно, можно стеки ставить во внешнее озу...

Нет, об этом речь не идет.

А почему сравниваем младший ARM с далеко не младшим AVR?

Я не сравниваю. Выше поминаются одинковые по памяти за 3-4 бакса, ну и что? Более того, на сегодняшний день признаю преимущество 8bit контроллеров ценой в пару баксов и тем более менее перед аналогичными ARM. И сам такие использую. Только вот, когда речь идет уже о 3 или тем паче 4-5USD и выше, то тут уже увольте :).

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


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

Вы знаете, мне кажется мы никогда не увидим идеального МК. И это отчасти объяснимо. Это как аппаратура HiEnd. У каждого есть свой крендель, но ни у одного эти фишки не сходятся.

 

Происходит выпячивание достоинств, чтобы чётко завоевать свою нишу. Так MSP - малое потребление, AVR - соотношение цена/возможности, PIC - соотношение цена/богатый выбор чипов, ARM - хорошая семейственность с широкими возможностями. Ну и так далее. Время от времени производится попытка отвоёвывания ниши соперника, но глобальные изменения не часты, так как требуют гигантских вложений.

А появление суперуниверсального проца приведёт к серьёзному росту цены. А цена, на рынке МК имеет решающее значение. Это с нашими объёмами 3.5$ ничего не решает, а для какого-нибудь потребителя чипов с объёмом 50000 в месяц и 10 центов будет важным. А стоимость разработки нового ПО окупится при такой разнице за 2 месяца. Для контроллера, по сути - только цена. Если данный МК справляется со своей задачей, то потребителю конечного изделия глубоко плевать какая у него разрядность. Исключения распространяется только на те изделия, для которых возможна модернизация в процессе эксплуатации, либо от процессора зависит производительность (потребительские свойства) изделия. Как правило это только дорогостоящее оборудование.

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


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

Вы знаете, мне кажется мы никогда не увидим идеального МК.

Идеального быть не может в принципе - они разные, очень разные нужы. А вот заметно удаленные от неидеальности быть могут. Причем могут ими быть не от каких-то явных врожденных дефектов а просто ввиду прихода на рынок более продвинутых, агрессивных, дешевых.

 

 

 

 

 

... и еще на машинке вышивать умеем ;)

А почему Вы думаете, что познакомившись с микроконтроллерами в 1984 году я за прошедшие годы не освоил не только "вышивание на машинке", но и вышивание без машинки, и без микроконтроллера :), и не только вышивание....

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


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

и не только вышивание....

 

А я ни разу в Вас не сомневался. Про "вышивание на машинке" - то я про себя, запас веселых приемов у меня немалый, и я их применяю без зазрения совести, с удовольствием и с удовлетворяющим всех результатом.

 

Просто мы видимо в разных местах видим границу разделения задач между AVR8 и ARM (это так, очень условно, "граница", понятно, что четкой границы там нет, и области эти определяются совокупностью всех данных - и умением програмера, и ценой, и многоми другими вещами, не в последнюю очередь и костностью мышления, и гонками за модой и пр.). Мне эта граница видится более смещенной в сторону большего количества задач, без проблем реализуемых на AVR, чем Вам, вот и все. Никаких холиваров (ничего личного) :)

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


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

Мне эта граница видится более смещенной в сторону большего количества задач, без проблем реализуемых на AVR, чем Вам, вот и все.

Пожалуй. Просто пик использования AVR прошел мимо меня - засиделся :( на другой работе/задачах, а сейчас просто бессмысленно плотно садится на AVR. При необходимости - сделаю и быстро, и более, чем добротно. Просто общий опыт и чутье. Даже почти не делая на AVR - наработки и конкретизированный опыт как-то незаметно накопилися, но в качестве базы для чего-либо серьезного я выбирать AVR8 буду только при наличии уж очень веских причин.

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


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

Вы знаете, мне кажется мы никогда не увидим идеального МК. И это отчасти объяснимо. Это как аппаратура HiEnd. У каждого есть свой крендель, но ни у одного эти фишки не сходятся.

 

Происходит выпячивание достоинств, чтобы чётко завоевать свою нишу. Так MSP - малое потребление, AVR - соотношение цена/возможности, PIC - соотношение цена/богатый выбор чипов, ARM - хорошая семейственность с широкими возможностями. Ну и так далее. Время от времени производится попытка отвоёвывания ниши соперника, но глобальные изменения не часты, так как требуют гигантских вложений.

Вот, как раз с позиционированием AVR32 не все ясно.

Изначально они предлагались в качестве замены-конкурента ARM-Cortex, и небезосновательно. Но по последним данным Atmel собирается существенно расширить свою линейку на ARM и даже ведет разработку новых камней на Cortex-M3.

Что это, какая-то внутрифирменная конкуренция? Или они решили забить на линейку AVR32?

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


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

Я думаю позиционирование AVR32 расчитано на пользователей AVR8 которым надо чуть больше. Они начинают вертеть головой и, очевидно, что придут к ARM. А ARM это уже не только Atmel. Иными словами - задача - удержать часть пользователей, для которых сложные изделия - единичные.

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


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

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

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

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

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

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

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

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

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

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