Subscribe Us

header ads

Bài 6. Hưỡng Dẫn Tự Học ESP8266. Phần 1 Biến Là Gì Hằng Là Gì kiểu Dữa Liệu Là Gì


Biến Là Gì Hằng Là Gì kiểu Dữa Liệu Là Gì

Biến Và Hằng Trong Arduino IDE

Để đi tiếp vào chương trình tiếp theo. Mình xin đi sâu vào vấn đê biến và kiểu dữ liệu để qua các bài tiếp theo bạn có thể nắm rõ hơn các biến mình hay dùng trong bài. Và mình sẽ đi sâu vào các kiểu dữ liệu hay dùng nhất khi lập trình với esp8266 hay kể cả với Arduino trên Aduino IDE

Biến Là Gì

Biến hay biến số (varialbe) không là gì nhưng là một tên được đưa ra đến bộ nhớ lưu trữ để chương trình có thể thao tác. Mỗi biến có một kiểu xác định, để xác định cỡ và layout cho bộ nhớ biến đó. Phạm vi của giá trị có thể được dự trữ trong bộ nhớ, việc thiết lập các biểu thức có thể được áp dụng với biến. biến có thể thay đổi trong khi chạy chương trình.
VD Khai Báo 1 Biến Str Kiểu String
String Str = “Trợ Lý Học Tập”;

Hằng Là Gì

Hằng hay hằng số (constant) cũng giống như biến nhưng dữ liệu của hằng luôn luôn cố định và không thay đổi trong suốt chương trình
VD khai báo 1 Hằng ssid Khiểu char*
const char* ssid="HomeSmart";

Các Kiểu Dữa Liệu Cơ Bản

void
void là một từ khóa chỉ dùng trong việc khai báo một function. Những function được khai báo với void sẽ không trả về bất kì dữ liệu nào khi được gọi.
int
Kiểu int là kiểu số nguyên chính được dùng trong chương trình Arduino. Kiểu int chiếm 2 byte bộ nhớ !
byte
Là một kiểu dữ liệu biểu diễn số nguyên nằm trong khoảng từ 0 đến 255. Bạn sẽ mất 1 byte bộ nhớ cho mỗi biến mang kiểu byte
unsigned long 
Kiểu unsigned long là kiểu số nguyên nằm trong khoảng từ 0 đến 4,294,967,295  (0 đến 232 - 1). Mỗi biến mang kiểu dữ liệu này chiếm 4 byte bộ nhớ
float
Để định nghĩa 1 kiểu số thực, bạn có thể sử dụng kiểu dữ liệu float. Một biến dùng kiểu dữ liệu này có thể đặt một giá trị nằm trong khoảng  -3.4028235E+38 đến 3.4028235E+38. Nó chiếm 4 byte bộ nhớ.
long
long à một kiểu dữ liệu mở rộng của int. Những biến có kiểu long có thể mang giá trị 32bit từ -2,147,483,648 đến 2,147,483,647. Bạn sẽ mất 4 byte bộ nhớ cho một biến kiểu long.
char
Kiểu dữ liệu này là kiểu dữ liệu biểu diễn cho 1 KÝ TỰ. Kiểu dữ liệu này chiếm 1 byte bộ nhớ!
String
String tiếng Anh nghĩa là chuỗi.

Biến Toàn Cục Và Biến Cục Bộ Là Gì

Trong ngôn ngữ lập trình trong môi trường Arduino IDE (ngôn ngữ lập trình c), mọi biến khi khai báo đều có 2 thuộc tính: kiểu dữ liệu (type) và lớp lưu trữ (storage class) của nó. Lớp lữu trữ ở đây chính là thuộc tính thể hiện phạm vi của biến: nơi nào có thể dùng biến đó và biến đó tồn tại trong bao lâu

Biến Toàn Cục Là gì

Các biến được khai báo ở bên ngoài tất cả các hàm thì được gọi là biến toàn cục. Các biến toàn cục có thể truy xuất và sử dụng ở mọi hàm trong chương trình. Biến toàn cục cũng tồn tại cho tới khi chương trình kết thúc.

Biến Cục Bộ Là Gì

Các biến được khai báo trong 1 khối code thuộc lớp lưu trữ tự động – hay chính là các biến cục bộ. Các biến cục bộ này chỉ tồn tại và chỉ có thể sử dụng bên trong khối code đó trong khi khối code đó đang thực thi.

Chương Trình Về Khai Báo Biến Toàn Cục Và Cục Bộ Trên Arduino IDE


  
/*  LePan Trợ Lý Học Tập
 *  Khai Báo Biến 
 *  Tự học esp 8266
 *  https://trolyhoctap.blogspot.com/
*/
String Str ="Trợ Lý Học Tập";   //đây là biến toàn cục
const char* ssid="HomeSmart";   //đây là biến toàn cục
void bien1(){
  String Str2 ="Tự Học ESP8266";          //đây là biến cuc bộ
  Serial.print("Biến cục bộ Str2 là: ");
  Serial.println(Str2);
  Serial.print("Biến Toàn Cục Str được sử dụng trong void bien1() là: ");
  Serial.println(Str);   
//  Serial.println(Str3);              // bạn k thể sử dụng biến Str3 trong khối chương trình này được
}
void setup() {
  Serial.begin(9600);
}

void loop() {
  Serial.print("Biến Toàn Cục Str là: ");
  Serial.println(Str);
  Serial.print("Biến Toàn Cục ssid là: ");
  Serial.println(ssid);
//  Serial.println(Str3);     // bạn k thể sử dụng biến Str2 trong khối chương trình này được vì đây la biến cục bộ
//  Serial.println(Str3);     // bạn k thể sử dụng biến Str3 trong khối chương trình này được vì đây là biến cuc bộ
}
void bien2(){
  String Str3 ="Tự Học ESP8266";          //đây là biến cuc bộ
  Serial.print("Biến cục bộ Str3 là: ");
  Serial.println(Str3);
  Serial.print("Biến Toàn Cục ssid được sử dụng trong void bien1() là: ");
  Serial.println(ssid);   
//  Serial.println(Str2);              // bạn k thể sử dụng biến Str2 trong khối chương trình này được   
}


Mở Bằng Arduino IDE

Biến Str Và biến ssid là các biến toàn cục, các biền này được khái báo bên ngoài tất cả các khối chương trình, nên bạn có thể sử dụng nó ở bất cứ nơi nào trong chương trình
Các biện Str2 Str3 các biến này được khai báo trong hàm bien1() và bien2() nên các biến này chỉ dùng được trong hàm chứ biến đó. Nếu sử dụng bên ngoài hàm đó sẽ báo lỗi không tìm thấy.

Phần này xin được dừng ở đây. Qua phần sau mình sẽ nói rõ về các sử dụng kiểu dữ liệu int và String. Các kiểu này dùng rất nhiều trong các chương trình Arduino và esp8266.

Trong bài viết có gì thắc mắc, hay góp ý. Các bạn để lại dưới bình luận. mình sẽ phản hồi và khắc phục sớm

Đăng nhận xét

0 Nhận xét