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
12 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ả

[Intel Galileo] Vài mẹo với Intel Galileo và hệ điều hành Linux Yocto (iot-devkit)

Trên đây là một số mẹo nhỏ giúp bạn có thể làm việc hiệu quả hơn với hệ điều hành Linux Yocto (iot-devkit) trên Galileo mà mình đã tìm hiểu được. Bài viết này cũng tổng hợp lại các bài viết trước đó đã được đăng tại Arduino.vn

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

volatile

Nếu bạn cần tìm hiểu về biến volatile, hãy tham khảo ở bài viết tại Wikipedia

Sơ lược

Một biến được nên khai báo với từ khóa volatile nếu giá trị của nó có thể bị tác động bởi các yếu tố nằm ngoài sự kiểm soát của chương trình đang chạy, nói đơn giản hơn là giá trị của biến thay đổi một cách không xác định. Các biến kiểu volatile thường là:

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