Pico 4. ADC - Internal Temperature

🌱 Pico 4. ADC - Internal Temperature

    Một ngoại vi quen thuộc khác trong vi điều khiển đó là ADC - Analog-to-Digital Converter, ngoại vi này thường được sử dụng để xử lý các tín hiệu tương tự từ các cảm biến, ... Ở bài viết này, mình sẽ test ADC và Cảm biến nhiệt độ tích hợp trong Raspberry Pico.

    👉 IDE sử dụng: Thonny
    👉 Phần cứng ADC trong Pico

    Về cơ bản thì Raspberry Pico hỗ trợ 3 bộ ADC với độ phân giải 12-bits. 3 bộ ADC là ADC0, ADC1, ADC2, lần lượt tương ứng với các chân GP26, GP27, GP28.

ADC

    Với bài toán này mình sẽ sử dụng kênh Cảm biến nhiệt độ nội:

Internal Temperature

    👉 Viết chương trình

    Để đọc dữ liệu ADC với Raspberry Pico, chúng ta sẽ làm theo các bước sau:

  1. import thư viện machine để sử dụng ADC, và thư viện utime.
  2. Đọc dữ liệu từ channel tương ứng, có 4 channel là 0, 1, 2, 4, trong đó Channel 3 là Vref. 
    Khai báo đối tượng ADC bằng hàm machine(channel), hoặc machine(pin), pin = 26/27/28.
  3. Đọc dữ liệu ADC bằng hàm read_u16().
  4. Xử lý dữ liệu cảm biến và tính toán theo công thức được cung cấp trong Datasheet:

    Temp

    Bước cuối là in nhiệt độ lên màn hình để quan sát!

    👉 Các bạn có thể tham khảo code mẫu của mình dưới đây!

Read Temp

    👉 Và đây là kết quả, dữ liệu Cảm biến được đọc và hiển thị mỗi 2s

results

    Hôm nay trời khá lạnh nhỉ 😉

    Chúc các bạn học tập tốt 😊

<= Xem Bài Pico 3           Xem Bài Pico 5 =>

Nguyễn Văn Nghĩa

Mình là một người thích học hỏi và chia sẻ các kiến thức về Nhúng IOT.

Đăng nhận xét

Mới hơn Cũ hơn