Последнее обновление:
November 20, 2017

Есть мысль... Жми, напиши!
Программирование

Пишу о всем, что делаю, что получается, или нет)))

Печатаем из Qt на онлайн фискальнике ККТ PAYONLINE-01-ФА

В связи с очередным злоебучим ёбаным (по моему мнению) законом 54-ФЗ пришлось клиентам резко обновлять кассы и выкидывать из своего кармана 40 штук, что бы поменять шило на полноценный анальный зонд.
Я бы да же этому был бы рад из-за возможности заработать на обновлении, но вот что-то радоваться чужому горю вообще не фонтан.
В общем, подключаем приблуду […]

Views :

9

QEventLoop and connect/disconnect lambda function

Приветствую!
Кому некогда, можно сразу прыгнуть в конец к итогу.
Бывают ситуации, когда нужно синхронно дождаться завершения асинхронного действия, при этом не подвешивая основной поток (например, не продолжать выполнение функции, пока ответ в QTCPSocket onReadyRead от сервера не придёт).   
В нашем случае для примера давайте подождём с выполнением функции, пока таймер не досчитает до 5. 
Делаем основу:
#ifndef APPCORE_H
#define […]

Views :

7

Layout.fillWidth: true и Layout.preferredWidth зависимость (очередная хитрость)

Сталкиваюсь иногда с некоторыми хитростями в QML, о которых, по всей видимости, приходится только догадываться, ибо то ли я проглядел это в документации, то ли этого действительно в ней не указано.
Так вот, задача: нужно три колонки одинаковой ширины.
Делаем:
import QtQuick 2.9
import QtQuick.Window 2.2
import QtQuick.Layouts 1.3

Window {
visible: true
width: 640
[…]

Views :

5

Конвертер картинок для Arduino LCD OLED 128×64 I2C дисплея

Пришёл вот такой дисплейчик:

Но вот нигде не нашёл для него генератора, что бы модно было конвертировать jpg/png/bmp картинку в код. 
Неспешно накалякал, выбираете любой jpg/bmp файл и получаете на выходе код:
Тестовый скетч:
#include <OLED_I2C.h>

OLED myOLED(A4, A5, A4);

extern uint8_t SmallFont[];

//—PASTE GENERATED CODE HERE

void setup()
{
myOLED.begin();
myOLED.setFont(SmallFont); […]

Views :

13

Компиляций libusb из исходников на Windows

Тут особо нечего рассказывать, всё не так трудно, поэтому минимум комментов.
Качаем MSYS2, ставим, запускаем  C:\msys32\mingw32.exe
pacman -Syu
pacman -Su
pacman -S git
pacman -S base-devel
pacman -S libtool
pacman -S mingw-w64-i686-toolchain

touch /e/LibUSB2
cd /e/LibUSB2/
git clone https://github.com/libusb/libusb .
./autogen.sh
touch build-Win32
cd build-Win32
touch bin
../configure —prefix=/e/LibUSB2/build-Win32/bin —build=i686-w64-mingw32 —host=i686-w64-mingw32
make -j4
make install
Вся либа будет в /e/LibUSB2/build-Win32/bin.
Вот как-то так =)

Views :

47

Кросскомпиляция Qt 5.7, Qt 5.8 для Raspberry Pi 1,2,3 под Windows

В общем на Ubuntu скомпилили, открываем пост и компилим теперь под Windows.
1. Качаем актуальную версию Raspbian Jessie  и с помощью WinFLASHTool  пишем её на сд карточку.
2. так же.
3.
Качаем msys2, ставим в папку C:\SysGCC\msys2\
Качаем MinGW 4.9.2, распаковываем в папку C:\SysGCC\mingw32
Качаем Python 2.7.x
Запускаем C:\SysGCC\msys2\mingw32.exe,
pacman -Syu #попросит закрыть — закрываем, запускаем вновь и прописываем далее:
pacman -Su
pacman -S […]

Views :

816

Кросскомпиляция Qt 5.9 для Raspberry Pi3

Пока в разгаре новогодние праздники захотелось попробовать в действии Raspberry Pi (модель 1, но так же подходит и для 2,3), а именно чего-нибудь для неё написать, хотя бы Hello World с помощью Qt. Ставить весь Qt на саму малинку как-то долго, да и пока на ней компилируется простейшая программа можно упиться в усмерть, поэтому будем […]

Views :

3359

Программирование и отладка STM32F3 Discovery в QtCreator под Windows

Впринципе, алгоритм действий точно такой же, как и в предыдущем посте под Ubuntu
Здесь приведу лишь отличия по пунктам

Качаем  драйвер, распаковываем и ставим. Вместо ST-Link поставим OpenOCD  , скачиваем, распаковываем в любую папку.
так же
Качаем GCC ARM с https://developer.arm.com/open-source/gnu-toolchain/gnu-rm/downloads (справа в списке экзешник) и ставим.  отладчик qtcreator-gdb-7-7-mingw32_nt-6-1-i686 (т.к. для Qt Creator нужно, что бы он был с поддержкой питона), распаковываем в […]

Views :

484

Программирование и отладка STM32F3 Discovery в QtCreator под Ubuntu

Спустя три года опять решил поиграться с STM32F, но уже вплотную.
В этот раз в роли IDE и дебагера будет выступать QtCreator т.к. в новых версиях есть плагинчик для работы с голыми устройствами.
Ось — Ubuntu 16.04, под Windows тут недалеко.
1.  Поставим сам отладчик для STM т.е. gdb сервер
Для этого клонируем репозиторий и собираем ST-Link Utility
cd ~/Projects/ST-Link-Utility
git […]

Views :

841

Конвертация QVideoFrame to OpenCV Mat в Qt5.6 и OpenCV3.1

Потребовалось на днях обрабатывать кадры с камеры (Использовалась QCamera) через OpenCV.
Да,  OpenCV может сам захватывать фреймы, но в случае с Qt QCamera работает лучше и есть больше параметров (например выбо р формата YUV или MJPG).
Вот так выглядит конвертация:
QVideoFrame copy(frame);
if (frame.isValid() && copy.map(QAbstractVideoBuffer::ReadOnly)) {
[…]

Views :

173