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

KARLSON

Свой
  • Постов

    641
  • Зарегистрирован

  • Посещение

Весь контент KARLSON


  1. Она показывает сколько осталось свободного стека по мере работы таска. Всё время ей пользуюсь и если стека осталось менее 50 , то пишу в архивы, потом так отлавливаю и увеличиваю в последующих прошивках.
  2. Errata ответил на этот вопрос. PC13 плохо влияет на LSE если его применять для входа или выхода в RTC при LSE. Решение - не использовать с LSE.
  3. И смотрели, разные платы брали. Поведение одинаковое.
  4. STM32L433 RTC выход 512 Гц

    Доброго дня. Обнаружил очень странную странность. У МК STML433VCT6 есть два вывода для выхода от генератора RTC на 512 и 1 Гц. RTC_OUT. Выводы PC13 и PB2. Эти выводы никуда не подключены на схеме. RTC тактируется от внешнего кварца. Если выводим на PC13, то частота станет 503 Гц и часы естественно начинаю медленно ходить на 28 минут в сутки. Если выход не активировать, то ходят уже нормально. Так же нормально ходят часы и на выход PB2, частота 512 Гц как и положено. Не пойму с чем связано. Посмотрел дадашит и мануал по теме RTC и GPIO ничего такого не обнаружил. Особо конечно не принципиально, схему можем переделать конечно, просто неожиданно как то.
  5. Когда мы начинали думать в эту сторону (сентябрь 2023), то собрали вот какую информацию: 1) есть два вида eSIM - для М2М и для смартфонов. 2) eSIM для М2М владеет только МТС, остальные операторы это не поддерживают, т.е. переключатся не получится. Проблема в получении и продлении лицензий в новых реалях. 3) Далеко не все модемы поддерживают эту технологию. SIM800C только спец прошивка. 4) Есть небольшой геморой с переходом прав и оформлением на нового пользователя. причём разные пути для физ лиц и юр лиц. 5) Со стороны МК никаких спец АТ команд не требуется. Просто сначала был один серийник симки, после замены профиля оператором другой серийник. Замена профиля происходит автоматически во время сеанса. У нас прибор включает модем для GPRS примерно на 40 сек.
  6. STM32CubeIDE

    В общем, да. Теперь секция выглядит так /*KEEP(*(.SettingsSection)) *(.SettingsSection)*/ .markerSettings (0x20000000) (NOLOAD): { KEEP(*(.SettingsSection)) } >RAM И бинарник теперь нормальной величины)
  7. STM32CubeIDE

    Здравствуйте. Использовали на работе IAR, применяли атрибут __no_init к некоторым переменным. Решили попробовать перейти на CubeIDE. Столкнулись с проблемой. Создали секцию в памяти в файле .ld /*KEEP(*(.SettingsSection)) *(.SettingsSection)*/ .markerSettings (0x20000000): { KEEP(*(.SettingsSection)) } >RAM Создаём переменную по конкретному адресу в ОЗУ TSettings Settings __attribute__((section(".SettingsSection"))); И тут проблема - компилятор создаёт бинарник размером в 300 Мб. Всё что далее программы одни нули. Т.е. он хочет проинициализировать её нулевыми данными. Как заставить его не инициализировать её? Искал и в инете и в guid, по словам init, attribute, attribute gcc, ничего нужного не нашёл. Подскажите, пожалуйста, как решается этот вопрос?
  8. я использую приоритет задач. И при старте задачи с наивысшим приоритетом (значит запускается самая первая), до цикла забираю все семафоры, т.к. они уже есть при старте операционки.
  9. По поводу FromISR. В последних версиях появился файл cmsis_os2.c. Там например забрать семафор можно вызвать osSemaphoreAcquire, которой всё равно от куда вызывать из прерывания или нет. Она сама автоматом определяет. Кстати нашёл и osThreadResume, но она не вызывает xTaskResumeFromISR если из прерывания. Просто выходит с ошибкой.
  10. Так что бы к этому условию придти , нужно сначала выйти из while (__HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_STOPF) == RESET), который ниже. А в ST обязательно скажу.
  11. Ошибки в библиотеке HAL

    Всех приветствую. Предлагаю тут выкладывать найденные ошибки в библиотеках HAL. P.S. не нужно тут обсуждать применять или нет библиотеки. Итак. MCU - L433 библиотека - stm32l4xx_hal_i2c.c версия - STM32Cube_FW_L4_V1.17.2 (последняя на 23.06.2022) функция - I2C_IsErrorOccurred Причина: в цикле while (__HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_STOPF) == RESET) после условия выхода по таймауту if ((HAL_GetTick() - tickstart) > I2C_TIMEOUT_STOPF) нет выхода из цикла. Может остаться на очень долгое время. Решение: добавить break; после status = HAL_ERROR;
  12. STM32CubeIDE

    vpn помогает. На STM32CubeMX-6.3.0-Win https://disk.yandex.ru/d/LT7aRTA708wqUg Сразу уж и на st-stm32cubeide_1.9.0 https://disk.yandex.ru/d/0hv2Rk2WFltJ3Q А с кубом и регистры изучаются быстрее намного.
  13. Если по примерам к отладочным платам от ST не получается и нужны курсы, то могу порекомендовать https://gb.ru/geek_university/internet-of-things. Далее видео от инженера, которые ведёт эти курсы.
  14. С CSD остался только у просто SIM800 и Telit GL865. А обновлять лучше через GPRS. По CSD дорого выходит)
  15. оставшееся место памяти в стеке этого таска проверяли? Я держу, что бы было не менее 90 слов.
  16. Всё время натыкался на эту статью от них. https://community.atlassian.com/t5/Sourcetree-articles/Bug-Fix-Sourcetree-for-Windows-authentication-error-when/ba-p/1965968 И не видел главного, может не долистывал. Отдыхать надо. Мне помог второй способ - удаление файла passwd.
  17. Здравствуйте. Bitbucket недавно сменил политику авторизации. Теперь пароль от учётной записи не применяется и только через Basic. Нужно создавать одноразовый пароль в профиле в разделе пароли приложений. Создал пароль cо всеми включенными галочками. Скопировал его в текстовый документ. В SourceTree последней версии 3.4.8.0 после установки при авторизации ввожу логин учётной записи, через Basic, пароль созданный. Аутентификацию проходит успешно. Проект из Bitbucket со своей учётной записи клонируется до последнего коммита успешно. Но после изменений создаётся локальный коммит, но не может его отправить на сервер. Не проходит аутентификацию. Владелец и участник проекта я один. Проверил в настройках проекта путь внешнего репозитория - https://логин@bitbucket.org/логин/ip_gsm_modem.git. Всё вроде правильно, как указано в статьях выше. Что делать не пойму, идеи закончились)
  18. Если готовое (бюджет не оговорен), то предложил бы контроллеры ввода/вывода по Ethernet или RS485. Что-то вроде этого https://market.yandex.ru/product--kontroller-icp-das-i-7188ead-cr/865735128?clid=545&sku=101218994913&offerid=yEQc77bnZCiZsvl4oOqFeA&cpa=1
  19. Может просто сделать компонент обычного резистора с нулевым сопротивлением? На плате это будет резистор или перемычка, которую нужно паять?
  20. Смысл в том, что должно превысить критическую массу, что бы это всё стало всё везде и повсюду. Сделать прибор как образец, во всех рекламных буклетах и сайтах писать что мы можем дать прибор с "новейшей прекрасной и дешёвой связью NBiOT", на выставках так же. Далее заказчики будут спрашивать симки у операторов, затем те уже зашевеляться)
  21. Мы сделали пилотный счётчик газа, убедились что всё работает, установили 2 штуки в Оренбурге 1 шт у нас на наработке и успокоились уже год как) Ждём лучших перемен. А ещё очень мечтаем о Е-сим)
  22. Я бы на вашем месте в МТ-Систем или Макро-групп позвонил. У них есть выход на конкретных людей у опсосов.
  23. Здравствуйте. Проблема в эксплуатации, не для новых приборов. Есть прибор с модемом Quectel UC15 в режиме CSD. C симками операторов МТС, Мегафон работает. Вставляем симку Билайн, при дозвоне на прибор модем не поднимает трубку. RING по UART приходит, посылаем команду ATA и тишина, ответа нет. После длительного времени уже приходит NO CARRIER от оператора. Эту же симку пробуем через модем промышленный Sinterion BGS2 после команды ATA приходит CONNECT 9600 и связь работает. Пробовали разные режимы AT+CBST=71,0,1; AT+CBST=7,0,1; AT+CBST=0,0,1.
  24. STM32L152VET6, L162VE, L152VD, L162VD

    Купим микросхемы 1-300 штук. Или больше если есть. Нужно в течении 3-х недель. STM32L152VET6, STM32L162VET6, STM32L152VDT6, STM32L162VDT6. Можно б/у в платах, лишь бы рабочие.
×
×
  • Создать...