Миландр. Неожиданное поведение CAN.

У контроллеров Миландр 1986ВЕ9х довольно много небольших проблем, описанных в errata, но так же есть и не описанные. Об одной из таких проблем и поговорим. Здесь не будет кода, только поток мыслей.

Cover Image
  • Из чего состоит проблема?
  • Проблема ли это?
  • Как решить этот вопрос?

Проблема проявляется следующим образом.

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

Имеет несколько ситуаций:

  1. Если мы получали RTR запрос и после него решили отправить какие-то данные в простом пакете, то замечаем такую картину - отправляется пакет данных, а за ним отправляется ответ на RTR запрос (хотя никакого запроса сейчас небыло).
  2. Если мы не получали RTR запросов или получили после них просто пакеты данных (в нём не установлен флаг RTR), то при отправке лишнего пакета не наблюдается.

Автоматизация инкремента версий в keil

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

Люблю Visual Studio за механизм, позволяющий инкрементировать версию собранного проекта, и также сильно ненавижу Keil за отсутствие таковой возможности .

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

Стало интересно?

Немного о форматировании кода и другие советы

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

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

В который раз о портах совмещенных с JTAG. STM32

Не работает PB3 на stm32f103? Тогда мы идём к вам. Расскажу как не наступить на эти грабли.

У меня была одна из заметок про подобную тему, но то был контроллер Миландр. На этот раз его собрат от компании STMicroelectronics - stm32f103rc. Необходимо было задетвовать ножки порта PB3, PB4 и PB5 - на них висит SPI1, с помощью которого планировалось управлять переферийной микросхемой.

Миландр 1986ВЕ1Т. Проблемы с прошивкой.

Небольшая заметка о том: как решить проблему загрузки прошивки; причем здесь J-link; и как снова подружить его с Миландром

Cover Image

Использую последнюю версию Keil (5.25) и программатор ST-Link V2, и никогда не замечал проблем с прошивокой микроконтроллеров Миландр. Правда раньше работал только с семейством ВЕ9х (91, 92, 93) и их пластиковыми аналогами. Всё хорошо ровно до тех пор пока не добрался до ВЕ1Т. Мало того, что он на ядре которое предназначено для прошивания во всевозможные ПЛИС, так ещё и никак не хотел шиться. Постоянно выдавая ошибку Invalid ROM Table.

Отступать некуда, пришлось разобраться и решить эту проблему.

Альтернативная тема для Altium Designer 18. Делаем свою тему.

Описание того, как устроена структура папки тем в AD18 и как можно легко сделать свою тему.

Cover Image

Посмню как увидел в первый раз AD18. Тогда в нём была только одна темная тема, которая оказась очень привлекательной. В следующих версиях появилась и светлая, которую я сразу же испытал, но всё-таки вернулся на тёмную сторону. И появился исследовательский интерес - "Можно ли сделать свою тему целиком или хотябы просто разукрасить по другому?". Можно.