Tài liệu kỹ thuật
BKpro – o
KỸ THUẬT ĐIỀU XUNG PWM
MCU P89V51RD2 Có 5 kênh điều xung (PWM) từ P1.3 - P1.7. Sử dụng
rất đơn giản và linh hoạt cho việc điều xung. Nếu mạch công suất được thiết kế
dạng mạch cầu H thì ta điều khiển được 2 động cơ. Tuy nhiên ta có thể điều
xung được cho 5 động cơ nếu mạch công suất được thiết kế bao gồm 1 FET và
1 Rơle. Trong bài này chúng tôi lấy 1 ví dụ là chương trình điều khiển vận tốc
động cơ tăng dần và giảm dần . Các điều kiện được khai báo ở đầu chương trình
là bắt buộc, nên đọc trước Datasheets để hiểu rõ hơn. Chúc các bạn thành cơng.
Ví dụ :
$mod51fx
;include <mod51fx>
thanh ghi (CCAP0H,CCAP1H,...)
: Định nghĩa các biến
;================ DEFINE BIT =================
;-------- MOTOR
MOTOR1
DATA
CCAP0H
; P1.3
MOTOR2
DATA
CCAP1H
; P1.4
MOTOR3
DATA
CCAP2H
; P1.5
MOTOR4
DATA
CCAP3H
; P1.6
MOTOR5
DATA
CCAP4H
; P1.7
BIT
P2.0
; Nút nhấn start
50H
; 0 - 255
;-------- START
BIT_START
;-------- GIÁ TRỊ ĐIỀU XUNG
PWM_COUNT
BIT
;=================== MAIN ====================
ORG 0000H
MAIN
; Cho phép điều xung 5 kênh P1.3 - P1.7
MOV
CMOD,#0
;Chế độ 6 chu kì xung nhịp = 1/2 chu kì
máy
SETB CR
hoạt động
;Cho phép PCA (programing counter array)
Tài liệu kỹ thuật từ Bkpro
Trang - 1 CuuDuongThanCong.com
/>
Tài liệu kỹ thuật
BKpro – o
MOV CCAPM0,#01000010B ; P1.3
độ PWM 8 bits
MOV
CCAPM1,#01000010B ; P1.4
MOV
CCAPM2,#01000010B ; P1.5
MOV
CCAPM3,#01000010B ; P1.6
MOV
CCAPM4,#01000010B ; P1.7
PCA hoạt động ở chế
; * Chương trình điều khiển vận tốc động cơ
; từ 0 - max và từ max - 0 trên kênh
P1.3
; * Vận tốc động cơ từ 0 - max ứng với
; PWM_COUNT từ 0 - 255 và ngược lại
MOV
PWM_COUNT,#0
; Động cơ dừng
JB
BIT_START,$
; Cho phép động cơ chạy
RUN_UP:
; 0 - max
INC
PWM_COUNT
MOV
MOTOR1,PWM_COUNT
LCALL
MOV
DELAY200MS
A,PWM_COUNT
CJNE A,#255,RUN_UP
RUN_DOWN:
; max - 0
DEC
PWM_COUNT
MOV
MOTOR1,PWM_COUNT
LCALL
MOV
DELAY200MS
A, PWM_COUNT
CJNE A,#0,RUN_DOWN
JMP
RUN_UP
SJMP $
Tài liệu kỹ thuật từ Bkpro
Trang - 2 CuuDuongThanCong.com
/>
Tài liệu kỹ thuật
BKpro – o
;-------- DELAY 200MS
DELAY200MS:
MOV
R2,#2
LOOP200_1:
MOV
R0,#200
LOOP200_2:
MOV
R1,#250
DJNZ R1,$
DJNZ R0,LOOP200_2
DJNZ R2,LOOP200_1
RET
;-------END
Mạch điện :
Chúng tôi thay động cơ bằng led để minh hoạ. Các bạn có thể quan sát thấy
led tuần tự sáng dần và tối dần sau khi nhấn nút start.
Tài liệu kỹ thuật từ Bkpro
Trang - 3 CuuDuongThanCong.com
/>
Tài liệu kỹ thuật
BKpro – o
Tài liệu kỹ thuật từ Bkpro
Trang - 4 CuuDuongThanCong.com
/>