View Single Post
Old 31-03-2009, 01:19 PM   #8
vagabondtt1503
Đệ tử 2 túi
 
Tham gia ngày: Dec 2008
Bài gửi: 33
:
Trích:
Nguyên văn bởi sandro_bk View Post
Mình thường làm như sau.Dùng 1 cái timer để tạo pwm,(chẳng hạn xuất xung 5khz)thời gian đó cũng chính là chu kỳ lấy mẩu số xung encoder,cứ ngắt pwm xảy ra là lấy mẩu encoder tính ra tốc độ rồi,đó là cách đọc encoder ở tốc độ cao,tức là khi động cơ quay nhanh,
còn ở tốc độ thấp tức là khi động cơ quay chậm thì có thể dùng cách đo thời gian của 1 xung encoder,cho nên người ta mới cung cấp timer5 chung với module encoder cho mình dùng chức năng capture,
mình sử dụng hàm Read_QEI() của bạn viết sau đó đưa pha A và B vào 2 chân QEA và QEB của vi đièu khiển,sau đó lấy giá trị trả về của hàm Read_QEI() xuất LCD trong vòng while,nhưng giá trị xuất ra rất khó hiểu,hinh như không phải tính xung đưa vào 2 chân QEA và QEB.

Mong bạn chỉ bảo giúp
vagabondtt1503 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn