boolean

Giới thiệu

Một biến được khai báo kiểu boolean sẽ chỉ nhận một trong hai giá trị: true hoặc false. Và bạn sẽ mất 1 byte bộ nhớ cho điều đó.

Lưu ý

Những cặp giá trị sau là tương đương nhau. Về bản chất, chúng đều là những hằng số nguyên với 2 giá trị 0 và 1:

  • true - false
  • HIGH - LOW
  • 1 - 0

Ví dụ:

int led = 13;
boolean led_status;

void setup() {                
  pinMode(led, OUTPUT);   
  led_status = true;     // led ở trạng thái bật
}

void loop() {
  digitalWrite(led, led_status);     // bật đèn, led_status = 1
  delay(1000);              
  digitalWrite(led, !led_status);    // tắt đèn, !led_status = 0
  delay(1000);          
}

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

Tự làm thiết bị bật tắt đèn điều khiển qua phần mềm iNut trên Android và iPhone

Điều khiển thiết bị điện trong nhà là một trong những mong muốn cháy bỏng nhất của mình trong quá trình tìm tòi và nghiên cứu phát triển Arduino. Với board mạch ESP8266, ước mong của mình đã trở thành hiện thực. Và mình đã thực hiện hóa nó qua dự án iNut. Và đây là thời điểm hoàn hảo để triển khai dự án điều khiển thiết bị điện trong nhà này. Hãy cùng khám phá nhé.

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

Lưu các biến CHỈ ĐỌC với PROGMEM

Trong bài Tiết kiệm RAM trong Arduino?, chúng ta đã biết cách lưu chuỗi hằng vào bộ nhớ FLASH thay cho việc lưu hết bọn chúng vào RAM. Như vậy, một hằng chuỗi có thể được lưu vào bộ nhớ FLASH thay vì lưu vào RAM. Vậy, câu hỏi đặt ra là, những biến hằng khác (hằng số, hẳng mảng, hẳng số thực) có thể được lưu vào FLASH thay vì vào RAM hay không?

Trong thực tế, các biến hằng (trừ hằng chuỗi) hầu hết chỉ tốn vài chục byte để lưu trữ nên RAM, nên chúng ta cũng chưa gặp vấn đề gì trong việc lưu trữ hằng số hay hằng mảng cả. Nhưng thỉnh thoảng, có những lúc, ta phải tìm cách lưu trữ chúng ở một nơi khác, ví dụ Bài 12: Phát nhạc bằng Arduino với một cái loa hoặc buzzer.

Chần chừ gì nữa, biết muốn phám khá khả năng của Arduino - hay không?

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