Chao anh!
Em có một câu hỏi về Delay time.
Em đã tham khảo công thức tính delay time của anh. Nhưng công thức đó là tính delay trong chương trình (bao gồm cả chu kỳ máy của các câu lệnh)
Trường hợp em làm là em tính thời gian từ khi sensor gửi tín hiệu (INIT signal) cho đến khi nhận được ECHO signal.
Công thức của em là: Time = (Distance * 2) / V
V: vận tốc của âm thanh ỏ 20 độ C ( V = 331.4 + 0.6*T do C)
Ví dụ em đo khoảng cách 550mm ở nhiệt độ 20 độ C, Time = 3.203 ms
Vấn đề của em là em phải convert ms thành chu kì máy. Em tính theo cách hiểu của em thì la 3203 cycle.
Vì em dùng Crystal 4Mhz nên một chu kì máy là 1us, 3.203 tức là 3203 chu kì máy.
Số chu kì máy đấy em nghĩ là đúng nhưng ko thể đưa vào chương trình, cái này em ko chắc vì em chưa thấy bao giờ. Bởi vì thông thường chu kỳ máy sẽ nhân với một hằng số để tính ra delay time :P
Anh xem giúp em với.
|