Category: техника

promo eddy_em august 17, 12:33 3
Buy for 10 tokens
Юра намедни напечатал корпус для хронометра. Для первого блина получилось неплохо: И еще немного фотографий:
Костерок

Вот что нужно сделать, чтобы на STM32 memset работал?

Аналогично с memmove. Вручную не задаю невыровненный размер → массив должен быть выровнен на 4. Но какого же черта memset и memmove приводят к hardfault'у?
Приходится городить свой огород с поэлементным копированием…
P.S. Кстати, сравнил сейчас два GPS-модуля: Quectel L80-R и Ublox NEO-6M. По цене они примерно одинаковы (правда, первый — SoC, распаиваемый на плату, а второй уже распаян, но на али готовые SoC стоят более-менее одинаково за десяток штук). И оказалось, что, несмотря на меньший размер антенны, Ublox намного шустрей находит спутники! Ему буквально 2-3 секунды нужно после включения GPS-ретранслятора, чтобы начать выдавать валидную информацию (Quectel это делает лишь минуту спустя). А после отключения питания ретранслятора он пару минут весело гнал PPS и показывал корректный вывод GPRMC!
Для наилучшего качества приема передатчик ретранслятора я положил рядом — на подножку монитора:
Костерок

Андроидоуправлялка

Хоть ардуина - редкостная дрянь, но благодаря ей появилась уйма приложений под андроид, позволяющих через bluetooth-uart модуль контролировать разную нагрузку. На спектакль понадобилось включать/выключать несколько групп "звезд". Вариант с кнопками я сразу отмел, т.к. неудобно в полной темноте их искать. А вот хорошо бы кому-нибудь, стоящему за сценой (или даже сидящему на балконе), при помощи андроидоприложения всем этим рулить. Погуглив, нашел "bluetooth control 8-lamp". Установил - внешне оно. Протокол элементарнейший.
Сначала подключил к bluetooth-модулю преобразователь UART<>USB на ch340g. Посмотрел в терминале - работает. ОК, полез на антресоль в поисках миниатюрной девборды. Нашлась такая - на 20-ногом STM8S103. Немного подергал старый сниппет 'blink', а потом довольно шустро у меня получилось вот это. Правда, таймер4 сходу не заработал (подозреваю, что его просто нет, а я в своем заголовочном файле это не учел), но лезть в даташит было лень, сделал мигалку набортным светодиодом на таймере1 (в принципе, эта мигалка и не нужна особо, но пусть мигает - показывает работоспособность). И еще было непонятно: вот это не заработало. Я уж и так, и эдак пробовал, но компактный доступ к разнородным ногам на массивах почему-то не получилось сделать (на STM32 подобное очень даже работает). Пришлось делать дикий case.
Теперь остается нарисовать схемку с транзисторами и понижайкой с 12 на 5В, развести плату для девборды и изготовить ее. А потом распаять светодиоды на длинных проводах… Думаю, группы по 5-6 белых светодиодов вполне ярко будут светить от 12В.
Костерок

Ну и цены...

Зашел в книжный магазин, взял себе самоучитель китайского, а дочке - три образовательно-развлекательных книжки. Отдал ~2.5тыр.
Пока там бродил, дай, думаю, на спецлитературу взгляну. Вышел из отдела с широко выпученными глазами. Нет, хватит уже уступать жабе! Надо в конце-концов выделить 30тыр (надеюсь, читалки формата А4 еще не подорожали) и купить нормальную читалку на e-ink.
А там, глядишь, выучу китайский - вдруг совсем дурным стану и питон захочу выучить?
Костерок

GPS-ретранслятор

Намучившись с отладкой велохронометров (в помещении сигнал GPS вообще не ловится!), решил таки потратить десятку баксов и взять ретранслятор. Вот такой.
Купил 23 октября, сегодня получил (сегодня вообще почту "прорвало": сразу 8 мелких пакетов пришло). Сразу же решил дома проверить. Антенну выбросил за балкон, внутрь протянул провод. Длина провода - 5 метров, вполне достаточно, чтобы в помещение завести сигнал GPS.
Включил на лопате приложение "GPS status". Пока ретранслятор не включен, сигнала вообще не было. Даже самого-самого слабенького. Как только питание (питается от USB) воткнул в розетку, буквально через 5 секунд вылезло семь спутников с хорошим сигналом, и даже получилась нормальная точность определения координат!

В общем, весьма и весьма годная штука. Можно будет на работе вывешивать антенну на швабре за окно и получать внутри стабильный сигнал. Хоть уработайся!
Костерок

Обновленная прошивка хронометра

Понемногу допиливаю прошивку хронометра. Исправил некоторые косяки и добавил возможность сохранять логи прямо во флеш-память микроконтроллера! Интересно, что, несмотря на то, что на корпусе написано STM32F103C8T6, фактически у него 128кБ флеша! Сама прошивка занимает почти 15кБ, после нее 2 страницы флеш-памяти отводится на хранение настроек (их туда аж 50 штук влезает, так что, очищать эти 2кБ нужно будет достаточно редко), а уже за ними все свободное место отведено под хранение логов.
Убил довольно-таки приличное количество времени, чтобы разобраться с линкер-скриптом и разместить хранилища именно там, где я хочу! При дебаге даже пришлось несколько раз сливать с камня прошивку после записи параметров и логов, чтобы убедиться, что все находится на своих местах.
Единственное, что мне сейчас не нравится — разбор команд, который у меня реализован тупо в лоб (серией if-else if). Вот чувствую, что можно сделать элегантное решение на вложенных switch'ах, но если это писать вручную, замучаюсь при добавлении новой команды (и лопухнуться легко при удалении ненужной), т.е. нужно писать генератор кода. И это останавливает от прогресса!
Костерок

Филологическое

А вот есть ли среди читающих этот журнал филологи?
Зашел спор с одним человеком на одном форуме. Я говорю, что фразы-паразиты вроде "от слова совсем" — очень яркий индикатор неуча, косящего под интеллигента. А он с этим не согласен.
Каково ваше мнение?