Dmitriy
работает стабильно)))
Dmitriy
В любом случае, там параметры соединения через второй сокет поступают или спецсимволами. Надо садиться и искать\писать эти протоколы.
Dmitriy
действительно, все можно проще
Dmitriy
поэтому код и не покажу, потому что там есть такого рода костыли, которые на проверку функционала никак не влияют. Выкатывать свой протокол uart over tcp я не буду. И так 2 готовых есть.
Dmitriy
сейчас оно так и есть, открыли сокет и сразу отправили 4 байта настроек скорости
Dmitriy
ну это не очень правильно, понимаю. Но это реализовывалось за пару минут. Реализовать те 2 протокола, ну это день возни минимум.
Evgeniy
Получается, что все протоколы поверх TCP, где нет разделения пакетов - УГ?
Evgeniy
Именно кодом, как завершение строки \n на HTTP?
Dmitriy
бля, чел, открой код ядра линуха
Dmitriy
там хватает while(1) break
Dmitriy
а чем тебе while break не устраивает конструкция?
Dmitriy
выход из цикла есть, просто в том месте, где мне нужно, а не в конце повторяемого блока кода
Dmitriy
ну пиши как тебе нравится)
Dmitriy
тут тоже все понятно
Dmitriy
если мы постоянно ждем коннекта, обслуживаем его и по разрыву снова ждем конекта то как это писать?
Dmitriy
он не сможет
Dmitriy
попробуй
Dmitriy
он не должен иметь возможность подцепиться
Dmitriy
вот ты открыл com3 и другая прога тоже его хочет открыть. Куда вторая прога пойдет?
Dmitriy
и тут также
Dmitriy
код из примеров скопипастен, я его не писал. Это код который ток одно соединение обслуживает и только для проверки работоспособности теории, что можно usb-uart заменить на tcp-uart
Dmitriy
для управления железками и общения по modbus....
AKE
👍😂
AKE
Да ступудова 😄
Dmitriy
Да ступудова 😄
ну лан, не буду тебе ничего показывать, зашел дома на рабочую машину....
Dmitriy
сделал выводы
AKE
ну лан, не буду тебе ничего показывать, зашел дома на рабочую машину....
Да ладно, у каждого своё зрительное восприятие 🤷‍♂️
AKE
Более того, у меня у самого на некоторых компах такая тема, которая по умолчанию стоит на многих редакторах. Те компы, за которыми долго не сижу, менять лень...
Dmitriy
Хочешь поделиться куском кода перед сном. Открыл терминал и скинул скрин. Сразу набежали знатоки цветовых тем.
Dmitriy
да дохрена чего есть. не нравится - не смотри. Я всего лишь поделился куском кода перед сном. А раз сказать нечего, начинаются придирки за прикид.
Ruslan
нормальный код...
Anton
я много лет пользовался и тёмными и светлыми темами. последний год привыкаю снова к тёмной, просто чтобы понять что же все эти любители питонов в ней нашли. ну, уже почти привык. раскраска синтаксиса, чтобы глаза не вытекали, сложнее в тёмной теме.
Anton
думается мне, что выбор темы должен подстраиваться под окружение. если в комнате светло, то светлая тема лучше, если полумрак, то тёмная.
Anton
но раскраска синтаксиса должна для них отличаться и мне редко попдалось чтобы сходу было как глазам приятно
SetPf
Хз, как вы живете с светлой темой. Открытие любого софта в светлой теме подобно ядерному взрыву - ослепляет, выжигая глаза.
Indr1x
Хз, как вы живете с светлой темой. Открытие любого софта в светлой теме подобно ядерному взрыву - ослепляет, выжигая глаза.
Моде на темные темы года 3 как всего, до этого за десятилетия глаза никому не выжигало 🤷‍♂
Кравцов
Кто нибудь заводил на esp32 Led матрицу 64*32 на sm5266p. Поделитесь на какой библиотеке.
SetPf
То что ее начали пихать во все приложения - да это недавно
SetPf
Но это скорее связано с тем, что большая часть население за пк перелезает постепенно. До 10х за ПК сидели сутками только всякие сорта пограмиздов.
SetPf
А вот кстати хз, я просиживаю штаны по 10+ часов в день за ПК с 06-07 года где-то. Всегда в полумраке или мраке. Не жалуюсь на глаза вообще. Ну вот до нынешнего своего 30летия во всяком случае.
SetPf
На зрение давно не проверялся. Но раньше было околоидеала, сейчас есть какие-то ухудшения, но не сильные, скорее от возраста уже.
SetPf
В любом случае - поправка зрения нынче это типо 100к? Айтишнику должно быть по карману.
SetPf
Коррекция зрения стоит херню.
SetPf
Почки пока не правятся.
SetPf
Печень вроде самовосстанавливающаяся штука. Но я так себе медик.
SetPf
А если можно починить орган за сорт месячной зп и забыть на десятилетия - почему бы нет?
SetPf
Вот горб от такой житухи увы не чинится лол.
K.
Кто нибудь заводил на esp32 Led матрицу 64*32 на sm5266p. Поделитесь на какой библиотеке.
Попробуйте здесь поискать. Там на страничке есть ссылка на гитхаб. https://hackaday.io/project/170109-improved-raspberry-pi-rgb-matrix-driver
Алексей
И планирую так же на ESP32 сделать :)
Ruslan
Коррекция зрения стоит херню.
Лет до хрена, программирую с детства, удары по голове значительно больше повлияли на зрение, чем выбор темы в софте, а уж на каком дерьме приходилось работать...
Ruslan
При том, что алгоритм одинаковый
Ruslan
Бывает
Алексей
Код простой. Строка из буфера построчно заталкивается в панель. Строка заталкивается по прерыванию.
Алексей
Есть там конечно оптимизация, в виде записи в регистры.
Алексей
И ещё я не делал многоцветность. 4 базовых, без полутонов.
Алексей
void updateScreen() { static int y = 0; int addr = 0; int x; // MATRX_GPIO_Port->BRR = MATRX_ADDR_Pins; // Сбросим адрес addr = y; addr = ~addr; addr &=0x0F; addr = ((addr<<6)<<16u) | (y<<6); //Установим нужные и сбросим другие биты адреса (6 посчитано вручную // HAL_GPIO_WritePin(MATRIX_OE_PWM_GPIO_Port, MATRIX_OE_PWM_Pin, GPIO_PIN_SET); MATRX_GPIO_Port->BSRR = addr; // запишем в регистр //------------- ШИМ --------------- TIM1->CCR1 = 0; // Установка ШИМ TIM1->EGR = TIM_EGR_UG; //------------------------------------- for(x = 0; x < MATRIX_WIDTH; ++x) { MATRX_GPIO_Port->BRR = MATRX_RGB_Pins; // MATRX_GPIO_Port->BRR = MATRX_RGB_Pins; // if(y%2) // { MATRX_GPIO_Port->BSRR = matrix[y][x]; //Первая половина экрана MATRX_GPIO_Port->BSRR = matrix[y+16][x]<<3; //Вторая половина экрана // } tick(MATRX_CLK_Pin); } //Отправим строб tick(MATRX_STB_Pin); //------------ ШИМ -------------------- /* Enable the Capture compare channel */ TIM1->CCR1 = brightPWM; // Установка ШИМ TIM1->EGR = TIM_EGR_UG; //---------------------------------------- ++y; y = (y < (MATRIX_HEIGHT/2))?y:0; }
Алексей
/* * Распиновка разъёма матрицы * +---+ * R1 |* *| G1 * B1 |* *| GND * R2 |* *| G2 * B2 * *| GND * A * *| B * C |* *| D * CLK |* *| STB * OE |* *| GND * +---+ */ #define MATRIX_HEIGHT 32 #define MATRIX_WIDTH 64 #define MATRIX_SIZE (MATRIX_HEIGHT*MATRIX_WIDTH)
Кравцов
R1 |* *| G1 * B1 |* *| GND * R2 |* *| G2 * B2 |* *| GND * A |* *| B * C |* *| GND * CLK|* *| LAT * OE |* *| GND
Кравцов
У меня такая распиновка 1\8 scan
Кравцов
Причем есть внутренний модуль, с ним без проблем
Кравцов
а на уличном никакая библиотека не заработала, белый экран
Алексей
Можно взять за основу. :)
Алексей
Там вроде комментарии есть
Кравцов
к STM есть куча библиотек DMD которые работают с матрицами
Алексей
Единственное непонятное, это ШИМ, там есть пин ОЕ, его перед записью нужно отключать.
Кравцов
Но вот как работать с STM? пока не разобрался))
Алексей
А для отображения включать. ШИМом на нём я яркость реализовал.
Алексей
к STM есть куча библиотек DMD которые работают с матрицами
Я этот код потом на ESP буду портировать. С поддержкой полутонов.
Кравцов
Если матрица поддерживает то проще взять библиотеку SmartMatrix
Кравцов
с поддержкой GIF и прочей красоты
Алексей
Если матрица поддерживает то проще взять библиотеку SmartMatrix
Проще, но мне так было интереснее. Разобраться, как это работает.
Алексей
с поддержкой GIF и прочей красоты
Вопрос что от ресурсов ядра после этого остаётся.
Алексей
Ну и частота развёртки тоже. Мне не хотелось мерцания на 50Гц
Кравцов
85Гц по умолчанию