• Почему может не заходить в обработчик таймер [STM32]?

    @AiR_WiZArD
    Dyikot, Что бы задать частоту преобразований. АЦП может работать в режиме постоянного преобразования (continuous conversion mode), тогда частота семплирования определяется частотой работы АЦП и временем семплирования, в этом режиме точно частоту задать не получится, но в целом в большинстве случаев можно и этот режим использовать.

    Что бы точно настроить сколько раз в секунду снимать значения с АЦП, надо запускать преобразования в точные моменты времени, можно это сделать через
    а) Прерывания (что ты и реализовал),
    б) Либо что бы преобразования запускались сами в нужный момент времени от событий таймера.

    Первый способ при большой частоте сильно нагружает контроллер постоянными вызовами прерываний, халовской лабудой на их обработку и запуски АЦП с DMA, происходит это до тех пор, пока контроллер не начинает тратить 100% времени на бессмысленную долбежку прерываний. Второй способ делает то же самое, но DMA запускается один раз, и до заполнения буфера не тратятся ограниченные вычислительные ресурсы
    Написано
  • Почему может не заходить в обработчик таймер [STM32]?

    @AiR_WiZArD
    Dyikot,
    HAL_TIM_PeriodElapsedCallback - высокоуровневый API, он хорош, если прерывания приходят не слишком часто, при периоде в 125мкс и частоте ядра 8МГц, прерывания приходят с периодом в 1000 тактов, это мало. Не надо пытаться запускать семплирование таким образом, микроконтроллер все время висит в прерываниях.
    Как надо:
    spoiler

    Конфигурация таймера 3 (прерывания выключены):
    6740548da754f324801120.png
    Конфигурация АЦП (прерывания АЦП выключены, прерывания DMA включены):
    6740555825a7e387607489.png
    В основном цикле или по таймеру 2 запускаешь преобразование по DMA:
    HAL_ADC_Start_DMA(&hadc1, adcBuffer, sizeof(adcBuffer)/sizeof(adcBuffer[0]));
    В прерывании АЦП ставишь флаг, что буффер считан, что бы его дальше в главном цикле обрабатывать.
    void HAL_ADC_ConvCpltCallback(ADC_HandleTypeDef* hadc)

    Порядок чтения:
    Запустить таймер 3 без прерываний -> запустить преобразование АЦП по DMA -> дождаться флага окончания чтения DMA -> обработать -> повторить
    Написано
  • Почему питание домашних роутеров — 12 В?

    @AiR_WiZArD
    pfg21, Производительность, требуемая даже для первой версии WiFi была на пределе возможностей 5В КМОП логики, не верю, что существовали процессоры для маршрутизаторов с пятивольновыми логическими уровнями, в 90х активно на более низкие напряжения переходили. Другое дело, то что чувствительным WiFi трактам требуется чистое питание, и при высыхании конденсаторов возросшие пульсации проходили через фильтры.
    Написано
  • Высокая температура процессора при низкой его загрузке?

    @AiR_WiZArD
    arhitektorDEATH, В твоем случае - термопаста. Пожалуй просто напишу ответ chatgpt:

    Термоинтерфейс — это материал, используемый для улучшения теплообмена между двумя поверхностями, обычно между процессором (или другим нагревающимся компонентом) и радиатором. Его основная задача — заполнить микроскопические неровности на контактных поверхностях, чтобы обеспечить максимально эффективную передачу тепла.

    Основные виды термоинтерфейсов:

    Термопаста
    Самый распространённый термоинтерфейс.
    Имеет консистенцию густой пасты, легко наносится и равномерно распределяется. (от себя добавлю, что в ноутбуках используется термопаста с фазовым переходом)

    Термопрокладки
    Эластичные пластины, которые устанавливаются между компонентами.
    Удобны для использования на компонентах с неровной или широкой поверхностью (например, чипы видеопамяти).
    Не требуют точного нанесения, как термопаста, но имеют меньшею теплопроводность.

    Жидкий металл
    Очень эффективный термоинтерфейс, обладает высокой теплопроводностью.
    Требует аккуратного использования, так как проводит электричество и может вызвать замыкание, если попадёт на контакты.
    Написано
  • Высокая температура процессора при низкой его загрузке?

    @AiR_WiZArD
    arhitektorDEATH, Ноутбук на гарантии? Тогда идти возвращать, это явно брак, пусть сами разбираются. Если нет - смена термоинтерфейса в теории должна решить проблему
    Написано
  • Почему питание домашних роутеров — 12 В?

    @AiR_WiZArD
    Просто совпало. Да и в специализированных машинах стандарт не 12В, а зачем к обычным машинам подключать роутер, сообразить не могу. Если провайдерская инфраструктура не работает - ничего не сделать (разве что старлинк...).
    Написано
  • Как настроить iptables так, что бы в локальную сеть был доступ через wireguard?

    @AiR_WiZArD Автор вопроса
    А что, надо кого-то нанимать, что бы настроили домашний сервер под мои хотелки? А если поменять что-то захочу, повторить сначала?
  • Не компилируется arm-linux-gnueabihf-gcc, требует библиотеку, куда копать?

    @AiR_WiZArD Автор вопроса
    Александр Ананьев, Нет, не знаю, как это отключить, так как устанавливаю из AUR (yay -S arm-Linux-gnueabihf-binutils).
  • По каким причинам может не работать сглаживание в играх?

    @AiR_WiZArD
    Вряд ли вам тут помогут без скриншотов. Если уж задаете вопрос, потрудитесь зайти в пару игр и нажать printscreen. Попробуйте посмотреть свои же скришоты на другом устройстве (можно и на смартфоне, не важно), если эффект заметен, то дело не в мониторе.
  • Windows считает, что работает от сети при работе от АКБ. Как исправить?

    @AiR_WiZArD Автор вопроса
    Да, переустанавливал, в диспетчере устройств нет неопознаных
  • Какой Linux выбрать?

    @AiR_WiZArD
    Зачем такая морока обычному пользователю? Понятный - очень спорно. Гайдов нет, если сравнивать с вики арча, или сообществом бунты. При запуске браузера все преимущества производительности среды множатся на 0. В чем смысл свободы от системд? Не такой как все?
  • Фризит virtualbox, скачет загрузка ЦП. В чем причина?

    @AiR_WiZArD Автор вопроса
    res2001, Установил, не помогло.
  • Фризит virtualbox, скачет загрузка ЦП. В чем причина?

    @AiR_WiZArD Автор вопроса
    Сейчас включено I/O APIC, Nested AMD-V, KVM виртуализация, VBoxVGA с 3d ускорением, 32мб под видеопамять, в системе 800x600, 16 бит цвет.
  • Фризит virtualbox, скачет загрузка ЦП. В чем причина?

    @AiR_WiZArD Автор вопроса
    Я думаю на скрине видно, что используется всего 90мб. 256 мб - рекомендуемый объем, 128 - минимальный. В системе нет сторонних компонентов, требующих большего. Для теста дал 4gb, разницы нет.
  • Как синхронизировать звук в блютуз наушниках?

    @AiR_WiZArD
    Andrei1penguin1, Аккумулятор заряжается от контроллера заряда, это далеко не одно и то же, что и BMS. Например TP4056 - зарядник, успешно заряжающий аккумуляторы многих маломощных устройств с liion/lipo, но не является BMS. BMS (Battery Management System) обеспечивает балансировку аккумуляторов (если он 1, балансировать нечего), защиту от КЗ. Защита от перезаряда(не всегда) и переразряда обеспечивается как аварийная мера, ибо допускает глубокий разряд, при котором АКБ долго не проживет. Есть конечно и сложные системы, способные обеспечить контроль заряда, но как правило устанавливаются в сложные системы, типа электротранспорта.

    Что там с apple не знаю, но вероятнее всего система не отличается: далеко не все смартфоны могут передавать звук сразу на 2 устройства, но проблем с совместимостью нет. В любом случае, с такими познаниями лучше выбрать что-то попроще, а не изобретать велосипед
  • Как пробросить принтер из windows в linux без драйверов?

    @AiR_WiZArD Автор вопроса
    Увы, MF3200 Series not supported - different data format, different header
  • Как синхронизировать звук в блютуз наушниках?

    @AiR_WiZArD
    Andrei1penguin1, Если ограничиться готовыми решениями, то только так: в одном наушнике 2 модуля, один принимает с устройства, второй отправляет сигнал второму наушнику. Однако в таком случае очень сильно теряется качество из-за преобразований. Защита от переразряда в готовых модулях уже встроена, а в самопальном через внутреннее опорное напряжение можно рассчитать питающее.

    Да, конструкция проста, но почему же тогда TWS наушники появились гораздо позже гарнитур и беспроводных наушников, соединенных проводом?
  • Как узнать почему тормозят сайты в браузере?

    @AiR_WiZArD
    Не поправит, упор в ЦП, а не в диск.