Ý của bạn andy là muốn xử lý chính xác xung tín hiệu ra từ encoder. Giả sử andy dùng encoder có độ phân giải 500 xung/vòng quay. Vậy khi động cơ quay 500 vòng/giây tương ứng với 30k vòng/phút thì đầu tín hiệu ra của encoder sẽ là là xung với tần số lên đến 250 kHz (T = 4 micro giây). Vì vậy muốn đếm được chính xác số xung thì vòng quét (tạo bởi chương trình con) hay Timer phải có chu kỳ nhỏ hơn hoặc bằng 4 micro giây. Nếu andy chỉ dùng Timer co T = 50ms, khi bạn đếm xung 250 kHz thì mới đếm được xung đầu tiên thì đã có (12500-1) xung khác xuất hiện và bạn sẽ không xử lý kịp. Vậy vấn đề như mình đã nói "tổng thời gian để thực hiện các lệnh xử lý xung phải nhỏ hơn 4 micro giây". Nghĩa là bạn lập trình rồi cộng tổng số chu kỳ máy của các lệnh trong chương trình con. Nếu nhỏ hơn 4 micro giây thi oki

Mình nghĩ việc này là không thể cho các chip với tốc độ xử lý lệnh như hiện nay.