Cho em hỏi là chương trình băm xung động cơ của em viết như sau, khi chạy mô phỏng trên Proteus độ rộng xung =0 (tích cực mức thấp) vẫn có 1 xung xuống (mức thấp) xuất hiện. Bí quá mà chưa nghĩ ra giải pháp nào, mong mọi người giúp đỡ. kết quả mô phỏng như chỗ khoanh đỏ hình ảnh đính kèm. Xin cảm ơn
Code:
timer01:
push acc ;cat du lieu vao ngan xep
push psw
inc dem
mov a,dem
cjne a,duty_1,clr_pwm_2
setb pwm_1
clr_pwm_2:
cjne a,duty_2,clr_pwm_3
setb pwm_2
clr_pwm_3:
cjne a,duty_3,clr_pwm_4
clr pwm_3
clr_pwm_4:
cjne a,duty_4,setb_pwm
clr pwm_4
setb_pwm:
cjne a,#255,exit
clr pwm_1
clr pwm_2
setb pwm_3
setb pwm_4
exit:
pop psw ;lay du lieu tu ngan xep
pop acc
reti

Comment