387
Đa số người lập trình cần hiểu rõ về cấu trúc điều khiển, bao gồm câu lệnh if-else, vòng lặp for và while. Những cấu trúc này cho phép kiểm soát luồng thực hiện của chương trình và giúp tạo ra các ứng dụng phức tạp và linh hoạt hơn. Mình sử dụng rất nhiều trong lập trình nhúng. Chúng ta bắt đầu nào.
1. Câu lệnh if-else
Câu lệnh if-else trong lập trình nhúng được sử dụng để kiểm tra một điều kiện và thực thi các hành động khác nhau dựa trên kết quả của điều kiện đó. Cú pháp cơ bản của câu lệnh if-else như sau:if (condition) {
// Thực hiện hành động khi điều kiện là đúng
}
else {
// Thực hiện hành động khi điều kiện là sai
}
Ví dụ, trong lập trình nhúng với ngôn ngữ C, nếu bạn muốn kiểm tra nút ấn có được ấn hay không, bạn có thể sử dụng câu lệnh if-else như sau:
int main(void)
{
// Khởi tạo cấu hình GPIO
GPIO_Init();
while (1)
{
// Đọc trạng thái của nút ấn
int buttonState = ReadButtonState();
// Kiểm tra trạng thái nút ấn
if (buttonState == GPIO_PIN_SET)
{
// Nút ấn được nhấn
// Thực hiện các hành động tương ứng ở đây
}
else
{
// Nút ấn không được nhấn
// Thực hiện các hành động tương ứng ở đây
}
}
}
Bạn cũng có thể sử dụng câu lệnh if-else lồng nhau để kiểm tra nhiều điều kiện phức tạp hơn
2. Vòng lặp for
Vòng lặp for là một cấu trúc rất phổ biến trong lập trình nhúng để lặp lại một khối mã lệnh nhiều lần. Vòng lặp for cho phép bạn thực hiện một chuỗi các lệnh một cách lặp đi lặp lại một số lần xác định. Cú pháp cơ bản như sau:
for (khởi tạo; điều kiện; bước nhảy) {
// Các lệnh lặp lại
}
- Khởi tạo: Đây là phần khởi tạo một biến đếm hoặc một biến điều khiển để sử dụng trong vòng lặp. Thường thì bạn sẽ khởi tạo biến đếm ở đây.
- Điều kiện: Điều kiện kiểm tra xem vòng lặp có tiếp tục thực thi hay không. Nếu điều kiện là đúng (true), thì vòng lặp sẽ tiếp tục. Nếu điều kiện là sai (false), vòng lặp sẽ kết thúc.
- Bước nhảy: Điều chỉnh biến đếm hoặc biến điều khiển sau mỗi lần lặp. Thường thì bạn sẽ tăng giá trị của biến đếm ở đây.
#include
int main() {
int i;
for (i = 0; i < 5; i++) {
printf("Lap lan thu %d\n", i + 1);
}
return 0;
}
Và đây là kết quả:
Lap lan thu 1
Lap lan thu 2
Lap lan thu 3
Lap lan thu 4
Lap lan thu 5
3. Vòng lặp while
Với bạn học lập trình nhúng, thì vòng lặp while có hầu hết trong các chương trình main chính. Vòng lặp while trong ngôn ngữ C cho phép lặp lại một khối mã dựa trên một biểu thức điều kiện. Cú pháp của vòng lặp while như sau:
while (điều_kiện) {
// Khối mã cần được lặp lại
}
Vòng lặp while sẽ tiếp tục lặp lại khối mã trong khi điều kiện là đúng. Nếu điều kiện là sai, vòng lặp kết thúc và quá trình thực thi chương trình tiếp tục.
Ví dụ, để in ra các số từ 1 đến 5, chúng ta có thể sử dụng vòng lặp while như sau:
int i = 1;
while (i <= 5) {
printf("%d ", i);
i++;
}