Задать вопрос
  • Сможет ли нейросеть написать скетч для Arduino mini мультиплексор нескольких COM портов в один?

    fox_12
    @fox_12
    Расставляю биты, управляю заряженными частицами
    Не проверял:
    #include <SoftwareSerial.h>
    
    // Создаем 4 программных UART на указанных пинах (RX, TX)
    SoftwareSerial Serial0(4, 255); // D4 - RX, TX не используется
    SoftwareSerial Serial1(5, 255); // D5 - RX
    SoftwareSerial Serial2(6, 255); // D6 - RX 
    SoftwareSerial Serial3(7, 255); // D7 - RX
    
    void setup() {
      // Инициализация аппаратного UART для вывода
      Serial.begin(1000000);
      
      // Инициализация программных портов
      Serial0.begin(115200);
      Serial1.begin(115200);
      Serial2.begin(115200);
      Serial3.begin(115200);
    }
    
    void loop() {
      processPort(Serial0, 0); // Обработка порта 0
      processPort(Serial1, 1); // Обработка порта 1
      processPort(Serial2, 2); // Обработка порта 2
      processPort(Serial3, 3); // Обработка порта 3
    }
    
    void processPort(SoftwareSerial &port, uint8_t id) {
      port.listen(); // Активируем текущий порт
      while(port.available() > 0) {
        // Читаем данные и отправляем с префиксом
        Serial.write(id);       // Служебный байт
        Serial.write(port.read()); // Данные с устройства
      }
    }


    Ключевые особенности реализации:
    Выбор пинов
    Использованы пины D4-D7 для приема данных, чтобы избежать конфликта с аппаратным UART (D0/D1). Если требуется использовать именно D0-D3, потребуется:

    Отключить аппаратный UART

    Использовать USB-UART адаптер для программирования

    Оптимизация скорости
    Аппаратный UART настроен на 1 000 000 бод, что позволяет передавать два байта на каждый принятый (100% оверхеда) даже при максимальной нагрузке 4×115200 = 460800 бод.

    Особенности SoftwareSerial

    Одновременная работа только с одним портом

    Требуется циклическое переключение между портами

    Возможны потери данных при высокой нагрузке

    Рекомендации по улучшению
    cpp
    // Альтернатива с NeoSWSerial для стабильной работы
    #include
    NeoSWSerial Serial0(4, 255);
    // ...аналогично для других портов...
    Библиотека NeoSWSerial обеспечивает:

    Более надежный прием на высоких скоростях

    Совместимость с прерываниями

    Поддержку скоростей до 38400 бод

    Для максимальной надежности рекомендуется использовать Arduino Mega с аппаратными UART или внешние USB-UART преобразователи.
    Ответ написан
    Комментировать
  • Сканирование космоса с земли и с космических станций - как космический мусор отслеживают над океаном и какие радары используют на МКС?

    fox_12
    @fox_12
    Расставляю биты, управляю заряженными частицами
    Мусор не берется "ниоткуда". Прежде чем попасть в области "точки Немо" ему нужно пролететь по какой-то траектории, по которой его засекут, просчитают траекторию, периоды орбиты и прочее.
    Даже если есть некий мусор который движется синхронно с движением Земли над "точкой Немо" - его засекут подвижные спутники зондирования.
    Ответ написан
    Комментировать
  • Как загрузить json?

    fox_12
    @fox_12 Куратор тега Python
    Расставляю биты, управляю заряженными частицами
    Обработать как текст сначала.
    1. Найти все номера телефонов в тексте с помощью регулярок.
    2. В найденных номерах найти номера которые встречаются более 1 раза.
    3. Заменить в тексте номера телефонов которые встречаются более одного раза - дополненными окончанием типа '_{n}' где n- число по порядку.
    4. Загрузить полученный дамп как json, и обрабатывать его уже дальше...
    Ответ написан
    Комментировать
  • TC видит файлы, а проводник нет. Как их увидеть в проводнике?

    fox_12
    @fox_12
    Расставляю биты, управляю заряженными частицами
    Включить отображение скрытых файлов и папок в параметрах проводника?
    Ответ написан
    2 комментария
  • Какие моторы нужны для дрона весом 6 кг?

    fox_12
    @fox_12
    Расставляю биты, управляю заряженными частицами
    Сельскохозяйственные дроны и на порядок большие массы поднимают помимо своего веса. Так что определенно возможно. Так что гуглите двигатели для сельскохозяйственных дронов - их достаточно много.
    Ответ написан
    Комментировать
  • При установке прокси-сервера возникла ошибка. Что делать?

    fox_12
    @fox_12
    Расставляю биты, управляю заряженными частицами
    journalctl -u shadowsocks-libdev
    ?
    Ответ написан
  • Как создать docker-контейнер в проекте на Yii2, в котором бы работал cron?

    fox_12
    @fox_12
    Расставляю биты, управляю заряженными частицами
    Как вариант настроить кронтаб в хостовой системе, который в контейнере докера будет дергать команду.
    Что-то вроде:

    docker exec -i <backend docker container> bash -c "php yii cron/midnight"
    Ответ написан
    5 комментариев
  • Как проверять кодом наличие конкретно той или иной библиотеки?

    fox_12
    @fox_12 Куратор тега Python
    Расставляю биты, управляю заряженными частицами
    Либо так:
    try:
       import somelib
    except ImportError:
       ...
       # тут пробуем импортировать другую библиотеку, или делаем что-то еще...
       import otherlib as somelib
    Ответ написан
    Комментировать
  • Как оптимизировать цикл while?

    fox_12
    @fox_12 Куратор тега Python
    Расставляю биты, управляю заряженными частицами
    def get_number(text:str, limit: int) -> int:
        while True:
            number = int(input(text))
            if number <= limit:
                return number
            print('ВНИМАНИЕ! Превышено. Введите меньшее кол-во.', end="\n")
    
    
    number_maps_1_3 = get_number(f"Введите кол-во для {interval_1}: ", levels_1_3)
    number_maps_4_7 = get_number(f"Введите кол-во для {interval_2}: ", levels_4_7)
    ...

    И разберитесь с неймингом переменных как советуют выше
    Ответ написан
    Комментировать
  • Как в Python удалить текст до определённых символов?

    fox_12
    @fox_12 Куратор тега Python
    Расставляю биты, управляю заряженными частицами
    import re
    re.search(r'.*(https{0,1}://.*)', "57-09-71 МегаФонe-mail: ? vy:juf , h 5555y676hr965 silava.a@ttgr :  https://loads.ru").group(1)
    # 'https://loads.ru'
    Ответ написан
  • FastAPI + Django: нормально ли такое делать и если да, то каким образом?

    fox_12
    @fox_12 Куратор тега Django
    Расставляю биты, управляю заряженными частицами
    Ну к примеру берете докер.
    Делаете нужные модели на Django, админку к моделям.
    На FastAPI получаете данные и записываете данные - можно через ту же Django ORM.
    На докере просто стартуете один контейнер для админки - приложение Django, второй контейнер - для FasAPI,
    и на веб сервере разруливаете запросы - /api - в контейнер с FastAPI, /admin - в контейнер с Django.
    Ответ написан
  • Проблема со змейкой на arduino: появляется лишь одна точка вместо всей длины, как исправить?

    fox_12
    @fox_12
    Расставляю биты, управляю заряженными частицами
    Ошибки в коде:
    for (int i=snakeLength;i>0;i--) {
            snakeX[i] = snakeX[i-1];
            snakeY[i] = snake[i-1];   # < --- snakeY[i] = snakeY[i-1];
          }
    Ответ написан
    Комментировать
  • Почему callback-функция не повторяется второй раз?

    fox_12
    @fox_12
    Расставляю биты, управляю заряженными частицами
    Вашу писанину оформленную не по правилам не смотрел - но вот вопрос с похожей проблемой:
    Что делать если выдает ошибку 400 для телеграм бота на python?
    Ответ написан
    Комментировать
  • Как мгновенно выключить питание ATX из Windows?

    fox_12
    @fox_12
    Расставляю биты, управляю заряженными частицами
    Повесить микроконтроллер на порт, который будет подавать команду на реле, которое разорвет цепь питания.
    Ответ написан
  • Возможно ли собрать ПК на микроконтроллере/микропроцессоре?

    fox_12
    @fox_12
    Расставляю биты, управляю заряженными частицами
    На микропроцессоре - запросто. У вас на ПК/ноутбуке - собственно микропроцессор.
    На микроконтроллерах, - к примеру STM32, ESP32 - можно, но это из разряда как сделать троллейбус из буханки хлеба, поскольку они занимают собственно нишу устройств, для выполнения задач которых - полноценный ПК избыточен.
    Ответ написан
    Комментировать
  • Как настроить деплой в разные докер контейнеры?

    fox_12
    @fox_12
    Расставляю биты, управляю заряженными частицами
    variables:
         DEV_CONTAINER: ....
         PROD_CONTAINER: ....
    
    stages:
         - deploy
    
    
    dev_deploy:
         stage: deploy
         only:
               - develop
         script:
               - делаем что-то на контейнере ${DEV_CONTAINER}
    
    prod_deploy:
         stage: deploy
         only:
                - master
         script:
                - делаем что-то на контейнере ${PROD_CONTAINER}

    Переменные можно определить в настройках самого репозитория
    Ответ написан
    Комментировать
  • Какую камеру выбрать для наблюдения за спящим человеком?

    fox_12
    @fox_12
    Расставляю биты, управляю заряженными частицами
    Обычные китайские wi-fi камеры, которые можно включить в режим охраны по движению в кадре. Ставьте на ночь на охрану, но просто зоны интереса настроить не на самого спящего человека, иначе будет много срабатываний, - а на места в кадре, которые он гарантированно пересечет когда вставать будет - рядом с кроватью, на кровать на высоту головы при подъеме, дверной проем, и пр...
    Ответ написан
    Комментировать
  • Почему wc -l выдает на 1 строку меньше?

    fox_12
    @fox_12
    Расставляю биты, управляю заряженными частицами
    Потому что считается количество переводов строки, а у вас последняя строка заканчивается концом файла, а не переводом.
    Ответ написан
  • Выбор IP-камеры высокой четкости для мелких деталей - что посоветуете?

    fox_12
    @fox_12
    Расставляю биты, управляю заряженными частицами
    А на камеры для машинного зрения от тех же Basler к примеру - не смотрели? Там можно и камеру подобрать, и объектив для нее. В вашем случае достаточно черно-белой камеры машинного зрения с нужным разрешением и подобранным для ваших условий объективом.
    Ответ написан
    Комментировать
  • Как получить баланс карты сбербанк?

    fox_12
    @fox_12
    Расставляю биты, управляю заряженными частицами
    Проверять баланс лучше в доверенном приложении или сайте банка после надежной аутентификации.
    Простых способов сделать это в сторонних приложениях нет, - да и не должно существовать. В том числе для вашей же безопасности. Если вы не хакер, разумеется...
    Ответ написан
    Комментировать