Полагаю, что создавать переносимый на разные платформы проект, жертвуя функционалом (включая экономический функционал, конечно), - полная глупость. Затраты на портирование практически равны затратам на новый проект.
Так даже между разными камнями в одном семействе переносить код может оказаться геммором еще тем. А уж мысли про чудесную переносимость между камнями разных производителей это вообще что-то из области фантастики. Библиотеки пишутся не для того, чтобы код с камня на камень перетаскивать, а для того, чтобы индусы могли писать код однообразным способом, не вникая в подробности где этот код будет работать.
Я думаю у каждой платформы есть свое время. Вот жил я раньше на тиньках и мегах - то тут хер поджимаешь чтоб таймеров хватило, то внешних прерываний не хватает, то ног (городишь мультиплексоры внешние ). А потом ХОП... и стали доступны STM32F030xx за 1 бакс (на то время даже тинька самая сранная стоила в два раза дороже), да и с нереальным функционалом. Конечно же я все новые проекты на них стал делать/переучиваться.Вот и до сих пор преимущественно использую эту серию, для простеньких проектов. А делать универсальную платформу...Зачем??
Заголовок сообщения: Re: STM32 новичку в ARM что к чему
Добавлено: Сб окт 03, 2015 23:43:14
Друг Кота
Карма: 26
Рейтинг сообщений: 108
Зарегистрирован: Чт ноя 04, 2010 01:56:36 Сообщений: 7439 Откуда: г. Москва
Рейтинг сообщения:0
isx писал(а):
А делать универсальную платформу...Зачем??
А если изделие со сроком жизни больше 3 лет ? Это эпоха в контроллеростроении. Или изделие в нескольких исполнениях, для которых оптимально подходят разные контроллеры, а функциональная часть софта процентов на 70 едина ?
Если мы говорим не об изучении моргания светодиодами новичком, а о реальном проекте ? Пусть даже не коммерческом, а опенсоурсном, коих прилично уже и хронологию развития можно посмотреть.
Если вы делаете изделие, то для него должно быть соответствующее ТЗ, под которое подгоняется имеющийся на данный момент МК (или что-то другое). Если предполагается усовершенствование проекта, то нужно заранее это предусматривать (если у вас в корпусе LQFP64 не хватит ног, то как вы планируете совместить плату с LQFP100?). Конечно, если собрав часы-будильник, вдруг захочется сделать на их основе автопилот для коптера, то взаимозаменяемые платформы необходимы .
Использование модульных источников питания открытого типа широко распространено в современных устройствах. Присущие им компактность, гибкость в интеграции и высокая эффективность делают их отличным решением для систем промышленной автоматизации, телекоммуникационного оборудования, медицинской техники, устройств «умного дома» и прочих приложений. Рассмотрим подробнее характеристики и особенности трех самых популярных вариантов AC/DC-преобразователей MW открытого типа, подходящих для применения в промышленных устройствах - серий EPS, EPP и RPS представленных на Meanwell.market.
А если изделие со сроком жизни больше 3 лет ? Это эпоха в контроллеростроении. Или изделие в нескольких исполнениях, для которых оптимально подходят разные контроллеры, а функциональная часть софта процентов на 70 едина ?
Хорошо это выглядит только на абстрактных примерах и только издалека. На деле я вижу три вайфай маршрутизатора DIR-300, в двух из которых установлены камни разных поколений одного производителя, а в одном и производитель другой. Отсюда возникает вопрос -- так ли нужна какая-то софтовая совместимость, если D-Link даже одну модель не стремается лепить на совсем разных процах?
Заголовок сообщения: Re: STM32 новичку в ARM что к чему
Добавлено: Вс окт 04, 2015 00:02:54
Друг Кота
Карма: 26
Рейтинг сообщений: 108
Зарегистрирован: Чт ноя 04, 2010 01:56:36 Сообщений: 7439 Откуда: г. Москва
Рейтинг сообщения:0
isx писал(а):
Если вы делаете изделие, то для него должно быть соответствующее ТЗ, под которое подгоняется имеющийся на данный момент МК (или что-то другое).
Что значит "имеющийся" ? имеющийся где и у кого ? Обычно поле имения - это все, что доступно на рынке. И это выбор МК подгоняется под ТЗ, а не наоборот. А далее периодически смотрится по чем сейчас покупаем комплктуху, какие и почем есть аналоги на рынке и соотносится, сколько еще есть перспектива продать, разница в цене между МК и объем работы по переходу. Если с последним пунктом сильно облажать с привязкой к регистрам, то получения профита предъявляет намного бОльшие требования к предыдущему и предпредыдущему пунктам -))
Заголовок сообщения: Re: STM32 новичку в ARM что к чему
Добавлено: Вс окт 04, 2015 00:04:57
Друг Кота
Карма: 26
Рейтинг сообщений: 108
Зарегистрирован: Чт ноя 04, 2010 01:56:36 Сообщений: 7439 Откуда: г. Москва
Рейтинг сообщения:0
a5021 писал(а):
Отсюда возникает вопрос -- так ли нужна какая-то софтовая совместимость, если D-Link даже одну модель не стремается лепить на совсем разных процах?
Именно по этому и нужна. И это именно то, что я имею ввиду. Сам по работе ровно так же делаю - меняется даже производитель МК и флеша в рамках формально одного продукта Это нормальная практика - хочешь не уменьшать прибыль - адаптируйся по поставщикам.
СОФТ то и функциональнасть та же самая. И поддержку и фиксы к софту под предыдущее железо в рамках гарантийного срока никто не отменял. чем больше % общих исходников под все платы, тем ниже трудозатраты (=деньги) на поддержку.
Что значит "имеющийся" ? имеющийся где и у кого ? Обычно поле имения - это все, что доступно на рынке. И это выбор МК подгоняется под ТЗ, а не наоборот.
Так и я о том же .
Satyr писал(а):
А далее периодически смотрится по чем сейчас покупаем комплктуху, какие и почем есть аналоги на рынке и соотносится, сколько еще есть перспектива продать, разница в цене между МК и объем работы по переходу.
Ну не знаю. Такая комплектуха это ж не семечки, у которых производители каждый месяц новые . Да и цены пляшут в основном только от доллара (от которого, кстати, цены на все пляшут ).
Satyr писал(а):
Это нормальная практика - хочешь не уменьшать прибыль - адаптируйся по поставщикам.
Поставщиков у нас тоже не мало. Много очень надежных. Проблема может вылезти в том, что если изначально был сделан неверный выбор комплектухи, то потом исправление такой ошибки, связанное с переводом на другую платформу, может дорого стоить. Решение проблемы одно - тщательнее подходить к выбору продуктов для своих проектов еще на этапе проектировки.
Заголовок сообщения: Re: STM32 новичку в ARM что к чему
Добавлено: Вс окт 04, 2015 00:49:19
Друг Кота
Карма: 26
Рейтинг сообщений: 108
Зарегистрирован: Чт ноя 04, 2010 01:56:36 Сообщений: 7439 Откуда: г. Москва
Рейтинг сообщения:0
isx писал(а):
Ну не знаю. Такая комплектуха это ж не семечки, у которых производители каждый месяц новые.
В масштабе месяцев нет. А если говорить полугодями, а то и кварталами - вполне себе семечки. Стандартная практика, когда новое семейство у производителя по цена/жирность лучше предыдущего. Иначе чего ради все ? Обновки у всех производителей не синхронно, так что период старое у одного - новое у другого может быть много меньше, чем период выброса новинок в рамках одного производителя.
Так даже между разными камнями в одном семействе переносить код может оказаться геммором еще тем.
Хороший Вы выбрали пример для обоснования отказа от переносимости:
a5021 писал(а):
Хорошо это выглядит только на абстрактных примерах и только издалека. На деле я вижу три вайфай маршрутизатора DIR-300, в двух из которых установлены камни разных поколений одного производителя, а в одном и производитель другой. Отсюда возникает вопрос -- так ли нужна какая-то софтовая совместимость, если D-Link даже одну модель не стремается лепить на совсем разных процах?
На мой взгляд, решение о том, делать код переносимым или писать "в лоб", зависит от размеров проекта - для небольших проектов стоимость усилий по написанию переносимого кода может оказаться сравнимой со стоимостью собственно разработки кода, а-то и превышающей его , но большие проекты конечно дороже переписывать всякий раз заново. Так что, я бы предположил, что источником споров присутствующих является именно эта причина.
Дело тут не в размере проекта, а в его типичности. Скажем, для вычислительной техники и аппаратуры к ней, включая сетевые устройства, достаточно просто обеспечить переносимость, поскольку все насквозь стандартизовано почти на всех уровнях. То есть нестандартным может быть только небольшой участок проекта до первого стандартного сечения. А если речь идет о встраиваемых применениях, где контроллер или процессор выполняют подчиненную роль в железе, картина совершенно иная.
Дело тут не в размере проекта, а в его типичности.
Согласен, можно и об этом факторе говорить. Однако, между "большими" и "типичными" проектами есть значительная корреляция, хотя и непрямая. Дело в том, что большие (а значит и дорогие), но разовые проекты - малонаселенная ниша. Они существуют там, где стоимость отходит на второй план - имиджевые, спецпроекты и т.п. Если же говорить об обычных ситуациях, то эти параметры в значительной степени синонимы.
Заголовок сообщения: Re: STM32 новичку в ARM что к чему
Добавлено: Вс окт 04, 2015 18:47:38
Друг Кота
Карма: 26
Рейтинг сообщений: 108
Зарегистрирован: Чт ноя 04, 2010 01:56:36 Сообщений: 7439 Откуда: г. Москва
Рейтинг сообщения:0
В мелкосерийных обычно стоимость комплектухи на порядки ниже, чем стоимость разработки отнесенная к единице продукции. И тупо берется то, на чем разработка дешевле. И по максимуму крупные готовые куски, благо готовых высокоинтегрированных модулей и HAL к ним с примерами полно нынче
Скажем, вот такую чтуку по 95$ продают
Поскольку во многом похоже на вещь, что сейчас мастерю, могу сказать, что то, что вы видете в кадре в сборе тянет на <20$ НЕ считая проектирования (тысячи $), пары версий прототипов (~500$ каждый) и подготовки производства (~1000$).
Если надо пару десятков изделий - что дешевле "20$" или 95$ ? -)))
Здравствуйте. Поскольку тема для новичков, думаю можно задавать здесь самые идиотские вопросы Так вот мой вопрос про SPI в STM32F030F4P6. От оного модуля требуется общаться с контроллером дисплея от нокии 3410. Используются только линии MOSI и SCK, ногу D/C контроллера дёргаю вручную. Размер данных 8 бит, режим SPI - Transmit-only mode, MSB first.
Тема избитая, но тем не менее ни чтение форумов, ни статьи, ни изучение RM0360 ничего не дало. Должно работать, а не работает!
Инит, на жирном арме, на асме ? Ладно, просто сделаю вид, что не видел
На жирном??? Не смешите У Cortex-М0 набор инструкций скромнее, чем у AVR, соответственно пространства для оптимизации у сишных компиляторов немного. Да и асм не какой-нибудь - модификация FASM, рассчитанного на Большого Брата.
Вопрос собственно по SPI, который нужно правильно инициализировать. Задача вроде бы тривиальная, да и режим самый простой что может быть. Должно работать, а не работает. Если можете, подскажите что не так с CR1 и CR2. Хорошо бы увидеть чистый сишный код, без всяких SPL.
SPI что-то передаёт, на SCK есть какие-то импульсы. Но почему-то дисплей не реагирует Уже и скорость сбавил до минимума, а толку нет.
Заголовок сообщения: Re: STM32 новичку в ARM что к чему
Добавлено: Пн окт 05, 2015 09:47:34
Друг Кота
Карма: 26
Рейтинг сообщений: 108
Зарегистрирован: Чт ноя 04, 2010 01:56:36 Сообщений: 7439 Откуда: г. Москва
Рейтинг сообщения:1
Andrew Martin писал(а):
У Cortex-М0 набор инструкций скромнее, чем у AVR, соответственно пространства для оптимизации у сишных компиляторов немного.
Чем набор инструкций ортогональней (у идеального сферического RISC в вакууме - ровно 90 градусов -))) ) - тем менее интеллектуальность компилятора влияет на производительность полученного кода (до этапа перестановки кода для оптимизации прохождения конвейера). Последние сишные компилеры, во всяком случае ИАР 7.40 уже оптимизируют так, что редко что можно руками улучшить. И уже не чисто за счет кода, а больше корректировка схемы организации алгоритма.
Писать от и до на асме - это не признак профессионализма, а скорее наоборот - неспособность адекватно выбрать инструменты для решения задачи.
Писать от и до на асме - это не признак профессионализма, а скорее наоборот - неспособность адекватно выбрать инструменты для решения задачи.
А если программист может писать и на АСМе и на Си, но затрудняется делать существенные вставки на АСМе? Тогда такой программист пишет либо на Си, либо на АСМе - в зависимости от задачи. Но для СТМ32, учитывая особенности исполнения команд, писать на чистом АСМе, на мой взгляд, действительно идиотизм... АРМ архитектура по сути не совсем архитектура реального времени из-за неопределенного времени исполнения команд и входа в обработчик прерываний. Из-за чего требуется более высокая частота работы, чтобы минимизировать неопределенности исполнения кода и большой набор разнообразной периферии для привязки кода к реальному времени с высокой точностью.
Dosikus, PA6 у вас отведён под MISO, мне же ничего принимать не нужно, т.к. дисплей нем как рыба. Поэтому эта нога у меня используется как обычный пин GPIO (программно переключающий шину D/C дисплея).
Код:
.gmask_1 dw GPIO_MODER_MODER7_1+GPIO_MODER_MODER5_1+GPIO_MODER_MODER6_0 ;alternative function on PA5, PA7 and output on PA6
PA4 у вас также настраивается на пушпульный выход, у меня этот пин пока вообще не задействован. В остальном инициализация порта А такая же как и в вашем примере.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 5
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения