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

Вышло уйма Xmega c USB-интерфейсом!

У нас сейчас к примеру двигается проект на STM32 (двигает коллега - и нам польза и ему опыт) и тут-же я уже вижу всю ту кучу проблем которая свалится в обозримом будущем.
Ну не знаю что за кучу проблем Вы смогли разглядеть... Я сейчас работаю с STM32 и вижу лишь одни плюсы.

1. Шить можно по уарту через заводской бутлоадер - не нужен программатор для производства.

2. EEPROM эмулируется посредством IAP.

3. Для отладки и разработки есть SWD - реально лишь 4 провода вместе с питанием (у AVR8 6 проводов).

И т.д. и т.п. куда не копни.

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


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

1. Шить можно по уарту через заводской бутлоадер - не нужен программатор для производства.

Еще раз для тех, кто не читает. Прибор для программирования обязан иметь один разъем, одну кнопку и свисток обозначающий завершение записи. И никаких ПК, юартов и заводских бутлоадеров которые все равно надо прописывать. Разъем вставил, нажал - прописал. Все что сложнее - пользуйтесь сами при программировании, но на производстве такого не надо.

2. EEPROM эмулируется посредством IAP.

Эмуляция это как-бы не одно и то-же. Когда надо писать 10 байт - еще куда не шло. А когда хоть пол сотни с контролем и восстановлением корректности каждого байта/слова - тут эмуляция вылазит боком.

 

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


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

Дык с таким подходом вы не сможете привести что предлагает NXP взамен AVR. Т.к. по совокупности параметров ...

У нас сейчас к примеру двигается проект на STM32 (двигает коллега - и нам польза и ему опыт) и тут-же я уже вижу всю ту кучу проблем которая свалится в обозримом будущем. Начиная с банальнейшей - чем записывать программу на производстве т.к. с компа заливать софт никто не позволит.

PS. Совокупность параметров бывает разной. Я к примеру LPC11 в своих задачах не буду использовать просто из-за отсутствия встроенной EEPROM. Это для меня более чем определяющий параметр.

И вроде бы - да, я на эту тему хотел услышать мнения. И вроде бы -- нет, что-то куда-то не туда соскользнула мысль.

 

Давайте-как я уточню и еще раз подвешу свой вопрос.

 

Как Вы думаете -- что может предложить (мне) Атмел взамен линеек LPC11xx и LPC17xx, которыми я планирую зарыть почти все свои направления?

Разницу в питании +3.3В и +5.0В, а так же наличие/отсутствие корпусов DIP можно не упоминать. Почти не принципиально. Я даже не хотел бы поднимать проблему наличия/отсутствия EEPROM "на борту". По нынешним временам, подвесить внешнюю 24LCxx не такая уж и большая проблема.

 

Я свой вопрос задаю исходя вот из каких соображений. Просто я старею, а мир настолько быстро изменяется, и ... я уже начинаю это замечать... что я просто физически не успеваю отслеживать направления AVR, MSP430, Cortex. Я хотел бы произвести "сокращение штатов". Кого-нибудь "уволить" из этого набора.

 

АВР -- подкупает свое "народностью" и доступностью.

MSP430 -- это бывший лидер по энергопотреблению. Равных ему реально нет. Сейчас это уже не так.

Cortex -- молодой и преспективный. Многообещающий.

 

Из недостатков:

 

AVR -- дорогой, собака! При интенсивном использовании констант (константные строки, avr/progmem.h) в программе, Си-ный код программы становится "неуклюжим", теряет прозрачность и красоту. Потом становится тяжело его сопровождать. Противоречие Гарвардская архитектуры проца и изначальной ориентации Си на Фон-Нейманоскую архитектуру.

MSP430 -- какой-то он ватный. Ни то, ни се! Ни жуткой скорости как у Cortex-M3, ни насыщенной периферии на малых кристаллах, как у AVR.

Cortex -- личная моя не освоенность его на платформе Linux. Но это временно. Неопределенность в вопросе -- можно-ли вообще изготовить репликатор для массового программирования изделий на базе Кортексов. (Репликатор -- это программатор, у которого целевая прошивка находится внутри. Т.е. можно реплицировать код без компа.)

 

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

 

Я не знаю... мне кажется, если оставить рядом только LPC11xx и LPC17xx, то я закрою очень широкую панораму, начиная от мелких девайсов, котрые должны только мигать ЛЭД-ом и ничего более не делать, до девайсов, которые должны общаться с компами (через Ethernet, через USB), поддерживать LCD (в том числе графические до 320х240), даталогеры, ну и т.д. Единственный момент, который я тераю отказавшись от AVR -- удобные для быстрого макетирования DIP-кузова.

 

И да! Я принципиально не изучаю ни PIC-и, ни STM8, ни XMega по этой же причине -- катастрофическая нехватка времени! Меня не устраивают поверхностные знания и юзание "библиотек на все случаи жизни" (камень в огород STM8). Я предпочитаю копать глубоко.

 

Извините! Я сказал очень много. Я хотел бы услышать мнение народа.

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


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

Ксения, скажите, а что Вас так сильно привлекает в AT32UC3C? Почему Вы от него "балдеете"?

И второй вопрос.

Скажите, почему, по Вашему мнению, ARM не заслуживает внимания, что в нем такого, что Вы предпочитаете ему AVR32?

Если я начну с вами бодаться на тему, что лучше, AVR32 или ARM, то начнется холивар :). Обращаю ваше внимание то, что сейчас вы находитесь на территории раздела AVR, а потому здесь активная критика AVR/AVR32 в пользу других платформ условно наказуема. Лично я нечего не имею против священных войн, но положение модератора ftp обязывает меня соблюдать негласные правила куда строже, чем остальных участников форума.

 

Однако совсем кратко я могу намекнуть на причину своих предпочтений. Дело в том, что платформа AVR (и отчасти AVR32) куда более соответствует контроллерам, тогда как архитектура ARM более соответствует процессорам. Резкой границы между контроллерами и процессорами нет, но интуитивно она ощущается. Например, очевидно, что архитектура Intel x86 предназначена именно для процессоров, а AVR8 для контроллеров. Так и здесь. AVR32 много больше контроллер, чем ARM. Архитектура ARM не была рассчитана на контроллеры, но контроллеры на этой архитектуре сделали через ж... ухо :). В то время как архитектуру AVR32 специально разрабатывали для контроллеров.

 

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

Не уверена, что ваш LPC11xx переплюнет любой из AVR32. Последние предельно экономичны.

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


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

Если я начну с вами бодаться на тему, что лучше, AVR32 или ARM, то начнется холивар :). Обращаю ваше внимание то, что сейчас вы находитесь на территории раздела AVR, а потому здесь активная критика AVR/AVR32 в пользу других платформ условно наказуема. Лично я нечего не имею против священных войн, но положение модератора ftp обязывает меня соблюдать негласные правила куда строже, чем остальных участников форума.

 

Однако совсем кратко я могу намекнуть на причину своих предпочтений. Дело в том, что платформа AVR (и отчасти AVR32) куда более соответствует контроллерам, тогда как архитектура ARM более соответствует процессорам. Резкой границы между контроллерами и процессорами нет, но интуитивно она ощущается. Например, очевидно, что архитектура Intel x86 предназначена именно для процессоров, а AVR8 для контроллеров. Так и здесь. AVR32 много больше контроллер, чем ARM. Архитектура ARM не была рассчитана на контроллеры, но контроллеры на этой архитектуре сделали через ж... ухо :). В то время как архитектуру AVR32 специально разрабатывали для контроллеров.

 

 

Не уверена, что ваш LPC11xx переплюнет любой из AVR32. Последние предельно экономичны.

Хорошо, Ксения, я понял, но вопросы остались.

Холливары и подростковые "бодания" никому не нужны.

Где бы мы могли с Вами поговорить на эту тему, чтобы не нарушать правила. (Или вырезать и перенести часть темы в другую? Вы можете это сделать?)

И мои извинения -- это я свернул тему в совершенно другом направлении.

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


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

Где бы мы могли с Вами поговорить на эту тему....

Так вроде "ОБЩЕНИЕ" открыто

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


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

Архитектура ARM не была рассчитана на контроллеры, но контроллеры на этой архитектуре сделали через ж... ухо :). В то время как архитектуру AVR32 специально разрабатывали для контроллеров.

 

avr32, пардон за продолжение, вкусен, но плохо пахнет. Будет стабильность, - будет(?) и успех.

И pic32(йето холливар) - тоже интересен. Остальное как-то теряет вес, имхо.

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


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

Дело в том, что платформа AVR (и отчасти AVR32) куда более соответствует контроллерам, тогда как архитектура ARM более соответствует процессорам. AVR32 много больше контроллер, чем ARM. Архитектура ARM не была рассчитана на контроллеры, но контроллеры на этой архитектуре сделали через ж... ухо :). В то время как архитектуру AVR32 специально разрабатывали для контроллеров.

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

Не уверена, что ваш LPC11xx переплюнет любой из AVR32. Последние предельно экономичны.

На бумаге по отдельно выпяченным параметрам. На комплексное, включая периферию, решение проблемы энергопотребления Atmel в отличие от MSP так и не осилил. Среди малых контроллеров за исключением MSP хорошо смотрится STM8.

 

 

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


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

Все определяется целесообразностью. Вот вроде хотели отказаться от АВР, но весной выиграли тендер на 8 килоустройств, посчитали, посмотрели - Мега88 полностью перекрывает все потребности и АРМ вроде как и не при делах при таком раскладе, а СТМ8 еще не освоен в должной мере.

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


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

Еще раз для тех, кто не читает. Прибор для программирования обязан иметь один разъем, одну кнопку и свисток обозначающий завершение записи. И никаких ПК, юартов и заводских бутлоадеров которые все равно надо прописывать. Разъем вставил, нажал - прописал. Все что сложнее - пользуйтесь сами при программировании, но на производстве такого не надо.
Между строк: я знаю как минимум несколько весьма крупны производств где зашивка происходит путём кликания на батничек и вывода сообщений на экран о результате программирования, юстировки или калибровки. И нет никаких проблем. Не лишне ещё раз поблагодарить AVReal'а. При этом на производствах работают совершенно разные люди от студентов до женщин преклонного возраста. Но если для Вас это принципиально - так потратьте неделю и сделайте свой автономный программатор с интерфейсом uart - чем плохо?

 

Эмуляция это как-бы не одно и то-же. Когда надо писать 10 байт - еще куда не шло. А когда хоть пол сотни с контролем и восстановлением корректности каждого байта/слова - тут эмуляция вылазит боком.
Каким это? Эмуляция на то и эмуляция что Вы вольны добиться любого перфоманса от хранилища и даже сильно лучшего нежели работа напрямую с eeprom встроенным в AVR или внешним AT24. Я говорю об этом потому что лично пробовал и имею положительный опыт. А Вы на мой взгляд лишь теоретизируете на эту тему и пытаетесь убеждать в чём-то окружающих. Странно это... Для себя можете настроить целый замок из страшилок о современных ширпотребных армах и так и продолжать жить в мире и согласии с AVR, но не стоит строить посылы в массы основанные только на глубоко субъективных индивидуальных фобиях.

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


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

Разницу в питании +3.3В и +5.0В, а так же наличие/отсутствие корпусов DIP можно не упоминать. Почти не принципиально. Я даже не хотел бы поднимать проблему наличия/отсутствия EEPROM "на борту". По нынешним временам, подвесить внешнюю 24LCxx не такая уж и большая проблема.

Подвесить - никогда не проблема. Вот только это - ноги, место на плате, деньги, контакты пайки, доступность содержимого снаружи....

MSP430 -- это бывший лидер по энергопотреблению. Равных ему реально нет. Сейчас это уже не так.

Он никогда не был лидером. Они с Atmel и Microchip шли практически нос-в-нос. На самом деле там все зависело от метода измерения. Тем более, что отсутствие EEPROM убирает из тестовой программы потребления один из самых потребляющих элементов.

 

AVR -- дорогой, собака!

ГДЕ? Особенно после того, как добавить стоимость 24LCxx с которой "не такая уж и большая проблема"

При интенсивном использовании констант (константные строки, avr/progmem.h) в программе, Си-ный код программы становится "неуклюжим", теряет прозрачность и красоту. Потом становится тяжело его сопровождать.

Ну ни за что бы не сказал... Я конечно progmem.h никогда не пользовался, но больших проблем с константными строками не замечал. Была как-то проблема константного массива константных строк, но это скорее проблема Cи т.к. в АСМ-е там вообще не проблема.

Противоречие Гарвардская архитектуры проца и изначальной ориентации Си на Фон-Нейманоскую архитектуру.

А это то тут причем? Причем тут разделение кода и данных с ориентацией Си? Есть желание тягать лишние байты при обращении к памяти ради непрерывного адресного пространства?

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

Может быть. А как к примеру использование перспективного CC430. Или уже есть дешевые транссиверы плюс Cortex в одном флаконе?

И да! Я принципиально не изучаю ни PIC-и, ни STM8, ни XMega по этой же причине -- катастрофическая нехватка времени!

XMega это практически тот-же AVR плюс новая периферия... Из минусов - убрали SPI-программирование.

 

 

Но если для Вас это принципиально - так потратьте неделю и сделайте свой автономный программатор с интерфейсом uart - чем плохо?

И что он будет делать с голым камнем на котором бутлоадером и не пахнет?

Каким это? Эмуляция на то и эмуляция что Вы вольны добиться любого перфоманса от хранилища и даже сильно лучшего нежели работа напрямую с eeprom встроенным в AVR или внешним AT24.

Да уж... Сильно лучше когда в любой момент можно или потерять все содержимое страницы или выделять на каждый элемент раз в сто больше чем надо...

Я говорю об этом потому что лично пробовал и имею положительный опыт. А Вы на мой взгляд лишь теоретизируете на эту тему и пытаетесь убеждать в чём-то окружающих.

В 3 метрах от меня валяется автомобильная магнитола в которой китайцы решили сэкономить на EEPROM-ке и начали писать текущие настройки во ФЛЕШ... Проблем небыло ... первые два месяца. А вот потом это стало регулярным геморроем для отдела гарантийного обслуживания. Сперва платы просто списывали, но после второго десятка пришли ко мне с вопросом - КАКОГО они помирают. Основной способ ремонта оказался - переписать ФЛЕШ. И это не одна модель и даже не один производитель...

Напомнить еще какова гарантия сохранения текущих настроек в GSM-модулях? Там так-же решили не заморачиваться... :smile3046:

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


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

И что он будет делать с голым камнем на котором бутлоадером и не пахнет?
Чип выходит с завода-производителя уже прошитым загрузчиком изначально (применительно STM32 и наверное подавляющему большинству ширпотребных ARMов). И действительно не пахнет.
Да уж...
Это не аргумент, а лишь домыслы и продолжающиеся попытки притянуть кота за уши...

Всё зависит от кривизны рук программиста. Написали так что может слететь - будет слетать. И ничего более.

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


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

Всё зависит от кривизны рук программиста. Написали так что может слететь - будет слетать. И ничего более.
+1.

 

XMega это практически тот-же AVR плюс новая периферия... Из минусов - убрали SPI-программирование.
Это скорее всего плюс а не минус. Связь программатора (в широком для Вас:) смысле) с программируемым МК более надежная. Скорость быстрее. Проводов меньше. Габариты разъема программирования меньше.

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


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

Он никогда не был лидером. Они с Atmel и Microchip шли практически нос-в-нос.

Был и остается, естественно, среди равных по производительности.

На самом деле там все зависело от метода измерения.

Ага :). У MSP430 в реале, а Atmel именно оно это самое "все зависит от метода измерения" :). Уже писал, все выдают всякие зависящие от метода измерения данные по ядру, но совершенно "забывают" о периферии, ресурсах ядра уходящих на ее обслуживание и возможности автономной работы периферии.

тем более, что отсутствие EEPROM убирает из тестовой программы потребления один из самых потребляющих элементов.

Типичный ток потребления первой попавшейся EEPROM будет на уровне 1-2uA, что, конечно, заметно, но отнюдь не "из самых потребляющих".

Особенно после того, как добавить стоимость 24LCxx с которой "не такая уж и большая проблема"

Стоимость в хоть каких-то заметных количествах на уровне 10..15 евроцентов.

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


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

Стоимость в хоть каких-то заметных количествах на уровне 10..15 евроцентов.
На самом деле вопрос использования или неиспользования внешней EEPROM намного более широк, чем Вам кажется.

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


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

Гость
Эта тема закрыта для публикации ответов.
×
×
  • Создать...