Xin lỗi đã cắt ngang đoạn trao đổi của 2 bạn, cũng là delay các bạn có thể giải thích cơ chế của hàm này giúp mình với, mình mới tập làm quen.
Trích:
void delay (unsigned int ms)
{
unsigned char i;
while(ms)
{
i = 200;
while (i--);
ms--;
}
}
Ý nghĩa của từng câu lệnh, và ứng với câu lệnh đó thì CPU xử lí thế nào?
Cám ơn các bạn !
Trích:
void delay (unsigned int ms)
{
unsigned char i;
while(ms)
{
i = 200;
while (i--);
ms--;
}
}
Ý nghĩa của từng câu lệnh, và ứng với câu lệnh đó thì CPU xử lí thế nào?
Cám ơn các bạn !
B1: Khai báo sử dụng biến i
B2: Kiểm tra ms, nếu ms khác 0 thì chuyển sang bước 3, nếu bằng 0 thì thoát
B3: Gán giá trị 200 cho biến i
B4: Giảm i đi một đơn vị, kiểm tra xem có khác 0 hay không, nếu chưa thì tiếp tục giảm rồi lại kiểm tra, nếu bằng 0 thì chuyển qua bước 5
B5: Giảm ms đi 1 rồi quay về bước 2
Như vậy chương trình tạo trễ này yêu cầu CPU làm ms lần đếm lùi từ 200 về 0.
Thân mến,
Nhờ các ae trong diễn đàn và đặc biệt cám ơn bạn Toan.LV đã jup minh` viết bài này
mình viết hơi xôi thịt 
Comment