Lập trình Arduino – hướng dẫn tự học lập trình Arduino.

Trong bài viết này, chúng ta sẽ tìm hiểu về lập trình Arduino và cách học nó một cách tự nhiên và hiệu quả.

Arduino là gì?

Để hiểu về Arduino, trước tiên chúng ta cần tìm hiểu về khái niệm chuỗi. Chuỗi đơn giản là một mảng ký tự kết thúc bằng null (ký tự ”), thể hiện việc kết thúc một chuỗi. Ví dụ, để khai báo một chuỗi là “Việt Nam”, bạn có thể sử dụng cú pháp sau:

char ch[] = "Việt Nam";

Arduino cung cấp một kiểu dữ liệu mới gọi là String, có tính năng mở rộng so với chuỗi thông thường. Một ưu điểm duy nhất của String so với chuỗi là nó có thể tự động tạo và quản lý bộ nhớ cho chuỗi. Tuy nhiên, điều này đồng nghĩa với việc sử dụng nhiều tài nguyên hơn so với việc sử dụng chuỗi thông thường.

Cách tạo một String

Để tạo một String, bạn có thể làm như sau:

String str; // Tạo một String rỗng.
String str("Việt Nam"); // Tạo một String với nội dung là "Việt Nam".

Ngoài ra, bạn cũng có thể tạo một String từ số nguyên hoặc số thực:

String str(123); // Tạo String từ số nguyên 123.
String str(123, HEX); // Chuyển số 123 sang hệ hex và tạo String từ nội dung đó ("7b").
String str(123, BIN); // Chuyển số 123 sang hệ bin và tạo String từ nội dung đó ("1111011").
String str(123.456789, 4); // Tạo String từ số thực 123.456789 với 4 chữ số sau dấu phẩy ("123.4568").

Một số thao tác trên String

charAt()

Hàm charAt() được sử dụng để lấy ký tự tại vị trí chỉ định trong String. Ví dụ:

String("Việt Nam").charAt(3); // Trả về ký tự 't'.

compareTo()

Hàm compareTo() dùng để so sánh hai String với nhau. Nó trả về hiệu giá trị của hai chuỗi. Ví dụ:

String("Việt Nam").compareTo("Việt Nam"); // Trả về giá trị 0.
String("Việt Nam").compareTo("ViệtaNam"); // Trả về giá trị khác 0.

concat()

Hàm concat() được sử dụng để nối hai String với nhau. Ví dụ:

String ch("Việt Nam");
ch.concat(" vo dich"); // ch lúc này có nội dung "Việt Nam vo dich".

c_str()

Hàm c_str() dùng để chuyển String thành chuỗi (mảng ký tự). Nó thường được sử dụng để tương thích với một số hàm không hỗ trợ String hoặc khi không cần những chức năng phức tạp của String. Ví dụ:

String str("Việt Nam");
char *ch;
ch = str.c_str(); // ch lúc này trỏ đến buffer của str.
ch[4] = 'a'; // Thay đổi giá trị tại vị trí 4 của ch sẽ tác động đến str ("Việt Nam" -> "Viet Nam").

startsWith()

Hàm startsWith() được sử dụng để kiểm tra xem String có bắt đầu bằng một chuỗi con nhất định hay không. Ví dụ:

String("Việt Nam").startsWith("Vi"); // Trả về true.
String("Việt Nam").startsWith("iet"); // Trả về false.

endsWith()

Hàm endsWith() được sử dụng để kiểm tra xem String có kết thúc bằng một chuỗi con nhất định hay không. Ví dụ:

String("Việt Nam").endsWith("Nam"); // Trả về true.
String("Việt Nam").endsWith("Na"); // Trả về false.

equals()

Hàm equals() được sử dụng để so sánh hai chuỗi với nhau. Nó phân biệt chữ hoa và chữ thường. Ví dụ:

String("Việt Nam").equals("viet nam"); // Trả về false.
String("Việt Nam").equals("Việt Nam"); // Trả về true.

equalsIgnoreCase()

Hàm equalsIgnoreCase() được sử dụng để so sánh hai chuỗi với nhau. Nó không phân biệt chữ hoa và chữ thường. Ví dụ:

String("Việt Nam").equalsIgnoreCase("viet nam"); // Trả về true.
String("Việt Nam").equalsIgnoreCase("Việt Nam"); // Trả về true.

getBytes()

Hàm getBytes() được sử dụng để sao chép dữ liệu của String vào một mảng ký tự. Ví dụ:

char ch[100];
String str("Việt Nam");
str.getBytes(ch, 3); // ch lúc này bao gồm ký tự 'V', 'i' và '' (null).
ch[1] = 'N'; // Thay đổi giá trị tại vị trí 1 của ch sẽ không tác động đến str ("Việt Nam" -> "Viet Nam").

indexOf()

Hàm indexOf() được sử dụng để tìm vị trí đầu tiên của một ký tự hoặc một chuỗi trong String. Ví dụ:

String("Viet Nam").indexOf('m'); // Trả về số 4.
String("Viet Nam").indexOf("etm"); // Trả về số 2.

lastIndexOf()

Hàm lastIndexOf() được sử dụng để tìm vị trí cuối cùng của một ký tự hoặc một chuỗi trong String. Ví dụ:

String("Viet Nam").lastIndexOf('m'); // Trả về số 8.
String("Viet Nam").lastIndexOf("etm"); // Trả về số 2.

length()

Hàm length() được sử dụng để lấy chiều dài của String. Ví dụ:

String("Viet Nam").length(); // Trả về số 8.

remove()

Hàm remove() được sử dụng để loại bỏ một phần của String. Ví dụ:

String tmp("Viet Nam");
tmp.remove(2); // Lúc này nội dung của tmp là "Vi".

replace()

Hàm replace() được sử dụng để thay thế một phần của String bằng một chuỗi mới. Ví dụ:

String tmp("Viet Nam");
tmp.replace("iet", "IET"); // Lúc này nội dung của tmp là "VIET Nam".

reserve()

Hàm reserve() được sử dụng để cấp phát trước một vùng nhớ cho String. Việc này đảm bảo rằng việc nối chuỗi hoặc thao tác khác sẽ luôn thành công với kích thước đã cấp phát, nhưng có thể lãng phí tài nguyên nếu không sử dụng hết kích thước đã cấp phát. Hàm này không quan trọng với các ứng dụng cơ bản.

setCharAt()

Hàm setCharAt() được sử dụng để gán một ký tự vào một vị trí cụ thể trong String. Ví dụ:

String tmp("Viet Nam");
tmp.setCharAt(6, 'a'); // Lúc này nội dung của tmp là "Viet Nam".

substring()

Hàm substring() được sử dụng để trích xuất một phần của String dựa trên vị trí bắt đầu và vị trí kết thúc. Ví dụ:

String tmp("Viet Nam");
String sub = tmp.substring(1, 3); // Lúc này nội dung của sub là "ie".
tmp = "tao lao"; // Nội dung của sub không thay đổi.

toCharArray()

Hàm toCharArray() được sử dụng để chuyển String thành một mảng ký tự. Ví dụ:

String str("Viet Nam");
char ch[100];
str.toCharArray(ch, 3); // Lúc này ch bao gồm ký tự 'V', 'i' và '' (null).
ch[1] = 'N'; // Thay đổi giá trị tại vị trí 1 của ch sẽ không tác động đến str ("Viet Nam" -> "Viet Nam").

toInt()

Hàm toInt() được sử dụng để chuyển String thành số nguyên. Hàm này duyệt từ trái qua phải trong String và chuyển các ký tự thành số đến khi nào gặp ký tự không phải số. Lưu ý là nếu ký tự đầu tiên không phải số, hàm này sẽ trả về 0. Ví dụ:

String str("+123-2Viet Nam123");
str.toInt(); // Trả về số 123.

toFloat()

Hàm toFloat() được sử dụng để chuyển String thành số thực. Hàm này duyệt từ trái qua phải trong String và chuyển các ký tự thành số đến khi nào gặp ký tự không phải số. Số thực trả về có chính xác hai chữ số sau dấu phẩy và sẽ được làm tròn. Lưu ý là nếu ký tự đầu tiên không phải số, hàm này sẽ trả về 0.00. Ví dụ:

String str("+123.456789-2Viet Nam123");
str.toFloat(); // Trả về số 123.46.

toLowerCase()

Hàm toLowerCase() được sử dụng để chuyển tất cả các ký tự trong String thành chữ thường.

toUpperCase()

Hàm toUpperCase() được sử dụng để chuyển tất cả các ký tự trong String thành chữ HOA.

trim()

Hàm trim() được sử dụng để loại bỏ các khoảng trắng ở hai bên của String.

Arduino là một công cụ lập trình mạnh mẽ và mang lại nhiều lợi ích cho việc phát triển ứng dụng điện tử. Hãy truy cập hefc.edu.vn để biết thêm thông tin và cập nhật mới nhất về Arduino.

HEFC – Trường Đại học Công nghệ Điện – Đại học Quốc gia Hà Nội

Related Posts

Xét nghiệm Giải phẫu bệnh – Dẫn đường cho việc điều trị

Xét nghiệm giải phẫu bệnh được thực hiện trên những mẫu bệnh phẩm tế bào, bệnh phẩm mô từ các cơ quan trong cơ thể được sinh…

Phương pháp điều trị tủy răng tại nha khoa hiện nay

Viêm tủy răng là một trong những vấn đề về sức khỏe răng miệng nghiêm trọng. Người mắc viêm tủy răng không chỉ phải chịu đựng những…

Mỹ thuật ứng dụng là gì? (cập nhật 2023)

Khi những giá trị thẩm mỹ ngày càng được chú trọng thì các phẩm mỹ thuật ứng dụng ngày càng đi sâu vào đời sống của mọi…

Bát quái đồ là gì? Ý nghĩa và vai trò của bát quái trong phong thủy

Bát quái đồ là vật phẩm phong thủy được sử dụng khá rộng rãi và phổ biến trong văn hoá phương Đông, nhằm mang lại những niềm…

Du học ngành khoa học ứng dụng và cơ bản

>> Du học ngành khoa học đại cương >> Các trường có đào tạo ngành Khoa học ứng dụng và cơ bản Khoa học Ứng dụng và…

Trồng răng implant là gì? Những điều cần phải biết trước khi chọn trồng răng implant

Trồng răng implant là phương pháp trồng răng cấy trụ kim loại vào xương hàm để thay thế cho răng đã mất. Chính vì vậy trụ implant…