Chợ thông tin Thiết bị Viễn thông Việt Nam
Trở lại   Chợ thông tin Thiết bị Viễn thông Việt Nam Quảng Cáo - Tuyển dụng - Thảo Luận - Tìm mua - Đặt hàng Tâm tình dân kỹ thuật
Trả lời
 
Công cụ bài viết Kiểu hiển thị
Cũ 10-09-2012, 03:44 PM   #1
myanco2003
Member
 
Tham gia ngày: May 2012
Bài gửi: 79
Online Status: myanco2003 đang online
Mặc định Code trên có gì sai không? Giúp với...

Hệ thống quảng cáo SangNhuong.com

Đoạn chương trình trên mình viết trên Batronix để tạo giá trị ngõ ra P1.0 là 0 và 1 sau khoảng gian khoảng 1s. Tuy nhiên gắn qua led thì thấy led vẫn sáng hoài.#-o Có bác nào biết lỗi sai chỗ nào không #-o ? Giúp mình với , mình xin cảm ơn.

INCLUDE 89C51.MC
ORG 0000H
CLR p1.0;
CLR p1.1;
CLR p1.2;
CLR p1.3;
CLR p1.4;
CLR p1.5;
CLR p1.6;
CLR p1.7;
BATDAU:
SETB P1.0;
call delay1s;
CLR p1.0;
call delay1s;
JMP batdau;
delay1s:
MOV R7,#2;
loop:
MOV R6,#250;
DJNZ R6,$;
DJNZ R7,loop;
RET
END
  Trả lời với trích dẫn


CHUYÊN MỤC ĐƯỢC TÀI TRỢ BỞI
Cũ 10-09-2012, 03:44 PM   #2
myanco2003
Member
 
Tham gia ngày: May 2012
Bài gửi: 79
Online Status: myanco2003 đang online
Mặc định

Hệ thống quảng cáo SangNhuong.com

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.
  Trả lời với trích dẫn


Cũ 10-09-2012, 03:44 PM   #3
spn
Member
 
Tham gia ngày: May 2012
Bài gửi: 60
Online Status: spn đang online
Mặc định

Đầu chương trình hãy đặt Stack pointer > 07h
ví dụ:
mov 81h,#0e0h
đây là 1 lỗi mà đại đa số những người tự học lập trình VXL với họ 8051 mắc phải.
Chúc vui
  Trả lời với trích dẫn


Cũ 10-09-2012, 03:44 PM   #4
thanhhai
Member
 
Tham gia ngày: May 2012
Bài gửi: 70
Online Status: thanhhai đang online
Mặc định

Hệ thống quảng cáo SangNhuong.com

Ý quên
ct delay thời gian đều phụ thuộc vào tần số dao đông thạch anh.
Cái ct delay1s chỉ trễ đúng với thạch anh 11.0592 thôi, với tần số khác phải tính lại
  Trả lời với trích dẫn


Cũ 10-09-2012, 03:44 PM   #5
kim-ef
Member
 
Tham gia ngày: May 2012
Bài gửi: 60
Online Status: kim-ef đang online
Mặc định

Quên gì mà quên, cứ lắp cái thạch anh 4MHz vào nó cũng không sáng mãi đâu
  Trả lời với trích dẫn


CHUYÊN MỤC ĐƯỢC TÀI TRỢ BỞI
Trả lời


Công cụ bài viết
Kiểu hiển thị

Quyền viết bài
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is Mở
Mặt cười đang Mở
[IMG] đang Mở
HTML đang Mở
Chuyển đến

SangNhuong.com

© 2008 - 2025 Nhóm phát triển website và thành viên SANGNHUONG.COM.
BQT không chịu bất cứ trách nhiệm nào từ nội dung bài viết của thành viên.
Diễn đàn được xây dựng bởi SangNhuong.com