HIGH

 Trong lập trình trên Arduino, HIGH là một hằng số có giá trị nguyên là 1. Trong điện tử, HIGH là một mức điện áp lớn hơn 0V. Giá trị của HIGH được định nghĩa khác nhau trong các mạch điện khác nhau, nhưng thường được quy ước ở các mức như 1.8V, 2.7V, 3.3V 5V, 12V, ...

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

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

int led = 13;

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

void loop() {
}

Đ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);
    digitalWrite(led, 1);
}

void loop() {
}

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

  • Trong đoạn code thứ 2, "HIGH" đã được sửa thành "1".
  • Đè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 "HIGH là một hằng số có giá trị nguyên là 1" đã nêu ở trên.

HIGH 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, hoặc hiệu điện thế giữa 2 cực của cục pin là 9V.

Điện áp ở mức HIGH không có giá trị cụ thể như 3.3V, 5V, 9V, ... mà trong mỗi loại mạch điện, nó có trị số khác nhau và đã được quy ước trước. Trong các mạch Arduino, HIGH được quy ước là mức 5V mặc dù 4V vẫn có thể được xem là HIGH. Ví dụ như trong mạch Arduino Uno R3, theo nhà sản xuất, điện áp được xem là ở mức HIGH nằm trong khoảng từ 3V đến 5V.

Dù HIGH không có một trị số nào rõ ràng nhưng nhất quyết rằng giá trị của nó luôn lớn hơn 0V.

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

break

break là một lệnh có chức năng dừng ngay lập tức một vòng lặp (do, for, while) chứa nó trong đó. Khi dừng vòng lặp, tất cả những lệnh phía sau break và ở trong vòng lặp chịu ảnh hưởng của nó sẽ bị bỏ qua.

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

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
2 thành viên đã đánh giá bài viết này hữu ích.