LOW

 Trong lập trình trên Arduino, LOW là một hằng số có giá trị nguyên là 0. Trong điện tử, LOW là mức điện áp 0V hoặc gần bằng 0V, giá trị này được định nghĩa khác nhau trong các mạch điện khác nhau, nhưng thường là 0V hoặc hơn một chút xíu.

LOW là một hằng số có giá trị nguyên là 0

Xét đoạn code ví dụ sau:

int led = 13;

void setup() {
    pinMode(led, OUTPUT);
}

void loop() {
    digitalWrite(led, HIGH);
    delay(1000);
    digitalWrite(led, LOW);
    delay(1000);
}

Đoạn code này có chức năng bật sáng đèn led nối với chân số 13 trên mạch Arduino (Arduino Nano, Arduino Uno R3, Arduino Mega 2560, ...). Bạn có thể tải đoạn chương trình này lên mạch Arduino của mình để kiểm chứng. Sau đó, hãy thử tải đoạn chương trình này lên:

int led = 13;

void setup() {
    pinMode(led, OUTPUT);
}

void loop() {
    digitalWrite(led, HIGH);
    delay(1000);
    digitalWrite(led, 0);
    delay(1000);
}

Sẽ xuất hiện 2 vấn đề:

  • Trong đoạn code thứ 2, "LOW" đã được sửa thành "0".
  • Đèn led trên mạch Arduino vẫn sáng bình thường với 2 chương trình khác nhau.

Điều này khẳng định "LOW là một hằng số có giá trị nguyên là 0" đã nêu ở trên.

LOW là một điện áp lớn hơn 0V

Điện áp (điện thế) tại một điểm là trị số hiệu điện thế giữa điểm đó và cực âm của nguồn điện (0V). Giả sử ta có một viên pin vuông 9V thì ta có thể nói điện áp ở cực dương của cục pin là 9V, ở cực âm là 0V, hoặc hiệu điện thế giữa 2 cực của cục pin là 9V.

Điện áp ở mức LOW không có giá trị cụ thể như 3.3V, 5V, 9V, ... mà trong mỗi loại mạch điện, nó có một trị số khác nhau nhưng thường là 0V hoặc gần bằng 0V. Trong các mạch Arduino, LOW được quy ước là mức 0V mặc dù 0.5V vẫn có thể được xem là LOW. Ví dụ như trong mạch Arduino Uno R3, theo nhà sản xuất, điện áp được xem là ở mức LOW nằm trong khoảng từ 0V đến 1.5V ở các chân I/O.

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

highByte()

highByte() là hàm trả về một chuỗi 8 bit kề với 8 bit cuối cùng của một chuỗi các bit. Như vậy, nếu dữ liệu đưa vào một chuỗi 16bit thì highByte() sẽ trả về 8 bit đầu tiên, nếu dữ liệu đưa vào là một chuỗi 8bit hoặc nhỏ hơn, highByte() sẽ trả về giá trị 0. Một số nguyên bất kì cũng được xem như là một chuỗi các bit, vì bất kì số nguyên nào cũng có thể biểu diễn ở hệ nhị phân dưới dạng các bit "0" và "1".

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

lowByte()

lowByte() là hàm trả về byte cuối cùng (8 bit cuối cùng) của một chuỗi các bit. Một số nguyên bất kì cũng được xem như là một chuỗi các bit, vì bất kì số nguyên nào cũng có thể biểu diễn ở hệ nhị phân dưới dạng các bit "0" và "1".

lên
1 thành viên đã công nhận bài viết này hữu ích!