digitalRead()

Giới thiệu

Đọc tín hiệu điện từ một chân digital (được thiết đặt là INPUT). Trả về 2 giá trị HIGH hoặc LOW.

Cú pháp

digitalRead(pin)

Thông số

pin: giá trị của digital muốn đọc

Trả về

HIGH hoặc LOW

Ví dụ

Ví dụ này sẽ làm cho đèn led tại pin 13 nhận giá trị như giá trị tại pin 2

int ledPin = 13; // chân led 13
int inPin = 2;   // button tại chân 2
int val = 0;     // biến "val" dùng để lưu tín hiệu từ digitalRead

void setup()
{
  pinMode(ledPin, OUTPUT);      // đặt pin digital 13 là output
  pinMode(inPin, INPUT);      // đặt pin digital 2 là input
}

void loop()
{
  val = digitalRead(inPin);   //  đọc tín hiệu từ digital2
  digitalWrite(ledPin, val);    // thay đổi giá trị của đèn LED là giá trị của digital 2
}

Chú ý

Nếu chân input không được kết nối với bất kỳ một thứ gì thì hàm digitalRead() sẽ trả về tín hiệu HIGH hoặc LOW một cách "hên xui"

Các chân Analog cũng có thể dùng được digitalRead với các cổng pin có tên như là: A0, A1,...

Reference Tags: 
lên
25 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ả

ESP8266 kết nối Internet - Phần 4: Kết nối Internet cho dự án không cần NAT Port, không cần mua server, không cần Blynk

Ở 3 phần trước, mình đã hướng dẫn các bạn toàn bộ kỹ thuật để xây dựng một chương trình webapp để điều khiển, đọc cảm biến, điều khiển thiết bị trong mạng LAN (wifi). Và, bây giờ là lúc các bạn đưa sản phẩm của mình ra ngoài Internet! Và với cách của mình sẽ giới thiệu tiếp đây, các bạn sẽ không cần phải NAT port, không cần phải mua server hàng tháng và hơn hết là không cần phải dùng Blynk. 

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

ST7565 và ESP8266 - Màn hình LCD bự chà bá chưa đến 100k cho thế giới IoT

Mình rất thích LCD ST7565 này, và đã đặt liền 4 con mà mỗi con quá rẻ có 20k. Nhưng khổ một điều, điện áp hoạt động và IO của LCD ST7565 có 3.3V. Bản thân mình lại không thích việc chơi điện trở để chơi LCD này với Arduino. Lý do đơn giản là phải hàn quá nhiều, mình lại lười crying. Hổm nay, mình đang làm loạt bài về ESP8266 và cũng phải gặp vấn đề điện trở để làm cầu phân áp khi giao tiếp giữa ESP8266 và Arduino.

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