analogRead()

Giới thiệu

Nhiệm vụ của analogRead() là đọc giá trị điện áp từ một chân Analog (ADC). Trên mạch Arduino UNO có 6 chân Analog In, được kí hiệu từ A0 đến A5. Trên các mạch khác cũng có những chân tương tự như vậy với tiền tố "A" đứng đầu, sau đó là số hiệu của chân.

analogRead() luôn trả về 1 số nguyên nằm trong khoảng từ 0 đến 1023 tương ứng với thang điện áp (mặc định) từ 0 đến 5V. Bạn có thể điều chỉnh thang điện áp này bằng hàm analogReference().

Hàm analogRead() cần 100 micro giây để thực hiện.

Khi người ta nói "đọc tín hiệu analog", bạn có thể hiểu đó chính là việc đọc giá trị điện áp.

Cú pháp

analogRead([chân đọc điện áp]);

Ví dụ

int voltage = analogRead(A0);

Trong đó A0 là chân dùng để đọc điện áp.

Nếu bạn chưa kết nối chân đọc điện áp, hàm analogRead() sẽ trả về một giá trị ngẫu nhiên trong khoảng từ 0 đến 1023. Để khắc phục điều này, bạn phải mắc thêm một điện trở có trị số lớn (khoảng 10k ohm trở lên) hoặc một tụ điện 104 từ chân đọc điện áp xuống GND.

Reference Tags: 
lên
15 thành viên đã đánh giá bài viết này hữu ích.
Các bài viết cùng tác giả

Lập trình ATtiny13 với Codebender

Trong bài viết Code Arduino trên MÂY, bạn có muốn thử hay không?, chúng ta đã biết cách lập trình Arduino trên mây rồi, phải không nào? Nhưng qua quá trình tìm hiểu thì mình thấy Codebender chưa hỗ trợ dòng ATtiny13, trong khi đó nó lại hỗ trợ những dòng ATtiny45, 85 và 2313. Vậy, câu hỏi đặt ra là: có cách nào để lập trình ATtiny13 qua Codebender hay không? Và câu trả lời là: Có, chúng ta có thể.

lên
5 thành viên đã đánh giá bài viết này hữu ích.

Dự án xe điều khiển từ xa qua Internet với iNut Cảm biến kết nối với wifi trong nhà hoặc USB Wifi 3G

Với mong muốn các bạn có thể sáng tạo ra con xe vòng quanh khắp thế giới 5 châu, mình làm ra cái app này để giúp các bạn thực hiện được điều đó. P.s bạn nào muốn gắn camera thì lấy một con android phát wifi bằng 3G rồi video call từ điện thoại đó qua máy tính. Rồi cầm trên tay con app này và control xe nè :D (ý tưởng từ một bạn trong cộng đồng Arduino Việt Nam)

 

lên
8 thành viên đã đánh giá bài viết này hữu ích.