mình có 2 đoạn code asm sau:
CODE thu nhất:
MOV TMOD,#02h
MOV TH0,#(-50)
MOV TL0,#(-50)
SETB TR0 ; Cho phép timer 0 chạy
Lap:
JNB TF0,Lap ; Nếu Timer chưa tràn thì chờ
CLR TF0
CPL P1.0 ; Đảo bit P1.0 để tạo xung vuông
SJMP Lap
END
CODE thứ hâi:
MOV TMOD,#10h
Batdau:
MOV TH1,#HIGH(-500)
MOV TL1,#LOW(-500)
SETB TR1 ; Cho phép timer 1 chạy
Lap:
JNB TF1,Lap ; Nếu Timer chưa tràn thì chờ
CLR TF1
CPL P1.1 ; Đảo bit P1.1 để tạo xung vuông
CLR TR1
SJMP Batdau ; Quay lại nạp giá trị cho TH0_TL0
END
bạn nào hiểu thì cho mình hỏi cái:
lệnh HIGH voi LOW có ý nghĩa gì vậy ? nếu ko dùng có được ko?
CODE thu nhất:
MOV TMOD,#02h
MOV TH0,#(-50)
MOV TL0,#(-50)
SETB TR0 ; Cho phép timer 0 chạy
Lap:
JNB TF0,Lap ; Nếu Timer chưa tràn thì chờ
CLR TF0
CPL P1.0 ; Đảo bit P1.0 để tạo xung vuông
SJMP Lap
END
CODE thứ hâi:
MOV TMOD,#10h
Batdau:
MOV TH1,#HIGH(-500)
MOV TL1,#LOW(-500)
SETB TR1 ; Cho phép timer 1 chạy
Lap:
JNB TF1,Lap ; Nếu Timer chưa tràn thì chờ
CLR TF1
CPL P1.1 ; Đảo bit P1.1 để tạo xung vuông
CLR TR1
SJMP Batdau ; Quay lại nạp giá trị cho TH0_TL0
END
bạn nào hiểu thì cho mình hỏi cái:
lệnh HIGH voi LOW có ý nghĩa gì vậy ? nếu ko dùng có được ko?
Comment