Kết quả 1 đến 3 của 3
-
12-02-2011, 07:58 #1
mọi người ơi cho em hỏi chương trình này đúng kô vậy
;chuong trinh dem tu 0000 dem 9999
;nguoi viet chuong trinh DO VAN DUC DT3K6 DHCNHN
;ngay 1/1/2007
#include <sfr51.inc>
#define dkled1 p3.1
#define dkled2 p3.0
#define dkled3 p1.4
#define dkled4 p1.3
dem equ 30h
leddv equ 31h
ledch equ 32h
ledtr equ 33h
ledhn equ 34h
org 00h
ljmp main
org 0bh
ljmp timer0isr
org 03h
ljmp ngatngoai0
org 40h
main:
mov th0,#high(15535)
mov tl0,#low(15535)
mov sp,#5fh
mov tmod,#01h
setb it0
setb ex0
setb ea
mov dem,#0
mov leddv,#9
mov ledch,#9
mov ledtr,#9
mov ledhn,#9
mov dptr,#table
loop:
mov a,leddv
movc a,@a+dptr
mov p0,a
clr dkled1
lcall delay1ms
setb dkled1
mov a,ledch
movc a,@a+dptr
mov p0,a
clr dkled2
lcall delay1ms
setb dkled2
mov a,ledtr
movc a,@a+dptr
mov p0,a
clr dkled3
lcall delay1ms
setb dkled3
mov a,ledhn
movc a,@a+dptr
mov p0,a
clr dkled4
lcall delay1ms
setb dkled4
sjmp loop
delay1ms:
mov r3,#100
loop1:
nop
nop
nop
nop
nop
nop
nop
nop
djnz r3,loop1
ret
timer0isr:
mov th0,#high(15535)
mov tl0,#low(15535)
inc dem
mov a,dem
cjne a,#5,thoat
mov dem,#0
lcall capnhat
thoat:
reti
ngatngoai0:
setb et0;
setb tr0;
reti
capnhat:
dec leddv
mov a,leddv
cjne a,#0,thoat1
mov leddv,#9
dec ledch
mov a,ledch
cjne a,#0,thoat1
mov ledch,#9
dec ledtr
mov a,ledtr
cjne a,#0,thoat1
mov ledtr,#9
dec ledhn
mov a,ledhn
cjne a,#0,thoat1
mov ledhn,#9
thoat1:
ret
table:
db 0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h
end
em chưa hiểu cái này cứ lunh tunh vậy lập trình cả c lẫn ams vậy
cho em hỏi khi bien dịch chương trình này ta dung phần mền nào vậy-------------------------------------------------------------------------------- Xem bài viết cùng chuyên mục:
- Các đề tài VDK 8051
- Tập Lệnh 8051
- viết chương trình hiển thị ra led 7 đoạn từ 0-9.viết cụ thể nha.thank nhiu !
- 89c51 ai biết hướng dẫn dùm
- Tạo mạch chữ chạy
- Mạch đo nhiệt độ dùng 8051 hiển thị lên led 7 đoạn
- Đo tốc độ động cơ bằng encoder
- mạch chỉnh lưu có điều khiển dùng scr
- thiết kế mạch điều khiển nhiệt độ lò ấp trứng
- mạch đồng hồ thới gian thực 8051
- Mạch đếm 74LS192
- chế tạo mạch điểu khiển từ xa
- Cách viết chương trình cho ic chạy chử
- mong được giúp đỡ về led 7 đoạn
- Mạch Đèn Giao Thông Ngã 4 dùng 89c52
-
-
13-02-2011, 17:20 #2
Ðề: mọi người ơi cho em hỏi chương trình này đúng kô vậy
cậu đã học về vi điều khiển chưa vậy, nếu học rồi mà hỏi câu này là hơi bị lạ đấy !, nếu chưa thì nên tìm hiều đã rùi hãy đặt câu hỏi nha!
Mình cũng trả lời luôn, code này viết bằng AMS, không có C trong này, sử dụng phần mềm biên dịch nào cũng được, như Topview hay MSC-IDE , KeilC...
-
15-02-2011, 22:39 #3
Ðề: mọi người ơi cho em hỏi chương trình này đúng kô vậy
Chào anh
Bài đó anh viết thế nào em không hiểu đựơc
Em có bài mạnh đếm 0000 đến 9999
Anh tham khảo thế nào nhé
Anh vẽ hình như sau
Code đoạn chương trình như sau
Code:;======================================================= ; BAM PHIM TANG, GIAM, RESET VA HIEN THI ;======================================================= ORG 0000H LJMP INIT ORG 0003H ;KHONG CHO CAC NGAT NGOAI LAM VIEC RETI ORG 000BH ; RETI ORG 0013H ; RETI ORG 0023H ; RETI ORG 002BH ;CHO TIME2 LAM VIEC LJMP INT_T2 ;============================= ;KHAI BAO BIEN ;============================= NUM EQU 50H D0 EQU 51H D1 EQU 52H D2 EQU 53H D3 EQU 54H NUM1 EQU 55H TIC EQU 56H SEC EQU 57H ;============================= ;KET THUC KHAI BAO BIEN ;============================= ;************************************************ ; NGAN CACH GIUA CAC CHUONG TRINH ;************************************************ ;============================= ; KHOI TAO CHUONG TRINH ;============================= ORG 100 INIT: CLR EA ;XOA THANH GHI EA MOV SP,#2FH ;KHOI TAO NGAN XEP MOV T2CON,#04H ;DE LAM VIEC CHE DO T2 ;VA AUTO_RLLOAD MOV RCAP2H,#0D8H ;CHU KY LAM VIEC 10mS MOV RCAP2L,#0F0H ;CHU KY LAM VIEC 10mS MOV NUM,#00 MOV NUM1,#00 MOV R7,#0 SETB IE.5 SETB EA HERE: SJMP HERE ;=============================== ; KET THUC CHUONG TRINH ;=============================== ;************************************************ ; NGAN CACH GIUA CAC CHUONG TRINH ;************************************************ ;=============================== ;SUBROUTINE TSEC ; CHUONG TRINH TINH THOI GIAN ;INPUT: NONE ;OUTPUT: NONE ;=============================== TSEC: INC TIC MOV A,TIC CJNE A,#100,KTSEC INC NUM MOV TIC,#0 MOV A,NUM CJNE A,#100,KTSEC INC NUM1 MOV NUM,#0 MOV A,NUM1 CJNE A,#100,KTSEC MOV NUM1,#0 KTSEC: RET ;=============================== ; KET THUC CHUONG TRINH ;=============================== ;************************************************ ; NGAN CACH GIUA CAC CHUONG TRINH ;************************************************ ;=============================== ;SUBROUTINE HEXTOBCD ; HEX TO BCD ;INPUT: NUM ;OUTPUT: D1,D0 ;=============================== HEXTOBCD: MOV A,NUM MOV B,#10 DIV AB MOV D0,B MOV D1,A MOV A,NUM1 MOV B,#10 DIV AB MOV D2,B MOV D3,A RET ;================================= ; KET THUC CHUYEN TRINH CON ;================================= ;************************************************ ; NGAN CACH GIUA CAC CHUONG TRINH ;************************************************ ;================================== ;INT INT_T2 ; CHUONG TRINH HIEN THI SO LAN AN PHIM VA HIEN THI ;INPUT: NONE ;OUTPUT: NONE ;=================================== INT_T2: CLR TF2 ;XOA CO BAO NGAT TRAN TIME2 "TF2" LCALL HEXTOBCD ;GOI CHUONG TRINH "HEXTOBCD" LCALL BCDTO7T ;GOI CHUONG TRINH "BCDTO7T" LCALL DISPLAY LCALL TSEC RETI ;=================================== ; KET THUC CHUONG TRINH ;=================================== ;************************************************ ; NGAN CACH GIUA CAC CHUONG TRINH ;************************************************ ;=================================== ;SUBROUTNI BCDTO7T ;INPUT: NONE ;OUTPUT: NONE ;=================================== BCDTO7T: MOV DPTR,#SEGMENT MOV A,D0 MOVC A,@A+DPTR MOV D0,A MOV A,D1 MOVC A,@A+DPTR MOV D1,A MOV A,D2 MOVC A,@A+DPTR MOV D2,A MOV A,D3 MOVC A,@A+DPTR MOV D3,A RET ;=================================== ; KET THUC CHUONG TRINH ;=================================== ;************************************************ ; NGAN CACH GIUA CAC CHUONG TRINH ;************************************************ ;=================================== ;SUBROUTINE DISPLAY ; HIEN THI LEN LED 7 THANH ;INPUT: ;OUTPUT: ;=================================== DISPLAY: CJNE R7,#0,LED1 MOV P2,#8 MOV P0,D0 SJMP XLR7 LED1: CJNE R7,#1,LED2 MOV P2,#4 MOV P0,D1 SJMP XLR7 LED2: CJNE R7,#2,LED3 MOV P2,#2 MOV P0,D2 SJMP XLR7 LED3: CJNE R7,#3,KT MOV P2,#1 MOV P0,D3 SJMP XLR7 XLR7: INC R7 CJNE R7,#4,KT MOV R7,#00H KT: RET ;=================================== ; KET THUC CHUONG TRINH ;=================================== ;************************************************ ; NGAN CACH GIUA CAC CHUONG TRINH ;************************************************ ;=================================== ; MA 7 THANH ;=================================== SEGMENT: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H ;SO THAP PHAN 0 1 2 3 4 5 6 7 8 9 ;==================================== ; KET THUC CHUONG TRINH ;====================================
Chú ý: Em dùng Proteus 6.9 anh dùng các phiên bản lớn hơn mới mở được or anh vẽ hình như hình vẽ trên
[FLASH]http://fc03.deviantart.net/fs10/f/2006/127/5/e/Dragon.swf[/FLASH]