hix..!!!củ chuối em viết hơi lộn.mấy cái thanh ghi đó em cũng biết rồi nhưng các bác nói cũng không thừa nhiều cái vỡ ra thật.RẤT CÁM ƠN SỰ NHIỆT TÌNH CỦA CÁC BÁC !!!
Thông báo
Collapse
No announcement yet.
Anh em nào có kinh nghiệm về ngắt trong trao đổi cho mọi người cùng học hỏi?
Collapse
X
-
em xét ngon lành con time mà có cần phải xét tmod đâu bác.em nghĩ tmod chỉ khai báo khi sủ dụng xet các chế độ time thôi các bác à.
em có một chương trình thế này các bác xem hộ e với em mô phỏng kelc ngon thế mà khi nạp ra ngoàn nó chạy linh tinh cả em không biết sai chỗ nào nữa;
org 0000h
mov P0,#00h ;LUC DAU CHO CAC CONG =0
mov p1,#00h
MOV P2,#00H
;***************KHAI BAO BIT DAU RA*****************************************
D_CUA BIT P0.0
D_NHA BIT P0.1
D_PHONG_NGU BIT P0.2
D_NGU BIT P0.3
D_BAO_DONG BIT P0.4
D_NHA_WC BIT P0.5
NOI_COM BIT P0.6
D_CAU_THANG BIT P0.7
MO_REM_1 BIT P1.0
DONG_REM_1 BIT P1.1
MO_REM_2 BIT P1.2
DONG_REM_2 BIT P1.3
;********DAU RA CAM BIEN*********************
CB_MO_CUA BIT P2.0
CB_D_NHA BIT P2.1
CB_D_PHONG_NGU BIT P2.2
CB_D_NGU BIT P2.3
CB_CHONG_TROM BIT P2.4
CB_NHA_WC BIT P2.5
CB_DEM_NGAY BIT P2.6
CB_CAU_THANG BIT P2.7
CB_MAT_THU BIT P3.3
;************************************************
main:
XET_CHE_DO_TU_DONG:
;************CHUONG TRINH SANG DEN***************************
JNB CB_DEM_NGAY,CT_BAN_DEM
JB CB_DEM_NGAY,CT_BAN_NGAY
CT_BAN_NGAY:
MOV P0,#00H ;TAT TAT CA CAC DEN
CLR DONG_REM_1 ;KHOA LIEN DONG CHONG QUAY NGUOC
CALL DELAY ;TRE MOT LUC DE DAM BAO DA KHOA CHIEU NGUOC
SETB MO_REM_1 ;MO REM
CALL DELAY ;TIME MO REM
JMP XET_CHE_DO_TU_DONG
CT_BAN_DEM: ;KIEM TRA TAT CA CAC CAM BIEN DE XET CAC DEN
SETB D_CUA ;DEN CUA TU SANG
DEN_NHA:
DJNZ R4,KT6
CALL DELAY1
MOV R0,#7
LAP4: ;BAT
CLR D_CAU_THANG
CALL DELAY2
SETB D_CAU_THANG
CALL DELAY2
DJNZ R0,LAP3
call delay2
KT6: JnB CB_D_NHA,DEN_PHONG_NGU ;TIM TIN HIEU CB_D_NHA
setb D_NHA
MOV R1,#2
jmp KT1
DEN_PHONG_NGU:
DJNZ R1,KT1 ;NEU R0=0 THI TRE MOT 1S 1S+4LAN LAP ~ 5S. NEU RO #0 THI NHAY TOI XET CAM BIEN # LUON MA KHONG DEM NUA
;INC R0
CALL DELAY1
CLR D_NHA
KT1: JnB CB_D_PHONG_NGU,DEN_NGU
SETB D_PHONG_NGU
MOV R2,#1
jmp KT2
DEN_NGU:
DJNZ R2,KT2
CALL DELAY1
CLR D_PHONG_NGU
KT2: JnB CB_D_NGU,DEN_BAO_DONG
SETB D_NGU
MOV R3,#2
JMP KT3
DEN_BAO_DONG:
DJNZ R3,KT3
CALL DELAY1
CLR D_NGU
KT3: JnB CB_CHONG_TROM,DEN_NHA_WC
SETB D_BAO_DONG
MOV R4,#2
jmp KT4
DEN_NHA_WC:
DJNZ R4,KT4
CALL DELAY1
CLR D_BAO_DONG
KT4: JnB CB_NHA_WC,DEN_CAU_THANG
SETB D_NHA_WC
MOV R5,#2
JMP KT5
DEN_CAU_THANG:
DJNZ R5,KT5
MOV R0,#7
CALL DELAY1
CLR D_NHA_WC
KT5: JNB CB_CAU_THANG,D1
LAP3:
MOV R4,#2 ;BAT
CLR D_CAU_THANG
CALL DELAY2
SETB D_CAU_THANG
CALL DELAY2
DJNZ R0,LAP3
call delay2
D1: JMP MAIN
delay2:
GEC:
MOV 20H,#03H
DEL3:
MOV 21H,#25H
DEL2:
MOV 22H,#0FFH
DEL1:
JNB P3.3,GEC ;tao khoang do bit cao
DJNZ 22H,DEL1
DJNZ 21H,DEL2
DJNZ 20H,DEL3
RET
delay:
mov r0,#165
k6: nop
nop
nop
djnz r0,k6
ret
delay1:
MOV R1,#5
MOV R2,#0
MOV R3,#0
LOOO:
DJNZ R3,LOOO
DJNZ R2,LOOO
DJNZ R1,LOOO
RET
longdelay:
mov r1,#70
k7: mov r2,#255
k8: djnz r2,k8
djnz r1,k7
ret
end
chương trình của em là nếu cảm biến phòng này xét thì nó sẽ setb den của phòng này nếu cảm biến phòng này không xét nữa thì nó sẽ clr đèn phòng này trong mấy giây.trong thời gian trễ đó nó sẽ đi làm việc khác là xét các cảm biến khác. ý tưởng của em là cho nó thực hiện vòng lặp và đếm số vòng lặp đó để xét trạng thái các đèn(tắt đèn) như vậy thì trong quá trình xét các vòng lặp đó nó vẫn đi xét được các cảm biến # và thay đổi trạng thái các đền khác.em tét trực tiếp trên kelc ngon rồi (tét theo kiểu kiểm tra từng lệnh thực hiện )thế mà nạp chương trình ra ngoài nó chạy lại không đúng cụ thể là có mỗi DEN_NHA_WC và DEN_BAO_DONG: hoạt động đúng thôi mà em chịu không biết tại sao các cảm biến khác có xét dèn sáng lên rồi nhung không tắt đươc các bác ạ.các bác xem gỡ rối hộ e phát, hay các bác có ý tưởng nào khác về xét trễ một đèn mà trong thời gian trễ đó mình có thể đi làm việc khác không gần như là cho phép vi diều khiển làm 2 việc cùng một lúc đấy.bam đầu em định dùng trễ time nhưng không biết làm thế nào.các bác nào có ý tưởng hay nào giúp em cùng mọi người cùng biết nhé,em nghĩ vấn đề này là rất cần thiết và được nhiều người quan tâm đấy.vì trên thực tế vi điều khiển chỉ thực hiện dc một viêc trong cùng một time nhất định thôi...Last edited by toan258; 17-10-2011, 19:16.đùa chứ tớ hơi ngu...thông cảm nha..heee...
Comment
-
các bác cho em hỏi chút nữa là trước khi xảy ra ngắt thì stack se dc lưu địa chỉ hiện tại và nạp dịa chỉ vecto ngắt vào để khi thực hiện xong ngắt nó có thể trở về đoạn chương trình mà nó đang thực hiện dở trước đó để thực hiện tiếp. nhưng bây giờ em không muốn nó trở về đoạn chương trình đó nữa mà sẽ nhảy đến một địa chỉ đặt nào đó thì phải làm thế nào.mong các bác giúp đỡ..!!!đùa chứ tớ hơi ngu...thông cảm nha..heee...
Comment
Bài viết mới nhất
Collapse
-
Trả lời cho Thắc mắc về hạ áp cho adapter laptopbởi nhathung1101
-
Channel: Điện tử dành cho người mới bắt đầu
31-12-2024, 17:39 -
-
Comment on Thắc mắc về hạ áp cho adapter laptopbởi nguyendinhvan
-
Channel: Điện tử dành cho người mới bắt đầu
29-12-2024, 23:20 -
-
Trả lời cho Thắc mắc về hạ áp cho adapter laptopbởi nguyendinhvanPhải làm đúng quy chình thì mới được
Bươc 1 lấy cái nguồn điều chỉnh, set về đúng 12v, cấp cho đường out 19v như hình. Chú ý là phần đầu vào adaptor không cấp điện.
Bước 2 . Kiểm tra điện áp tại chân số 3 das001 có đúng...-
Channel: Điện tử dành cho người mới bắt đầu
29-12-2024, 23:20 -
-
Trả lời cho Thắc mắc về hạ áp cho adapter laptopbởi LamVoNhấp nháy có thể do chu kỳ hoạt động bị rút ngắn quá dẫn đến không đủ nguồn nuôi ic, bác thử tăng giá trị tụ nguồn phụ nuôi ic và giảm giá trị điện trở hạn dòng cho nó xem có cải thiện không....
-
Channel: Điện tử dành cho người mới bắt đầu
29-12-2024, 08:45 -
-
Trả lời cho Mạch tự động bật nguồnbởi nhathung1101Bác đúng là hệ Pháp, nên toàn quên chữ "d".
Nếu em được như bác, đúng 0h mới được stand by với hũ rượu và vợ thì tuyệt.
Nhưng đời không như là mơ, em và lão Đinh Vặn ngấm đủ mà.
Lão Đinh Vặn...-
Channel: Điện tử gia dụng
29-12-2024, 00:17 -
-
Trả lời cho Thắc mắc về hạ áp cho adapter laptopbởi nhathung1101Vì bản chất của nó hoạt động theo dòng. Áp chỉ để mức giới hạn.
Cứ hiểu như bạn khôn hơn 10 người, nhưng khả năng thu nhận kiến thức chỉ bằng 1/10 người khác, thì nó sẽ tự điều chỉnh thôi.-
Channel: Điện tử dành cho người mới bắt đầu
28-12-2024, 23:41 -
-
Trả lời cho Mạch tự động bật nguồnbởi nhathung1101Ựa... có lý...
Dưng mà lão chỉ dùng 1 con opto là nguy hiểm lắm.
Có khi nó on lúc lão với ấy ấy về nhà lúc vắng vợ thì khổ. Nên phải thêm cái mạch logic nữa mới được....-
Channel: Điện tử gia dụng
28-12-2024, 23:20 -
-
Trả lời cho Thắc mắc về hạ áp cho adapter laptopbởi lct1610Bác có cách nào khác ngoài quấnlại/rút bớt vòng dây BA (và mua mới ) k nhỉ ? Tại gỡ ra cũng khá lằng nhằng và kì công...
-
Channel: Điện tử dành cho người mới bắt đầu
28-12-2024, 19:30 -
-
Trả lời cho Thắc mắc về hạ áp cho adapter laptopbởi mèomướpDạ với mức áp chênh lệch quá nhìu thì ngoài chỉnh hồi tiếp thì chú cần quấn lại thứ cấp biến áp nữa ạ. Tùy loại mà có thể sẽ khéo léo rút bớt vòng dây đỡ phải tách lõi ferit ạ...
-
Channel: Điện tử dành cho người mới bắt đầu
28-12-2024, 18:57 -
-
bởi lct1610E có adapter laptop cũ hiệu asus chạy tốt ,có đầu ra ổn định ở 19,4v dòng 3,42A ( công suất 60w). E định là hạ nó xuống 12v để cấp nguồn cho đầu camera. Và e đã thử bằng cách can thiệp vào phần hồi tiếp (sử dụng ic DAS001 hay TSM103W) thông...
-
Channel: Điện tử dành cho người mới bắt đầu
28-12-2024, 18:44 -
Comment