Pull to refresh
1
1.4
Стрельников Владимир @strvv

it,car,…

Send message

Начинаем писать под stm8, выбираем среды разработки и стартуем

Reading time6 min
Views29K
image

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

Определимся что речь будет идти о средах которые могут писать под си. Для начала поговорим о подходах, я выделю 2 основных.

Первый установка ST Visual Develop и выбор в качестве компилятора COSMIC Бывший платный, а ныне бесплатный, но со своими заморочками; регистрация, получение ключа, и прочие танцы с бубном.

Второй же вариант, более простой VS Code + PlatformIO и компилятор SDCC полностью свободный. И опять же не все так просто. Sdcc не умеет исключать не используемые функции. Я решил этот вопрос хоть и успешно, но не без дополнительных действий при написании кода.
Читать далее
Total votes 47: ↑45 and ↓2+43
Comments23

Как сжать загрузчик для STM8 до размера 8 байт в памяти FLASH

Reading time16 min
Views5.4K
Со времени написания предыдущей статьи ” Как сжать загрузчик для STM8 до размера 18 байт в памяти FLASH” появились две версии загрузчика STM8uLoader . Загрузчик STM8uLoader версии $36 научился передавать управление прикладной программе по любому адресу в памяти RAM без участия хост-программы. Размер 18 байт загрузчика в памяти FLASH не изменился, в области OPTION Bytes размер увеличился до 53 байта (занял все доступное пространство).

В отдельную ветку выделилась версия $0D загрузчика. Основное требование к этой версии: максимально сжать код. На сегодняшний день размер кода во FLASH памяти 8 байт в EEPROM памяти 35 байт.
Читать дальше →
Total votes 20: ↑20 and ↓0+20
Comments0

Как сжать загрузчик для STM8 до размера 18 байт в памяти FLASH

Reading time13 min
Views7.7K
В процессе поиска загрузчика для микроконтроллера STM8S103F3 было обнаружено, что имеющиеся загрузчики в основном написаны на ”C”, «крадут» значительный объем у FLASH памяти, переносят таблицу векторов прерываний.

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

Было решено попробовать самостоятельно написать загрузчик со следующими требованиями:

— загрузчик должен был называться STM8uLoader;
— код должен быть написан на ассемблере (благо ассемблер законодательно пока не запрещен);
— загрузчик должен занимать минимально возможный объем во FLASH памяти, объем занимаемый в компьютере будем считать не ограниченным;
— загрузчик не должен перемещать таблицу векторов прерываний;
— загрузчик должен иметь минимальный функционал, весь основной функционал должен взять на себя компьютер;
— загрузчик должен передавать управление прикладной программе за разумное время после сброса/включения при отсутствии соединения с компьютером.

Первое условие было моментально выполнено, а вот над последующими требованиями пришлось потрудиться.
Читать дальше →
Total votes 35: ↑33 and ↓2+31
Comments16

Разработка блока управления боковыми зеркалами автомобиля

Reading time10 min
Views17K

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

Подробнее
Total votes 77: ↑77 and ↓0+77
Comments92

Блок переключателей РК Патриот

Level of difficultyMedium
Reading time17 min
Views8.7K

Добрый день, есть такое движение у автолюбителей - покупать некоторые отечественные автомобили, как своего рода конструктор, в том числе и для перемещения по бездорожью. Одним из доступных таких автомобилей до недавнего времени был «УАЗ-Patriot”. Не буду вдаваться, на что идут творческие люди и с какими компромиссами сталкиваются, опишу только конструкцию переключателя режима работы полно-приводной трансмиссии с кнопками подогрева сидений и прочее (далее просто селектор раздатки). Конструкция вполне себе какая есть, но если к примеру вы модернизируете автомобиль для себя, бывает желание изменить схему функционирования этого узла под свои нужды- например дополнить системой изменения давления в шинах и прочее. Для этого надо иметь схему селектора, и возможность изменять прошивку установленного там микроконтроллера.

Читать далее
Total votes 30: ↑29 and ↓1+28
Comments21

Подключаем неизвестный мультиплексированный ЖКИ

Reading time15 min
Views14K
Приветствую всех!

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



А вот касательно «голых» ЖКИ информации традиционно маловато. Итак, в ходе данной статьи рассмотрим, как подключить такой экран, какие микросхемы контроллеров для них бывают, где такое применить. Традиционно будет много всякого интересного.
Читать дальше →
Total votes 44: ↑44 and ↓0+44
Comments9

RandomRace.ru — радиопеленгация для чайников (начало)

Reading time6 min
Views20K

Откуда есть пошла идея


Один мой старый приятель взялся обсуждать со мной свою новую затею — все мы в свое время увлекались приключенческими гонками, коих проводится множество в наших краях, но вот не давала человеку спокойно жить предсказуемость классической приключенческой гонки — контрольные пункты (КП) расставляются людьми, а значит их можно хоть немного предугадать.
Вот так и появился RandomRace.ru (кратко — RR).

Итак, основная идея RR — запустить гоночные КП на шарах в воздух, на некоторой случайной высоте высоте шары будут лопаться, а КП — падать на парашютах. КП будут отдавать свои GPS координаты на сервер гонки, а участники будут их потом искать. В принципе, правила соревнований составлены так, чтобы КП-зонды возвращались организаторам силами участников. Естественно, кроме тех зондов, которые отличились повышенным рандомом и улетели куда-то в за.. далеко. Такие КП приходится искать организаторам собственными силами. Так получилось, что в результате я занялся техническим решением задачи «последних 100 метров», когда организаторы приехали на место, найти КП очень хочется, а координаты неточные. С этой целью было задумано использовать радиопеленгацию — каждый зонд несет радиопередатчик, а организаторы несут приемник-пеленгатор.
Читать дальше →
Total votes 14: ↑14 and ↓0+14
Comments17

STM8L подробное руководство первых шагов

Level of difficultyEasy
Reading time6 min
Views11K

Речь пойдет о маломощном микроконтроллере STM8L001J3. Постараюсь подробно рассказать о необходимых шагах для прошивки "hello world" и различных подводных камнях.

Читать далее
Total votes 24: ↑24 and ↓0+24
Comments6

Разбираемся с латинскими сокращениями и фразами в английском языке

Reading time6 min
Views63K


Полтора года назад, читая работы про уязвимости Meltdown и Spectre, я поймал себя на том, что не очень понимаю разницу между сокращениями i.e. и e.g. Т.е. по контексту вроде бы понятно, но потом вроде бы как-то и не совсем то. В результате я тогда сделал себе небольшую шпаргалку именно по этим сокращениям, чтобы не путаться. И тогда же появилась идея этой статьи.


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

Читать дальше →
Total votes 143: ↑142 and ↓1+141
Comments72

Читаем даташиты 2: SPI на STM32; ШИМ, таймеры и прерывания на STM8

Reading time24 min
Views37K


В первой части я попробовал рассказать хобби-электронщикам, выросшим из штанишек Ардуино, как и зачем им стоит читать даташиты и прочую документацию к микроконтроллерам. Текст получился большой, поэтому я пообещал практические примеры показать в отдельной статье. Ну что же, назвался груздем...


Сегодня я покажу, как с помощью даташитов решить довольно простые, но необходимые для множества проектов задачи на контроллерах STM32 (Blue Pill) и STM8. Все демо-проекты посвящены моим любимым светодиодам, зажигать мы их будем в больших количествах, для чего придется задействовать всякую интересную периферию.

Читать дальше →
Total votes 39: ↑39 and ↓0+39
Comments26

Как заварить чай по MQTT или доступная умная розетка с контролем температуры и тока

Reading time19 min
Views45K

Зачем?


Даже в этом хабе наблюдается повышение интереса к IoT, по моему субъективному мнению это глобальная тенденция, выходящая далеко за рамки этого сайта. А значит стоит вставить и свои 5 копеек в развитие направления, тем более что давно крутилась мысль сделать узел для умного дома, который смог бы контролировать потребление любого прибора питающегося от сети 220В и давал возможность программировать логику управления в зависимости от параметров потребления, температуры, фазы луны и т.д. Существуют готовые решения, но часто в них что-то не устраивает, да и готовое это не наш метод если можно попробовать построить свой уникальный велосипед.



Параметры будущего велосипеда:

— Дешевое устройство из общедоступных компонентов.
— Контроль тока в цепи потребителя.
— Управление устройством по протоколу MQTT.
— Контроль температуры устройства.
— Два выносных датчика для контроля температуры потребителя.
— Индикация состояния на экране устройства.
— Аварийное отключения потребителя если температура или ток превысили задаваемые значения.
Total votes 38: ↑37 and ↓1+36
Comments47

Как и зачем читать даташиты, если микроконтроллеры – ваше хобби

Reading time10 min
Views47K


Микроэлектроника – модное увлечение последних лет благодаря волшебному Arduino. Но вот беда: при должном интересе перерасти DigitalWrite() получается быстро, а что делать дальше – не совсем ясно. Разработчики Arduino приложили немало усилий для снижения порога вхождения в свою экосистему, но за ее пределами по-прежнему колышется темный лес суровой схемотехники, малодоступный любителю.


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


В этой статье я поделюсь опытом общения гуманитария с даташитами в хобби-целях. Текст предназначен для выросших из штанишек Arduino любителей, он предполагает некоторое представление о принципах работы микроконтроллеров.

Читать дальше →
Total votes 34: ↑32 and ↓2+30
Comments29

Реализация контроллера SDRAM

Level of difficultyMedium
Reading time10 min
Views6K

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

Читать далее
Total votes 39: ↑39 and ↓0+39
Comments10

Генерация клока на примитиве LUT

Reading time4 min
Views3.3K

В прошлой статье я попытался с генерировать тактирующий сигнал в ПЛИС на разных примитивах. Из всех рассмотренных вариантов генерации сигнала, самым адекватным получился  клок с генерированный на  блоках LUT.  

Цель. В этот раз я хочу с генерировать клок не на одном примитиве, а на цепочке примитивов. Допустим возьмем один инвертирующий LUT и некоторое количество LUT-повторителей для создания задержки сигнала. Так же хочется посмотреть как будет меняться частота сигнала в зависимости от температуры кристалла.

Читать далее
Total votes 10: ↑10 and ↓0+10
Comments3

Экономим выводы для Arduino. Управление сдвиговым регистром 74HC595 по одному проводу

Reading time7 min
Views12K
Что не делай на микроконтроллере, все равно, в конечном итоге, получатся часы. А для проектов на Arduino апогеем бесспорно является метеостанция. И вот, обвесив плату всевозможными датчиками, достаточно часто у любителей микроконтроллеров возникает проблема с нехваткой выводов.

Обычно для расширения портов вода/вывода используют сдвиговые регистры типа 74HC595. Но для управления ими требуется целых три вывода! Невероятное расточительство, неправда ли? Ведь можно обойтись всего ОДНИМ! Всех тех, для кого два дополнительных свободных порта являются жизненно необходимыми, приглашаю под кат.

image
Читать дальше →
Total votes 36: ↑36 and ↓0+36
Comments15

С чем едят конечный автомат

Level of difficultyEasy
Reading time8 min
Views16K
image

Машина Тьюринга и машина состояний, детерминированный и недетерминированный конечный автомат, конечный автомат Мура и конечный автомат Мили. Голова кругом от всех этих понятий. Как во всем этом разобраться новичку? Тем более, что и у бывалых спецов бывает такая каша в голове из этих понятий. Чего только стоит вебинар от Яндекс Практикум на тему «Конечные автоматы в реальной жизни». Именно случайный просмотр этого вебинара сподвиг меня написать статью. Я обратил внимание, что даже более опытные лекторы ловко жонглируют всеми этими понятиями или подменяют одни другими в своих лекциях. С этим можно просто смириться, или дойти до безумия, разбираясь что к чему. И как со всем этим жить начинающему ардуинщику, если про конечные автоматы в программировании трубят из каждого утюга, а добраться до истины самостоятельно непросто?

Не гарантирую, что после прочтения статьи все сразу станет на свои места, но, как минимум, постараемся выудить из всей этой «каши» что-то полезное для себя. Так что усаживайтесь по удобнее, тема не простая, под катом будет много текста.
Читать дальше →
Total votes 28: ↑22 and ↓6+16
Comments26

Настольная игра с OpenSource и 3D-печатью

Reading time3 min
Views4.2K

Представьте, что существует физическая настольная игра, разработка которой ведется на удалёнке, причем по принципам, очень похожим на OpenSource. Она бесплатна для скачивания, ее можно модифицировать, отдельные элементы могут быть напечатаны на 3D-принтере или по старинке склеены из картона.

Читать далее
Total votes 19: ↑18 and ↓1+17
Comments2

BLE под микроскопом (24-52 link)

Reading time6 min
Views7.3K
image

BLE под микроскопом (24-52 link)


Компания NORDIC уже несколько лет выпускает новые кристаллы серии nRF52. Однако до сих пор многие используют более старое семейство nRF24. Сегодня я покажу как организовать между ними двухстороннюю связь на advertising каналах. Кроме того, используя способность кристалла nRF52 измерять уровень RSSI, мы будем выводить его на график.
Читать дальше →
Total votes 11: ↑10 and ↓1+9
Comments8

Расширяем возможности электромеханического замка

Reading time2 min
Views14K
Все, наверное, сталкивались с замерзанием замочных скважин, и я не исключение. Прошедшая зима была теплой, и это хорошо, но замок на воротах меня замучил. Температура за окном прыгает около нуля, и механическая часть то оттаивает, то замерзает. Бегать, прогревать, смазывать надоело, и я решил с этим покончить. Так как у меня стоит электромеханический замок, который прекрасно открывается с домофона, в любую погоду, решил я навесить на не него RFID-читалку. Заказал RFID-модуль RDM6300 (125Khz), десяток ключей, пару stm8s003f3p6 и st-link. Почему stm8s003f3p6 — лично моё желание познакомится с данным мк, то есть убить двух зайцев сразу.
Читать дальше →
Total votes 14: ↑14 and ↓0+14
Comments24

Разработка и эксплуатация ультразвукового сенсора наполнения бака

Reading time5 min
Views22K
Предисловие

Закончилось лето, и мне хотелось бы поделиться результатами одной интересной работы — а именно разработкой, сборкой, наладкой и эксплуатацией комбинированного ультразвукового датчика. Хочу сразу сказать, что всё устройство собиралось «на коленках», потому что было важно понять, насколько система может быть жизнеспособна. Поэтому не было сделано никакой защиты от дождя, солнца и ветра. Сам прибор был установлен снаружи помещения. Забегая вперёд, скажу, что надёжность оказалась весьма впечатляющей, несмотря на то, что устройство было собрано из остатков оборудования от старых проектов.

Постановка задачи


Задача была поставлена ранней весной — вместе с приобретением в питомнике 120 кустов малины. Как известно, малина очень отзывчива к поливу, но одновременно не любит и избытка воды. Поэтому было решено из подручных материалов собрать систему, которая бы решала следующие вопросы:

1. Управление погружным вибрационным насосом.
2. Измерение уровня воды в 220 литровой бочке.
3. Включение электромагнитного клапана по запросу — начало полива. Отключение производится по сигналу от измерителя уровня воды.
4. По завершению цикла полива запуск цикла заполнения бочки. Отключение производится по сигналу от измерителя уровня воды.
Читать дальше →
Total votes 20: ↑20 and ↓0+20
Comments59
1
23 ...

Information

Rating
1,199-th
Location
Воронеж, Воронежская обл., Россия
Date of birth
Registered
Activity

Specialization

Security Engineer
Lead
From 130,000 ₽
Linux
SQL