Стульчик для Аришки

(Мультиметр только для того, чтобы визуально оценить габариты стульчика.)

Ещё по осени пришлось купить новую газовую плиту. Старая не то чтобы совсем сдохла… Нет, она вполне была рабочая и всё было в порядке. Но Газпром решил, что она морально старая и выдал предписание «Заменить!» Два года я честно сопротивлялся и получал предписания, а по осени пришёл газовщик и опломбировал газовую трубу. Короче, пришлось покупать.

Купили какую-то Белорусскую «Гефест». Плита как плита. Примерно такая же. Примерно так же печёт и так же варит. Вскипятить чайник — вообще никакой разницы! Но Газпром — это такая монополия, которой даже прокуратура боится. А уж тем более обычные граждане. Да хрен на него!

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

Читать далее

4-ое мая — начало зимы

Жаль, что так и не успели посадить озимую картошку.

Но-о-овый год к нам мчицца, ско-о-ра фсё случицца…

CH32V003. Время реакции

Недавно в Телеге подняли вопрос о скорости реакции на внешнее событие.

Хм?… И в самом деле — а за сколько микросекунд обычно отрабатывает прерывание?

Мой опыт подсказывает мне, что на STM32F030 это было что-то около одной микросекунды. А на CH32V003 я что-то так и не удосужился посмотреть, померить. Писал разные проги, но количественно никак не пытался оценить. Надо исправить.

Читать далее

Автоматическая установка скорости последовательного порта

Проблема висела давно, но всё как-то руки не доходили. Всё была работа-работа-работа…

— Некогда мне пилу точить! Пилить надо! (с)

А тут внезапно я снова стал безработным, так почему бы мне не прокачать свои скилзы.

На предыдущей работе мне приходилось использовать аж до трёх переходников USART/USB одновременно. До этого обычно я использовал один, очень редко два.

Как правило Линукс создаёт виртуальный порт, настроенный на скорость 9600 Бод. Но я преимущественно использую скорость 115200 Бод. Это не то, чтобы какая-то проблема, просто не очень удобно при каждом подключении переходника вручную набирать команду и перестраивать скорость порта.

Как мне кажется, я нашёл не плохое решение. Теперь у меня на компе при подключении переходников они сразу работают на скорости 115200. И я с радостью делюсь найденным решением.

Что для этого нужно? Нужно создать два файла.

Читать далее

CH32V003.USART: Осциллограммы процесса передачи

Вот, наснимал осциллограмм. Разглядывайте.

Здесь на всех осциллограммах передаётся пакет из 10 байтов. Это нижний жёлтый трек.

На верхнем треке показаны импульсы затрат процессорного времени. Лиловый трек.

Первый импульс — это время работы функции usart_send()? которая подготавливает драйвер последовательного порта к передаче. Копирует передаваемый пакет во внутренний буфер, подготавливает USART, подготавливает DMA. Время зависит от «насыщенности» кода этой функции, но можно считать, что оно составляет примерно 10 мс для пакета из 10 байт.

Внимание! Время работы функции не пропорционально размеру пакета! (Для пакета 20 байт оно может составлять 12 или 16 мкс. Я не измерял. Но не 20 мкс — это точно!

Читать далее

CH32V003.USART

Избитая тема.

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

Данные можно передавать непрерывным потоком (словно вода из крана), а можно передавать в виде отдельных пакетов. В последнем случае пакеты удобно снабжать контрольной суммой, которая гарантирует отличие «битых» пакетов, от «не битых». Я в своей практической деятельности использую преимущественно пакетную передачу. (Скорее даже так — я что-то не припомню случая, когда бы слал непрерывный поток байтов.)

Когда вы отправляете пакет по USART, то, разумеется, вы уже знаете его длину. Это обстоятельство тоже даёт определённые преимущества, но о них поговорим чуть ниже.

Читать далее

Сравнение CH32V003 и ATTINY2313

Это сравнение результатов разработки одного и того же проекта, изначально реализованного на базе ATTINY2313, и повторённого потом на базе CH32V003.

Проект (картофельный термостат) совсем небольшой. Ядро микроконтроллера взаимодействует только со светодиодом, с реле, подключенным на одну из ножек и датчиком температуры DS18B20. Ну ещё в системе используется таймер для задания временных интервалов.

Основная задача термостата — удерживать температуры в заданном диапазоне. Если измеренная температура опускается ниже нижнего порога, то включается нагрев. Если температура повышается выше верхнего порога, — нагрев выключается. Ко всему прочему, термостат должен индицировать своё состояние (режимы работы). Более подробно об этом я написал в предыдущей статье.

Читать далее

Картофельный термостат

Мне давно хотелось сравнить показатели одного и того же проекта, реализованного на ATTMEGA, и реализованного на CH32V003.

Но, всё как-то не получалось. Год назад, весной 2023-го, я всё ещё не очень понимал, как работать с CH32V. Потом как-то не мог подобрать подходящую тему для небольшого проекта.

Небольшой синтетический (то есть надуманный) проект меня не устраивал категорически, хотелось что-то жизненно-полезное, а не претворять бесполезный продукт фантазий идиота, да ещё и в двойной реализации. Я также не хотел заморачиваться сравнением микроконтроллеров на больших, ответственных проектах. А потом, в конце сентября меня пригласили в большой проект, и у меня вообще не было свободного времени. Да. Жизнь она такая — полосатая. Местами волосатая.

На беду в конце ноября 2023, когда я уже начал вгрызаться со всей дури в работу, возникла ситуация потери всего урожая картофеля и других овощей. Нужно было очень быстро-срочно «сбацать» подогрев ямки, где хранится урожай. Иначе…

Многие соседи по гаражному (товариществу ?) обычно вешают у себя в ямках лампочку в 60-100 Вт, которая горит целую зиму, не выключаясь, и не парятся. Говорят, вроде работает. Но такое решение проблемы меня не устраивало по двум причинам.

Читать далее

Мышки плакали

… кололись, но продолжали жрать кактус (с)

Microsoft пересаживает пользователей Windows с локальных учетных записей на интернет-профили Microsoft Account. Сейчас доступ ним у россиян есть, но они могут лишиться его по щелчку пальцев. Без аккаунта войти в систему не получится.

Корпорация Microsoft стала требовать от пользователей Windows 10 регистрироваться в ее экосистеме, создавать профиль Microsoft Account (MSA) и отказываться от локальной учетной записи на ПК. Как пишет портал Neowin, в сборке 19045.4353 для бета-тестеров, из числа которых исключили россиян, появилось навязчивое уведомление о необходимости совершения такого перехода. А поскольку Windows 10 будет получать обновления до середины октября 2025 г., это уведомление, вероятнее всего, в обозримом будущем увидят все пользователи системы.

Читать далее

Декирпичилизация CH32V003J4M6

Тот, кто плотно работает с этим микроконтроллером, тот наверняка уже окирпичивал (и даже не раз!) его. Ну, собственно, процедура раскирпичивания с точки зрения пользователя не такая уж и сложная. Вообще раскирпичить микроконтроллер можно двумя способами. Но сейчас я хочу сказать немножко не об этом, а о том, что сам процесс раскирпичивания — взаимодействие программатора и окирпиченного МК — довольно-таки загадочный, и повторить его на манер AVR-Doctor вряд ли получится.

Читать далее