Encoder có 2 xung A và B dùng để xác định chiều quay của nó.
Mình mới tập viết VXL nên k bít đúng sai,bạn nào giúp mình 1 tay nhé
2 Chân A và B của Encoder đưa vào P3.0 và P3.1 của VXL.Và ngõ ra là chân P3.2 cho bít thuận hay nghịch
***
P3.0 EQU PULSE_A
P3.1 EQU PULSE_B
P3.2 EQU THUAN/NGHICH ;NEU P3.2 LA 1 THI CHO CHAY THUAN,P3.2 LA 0 THI CHO CHAY NGHICH
JB PULSE_A,SS1
SS1: JNB PULSE_A,SS2
SS2: JNB PULSE_B,THUAN
JB PULSE_B,NGHICH
RET
THUAN: SETB P3.2
RET
NGHICH: CLR P3.2
RET
RET
***
Hình đính kèm theo lấy từ picvietnam.com
****
Hình trên là hình xung incremental encoder.
Các bạn thấy rằng nếu như khi xung A đang từ mức cao xuống mức thấp, mà lúc đó B đang ở mức thấp, thì chúng ta sẽ xác định được chiều chuyển động của encoder theo chiều mũi tên màu cam.
Nếu A đang từ mức cao xuống mức thấp, mà B đang ở mức cao, thì chúng ta sẽ biết encoder đang quay theo chiều màu nâu.
****
Mình k bít cách đính kèm file
Mình mới tập viết VXL nên k bít đúng sai,bạn nào giúp mình 1 tay nhé
2 Chân A và B của Encoder đưa vào P3.0 và P3.1 của VXL.Và ngõ ra là chân P3.2 cho bít thuận hay nghịch
***
P3.0 EQU PULSE_A
P3.1 EQU PULSE_B
P3.2 EQU THUAN/NGHICH ;NEU P3.2 LA 1 THI CHO CHAY THUAN,P3.2 LA 0 THI CHO CHAY NGHICH
JB PULSE_A,SS1
SS1: JNB PULSE_A,SS2
SS2: JNB PULSE_B,THUAN
JB PULSE_B,NGHICH
RET
THUAN: SETB P3.2
RET
NGHICH: CLR P3.2
RET
RET
***
Hình đính kèm theo lấy từ picvietnam.com
****
Hình trên là hình xung incremental encoder.
Các bạn thấy rằng nếu như khi xung A đang từ mức cao xuống mức thấp, mà lúc đó B đang ở mức thấp, thì chúng ta sẽ xác định được chiều chuyển động của encoder theo chiều mũi tên màu cam.
Nếu A đang từ mức cao xuống mức thấp, mà B đang ở mức cao, thì chúng ta sẽ biết encoder đang quay theo chiều màu nâu.
****
Mình k bít cách đính kèm file
Comment