Ремонт ЛПМ магнитофона Томь-РЭМ-209С

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



Читать дальше

Кросс-платформенный терминал - SerIO

«SerIO» это кросс-платформенное приложение терминал, предназначено для организации связи и обмена данными через последовательный порт между ПК и различными электронными модулями или устройствами. Приложение ориентировано на любителей и специалистов в области разработки и конструирования различных электронных устройств и систем. Все элементы управления и контроля расположены в одном окне и оптимизированы для максимально удобной работы оператора. Передаваемые данные могут иметь формат строки ASCII символов, шестнадцатеричных значений, паттернов данных, пользовательских файлов и таблицы команд назначенных на функциональные клавиши F1 — F12. Доступна функция передачи данных в порт по таймеру, с заданным источником и интервалом времени. Принимаемые данные могут отображаться в символьном виде, шестнадцатеричном, двоичном и графическом (осциллограмма или диаграмма). Используя профили, можно оперативно изменять настройки программы под различные задачи и оборудование. Количество создаваемых профилей не ограничено.

Данное приложение является продуктом моей миграции с ОС Windows на Linux, а так же перехода c «MS Visual Studio» на кросс-платформенную среду программирования «Open Source QT Creator». Для освоения новой среды программирования, решил сразу начать с какого ни будь полезного проекта. Выбор пал на создание удобной, в моём понимании, терминальной программы. К тому же, реально удобных и функциональных терминальных программ, пригодных для работы в сфере электроники, практически нет, или я о них просто не знаю… Интерфейс программы англоязычный, вся терминология стандартная для такого плана приложений. К тому же, это гарантия того что программа будет корректно отображаться в любой языковой локализации.

Приложение «SerIO» это свободное программное обеспечение, распространяется под лицензией GNU GPLv3 или выше, без каких либо гарантий. Скомпилировано статически, включает все необходимые зависимости (библиотеки) для своей работы.

Главное окно программы

Примеры отображения принимаемых данных в графическом виде



Инструкция: SerIO-201020-manual-RU-Rev1.pdf

ОС Linux (x64): Ubuntu 20, Mint 20, Manjaro 20, Fedora 32
1. Скачать архивный файл SerIO_201020.tar.xz (универсальный пакет)
2. Извлечь содержимое архива, папку SerIO, в домашнюю папку пользователя /home/user/ (user — это ваше имя пользователя)
3. Выполнить инструкции описанные в файле /home/user/SerIO/ReadMy.txt

ОС Windows (x32x64): 7, 8, 10
SerIO_201020.exe

Исходный проект: SerIO_source_201020.7z
Перед тем как использовать исходный код, ознакомьтесь с условиями лицензии GNU GPLv3.

Вебинар «STM32L5. Секреты оценки энергопотребления» (05.11.2020)

Компания КОМПЭЛ приглашает 5 ноября принять участие в вебинаре, посвященном первому семейству МК STM32L5 на ядре Cortex-M33. На вебинаре будет рассказано об ошибках при расчете энергопотребления МК с помощью отладки STM32L562E-DK. Отладки STM32L562E-DK будут разыгрываться среди участников. Информация об условиях участия будет озвучена на вебинаре. Подробнее...

Работа с СОМ-портом на Си в linux

Каждый, кто постоянно занимается электроникой и программирует встраиваемые устройства, неизбежно сталкивается с необходимостью работы с СОМ-портом под линуксом. Чаще всего появляется задача сопрячь какой-то датчик, либо удалённое устройство с одноплатником. Да, что греха таить, сейчас в 2020 году UART, наверное, самый распространённый интерфейс для обмена данными, несмотря на всю его архаичность.
Поэтому умение работать с СОМ-портами в linux особенно важно. И вот, казалось бы, UART, древнейший интерфейс, всё должно быть известно и понятно, и даже опытные программисты ломают зубы, работая с ним в линуксе. Особенный цирк с конями начинается при работе с передачей сырых данных по RS-485. Не знаю ни одного программиста, который бы не хватил горя при разработке ПО для таких решений. Самое забавное, что с более новомодным i2c работать в линуксе куда проще и понятнее, чем с ортодоксальным UART. Чтобы не было путаницы дальше, всё семейство UART (RS-232, RS-485, UART 5V, UART 3,3 и т.д.) по тексту я буду называть COM-порт или UART. Мы говорим в статье не о физическом интерфейсе, а о программной стороне вопроса.
В этой статье я хочу показать, как писать свои программы, работающие с UART в ОС Linux. И неважно на каком языке вы пишете программу для работы с UART (python, c, c++, bash, php, perl и т.д.), принцип работы и грабли будут одни и те же, так как всё равно всё упирается в системные вызовы к ядру. А не понимание того, что там происходит и приводит к различным трудноуловимым багам.


Телетайп, на который БЭВМ могли выводить и получать данные. Фото взято здесь

Исторически сложилось, что СОМ-порт в UNIX использовался как терминал. То есть, как устройство для отображения и получения информации работы с ЭВМ. Отсюда идёт всё базовое наследие работы UART.

Читать дальше

Локализация приложений на Форте? Это просто!

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


Читать дальше

Тёмная подсветка синтаксиса в IAR

Подсветка синтаксиса

Для тех, кому всё-таки приходится пользоваться средой разработки IAR и нет желания заморачиваться с плагинами для VS Code и Eclipse.

Как выглядит IAR ARM 7.8 с моим вариантом раскраски:

Вид в режиме отладки


Читать дальше
  • +1
  • 28 сентября 2020, 08:31
  • uni
  • 2

WatchDog ― устраиваем собаке допрос (с пристрастием)

1. Водная часть
Во всех микроконтроллерах (мк) есть такая полезная штука, как сторожевая псина (watchdog). Работает от внутреннего низкочастотного генератора (LSI), то есть за редким исключением можно сказать, что LSI ― «личный» таймер вотчдога, который будет работать даже если главный генератор подохнет (например, отвалится нога кварца). В угоду пуристам можно отметить, что при желании можно тактовать от LSI всю программу, но сейчас речь не об этом.

Итак, сторожевая псина призвана для одной цели ― ребутать мк в случае его зависания. Если основная программа в каком-то месте не успела сбросить таймер watchdog, то ее ждет аварийный ребут. И если в любительских устройствах поговорка «семь бед ― один резет» еще допустима, то в случае более серьезного использования желательно узнать причину перезагрузки. Но ведь после перезагрузки все данные потеряны, искать больше нечего. Или нет?

Читать дальше

MCUHelper – утилита для мониторинга и редактирования переменных МК в runtime.

github.com/DIVON/MCUHelper

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


Читать дальше
  • +1
  • 20 августа 2020, 13:32
  • DIVON55
  • 1

Часы на Bluetooth LE модуле

Сергей и Леонид Безруковы
При создании этих часов преследовались две главные цели: работа без смены батарейки в течении нескольких лет и разработка предельно простого интерфейса с пользователем для установки и коррекции времени. Для реализации первой цели в качестве дисплея был выбран ЖКИ, а вторая цель достигнута путём использования технологии Bluetooth и разработки специального приложения для смарт-устройства на базе ОС Android. В результате получилась следующая конструкция.




Читать дальше
  • +10
  • 30 июля 2020, 06:57
  • Ser60
  • 1

Web сервер для интернета вещей на базе MQTT и WebSocket . Устройства на базе ESP8266

Недавно встала задача сделать прототип системы удаленное управление устройствами через интернет(что то типа IOT:) и получение с них температуру, влажность, сигнализация голосом и визуально о том что появилось движение на объекте и что бы можно было сделать фото что произошло и передать удаленно. Так же управление 4 реле и чтение состояния входов. Все должно работать только через броузер(CHROME) как на компьютере так и через смартфон. Надо было написать прошивки под ESP8266, написать софт для работы с платой и камерой(CSI) на ORANGEPI ONE и сделать WEB часть для отображения и управления. Надо было соединить эти 4 устройства в одну систему и показать в реальной работе. Сами устройства были уже готовы, осталось только все запрограммировать. Понятно, что все должно работать без внешних IP адресов и сложной настройки.Подключил устройство к домашней WIFI сети и оно в системе. Так же так как это прототип то решено было показать все с минимальными затратами(взлетит/не взлетит :) Была выбрана такая схема, все устройства являются MQTT клиентами, подключаются через бесплатный брокер с уникальными ID, WEB страницы управления располагаются на любом бесплатном хосте. Все должно работать без всяких серверных языков (php,node и пр) Задача не вдруг :) Для устройств программу сделал достаточно быстро, были наработки, а вот с WEB частью пришлось повозиться. Но все обошлось при помощи WebBuilder(визуальная часть) и js(websocket) Тестирую уже в течении недели полет, нормальный. Сейчас подключено 4 устройства.Датчик движения (охрана+температура+влажность+ освщенность), плата управления вентиляторами (устанавливаются длительность задержки после выключения чтобы проветрить помещение), плата 4 реле (можно коммутировать 220В и с 4 входами) и также плата ORANGE PI c камерой чтобы получить фото с удаленного объекта. Rому интересно можно понажимать на лампочки включая у меня реле, получить картинку с моего стола и т, д Устройства работают сейчас в живую. Вообщем технология работает, все команды для каждого устройства простые текстовые можно легко встроить в любые другие системы. По дизайну просьба без претензий я «бантики» не умею рисовать, да и не люблю. Мне главное работа системы и железо. Далее дизайнеры сделают как надо.
Посмотреть вживую как работает можно тут filedn.com/lyI9jHg32lr4q58HE7GWfNH/www/modul/pir.html
Чтобы включить реле нажать на лампочку, сделать фото — нажать на камеру, включить оповещение голосом динамик. Датчик движения рядом со мной так что когда шевелюсь срабатывает:) Если кто будет тестить скажите я могу руку под камеру поставить показать что картинка живая, также если на чем не работает отпишитесь какой броузер. Я пробывал на XPOM и на Андроид. Сейчас так как это прототип и бесплатные брокер и хост, то секъюрностью не заморачивался. Все открыто. Далее сделаю, не проблема.Будут вопросы пишите. Сорри за бардак на столе :)