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

STM32 для чайника


ART_ME

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

Колееги подскажите пожалуйста такой момент: тут встала задача залить идентичную прошивку в 4 идентичных контроллера с помощью системного бутлоадера. Так вот собственно вопрос:

можно ли это сделать параллельно? Т.е. подтянуть у всех четырех разом выводы BOOT как положено и через один и тот же UART1 закинуть прошивку? Или контроллер в процессе прошивки что-то отвечает 

(тогда начнется каша на Rx UARTa)? Заранее спасибо!

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

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

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

戦う前に相手のベルトの色に注目

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

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

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

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

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

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

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

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

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

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

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

И как Вы представляете себе заливку кода длиной превышающей буфер в ОЗУ? Откуда источник узнает когда делать паузу для собственно прошивки флеша? Вы отдаете себе отчет в том, сколько времени длится эта самая прошивка? Я уже не говорю о том, что ЛЮБОЙ системный протокол содержит верификацию, даже если это явно не следует из функций конкретного ПО. Это нужно для универсальности оного протокола. Прикладное ПО вызывает функции API для работы с периферией.

Изменено пользователем my504

戦う前に相手のベルトの色に注目

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

Да, согласен, аргументы железные...Но вопрос тот же: где этот протокол? Я в референсе ничего такого не нашел. Там как-то простенько так все написано...

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

  • 3 недели спустя...

Еще вопрос такой к знатокам: как можно поместить переменную в определенный адрес в STM32CubeIDE ?

Вариант типа: __attribute__((at(0x30000000))) uint32_t DCMI_Data [BUFF_Size]; я пробовал, не получилось, судя 

по дебагеру.

 

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

13.09.2020 в 10:41, DimaK сказал:

можно ли это сделать параллельно

поставьте 4-ре прошивателя которые читают одну и ту же прошивку, это ж элементарно!

Можно сделать все! Но чем больше можно, тем больше нельзя!

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

55 минут назад, ruhi сказал:

поставьте 4-ре прошивателя которые читают одну и ту же прошивку, это ж элементарно!

Да нет, там не вопрос чтобы обеспечить временную параллельность процесса прошивки. Пусть заливается хоть пять минут. Задача именно в том, чтобы обойтись одним каналом УАРТов на всех. Но теперь чую, придется все кроме программируемого держать в ресете и так по очереди. 

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

30.09.2020 в 17:30, DimaK сказал:

Еще вопрос такой к знатокам: как можно поместить переменную в определенный адрес в STM32CubeIDE ?

Вариант типа: __attribute__((at(0x30000000))) uint32_t DCMI_Data [BUFF_Size]; я пробовал, не получилось, судя 

по дебагеру.

 

Просто так это сделать нельзя, нужно через скрипт линкера, а иначе будет лажа.

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

  • 5 месяцев спустя...

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

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

Т.е. если стартануть таймер их мэйна со всеми теми же настройками, то как положено, при каждом переполнении улетает в соответствующий колбэк.

Но стоит перенести запуск в функцию, находящуюся в другом файле проекта - наступает карачун. Причём, флаг по переполнению в "1", таймер вертится и перезапускается, все как положено,

только не прыгает в обработчик. Что-то не инициализировал в другом файле, что в мэйне делается автоматически?...Буду весьма благодарен за все советы!

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

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

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

Не видя кода - сложно сказать.

Но судя по всему, вы не инициализируете контроллер прерываний.

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

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

Не видя кода - сложно сказать.

Но судя по всему, вы не инициализируете контроллер прерываний.

Кажется разобрался! У меня просто таймер стартует из другого калбэка. Т.е. при незавершенной обработке одного прерывания стартует другое, в этом вся и проблема. Плохая идея в обработчике делать что-то большее, чем тупо выставлять какие-то флаги....

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

Доброго времени суток !есть устройство в котором в прошивке прописаны ID,  при замене проца устройство ругается на неверные id (у родного контроллера сгорело пару портов и работать не получается с ним) первый раз столкнулся с stm32 интересует вопрос можно как то изменить id проца ? (с производителем устройства связи нет)

 

 

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

  • 4 месяца спустя...
  • 1 месяц спустя...
  • 1 месяц спустя...

доброго времени

столкнулся с необходимостью заменить контроллер (stm32f334r8t6) взял st link подключился к аналогичному устройству считал прошивку и попробовал залить на новый, но столкнулся с проблемой устройство не включается ...что я сделал не так ? подскажите пожалуйста 

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

18 часов назад, ATN95 сказал:

доброго времени

столкнулся с необходимостью заменить контроллер (stm32f334r8t6) взял st link подключился к аналогичному устройству считал прошивку и попробовал залить на новый, но столкнулся с проблемой устройство не включается ...что я сделал не так ? подскажите пожалуйста 

Возможно, что прошивка привязана к конкретному чипу.
Либо некорректно считали.

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

9 часов назад, LiVit сказал:

Возможно, что прошивка привязана к конкретному чипу.
Либо некорректно считали

сомневаюсь что привязывают контроллер 

заметил что считаная прошивка весит всего 4кб склоняюсь к тому что не правильно все же считываю ...есть какие ни будь нюансы при считывание ? 

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

  • 3 недели спустя...

Здравствуйте. Хочу собрать Hardware Monitor на STM32, а точнее на STM32F103C8T6. Для изготовлении устройства предлагается 2 схемы, одна для версии STM32 V 1.1 (Pin Change), другая не понятно для какой версии. На моей STM32F103C8T6 не указана версия платы. Как понять какой версии STM32?

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

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

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

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

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

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

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

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

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

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

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

  • Сообщения

    • Слабо себе представляю как можно спалить осциллограф пробником, если у самого осцилла уже должна быть защита от перегрузки. Если есть сомнения, мануал всегда в открытом доступе
    • Выходное сопротивление усилителя не меняется от добавления резистора впослед с нагрузкой.
    • Страшно. Наверно правильней сказать - боязно. И в первую очередь Dyd переживает за осциллограф. И это понятно инструмент все таки. Главное переступить через этот страх и сделать все с умом. Dӧppelganger_857, согласен с вами. Наиболее удачная конструкция будет на ОУ с питанием от батареек(АКБ). На том же 6022 (от квазара) можно сделать усилитель с коэф 10:1 в полосе практически до 8 МГц (точнее нужно считать). Большое входное сопротивление ему не нужно.
    • Вы спутали выходное сопротивление усилителя и сопротивление нагрузки. ЗЫ. Ща "Остапа понесет".
    • Да скорее всего. Если учесть что в двухполупериодном выпрямителе к закрытому диоду прикладывается удвоенное напряжение, то таких диодов на 900...1000в. было не много. Если вообще были.
    • А чего там разбираться, если вы хоть раз ремонтировали блоки питания АТХ то просто взгляните на топологию и сразу все поймёте. Я же спрашиваю совета не у студентов второго курса, а спрашиваю у опытных людей.   По теме, подключил 15 омный резистор к 12 вольтовой линии и снова сгорело верхнее плечо). Получается насколько понимаю следующая ситуация, при определенной нагрузке условно в 1 ампер по 12 вольтовой линии образуется момент при переключении верхнего ключа, когда оба транзистора становятся открыты кратковременно, верхний ещё не успевает закрыться а нижний открывается. Этот сквозной ток и выносит транзисторы. От чего так происходит непонятно, но по моему повышено общее потребление, потребление на входе при включении чисто дежурки 2.5 ватта, потребление при подключении "пробника включалки "по каждой линии нагрузки 47 Ом -15 ватт, а если ещё подключить дополнительно 15 Ом на 12Вольт  (условно 1 ампер или 12 ватт) то взлетает больше 50 Ти ватт ну и соответственно перегорает. 
×
×
  • Создать...