Аналогдук сенсорлорду окуу — ESP32 ADC
Ушул убакка чейин сиздин ESP32 дүйнөгө ооба-же-жок деген суроолорду гана берип келди: баскыч басылганбы же жокпу? Пин HIGH бекен же LOW бекен? Бирок чыныгы дүйнөнүн көбү ооба-же-жок эмес. Жарык жөн эле "күйүк" же "өчүк" эмес — ал күңүрт, орточо же көзгө сайгандай ачык болушу мүмкүн. Температура "ысык же муздак" эмес — ал 19.4 градус, же 23.1, же 31.7. Бурагыч жөн эле "солго же оңго" эмес — ал так 37% айланган.
Ушул сыяктуу тегиз, аралык чоңдуктарды өлчөө үчүн ESP32 ADC деп аталган атайын аппараттык бөлүктү колдонот — бул Аналог-Санариптик Өзгөрткүч (Analog-to-Digital Converter). Ушул бир сабак сиздин тактаңызды жөн гана баскыч окугучтан чыныгы өлчөө куралына айлантат. Сабактын аягында бөлмө караңгылаганда LED'ди өзү автоматтык түрдө күйгүзгөн иштеп жаткан түнкү жарыкты кураштырасыз.
Эмнени үйрөнөсүз
- ADC чын эле эмне кылат: үзгүлтүксүз чыңалууну бүтүн санга айлантуу.
- ESP32'нин 12-биттик ADC'си, анын
0-4095диапазону жанаanalogRead()кантип иштээри. - ESP32 эски Arduino Uno менен кантип салыштырылат (10-бит,
0-1023). - Басаңдатуу, пайдалуу чыңалуу диапазону жана эң жогорку жана эң төмөнкү четтеринде көрсөткүчтөр эмне үчүн кызык болуп калаары.
- Эки ADC блогу (ADC1 жана ADC2) жана алтын эреже: WiFi күйүк болгондо ADC2 иштебей калат.
- Фоторезистор (LDR) плюс бир туруктуу резистор кантип чыңалуу бөлгүч түзөт — чыныгы формула жана чыныгы сандар менен.
- Чийки көрсөткүчтөрдү пайдалуу маанилерге айлантуу: масштабдоо (mapping), калибрлөө жана шумду жылмалоо.
- Толук, өзүн-өзү жөнгө салуучу түнкү жарыкты кураштыруу жана секирип турган көрсөткүчтөрдү оңдоо.