chào nnvkct!
theo mình chương trình của bạn ko sai.
Nhưng có lẽ khoảng thời gian trong ctc delay1s là quá ngắn nên ko nhìn thấy nó tắt. Bạn thử tính cụ thể khoảng thời gian đó là bao nhiêu (cái này chắc ko khó, xem thời gian thực hiện các lệnh trong tài liệu ấy).
Hoặc cách nhanh hơn bạn sửa giá trị lớn hơn đưa vào R6,R7 rồi thử lại.
Cũng với ct trên nếu bạn đảo thứ tự của lệnh SETB P1.0 và CLR p1.0 thì có lẽ bạn chỉ thấy nó tối mà ko sáng.
Đây là ctc trễ 1s mà mình đã tính toán chính xác
DELAY01S: MOV R2, #96
AGAIN: MOV R3, #96
HERE: NOP
NOP
NOP
NOP
NOP
NOP
NOP
DJNZ R3, HERE
DJNZ R2, AGAIN
RET
Chúc thành công.