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

MBED OS: почему-то не могу заставить многие порты работать


rmatveev

Рекомендуемые сообщения

Вливаюсь в среду программирования MBED OS с платой STM32F429I-DISC1 и вот что заметил:
1) Почему-то PWM у меня нормально заработал только на ножке PF_6. Я перебрал, конечно, не все порты, которые поддерживают работу с PWM, но другие, которые я попробовал, не заработали.
2) Пытался сконфигурировать некоторые порты в качестве цифрового выходи и тоже фигушки. Нормально заработали только те, что подключены к зеленому и красному светодиодам (PG_13 и PG_14). На некоторых ножках был какой-то неведомый мне меандр, какие-то не захотели переходить в низкоомное состояние.

В качестве базы я использовал код DISCO-F429ZI_LCDTS_demo (это из примеров по этой плате с работой ЖК индикатора и тачскрина).

Что может быть не так? Может быть какие-нибудь библиотеки, подключаемые при работе тачскрина и/или дисплея занимают большую часть портов и не позволяют их использовать по усмотрению программиста? Или я еще что-то не понимаю в архитектуре ARM? (Сам я прихожу из AVR-ов)

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

Реклама: ООО ТД Промэлектроника, ИНН: 6659197470, Тел: 8 (800) 1000-321

20% скидка на весь каталог электронных компонентов в ТМ Электроникс!

Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!

Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!

Перейти на страницу акции

Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849

9 минут назад, BARS_ сказал:

Для того, чтобы нормально работать с МК надо писать весь код самому, а не тащить левые библиотеки. Качай Keil или Eclipse и программь.

Ничего себе "левые" :)))

MBED OS - это среда разработки ARM Limited. Т.е. прям роднее некуда. И пока мне эта платформа видится во многом удобнее. Вы же не посоветуете какому-нибудь ардуинщику кодить на ассемблере и "не тащить левые библиотеки" :)))

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

Выбираем схему BMS для заряда литий-железофосфатных (LiFePO4) аккумуляторов

Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

Только что, rmatveev сказал:

MBED OS - это среда разработки ARM Limited

Да хоть от кого угодно? Толку? Библиотеки там именно левые(такие же левые, как и SPL и HAL), и таковыми они останутся, пока не научишься программить без их использования. Подцепил хедер под серию МК и вперед. Нету в ARM ничего такого сложного, где нельзя без библиотек. Простецкая фигня типа портов, spi, uart. таймеров и т.п. настраивается буквально в 5 строк. И заметь, результат на 100% прогнозируемый. А вот что делают твои чудесные библиотеки вообще неизвестно, что и подтверждается созданием данной темы. А лепить ОС на STM - тот еще маразм.

 

Только что, rmatveev сказал:

какому-нибудь ардуинщику

Ардуинщики и программисты - разные люди.

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

6 минут назад, BARS_ сказал:

Ардуинщики и программисты - разные люди.

Эт точно )))

Ладно, я погляжу другие среды. У MBED OS в числе прочего есть еще важный недостаток - полная облачность. Нет интернета = нет кода. Локально там вообще ничего не работает. В наше время это, конечно, не очень большая проблема, но меня это немного напрягало.

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

1 час назад, rmatveev сказал:

У MBED OS в числе прочего есть еще важный недостаток - полная облачность

Всё прекрасно работает офф-лайн, нет проблем. Устанавливаете MBED CLI и вперёд - кодим без интернета.

Конечно, для помигать светодиодом ОС не нужна. Но не все же только светодиодом мигают.

Я, вот, только закончил проект под MBED 5. Процессор Arm Cortex-M4, 6 штук АЦП, GPS модуль и SD-карточка.

MBED - многопоточная ОС. У меня в программе фигачат 3 потока, в одном опрашиваю все АЦП 25 раз в секунду, в другом - раз в секунду читаю данные с GPS, а в третьем потоке сохраняю данные на SD карточку в фотмате FAT32 каждые 2 минуты. При этом пару раз в секунду на компьютер оператора через ком-порт выдаётся текущая телеметрия для тестирования системы. 

Все работает круглосуточно, пока, вроде, не сбоит, тьфу-тьфу-тьфу.

Написание кода заняло пару недель и с десяток страниц кода. 

1 час назад, BARS_ сказал:

. Нету в ARM ничего такого сложного, где нельзя без библиотек

Ну, уж, не знаю, сколько бы у меня заняло времени всё написать без ОС и без библиотеки для FAT32.

 

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

17 минут назад, Yurkin2015 сказал:

MBED - многопоточная ОС

Это на однопоточном то МК

 

17 минут назад, Yurkin2015 сказал:

У меня в программе фигачат 3 потока, в одном опрашиваю все АЦП 25 раз в секунду, в другом - раз в секунду читаю данные с GPS, а в третьем потоке сохраняю данные на SD карточку в фотмате FAT32 каждые 2 минуты.

Что-то я не пойму, нафига ОС для таких элементарных задач?

 

18 минут назад, Yurkin2015 сказал:

Написание кода заняло пару недель и с десяток страниц кода. 

Ровно то же самое пишется максимум за неделю (это с отладкой) и без убогой ОС.

 

19 минут назад, Yurkin2015 сказал:

сколько бы у меня заняло времени всё написать без ОС

Минимум в 2 раза меньше времени. У меня есть проект на 205 камне. Раз в секунду читается GPS с парсингом NMEA, идет общение с ПЛИС по SPI, временами очень активное, т.е. данные могут сыпаться непрерывно, по второму SPI идет работа с микрухой Ethernet, на которой может быть одновременно открыто до 5 сокетов, плюс ко всему идет отображение данных на TFT дисплее с периодом обновления 100мс (при условии наличия новых данных для отображения) и опрос устройства по I2C. И никакой ОС там нет и близко.

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

не, это был вопрос ТСу

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

Нужно делать то, что нужно. А то, что не нужно, делать не нужно. (С) Винни Пух

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

2 часа назад, mail_robot сказал:

а чем вам FreeRTOS не вкатила?

Ничем :)

Если это стоящая вещь, то я готов на нее внимательно посмотреть. Просто взор упал на MBED, мне понравилась концепция и я начал ее использовать. Но сейчас наступает некое отрезвление.

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

8 hours ago, rmatveev said:

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

Прежде чем писать код посмотрите схему. На плате есть внешние устройства, которые подключены к контроллеру. Если вы сконфигурируете ножку как выход, а к ней подключен выход внешнего устройства, то можете спалить.

В Cube хорошо видно какие ноги свободные.

Disc429.thumb.jpg.6f9747834727c37ae4eeb8d3be200031.jpg

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

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

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

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

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

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

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

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

Загрузка...
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
  • Сообщения

    • Почему нигде нет масштаба по оси Y ? График напряжения на базе - какая амплитуда в минус на базе ключа при пробое ? Он держит не более 8..9 вольт, больше -7 вольт не должно быть ни при каком раскладе. Транзисторы раскачки - проверьте ОБА на пробой. Проверьте базовые цепи обоих ключей на одинаковость. на первой осциллограмме не вижу никаких проблем. Колебания в паузах от индуктивности намагничивания первичной обмотки трансформатора. Это всегда будет в режиме холостого хода. Чтобы был прямоугольник, необходимо, чтобы через дроссель ток не падал до нуля - то есть, режим неразрывного тока дросселя. Для этого, необходимо увеличить его индуктивность. нагружать источник, запитанный от резистора - нельзя ! ключи должны быть из одной партии, убедитесь что ничего не пробито. Емкости высоковольтных электролитов тоже должны быть одинаковыми. Проверьте на высыхание. Схема выпрямления должна быть двухтактной - это на всякий случай
    • @READART Согласен, некорректно выразился. Батарейно-зависимое хранилище вот совсем без внешнего резерва не припомню, как правило какой-то модуль хранения есть хотя бы как докупаемая опция. Опция дублирования программы на карту памяти есть у большинства ПЛК со слотом для карты, DELTA и Allen-bradley точно умеют. Да, и все же есть разница ионистор или АКБ/батарейка. С последними и пара лет хранения не проблема. З.Ы. А нет вспомнил. ОВЕН, будь он не ладен. И еще вроде кто-то ругался на PLC Saia-Burgess.
    • Стоваттный резистор в колоночку - и можно обходиться без отопления.
    • Не совсем так. Батарейка в ПЛК - весьма распространенное явление, причем нередко в ПЛК отсутствует карта памяти или иное хранилище рабочей программы, в результате чего после исчерпания батарейкой своего ресурса станок уходит в небытие. В этом плане приятен omron - в части его ПЛК рабочая программа хранится и в SRAM, и на карте, а пользователь с помощью микрика может выбирать откуда ему загружаться. 
    • сила притяжения, развиваемая соленоидом прямо зависит от тока. Если постоянно не нужна максимальная сила притяжения, то можно при помощи ШИМ уменьшить ток соленоида. Но это не точно ))
    • @READART Конкретно с LOGO не сталкивался, но у всех других, с кем сталкивался, программа всегда лежала во флеше. Да и хранить именно програмный код в энегозависимой памяти просто нелогично. Ионистор, скорее, может использоваться для отработки отключения питания, что-бы программа штатно могла завершиться, сохранив свое состояние.
    • А тема офигенно интересная. Рассуждать логически, в варианте А в среднем проводнике тока вообще практически нет и он нафиг не нужен. Во втором варианте по этим двум проводникам фигачит полный ток туда и обратно. Если хорошо свить, то по помехам одно...нно, только омические потери.  Дальше однозначного понимания у меня тоже нет. Я не выдающийся математик, мне нужен эксперимент. Например попробовать разорвать средний провод. Посмотреть куда подключены остальные цепи. Возможно у БЖТ асимметрия. Посмотреть как идут крайние провода обмотки, возможно раздвоенный средний компенсировал помеху от крайних.  ......  Не надо в подушку плакать, просто не нужно лезть с сегнетоэлектрикой в (калашный) звуковой ряд. Только не забывать про тоненькие дорожки к ним на ПП, если вдруг их приходится делать, или дилетанты наделали. А так да, отсутствие выводов большой плюс. Особенно когда занимаешься полосковой технологией.
  • Похожий контент

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