Встроенный датчик температуры
Вот сюрприз, который радует почти каждого новичка: ваш Raspberry Pi Pico уже умеет сообщать, насколько ему тепло, без подключения хотя бы одного дополнительного компонента. Внутри чипа RP2040 спрятан крошечный датчик температуры, тихо встроенный в кремний прямо на заводе. Нужно лишь знать, как его спросить.
В этом уроке вы считаете показания этого датчика, превратите сырое число, которое он выдаёт, в настоящую температуру в градусах Цельсия, поймёте, почему волшебная формула преобразования выглядит именно так, а затем соберёте работающий последовательный термометр, который печатает температуру каждую секунду. Попутно вы узнаете, где этот датчик по-настоящему полезен, а где он охотно соврёт вам на несколько градусов.
Чему вы научитесь
- Что такое внутренний датчик температуры RP2040 и физика того, почему он работает.
- Что он находится на особом скрытом канале АЦП — канале 4, и как открыть его с помощью
ADC(4). - Как
read_u16()выдаёт число от 0 до 65535 и как превратить его в напряжение. - Знаменитую формулу преобразования
27 - (voltage - 0.706)/0.001721, разобранную по членам на реальных числах. - Насколько он на самом деле точен: что он измеряет температуру самого чипа, отклоняется в зависимости от активности чипа и годится лишь с точностью до нескольких градусов.
- Как собрать последовательный термометр с аккуратным округлением, единицами измерения и переводом из Цельсия в Фаренгейт.
- Как записывать серию показаний во времени в список Python.
- Как устранять неполадки, когда показания слишком высоки, и как успокоить шумные, скачущие значения с помощью усреднения.