wunderwaffe: рабочее (Default)
2022-04-15 04:40 am
Entry tags:

Интегрировай (с)

По мотивам https://wunderwaffe.dreamwidth.org/44858.html - шаг интегрирования, как оказывается, очень груб если использовать millis() вместо micros()
УПД:ARW стал лучше раза в два. Конечно, тупо интегрировать углы Эйлера - так себе идея, но почему чем меньше амплитуда качаний А, тем больше ARW? Для А~140 град. за 5 мин. уход 3-5 град., для А~10 уход 10-15 градусов? Независимо от оси и гироскопа.
Read more... )
wunderwaffe: рабочее (Default)
2022-04-13 03:26 pm

Еще про оптимизацию отображения потока с СОМ-порта

компонентами tchart и tchartda. Они пользуют методы tcanvas для отрисовки.
Read more... )
wunderwaffe: рабочее (Default)
2022-04-12 04:54 pm
Entry tags:

Лазарус - чтение данных из чужого stdout

На основе https://wiki.lazarus.freepascal.org/Executing_External_Programs/ru
Пример как строка из одной программы - write('Out:'+inttostr(i)); выводится в другой как form1.Caption:=Buffer; используя AProcess.Options := [poUsePipes];
https://disk.yandex.ru/d/6OwftNl51_mzsA
wunderwaffe: рабочее (Default)
2022-04-08 10:13 pm

Лазарус, onCreate

В дополнение к изьебствам при выполнении конструктора компонент в Лазарусе -
https://wunderwaffe.dreamwidth.org/35755.html
https://wunderwaffe.dreamwidth.org/26266.html
В конструкторе нельзя обратиться по имени к самому себе, т.е. поле self.Name пусто.

Меня часто спрашывают, если я ругаю Лазарус, то почему продолжаю работать с ним. На самом деле баги - это нормально, увы. И по сравнению с хтоническим пиздецом вроде питона...
wunderwaffe: туплю (dumb)
2022-04-03 08:25 am
Entry tags:

Наводки

Для того, чтобы два разных аналоговых датчика показывали коррелирующие значения, отличающиеся в полтора раза, надо подсоединить их выходы к АЦП по проводкам, свитых в витую пару. Полтора метра для этого вполне достаточно, еще важно, last but not least, быть дебилом.
BTW, когда СОМ-кабель лежал на проводе 220В удлинителя, данные по нему периодически херились.
UPD не, там тупо был непропай
wunderwaffe: тупят другие (karliki)
2022-03-22 07:13 pm
Entry tags:

И еще о автоматическом преобразовании типов в MySQL

В MariaDB получаю сообщение -
Warning: #1292 Truncated incorrect DOUBLE value: ''
Read more... )
wunderwaffe: тупят другие (karliki)
2022-03-20 01:51 am
Entry tags:

О неожиданной ошибке php

"PHP Warning:  'vcruntime140.dll' 14.0 is not compatible
with this PHP build linked with 14.16 in Unknown on line 0"
которая проявляется не всегда, а только если программа вызывается по клику на ассоциированной ссылке из PaleMoon (в SeaMonkey такого нет) и уже она вызывает php.exe
Read more... )
wunderwaffe: тупят другие (karliki)
2022-03-14 01:59 am
Entry tags:

И еще про автоматическое преобразование типов - глюк в триггерах mySQL

Известный финт - как сделать триггер BEFORE INSERT для того, чтобы не вставлять в таблицу нежелательное значение. Для этого определенному полю присваивается атрибут NOT NULL (в нижеследующем примере это usern) а далее пишется такой триггер -
Read more... )
wunderwaffe: рабочее (Default)
2022-02-11 01:52 pm
Entry tags:

Еще данные с BMI160

1) что возможно использовать BW=12.5
2) неортогональность и кроссвлияние осей может быть критичны
Read more... )
wunderwaffe: философское (old)
2022-02-07 03:39 pm
Entry tags:

И еще про идеальный язык программирования

https://wunderwaffe.dreamwidth.org/41437.html
Счас все IDE, которые видел - это наследники TPageControl, в которых находится TSynEdit. Результатом при обновлении текста программы значительная часть потраченного времени - это навигация, вдумчивое переключение между вкладками и проматывание скруллбаров - очень напоминает поиск инструмента в плохо организованной мастерской. Сионистам, кстати, этого еще оказывается мало, и они делят текст на джва файла - *.h и *.cpp.
Я сделал свое собственное IDE, на основе двух TTreeView и одного TDBStringGrid - и не жалею о потраченном времени - собсно код для нижележащей библоиотеки написан в нем.
И отказалсо от глупой концепции деления текста на джве части, все собирается в один *.h.
wunderwaffe: рабочее (Default)
2022-02-04 04:11 pm
Entry tags:

Экран для pi

Подключил экран 7" xt2046 к распберри, выглядит прикольно
Read more... )
wunderwaffe: тупят другие (karliki)
2022-01-24 06:59 am

Лазарь! Иди на...-6

Теперь, после обновления Лазаря,
1) перестала работать ранее нормально работавшая на строках с нелатинскими буквами ф-я utf8copy. Была заменена на copy, аналогично https://wunderwaffe.dreamwidth.org/28099.html
2)
implementation uses lazutf8;
...
s.FieldByName('place').AsString:= UTFStringReplace(s.FieldByName('place').AsString,'[b]','<b>',[rfReplaceAll]);
s.FieldByName('place').AsString:= StringReplace(s.FieldByName('place').AsString,'[/b]','</b>',[rfReplaceAll]);
что та, что та ебанина работает так - подстроки заменяются, а остальное заменяется UTF кракозябрами. Но это только если s - результат запроса TZReadOnlyQuery
3) накрылось песдой зипование, т.е. компоненты что TplZipUnCompress что TAbUnZipper спотыкаются на отдельных файлах.
wunderwaffe: тупят другие (karliki)
2022-01-24 06:11 am
Entry tags:

Общение HC-06 c Apple и Huawei

После очередного обновления айфонХЗ не видит устройство.
Huawei видит то же устройство, но после очередного обновления потерялся доступ к егонному магазину для скачивания что-то вроде Bluetooth Terminal'a, а к гугл.плей по причинам санкцый доступа и не было.
Для андроида все ОК - https://wunderwaffe.dreamwidth.org/38725.html
wunderwaffe: философское (old)
2022-01-23 10:42 pm
Entry tags:

О идеальном языке программирования

Ну, это, разумеется, паскаль. Только без синтаксического сахера, использование которого я бы смело уподобил использованию goto. Даже более того - функция из другого модуля? Только через точку с упоминанием модуля. Методы родительского обьекта - только с упоминанием имени этого обьекта. Ничего, руки писать не отвалятся - зато потом намного более менее икоты.
Классы вообще выкинуть - нахуй они были вообще введены если это те же обьекты но с дополнительной путаницей?
Аргументы передавать ТОЛЬКО с ключевыми словами var, const, out. Я бы еще одно добавил - local - это то, что с ними происходит по умолчанию.
Размер модуля ограничить килобайтом. Назвать Хайку-паскаль.
wunderwaffe: тупят другие (karliki)
2022-01-23 10:32 pm

Связка Lazarus+Zeos Access+MariaDB

Итак, есть лазарус, который пользует БД в xampp 3.2.1 через libmysql.dll. ВНЕЗАПНО эта связка перестает работать со словами "lazarus can not load default MySQL library ("libmysql.dll" or "libmysql.dll"). check your installation."
Read more... )
wunderwaffe: тупят другие (karliki)
2022-01-18 05:51 pm
Entry tags:

И опять об Пушкина, точнее, об автоматическом приведении типов

Теперь php. Вот у нас есть некоторый метод, который мы вызываем с таким аргументом -

$operation->add_tree(0);

В этом методе аргумент проверяется вот так -

function add_tree($direction) {
...
 if ($direction=="reverse") {echo "direction==reverse!";}
                       else {echo "fiasco";}
}

Результатом будет вывод ... "direction==reverse!". Но это, конечно, фиаско, братан
Read more... )
wunderwaffe: рабочее (Default)
2021-12-31 07:44 pm
Entry tags:

IMU BMI160

Таки пришлось самому читать даташит на BMI160. Под катом выдержки, а здесь демка для ардуино для I2C подключения по умолчанию - https://disk.yandex.ru/d/YU4DAsyehBzGow
ЗЫ. Еще какие-то пидорасы сделали pdf защищенным от копирования, но для читалки Evince это пофиг.
Read more... )
wunderwaffe: философское (old)
2021-12-30 10:39 am
Entry tags:

Национал - программирование

Итак, пишем класс работы с IMU модулем BMI160, только гира и аксель, без магнитометра.
Что же мы делаем? Мы заводим структуру, которая описывает все его регистры, и класс, в котором чуть меньше сорока приватных методов - и почти ВСЕ в качестве аргумента используют ссылку на эту структуру, и ЧТО, КАК и КОГДА они там с полями структуры делают - да хуй их знает.
Read more... )