Hàm pulseInLong trong Arduino

Đăng ngày 27-03-2025 bởi Admin

Trong bài viết này HPTECH sẽ chia sẻ hàm pulseInLong trong Arduino là gì, cú pháp, code mẫu và những lưu ý khi sử dụng hàm này.

 

 

 

Mô tả

pulseInLong() là một giải pháp thay thế cho pulseIn(), tốt hơn trong việc xử lý xung dài và các scenario bị ảnh hưởng gián đoạn.

 

Đọc một xung (CAO hoặc THẤP) trên một chân. Ví dụ, nếu giá trị là CAO, pulseInLong() sẽ đợi chân đi từ THẤP đến CAO, bắt đầu định thời gian, sau đó đợi chân chuyển sang THẤP và dừng định thời. Trả về độ dài của xung tính bằng micro giây hoặc từ bỏ và trả về 0 nếu không nhận được xung hoàn chỉnh nào trong thời gian chờ.

 

Thời gian của hàm này đã được xác định theo kinh nghiệm và có thể sẽ hiển thị lỗi trong các xung ngắn hơn. Hoạt động trên xung có độ dài từ 10 micro giây đến 3 phút. Quy trình này chỉ có thể được sử dụng nếu ngắt được kích hoạt. Hơn nữa, độ phân giải cao nhất thu được với khoảng thời gian lớn.

 

Cú pháp

pulseInLong (chân, giá trị)

pulseInLong (chân, giá trị, thời gian chờ)

 

Thông số

Chân: số chân Arduino mà bạn muốn đọc xung. Các kiểu dữ liệu được phép: int.

Giá trị: loại xung cần đọc: CAO hoặc THẤP. Các kiểu dữ liệu được phép: int.

Thời gian chờ (tùy chọn): số micro giây để chờ xung bắt đầu; mặc định là một giây. Các kiểu dữ liệu được phép: unsigned long.

 

Return

Độ dài của xung (tính bằng micro giây) hoặc 0 nếu không có xung nào bắt đầu trước thời gian chờ. Kiểu dữ liệu: unsigned long.

 

Code mẫu

Ví dụ xuất khoảng thời gian của một xung trên chân 7.

 

 

Lưu ý

Hàm này dựa vào micros() nên không thể được sử dụng trong ngữ cảnh noInterrupts().

>

>

MỘT SỐ QUY ĐỊNH CHUNG KHI ĐẶT MẠCH IN PCB

Liên hệ GPWebMedia

Bạn quan tâm gì tới dịch vụ của chúng tôi?

Hãy liên hệ với chúng tôi để cùng nhau trao đổi về các giải pháp hỗ trợ việc kinh doanh của bạn hiệu quả trên internet.