TGViewer
Pixel Quest – канал о проекте Pixel Quest – канал о проекте @pixel_quest · 2.09K subscribers
Post #184 1.9K
🛠 Плавающий баг или очередная работа за кадром

Полгода назад я столкнулся с неочевидным поведением микросхемы аналого-цифрового преобразователя HX711, которое периодически приводило к ложным нажатиям. Проблема проявлялась случайным образом, но достаточно редко и во время игры особого дискомфорта не приносила, люди её просто не замечали. Но она долго не давала мне покоя, т.к. я не понимал причин и списывал всё на помехи в сети.

Это сугубо техническая заметка с примером проблемы, которая осталась скрыта от посетителей, но по факту отняла много времени. Гуманитарии могут пройти мимо 🤓

Даже с наличием осциллографа поймать её было весьма не просто – всё дело оказалось в наложении прерывания микроконтроллера на опрос HX711 в строго определенный момент времени, что приводило к сбросу микросхемы. При съёме показаний с АЦП, микроконтроллер дергает ногу PD_SCK и считывает бит с выхода DOUT, обычно это занимает 1 микросекунду. Но если в момент, когда PD_SCK в высоком уровне, приходило сообщение на шину данных, микроконтроллер отвлекался на его обработку и временно забывал про считывание показаний (см. осциллограмму). Вот тут и возникала не совсем очевидная проблема – если задержать высокий уровень на ноге PD_SCK более, чем на 60 мкс, микросхема HX711 выключалась, а после включения, естественно, показания считывались некорректно, что приводило к скачку веса и ложному нажатию.

Что интересно, проблема решается всего двумя строчками кода: запретом любых аппаратных прерываний перед опросом показаний и разрешением после опроса. Но в библиотеке, к сожалению, это не было учтено 😐

UPD: после этой заметки от канала отписалось 10 человек 😅
  • 👍 24
  • 🔥 16
  • 🤓 6
  • ❤ 2
  • 😁 1
More from @pixel_quest
  1. Sep 25, 2026💸 ДвижNex - финансовые результаты июля и августа 2026 На текущий день автоматы установлен…
  2. Sep 18, 2026📣 Pixel Quest - в Дубае! Реально ли? Мы решили, что да и планируем открытие в 2027 году.…
  3. Sep 17, 2026💸 Итоги августа: 19,3 млн. руб. (+30% к прошлому августу) ✅ Общая за год: 173,5 млн. руб.…
  4. Aug 12, 2026💸 Итоги июля: 17,2 млн. руб. (+48% к прошлому июню) ✅ Общая за год: 156,2 млн. руб. (+76%…
  5. Jul 30, 2026🏠 Открытие нашей локации в Ростове-на-Дону. За 3 года существования сети, мы делали 3 под…
  6. Jul 10, 2026💸 Итоги июня: 19,6 млн. руб. (+54% к прошлому июню) ✅ Общая за год: 138,9 млн. руб. (+80%…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →