Каталог
|
Пульсоксиметр MAX30100 / MAX30102 – исправляем ошибки платы2021-04-12 Все статьи →Пульсоксиметры MAX30100 / MAX30102 недорого стоят и популярны у радиолюбителей. К сожалению, самые дешевые платы модуля, которые тысячами штук продаются на Aliexpress, содержат фатальную ошибку. Я расскажу, как ее исправить. Об исправлении ошибки нового варианта платы модуля рассказано в другой статье. Там же показано, как отличить чип MAX30100 от чипа MAX30102. Все сказанное далее в равной мере относится к новым чипам MAX30102 и устаревшим чипам MAX30100, поскольку они полностью совместимы по выводам и могут быть установлены на одной и той же плате.
Рис. 1. Модуль MAX30100 / MAX30102
Если вы заказали плату, изображенную на рис. 1 – поздравляю, у вас проблемы с цепями питания. Микросхеме требуется два напряжения питания:
Внимательно посмотрите на схему модуля (рис. 2). В ней задействованы два линейных регулятора напряжения с низкими сквозными потерями (LDO). Первый формирует напряжение +3,3V из +5V (или просто пропускает насквозь питание +3,3V). Второй регулятор подключен к выходу первого и формирует напряжение +1,8V. Казалось бы, все правильно? Рис. 2. Электрическая схема модуля MAX30100 / MAX30102 Теперь присмотритесь, куда подключены подтягивающие резисторы 4,7K для линий SCL, SDA и INT (толстая красная линия). Они подключены к линии питания +1,8V. Если такой модуль подключить к пятивольтовой плате Arduino, он не будет виден на шине I2C, потому что логические уровни слишком низкие. Впрочем, и с трехвольтовой платой шина I2C с такой подтяжкой может работать неустойчиво. Эту ошибку легко исправить, как показано на рис. 3. Достаточно перерезать дорожку в месте красного крестика и сделать перемычку, показанную желтой линией. Для перемычки не нужен изолированный провод. Можно взять луженую жилку из многожильного провода. Плата покрыта защитной маской и замыкания на общий провод не будет. Рис. 3. Исправления на плате модуля Но не все так просто! Как вы думаете, что сделали китайцы, когда узнали, что изготовили 100500 миллионов штук плат с ошибкой? Дышите глубже: вместо регулятора на напряжение 1,8V они начали устанавливать на плату регулятор с выходным напряжением 2,8V. Это подлый удар в спину радиолюбителю – не могу назвать это иначе. При таком напряжении питания шина I2C нормально работает с пятивольтовыми платами Arduino. На первый взгляд с модулем все в порядке. Он вроде бы работает и даже что-то измеряет. Однако для самой микросхемы пульсомера это напряжение далеко выходит за пределы допустимого диапазона. Нет, микросхема не выходит из строя. Просто она измеряет что попало и как попало. В даташите четко сказано, что соблюдение диапазона питания необходимо для устойчивой работы встроенного счетчика (имеется в виду встроенный блок тактирования для АЦП и таймеров логики). В итоге мы с удивлением обнаруживаем, что сенсор профессионального уровня работает крайне нестабильно и совсем не так, как описано в интернетных статьях. Я убил целый вечер, чтобы понять, что происходит не так. Только когда ткнул щупом осциллографа в вывод SDA и увидел там логический уровень 2,8V, у меня появились подозрения. Окончательная доработка Измерьте напряжение на выходе второго регулятора. Если там +1,8V, значит вам повезло. После перерезания дорожки и установки перемычки доработка завершена. В противном случае дополнительно придется заменить регулятор. На плате должен быть установлен регулятор XC6206P182MR. Этот регулятор надо где-то приобрести. Будьте внимательны при заказе! Две цифры после буквы P обозначают рабочее напряжение. В нашем случае 18 обозначает 1,8V. Раздобыв регулятор на 1,8V (маркировка – 65K), сдуваем с платы неправильный регулятор и устанавливаем новый. Перепечатано с разрешения Валерия Яценкова с сайта www.reedpaper.com
Благодарим Вас за обращение! Ваш отзыв появится после модерации администратором.
Пока нет отзывов на эту статью.
|