Viết CT dùng Timer tạo 2 sóng vuông có cùng f= 1KHz tại P1.6 và P1.7. Biết rằng sóng vuông tại P1.7 chậm pha hơn sóng vuông tại P1.6 100µs. (Xtal 12MHz).
Thông báo
Collapse
No announcement yet.
nhờ các anh chị giải giúp đỡ e bài tập về vdk 8051
Collapse
X
-
em làm thế này nhé:
sử dụng 2 ngắt timer 1 và timer 2
như sau:
ORG 000H
JMP MAIN
ORG 000BH
; LỆNH ĐẢO BIT P1.6
MOV TH0,#HIGH(-1000)
MOV TL0,#(-1000)
CLR TF0
RETI
TUƠNG TỰ CHO TIMER 2
TRONG HÀM MAIN VIẾT NHƯ SAU
MAIN:
MOV TCON,# GIÁ TRỊ THÍCH HỢP ( THANH GHI TCON CÓ 8 BIT, BONS BIT THẤP CHO TIMER 0 VÀ 4 BIT CAO CHO TIMER1
( CỤ THỂ LÀ CÁC BIT NHƯ SAU: GATE1 - T/C - M1 - M0 - GATE0 - T/C - M1 - M0) - EM TỰ LÀM NHÉ
MOV IE,#1XXXXXXX
THANH GHI IE CHO PHÉP NGẮT MỖI KHI TIMER TRÀN ( CẢ CÁC NGẮT KHÁC)
NHƯNG VÌ MÌNH SỬ DỤNG TIMER 0 VÀ 1 NÊN TA SỬ DỤNG CÁC BIT NHƯ SAU:
BIT THỨ 7 CỦA IE : BIT NGẮT TOÀN CỤC
BIT THỨ 1 CỦA IE: CHO PHÉP NGẮT TIMER0
BIT THỨ 3 CỦA IE: CHO PHÉP NGẮT TIMER1
VẬY LÀ : MOV IE,#10001010 NHÉ
HEHE
CLR P1.6
CLR P1.7
JMP $
END
TÍNH TOÁN THỜI GIAN NHƯ SAU
F = 1KHZ
=> T = 1/F = 1/1000 = 1MS
NẾU SỬ DỤNG THẠCH ANH 12MHZ => CHU KỲ MÁY = 1MS ( CHIA 12 RỒI)
VẬY LÀ CẦN KHOẢNG 1000 CHU KỲ MÁY THÌ MỚI ĐƯỢC 1MS
ĐÓ LÀ LÝ DO CẦN CÓ 2 LỆNH MOV TH0,#(-1000) VÀ MOV TL0,#LOW(-1000)
TRONG CHƯONG TRÌNH CHÍNH EM PHẢI KHAI BÁO SỬ DỤNG TIMER Ở CHẾ ĐỘ 16BIT CHO TIMER 0 VÌ CẦN ĐẾM LÊN ĐẾN 1000 MÀ z( CHẾ ĐỘ 8 BÍT THÌ KHÔNG ĐỰOC)
CÒN NẾU TRONG CHẾ ĐỘ 8 BIT EM VẪN LÀM ĐƯỢC NHƯNG VIẾT LẠI NHƯ SAU
MOV GIÁ TRỊ 250 VÀO TH VÀ TL
MỖI LẦN NGẮT TĂNG BIẾN ĐẾM LÊN 1
KIỂM TRA NẾU ĐẾM = 4 THÌ CHO ĐẾM VỀ 0 , ĐỒNG THỜI ĐẢO CHÂN P1.6 HOẶC P1.7
ĐƠN GIẢN VẬY THUI. CHÚC OKIE
THÂN ÁIBe quan. Plz contact through email:
-
chi tiết như sau:
0RG 000H
JMP MAIN
ORG 003H
CPL P1.6 // ĐẢO TRẠNG THÁI CHÂN P1.6
MOV TH0,#HIGH(-1000)
MOV TL0,#LOW(-1000)
CLR TF0 // KHÔNG CẦN THIẾT LỆNH NÀY VÌ MỖI KHI TRÀN CHIP TỰ ĐỘNG XÓA CỜ BÁO NGẮT
RETI
ORG 003H
CPL P1.7 // ĐẢO TRẠNG THÁI CHÂN P1.6
MOV TH1,#HIGH(-1000)
MOV TL1,#LOW(-1000)
CLR TF1 // KHÔNG CẦN THIẾT LỆNH NÀY VÌ MỖI KHI TRÀN CHIP TỰ ĐỘNG XÓA CỜ BÁO NGẮT
RETI
MAIN:
MOV TMODE,#( GIÁ TRỊ ) - BẠN TỰ TRA NHÉ ( CẤU HÌNH TIMER 0 VÀ 1 HOẠT ĐỘNG Ở 16 BIT, BIT T/C = 1 VÌ HOẠT ĐỘNG Ở TIMER, BIT GATE = 0 VÌ ĐIỀU KHIỂN BẰNG PHẦN MỀM, GIỐNG NHAU Ở CẢ 4 BIT CHO TIMER0 VÀ 1)
MOV TCON,#10000101 - CHO PHÉP NGẮT Ở CẢ TIMER 1 TIMER0
CLR TF0
CLR TF1
MOV TH0,#HIGH(-1000)
MOV TL0,#LOW(-1000)
MOV TH1,#HIGH(-1000)
MOV TL1,#LOW(-1000)
SETB TR0
SETB TR1
CLR P1.6
CLR P1.7
JMP $ - NHAY TAI CHO DE CHO MOI KHI CỜ BÁO TRÀN THÌ QUAY VỀ CHUƠNG TRÌNH NGẮT ĐẢO CHÂN P1/6 HOẶC P1/7Be quan. Plz contact through email:
Comment
-
ai viet giup em mot chuong trinh tong? hop dc ko? gom 32 led sang dan doi tat dan> sang don tat het > nhat' len tuc 5 lan > sang sao bang > sang duoi?
gui vao mail cho em nha tinhyeudonphuong_dt2000@yahoo.com
emm xin cam on nhieu^
Comment
Bài viết mới nhất
Collapse
-
Trả lời cho Amply bị rò DC 22 voltbởi trung30000Theo sự hướng dẫn của bác, sau khi em kiểm tra tầng Vi sai sử dụng cặp c1815, tiếp đến là 1 con a1013, và cặp thúc sử dụng mje304g và mje305g, em đã tiến hành thay cặp Vi sai c1815 sau đó mở máy lên đo ngõ công suất DC 0,2V hai giây sau máy đo...
-
Channel: Điện thanh
hôm nay, 20:09 -
-
bởi theidiotcatBộ máy đa năng toàn diện cho học tập và làm việc hàng ngày
Đối với học sinh, sinh viên và người làm việc văn phòng, việc sở hữu một bộ PC cân bằng giữa học tập, công việc và giải trí là nhu cầu vô cùng thực tế. Combo Ryzen...-
Channel: Đánh giá sản phẩm DTVN
hôm nay, 10:28 -
-
Trả lời cho Tìm bạn thân quen cũ.bởi mèomướpDạ cháu đọc 1 số bài viết của bác vi... thì nhớ đc bác là 1 cụ già gần 80 tuổi, sức khỏe yếu. Đam mê và làm vc về kỹ thuật điện. Thích thơ ca. Có nhìu bài chia sẻ quý báu cho thế hệ sau. Tuy nhiên già rồi nên khái tính, bảo thủ, nhưng vẫn đáng kính ạ... còn lão nhathung... thì kiểu bố đời
-
Channel: Tâm tình dân kỹ thuật
31-07-2026, 12:52 -
-
bởi lvhnHãng nào tùy thích thôi bác! bây giờ các hãng đều hỗ trợ xem qua máy tính hay điện thoại đều được. Gắn Trước tiên mua về cắm nguồn set ip hết xong hãy lắp lên, cam poe chỉ cần 4 lõi là hoạt động bình thường nên 1 dây kéo cho 2 cam vẫn ok
-
Channel: Tâm tình dân kỹ thuật
30-07-2026, 15:49 -
-
Trả lời cho Tìm bạn thân quen cũ.bởi lvhnNhớ không nhầm thì lúc còn đi học có gặp chú 1 lần cf bãi xe Nguyễn Kim, giờ quán cf đó nghỉ bán rồi
-
Channel: Tâm tình dân kỹ thuật
30-07-2026, 15:44 -
-
Trả lời cho Thắc mắc pin 21v ?bởi lvhnCon số đấy biểu thị gần đúng thôi, cái đồng hồ đó có đảm bảo chính xác hay không? pin có cục lên 4v4 vẫn bình thường. Cái gì cũng có sai số trong phạm vi không quá lớn thì không ảnh hưởng gì đâu, bàn ngay ngón ngắn ngón dài mà
-
Channel: Điện tử dành cho người mới bắt đầu
30-07-2026, 15:32 -
-
Trả lời cho Amply bị rò DC 22 voltbởi lvhnThay mấy con transisto nhỏ đầu vào, thường vi sai lỗi hay bị. Khám tổng quát chân các linh kiện xem có bị rỉ sét nhiều không?
-
Channel: Điện thanh
30-07-2026, 15:24 -
-
bởi dinhthuong92Mạch này hiệu suất ra led đạt khoảng 90.7% tại 12V in, 40W out.
-
Channel: Nguồn!
27-07-2026, 10:15 -
-
bởi dinhthuong92Có lẽ nguồn viết bài này chỉ mang tính định tính để nói rằng cần thay đổi tổng trở tải để có Pmax chứ trình bày chưa chi tiết và thấu đáo một cách định lượng. Công thức tổng quát phải có mặt L mới được, và nói là "tổng...
-
Channel: Nguồn!
27-07-2026, 10:09 -

Comment