Jump to content

    

Порекомендуйте дешёвый 8/16/32-битный МК, не Cortex!!!

Добрый день, коллеги! Порекомендуйте самый дешёвый МК (ну до 100 р за корпус) не Cortex-архитектуры. Критерии:

1. Наличие Си/Си++ -компилятора.

2. Память программ flash 16 - 64 кБ.

3. Память ОЗУ 2 - 8 кБ.

4. Частата 8 - 50 МГц.

5. Один железный UART.

6. Один железный SPI.

7. GPIO не менее 8 - 12.

8. Корпус TSOP, TQFP и подобный "паябельный".

9. Доступность в РФ.

10. Программирование очень желательно без программатора, через uart, например.

11. Распространённость среди населения, чтобы вопрос можно было задать)))

12. Не аппаратный стек, как это было в pic16f84.

Сам смотрю в торону AVR, с которыми работал (mega, xmega). Или на pic18/24. Но поскольку сам давно работаю с кортексами, совершенно не понимаю, что изменилось в мире 8-биток, и на что лучше ориентироваться. Может быть msp430?

Share this post


Link to post
Share on other sites
10 минут назад, haker_fox сказал:

не Cortex-архитектуры.

Чем кортекс не угодил?

Share this post


Link to post
Share on other sites
1 hour ago, ViKo said:

Интересные МК! Оооочеень младшие собратья STM32) Ну это шутка, конечно. Смущает 6 регистров в процессоре. Вы не используете их? Как качество кодогенерации?

1 hour ago, megajohn said:

ну для начала присмотреть можно тут

Фильтр мне понравился! Вот только непонятно на чём оставновиться: pic, msp430? Как на ваш взгляд?

1 hour ago, Vasily_ said:

Чем кортекс не угодил?

Дело не в нём. Кортексы - прекрасная архитектура, и я всем советую её, кто выбирает МК. Но как бы прекрасна она не была, когда управляет критически важным исполнительным механизмом, за ней нужно приглядывать. Желательно другой архитектуре, и желательно другим кодом, скомпилированным другим компилятором. Если менее затейлево выражаться - то для обеспечения двукратного дублирования: канал управления (cortex-m0), канал мониторинга (pic, avr, msp430). При обнаружении ошибок у друг дружки - перевод модуля в безопасный режим. Более того, в иполнительном механизме стоит шаговый двигатель, так вот одной обмоткой будет управлять один МК, другой обмоткой - другой. Чтобы один без другого это двигатель даже сдвинуть с места не мог.

Share this post


Link to post
Share on other sites
11 минут назад, haker_fox сказал:

Интересные МК! Оооочеень младшие собратья STM32) Ну это шутка, конечно. Смущает 6 регистров в процессоре. Вы не используете их? Как качество кодогенерации?

Нет, не использую. Мне хватает разных STM32.

Помню, zltigo их рекомендовал.

Share this post


Link to post
Share on other sites

Костыли какие-то странные и малопонятные, особенно с располовиниванием драйвера шагового двигателя на разные МК (ещё и разных архитектур???).

Чем резервирование на разных архитектурах лучше резервирования одинаковыми (многоядерными?) МК, ошибок и граблей в два раза больше собрать?

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

Ну или psoc какой-нибудь с отдельным блоком логики. у мелких pic32 и CM0 от микрочипа тоже программируемые блоки какие-то небольшие есть. сделайте "резервирование"/защиту через периферию.

По перечисленным требованиям какой-нибудь lpc800/stm32f0/любой другой M0[+], вполне подходит, ну возьмите от другого производителя раз так хочется разнообразия.

Share this post


Link to post
Share on other sites
11 minutes ago, _pv said:

Костыли какие-то странные и малопонятные,

Простите за прямой вопрос: вы в теме вопросов надёжности? Это к тому, что вы на твёрдой почве выражаете свои опасения по поводу кривой архитектуры? Опять же приведу "замыленный" пример Airbus и Boeing. Они, наверно, тоже странные и непонятные, раз ставят mc68040 + 80386/80286 в один комп на разные платы.

11 minutes ago, _pv said:

ещё и разных архитектур???)

да!

11 minutes ago, _pv said:

Ну или поставте мелкую CPLD

Ну и чем она лучше МК другой архитектуры?

11 minutes ago, _pv said:

Вся диагностика поди логическое "или" от всяких концевиков, датчиков напряжения/тока/температуры.

Да, но разве это меняет смысл, когда от неправильного действия железки может пострадать объект стоимостью пару (без преувеличения) миллионов рублей. Добавлю, что двигатель и блок управления там не один. Несколько несвязанных шин питани (от рахных источников) и шин данных. И тоже для резервирования.

11 minutes ago, _pv said:

Чем резервирование на разных архитектурах лучше резервирования одинаковыми (многоядерными?) МК

Тем, что физически это размещено ни на одном кристалле, а на разных платах, питается от рахных шин, хотя и находится в одном корпусе с металлической перегородкой.

11 minutes ago, _pv said:

По перечисленным требованиям какой-нибудь lpc800/stm32f0/любой другой M0[+], вполне подходит, ну возьмите от другого производителя раз так хочется разнообразия.

Спасибо, погляжу!

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

Share this post


Link to post
Share on other sites
12 minutes ago, haker_fox said:

Простите за прямой вопрос: вы в теме вопросов надёжности? Это к тому, что вы на твёрдой почве выражаете свои опасения по поводу кривой архитектуры?

нет, совсем не в теме, но то что читал как-то про тройное модульное резервирование и надёжность для космоса, оно вроде обычно сделано несколько не так :)

12 minutes ago, haker_fox said:

Ну и чем она лучше МК другой архитектуры?

ну хотя бы потому что если надо собрать "аварийные сигналы" объединить их и подать например на аварийное отрубание питание МК чтобы он не наворотил чего, то сделать это через грубо говоря К155ЛА3 пожалуй надёжнее чем через ещё один какой-нибудь ПИК, который будет просто читать состояние состояние портов и изображать из себя К155ЛА3.

и это же не я считаю, что от того что за одим исполняющим МК будет следить не точно такой же, а обязательно другой архитектуры это будет надёжнее.

просто я не понимаю, если резервный/следящий МК другой архитектуры надёжнее основного, почему тогда он не выполняет основную работу раз надёжнее, а если нет, то почему тогда следящий/резевный МК не сделать таким же как и более надёжный основной?

Share this post


Link to post
Share on other sites
3 hours ago, _pv said:

нет, совсем не в теме, но то что читал как-то про тройное модульное резервирование и надёжность для космоса, оно вроде обычно сделано несколько не так :)

Естественно, вариации возможны. На самом деле я тоже не на 100% в теме, но рядом есть люди, которые чуть больше разбираются. Приходится им доверять))) Моя задача на текущий момент - подобрать МК.

3 hours ago, _pv said:

то сделать это через грубо говоря К155ЛА3 пожалуй надёжнее чем через ещё один какой-нибудь ПИК, который будет просто читать состояние состояние портов и изображать из себя К155ЛА3.

Да, согласен! Схема, состоящая из "простой аналоговой или цифровой" начинки надёжнее, чем ещё один МК. С другой стороны степень её сложности в реализации в желез может оказаться значительно сложнее, чем взять микроконтроллер.

3 hours ago, _pv said:

просто я не понимаю, если резервный/следящий МК другой архитектуры надёжнее основного

Ни один из них не является более надёжным, чем его "партнёр" за стенкой))) Но, они либо согласны, и двигатель крутится, либо не согласны, и он стоит на месте, либо подёргивается от хаотичного набора импульсов. Наша схема ещё не готова на 100%. Идёт проработка решения, возможно, придётся и согласиться с вариантом убрать второй МК, и заменить его дискретной схемой, ПЛИС, и т.п.

Share this post


Link to post
Share on other sites
21 минуту назад, haker_fox сказал:

либо подёргивается от хаотичного набора импульсов

Если набор действительно хаотичный, то он может конвульсивно поползти в непредсказуемую сторону. Драйвер у вас тоже на рассыпухе планируется? А то готовые микросхемы драйверов почти поголовно от step/dir управляются.

Share this post


Link to post
Share on other sites
1 hour ago, haker_fox said:

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

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

Share this post


Link to post
Share on other sites
49 minutes ago, Сергей Борщ said:

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

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

1 minute ago, _pv said:

а обязательно с разной архитектурой.

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

Share this post


Link to post
Share on other sites

 

7 minutes ago, haker_fox said:

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

имхо просто багов будет в два раза больше, у каждого свои, с соотвествующей в два раза худшей надёжностью. :)

Share this post


Link to post
Share on other sites
27 минут назад, haker_fox сказал:

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

Местный опыт показывает, что бага в 99% случаев программная.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now