LỚP DD07KSTN

LỚP DD07KSTN


 
Trang ChínhCalendarTrợ giúpTìm kiếmThành viênNhómĐăng kýĐăng Nhập
October 2018
MonTueWedThuFriSatSun
1234567
891011121314
15161718192021
22232425262728
293031    
CalendarCalendar
Latest topics
Keywords

Share | 
 

 BÀI TẬP VI XỬ LÝ CHƯƠNG 3

Go down 
Chuyển đến trang : 1, 2  Next
Tác giảThông điệp
blue
giám đốc điều hành
giám đốc điều hành
avatar

Tổng số bài gửi : 96
Join date : 28/12/2009
Age : 29
Đến từ : ninh thuận

Bài gửiTiêu đề: BÀI TẬP VI XỬ LÝ CHƯƠNG 3   Thu May 27, 2010 7:06 pm

mời các bạn post bài tập giải lên đây cho anh em tham khảo nhằm ôn thi học kỳ luôn.mình vì mọi người,mọi người vì mình
Về Đầu Trang Go down
Xem lý lịch thành viên
blue
giám đốc điều hành
giám đốc điều hành
avatar

Tổng số bài gửi : 96
Join date : 28/12/2009
Age : 29
Đến từ : ninh thuận

Bài gửiTiêu đề: bài 4.6 +4.7   Thu May 27, 2010 7:17 pm


Bài 4.6

OUTSTR: MOV SCON,#02H //02H=0000 0010 B SET TI=1
LOOP: MOVX A,@DTPR
JNB TI,$
CLR TI
MOV SBUF,A
INC DPTR
CJNE A,#00H,LOOP
RET

Bài 4.7
INLINE: MOV R0,#50H
MOV SCON,#11H //11H=0001 0001 B SET RI=1 VA CHO PHEP DOC TU CONG NOI TIEP
LOOP: JNB RI,$
CLR RI
MOV A,SBUF
MOV @R0,A
INC R0
CJNE A,#0DH,LOOP //ma ascii cua CR la 0Dh theo nhu thay noi
MOV @R0,#00H
RET


THẦY ĐÃ SỬA!


Được sửa bởi blue ngày Mon Jun 07, 2010 1:01 pm; sửa lần 3.
Về Đầu Trang Go down
Xem lý lịch thành viên
Lee
phó tổng giám đốc
phó tổng giám đốc
avatar

Tổng số bài gửi : 106
Join date : 29/12/2009
Age : 29
Đến từ : Tây Ninh

Bài gửiTiêu đề: Re: BÀI TẬP VI XỬ LÝ CHƯƠNG 3   Thu May 27, 2010 10:29 pm

Trích dẫn :
Bài 3.10
A.Dùng Timer:

MOTGIAY: MOV TMOD,#01H ; TIMER 0 CHẾ ĐỘ 1 16 BIT
MOV R6, #20 ; 20 x 50000 = 1 000 000 us =1 s
LOOP: MOV TH0, #HIGH (-50 000)
MOV TLO, #LOW (-50 000)
SETB TR0 ; BẬT TIMER 0
WAIT: JNB TF0, WAIT ;CHỜ BÁO TRÀN
CLR TF0 ;XÓA CỜ TRÀN
CLR TR0 ;TẮT TIMER0
DJNZ R6, LOOP ;
RET
B. Không dùng Timer:

MOTGIAY: MOV R5, #40
LOOP2: MOV R6, #50
LOOP1: MOV R7, #250
DJNZ R7, $
DJNZ R6, LOOP1
DJNZ R5, LOOP2
RET; THỜI GIAN DELAY= [ (250x2 +2) x 50 +2 ]x40=1004080us
C. TẠO SÓNG VUÔNG LIÊN TỤC:

#INCLUDE 89C51.MC
ORG 0000H
;**********************************************************************
MOV R7, #16
MOV R6, #11
MOV R5, #6
MOV A, 0FFH
MOV P1,A
LOOP: CALL MOTGIAY
DJNZ R5, SKIP1 ; CỨ SAU 5s THÌ ĐỔI TRẠNG THÁI P1.0
MOV R5, #6
CPL P1.0
SKIP1: DJNZ R6, SKIP2 ; CỨ SAU 10s THÌ ĐỔI TRẠNG THÁI P1.1
MOV R6, #11
CPL P1.1
SKIP2: DJNZ R7, LOOP ; CỨ SAU 15s THÌ ĐỔI TRẠNG THÁI P1.2
MOV R7, #16
CPL P1.2
SJMP LOOP
END
;**********************************************************************


Được sửa bởi Lee ngày Wed Jun 09, 2010 10:42 am; sửa lần 2.
Về Đầu Trang Go down
Xem lý lịch thành viên
pumhunglevu
trưởng phòng
trưởng phòng
avatar

Tổng số bài gửi : 32
Join date : 03/01/2010
Age : 29
Đến từ : Nha trang

Bài gửiTiêu đề: Re: BÀI TẬP VI XỬ LÝ CHƯƠNG 3   Fri May 28, 2010 3:05 pm

Tác giả: Tít
Giáo viên hướng dẫn: Hồ Trung Mỹ

Bài 4.5: a)
SETB TI
MOV SCON,#02H
MOV R7,#5
MOV R6,#0
MOV DPTR,#TABLE
LOOP: JNB TI,LOOP
CLR TI
MOV A,R6
MOVC A,@A DPTR
MOV SBUF,A
INR R6
DJNZ R7,LOOP
TABLE: DB 50H,5FH,34H,1CH,1BH
b)
SETB TI
MOV SCON,#02H
MOV R7,4
LAP: JNB TI,LAP
CLR TI
MOV SBUF,#11H
DJNZ R7,LAP
MOV SBUF

BAI 4.4

a)Chương trình xuất mã AScii của kí tự B ra cổng nối tiếp
b) 1 chu kì máy: Tm = 12/11.0592Mhz = 1.085 us
Thời gian timer tràn: 3x Tm= 3.26 us
Tần số được sử dụng bởi timer 1: f= 1/ 3.26= 307Khz
c)Vì bit 7 của thanh ghi pcon được set lên 1 nên tốc độ baud được nhân 2 lần khi suy từ tốc độ tràn timer
Tốc độ baud: f=(1/32)x 307x2=19.2 Khz
( Bạn có thể tra đáp số ở bảng 3.23 trang 214)
Về Đầu Trang Go down
Xem lý lịch thành viên
friendlovely0404
trưởng phòng
trưởng phòng
avatar

Tổng số bài gửi : 42
Join date : 01/01/2010
Age : 29

Bài gửiTiêu đề: bai 3.15   Fri May 28, 2010 4:02 pm

org 0000h
MOV TMOD,#06H;đặt cấu hình nhận xung clock từ T0
MOV TL0,#-60;đếm 60 lần thì tràn
MOV TH0,#-60
SETB TR0 ;chạy timer
LOOP: JNB TF0,$ ;đợi tràn
CLR TF0 ;xóa cờ báo tràn
ACALL SAVE
JMP LOOP
SAVE: MOV R0,#52H ;xét biến giây
INC @R0
CLR C ;xóa cờ c vì lệnh subb có ảnh hưởng bởi cờ
MOV A,#60
SUBB A,@R0 ;kiểm tra biến giây có =60 không
JNZ EXIT ;biến giây không =60 thì thoát
MOV @R0,#0H
MOV R0,#51H;xét biến phút
INC @R0
CLR C
MOV A,#60
SUBB A,@R0
JNZ EXIT
MOV @R0,#0H
MOV R0,#50H ;xét biến giờ
INC @R0
CLR C
MOV A,#24
SUBB A,@R0;kiểm tra với 24
JNZ EXIT
MOV @R0,#0
EXIT: RET
P/S:
Thầy đã sửa.Thầy Mỹ nói có thể dùng ngắt.anh em nghiên cứu thêm.
Về Đầu Trang Go down
Xem lý lịch thành viên
muilevan
trưởng phòng
trưởng phòng


Tổng số bài gửi : 39
Join date : 29/12/2009
Age : 29
Đến từ : Quảng Ngãi

Bài gửiTiêu đề: Re: BÀI TẬP VI XỬ LÝ CHƯƠNG 3   Fri May 28, 2010 5:09 pm

Bài 2.72:

;CHUONG TRINH CON KIEM TRA SO BIT 1,0 CUA SO TRONG THANH GHI A
;R0:SO BIT 0
;R1:SO BIT 1
;A K THAY DOI
ORG 8000H ;CHUONG TRINH CON
TEST_BIT: MOV R0,#00H
MOV R1,#00H
MOV R2,#8 ;SO LAN XOAY
CLR C ;XOA CHO AN TOAN
PUSH ACC
LOOP: RLC A
JC BIT_1
INC R0 ;DEM SO BIT 0
JMP EXIT
BIT_1: INC R1 ;DEM SO BIT 1
EXIT: DJNZ R2,LOOP
POP ACC
RET



Bài 2.74
STACK: (08H)=55H,(09H)=CCH,(0A)=ADH
THANHGHI: R2= ADH,R1=CCH,R5=55H
SAU KHI THUC HIEN XONG (SP)=07H

THẦY ĐÃ SỬA
Về Đầu Trang Go down
Xem lý lịch thành viên
pumhunglevu
trưởng phòng
trưởng phòng
avatar

Tổng số bài gửi : 32
Join date : 03/01/2010
Age : 29
Đến từ : Nha trang

Bài gửiTiêu đề: Re: BÀI TẬP VI XỬ LÝ CHƯƠNG 3   Fri May 28, 2010 8:46 pm

Có đính chính 1 tí ở bài 4.4
Tốc độ baud f=(1/32)x307000x2=19200
Về Đầu Trang Go down
Xem lý lịch thành viên
muilevan
trưởng phòng
trưởng phòng


Tổng số bài gửi : 39
Join date : 29/12/2009
Age : 29
Đến từ : Quảng Ngãi

Bài gửiTiêu đề: Re: BÀI TẬP VI XỬ LÝ CHƯƠNG 3   Fri May 28, 2010 8:49 pm

blue xem lại giùm bài 4.7 với.hình như mình thấy CNJE chưa đúng thì phải!
thanks!
Về Đầu Trang Go down
Xem lý lịch thành viên
muilevan
trưởng phòng
trưởng phòng


Tổng số bài gửi : 39
Join date : 29/12/2009
Age : 29
Đến từ : Quảng Ngãi

Bài gửiTiêu đề: Re: BÀI TẬP VI XỬ LÝ CHƯƠNG 3   Fri May 28, 2010 9:43 pm

LEE giải thích giúp mình tại sao lại nhập R5=6;R6=16;R7=11 mà sao k phải là 5,15,10?mình chưa hiểu lắm! Mad Mad
thanks!


Được sửa bởi deking ngày Fri May 28, 2010 10:08 pm; sửa lần 1.
Về Đầu Trang Go down
Xem lý lịch thành viên
muilevan
trưởng phòng
trưởng phòng


Tổng số bài gửi : 39
Join date : 29/12/2009
Age : 29
Đến từ : Quảng Ngãi

Bài gửiTiêu đề: Re: BÀI TẬP VI XỬ LÝ CHƯƠNG 3   Fri May 28, 2010 10:06 pm

Hungtit viết code ẩu quá!
góp ý: SETB TI và MOV SCON,#02H giống nhau! Very Happy Very Happy
Về Đầu Trang Go down
Xem lý lịch thành viên
muilevan
trưởng phòng
trưởng phòng


Tổng số bài gửi : 39
Join date : 29/12/2009
Age : 29
Đến từ : Quảng Ngãi

Bài gửiTiêu đề: Re: BÀI TẬP VI XỬ LÝ CHƯƠNG 3   Fri May 28, 2010 10:28 pm

friendlovely0404 đã viết:
org 0000h
MOV TMOD,#06H;đặt cấu hình nhận xung clock từ T0
MOV TL0,#-60;đếm 60 lần thì tràn
MOV TH0,#-60
SETB TR0 ;chạy timer
LOOP: JNB TF0,$ ;đợi tràn
CLR TF0 ;xóa cờ báo tràn
ACALL SAVE
JMP LOOP
SAVE: MOV R0,#52H ;xét biến giây
INC @R0
CLR C ;xóa cờ c vì lệnh subb có ảnh hưởng bởi cờ
MOV A,#60
SUBB A,@R0 ;kiểm tra biến giây có =60 không
JNZ EXIT ;biến giây không =60 thì thoát
MOV @R0,#0H
MOV R0,#51H;xét biến phút
INC @R0
CLR C
MOV A,#60
SUBB A,@R0
JNZ EXIT
MOV @R0,#0H
MOV R0,#50H ;xét biến giờ
INC @R0
CLR C
MOV A,#24
SUBB A,@R0;kiểm tra với 24
JNZ EXIT
MOV @R0,#0
EXIT: RET
P/S:
Thầy đã sửa.Thầy Mỹ nói có thể dùng ngắt.anh em nghiên cứu thêm.

bạn có thể dùng CJNE thay vì CLR C,SUBB ,JNZ!!

Anh em tham khảo mình dùng ngắt:


;BAI 3.15 DEM TOI GIAN DUNG NGAT COUNTER 0 VA MOD2
ORG 0000H
JMP MAIN
ORG 000BH
JMP T0ISR
MAIN: MOV TMOD,#00000110B;COUNTER O,MOD 2
MOV TH0,#-60 ;DEM 60 LAN THI TRAN
MOV TL0,#-60
MOV IE,#10000010B ;CHO PHEP NGAT TIMER 0
SETB TR0;CHO TIMER 0 CHAY
JMP $; DOI TRAN
T0ISR: GIO EQU 50H;QUAN LY GIO
PHUT EQU 51H;QUAN LY PHUT
GIAY EQU 52H;
PUSH ACC;CAT ACC CHO AN TOAN
INC GIAY ;CAP NHAT GIAY
MOV A,GIAY
CJNE A,#60,EXIT;CHUA 60S QUAY VE
MOV GIAY,#00H
INC PHUT;CAP NHAT PHUT
MOV A,PHUT
CJNE A,#60,EXIT;CHUA DEN 60 PHUT THI QUAY VE
MOV PHUT,#00H
INC GIO ;CAP NHAT GIO
MOV A,GIO
CJNE A,#24,EXIT;DEN 23:59:59 THI VE 0:00:00
MOV GIO,#00H
POP ACC;TRA LAI GIA TRI DAU CHO ACC
EXIT: RETI
END


Được sửa bởi deking ngày Sat May 29, 2010 12:07 am; sửa lần 12.
Về Đầu Trang Go down
Xem lý lịch thành viên
blue
giám đốc điều hành
giám đốc điều hành
avatar

Tổng số bài gửi : 96
Join date : 28/12/2009
Age : 29
Đến từ : ninh thuận

Bài gửiTiêu đề: Re: BÀI TẬP VI XỬ LÝ CHƯƠNG 3   Fri May 28, 2010 11:11 pm

deking đã viết:
blue xem lại giùm bài 4.7 với.hình như mình thấy CNJE chưa đúng thì phải!
thanks!
đã chỉnh rồi.cảm ơn deking đã góp ý
Về Đầu Trang Go down
Xem lý lịch thành viên
hungreohd
trưởng phòng
trưởng phòng
avatar

Tổng số bài gửi : 40
Join date : 30/12/2009
Age : 29
Đến từ : binh thuan

Bài gửiTiêu đề: bai tap vi xu li   Sat May 29, 2010 12:02 am

2.31

MOV P1,0FFH
MOV B,#100
DIV AB
MOV R5,A
MOV A,B
MOV B,#10
DIV AB
MOV R6,A
MOV R7,B
SJMP $

2.32

MOV R7,#05H
MOV R1,#51H
MOV R0,#40H
MOV A,#00H
MOV @R1,#00H
L1: ADD A,@R0
DAA
INC R0
JNC L0
INC @R1
L0: DJNZ R7,L1
MOV 50H,A
SJMP $
Về Đầu Trang Go down
Xem lý lịch thành viên
muilevan
trưởng phòng
trưởng phòng


Tổng số bài gửi : 39
Join date : 29/12/2009
Age : 29
Đến từ : Quảng Ngãi

Bài gửiTiêu đề: Re: BÀI TẬP VI XỬ LÝ CHƯƠNG 3   Sat May 29, 2010 12:17 am

Lệnh SJMP cuối cùng để chi vậy Heo rung!!!! Very Happy Very Happy
Về Đầu Trang Go down
Xem lý lịch thành viên
hungreohd
trưởng phòng
trưởng phòng
avatar

Tổng số bài gửi : 40
Join date : 30/12/2009
Age : 29
Đến từ : binh thuan

Bài gửiTiêu đề: trả lời   Sat May 29, 2010 10:37 am

giống như halt trong Z80 dậy.nhảy tại chổ(không làm gì nữa) như END vậy
Về Đầu Trang Go down
Xem lý lịch thành viên
Lee
phó tổng giám đốc
phó tổng giám đốc
avatar

Tổng số bài gửi : 106
Join date : 29/12/2009
Age : 29
Đến từ : Tây Ninh

Bài gửiTiêu đề: Re: BÀI TẬP VI XỬ LÝ CHƯƠNG 3   Sun May 30, 2010 6:22 am

deking đã viết:
LEE giải thích giúp mình tại sao lại nhập R5=6;R6=16;R7=11 mà sao k phải là 5,15,10?mình chưa hiểu lắm! Mad Mad
thanks!
Àh, về cái này thì bạn xem lại lệnh DJNZ Rr,label. Lệnh này thực hiện giảm giá trị trong thanh ghi Rr trước rồi mới so sánh với 0. Nếu khác 0 thì nhảy đến label, bằng 0 thì nhảy xuống lệnh kế tiếp. Cho R5=6 thì vòng lặp sẽ thực hiện 5 lần, tương tự với R6, R7. Cứ sau 5s, P1.0 đổi trạng thái; sau 10s, P1.1 đổi trạng thái; sau 15s P1.2 đổi trạnh thái.
Vậy thôi.
Về Đầu Trang Go down
Xem lý lịch thành viên
nhphat
phó phòng
phó phòng
avatar

Tổng số bài gửi : 20
Join date : 28/12/2009
Age : 29

Bài gửiTiêu đề: Re: BÀI TẬP VI XỬ LÝ CHƯƠNG 3   Sun May 30, 2010 9:13 pm

Bài 2.57:

MOV R1,55H ; R1=03H
MOV A,R1 ; A=03H
MOV DPTR,#0A000H
MOVC A,@A+DPTR ; A<- (A003H)=05H
MOVC A,@A+DPTR ; A<- (A005H)=07H
MOV R1,A ; R1=07H
MOV 55H,R1 ; (55H)=07H

Bài 2.58:


RTN: MOV R0, #80H ; R0=80H
LOOP1: MOV @R0,#0FFH ; (80H) -> (21H) = FFH
DEC R0
CJNE R0,#20H,LOOP1
MOV R1,#90H ; R1 =90H
LOOP2: MOV @R1,#00H ; (90H) -> (EFH) = 00H
1 1 INC R1
3 2 CJNE R1,#0F0H,LOOP2
RET

tổng số byte = 17 byte
tổng số ckm = 1 + 4x96 +1 +4x96 + 2 = 772
thời gian thực thi chương trình = 772 uS



Về Đầu Trang Go down
Xem lý lịch thành viên
muilevan
trưởng phòng
trưởng phòng


Tổng số bài gửi : 39
Join date : 29/12/2009
Age : 29
Đến từ : Quảng Ngãi

Bài gửiTiêu đề: Re: BÀI TẬP VI XỬ LÝ CHƯƠNG 3   Mon May 31, 2010 10:15 am

Lee đã viết:
deking đã viết:
LEE giải thích giúp mình tại sao lại nhập R5=6;R6=16;R7=11 mà sao k phải là 5,15,10?mình chưa hiểu lắm! Mad Mad
thanks!
Àh, về cái này thì bạn xem lại lệnh DJNZ Rr,label. Lệnh này thực hiện giảm giá trị trong thanh ghi Rr trước rồi mới so sánh với 0. Nếu khác 0 thì nhảy đến label, bằng 0 thì nhảy xuống lệnh kế tiếp. Cho R5=6 thì vòng lặp sẽ thực hiện 5 lần, tương tự với R6, R7. Cứ sau 5s, P1.0 đổi trạng thái; sau 10s, P1.1 đổi trạng thái; sau 15s P1.2 đổi trạnh thái.
Vậy thôi.


mình hiểu ý bạn nói!bạn đã đúng với sóng 10s,15s vì bạn đặt CPL sau DJNZ!còn với sóng 5s thì mình nghĩ R5=5 mới đúng vì bạn để lệnh CPL trước DJNZ R5 nên sau 6 lần thì P1.0 mới đổi trạng thái(hoặc bạn chuyển CPL P1.0 ra sau DJNZ R5)....
Về Đầu Trang Go down
Xem lý lịch thành viên
eros_89_abk
phó phòng
phó phòng


Tổng số bài gửi : 20
Join date : 06/01/2010

Bài gửiTiêu đề: Re: BÀI TẬP VI XỬ LÝ CHƯƠNG 3   Mon May 31, 2010 10:30 am

BAI TAP 2.46

MOV A,#FFH;
MOV P1,A;
LOOP : MOV A ,P1;
CJNE A ,#4A,GHI;
SJMP END;
GHI : MOV P2,A;
SJMP LOOP;
END : SJMP $



BAI TAP 2.54

MOV A ,3FH;
MOV 0F0H,40H;
MUL AB ;---->A=08H/B=01H/CY=0
DIV AB;----->A=08H/B=0/CY=0
Về Đầu Trang Go down
Xem lý lịch thành viên
vinh03
nhân viên
nhân viên
avatar

Tổng số bài gửi : 18
Join date : 28/12/2009

Bài gửiTiêu đề: Re: BÀI TẬP VI XỬ LÝ CHƯƠNG 3   Mon May 31, 2010 7:21 pm

Bài 3.8:

Tạo sóng vuông tần số 12Khz dùng timer0.
Với tần số 12K ta tính được duty cycle =41us
Assembly code:
START EQU 41
ORG 0000H
MOV TMOD,#02H ; dùng timer 0 ở chế độ 2
CLR P1.2 ; set PIN P1.2 là cổng xuất
MOV TH0,#-START ;khởi tạo giá trị đầu cho timer0
MOV TL0,#-START
LOOP: SETB TR0 ;cho timer chạy
JNB TF0,$ ;đợi timer tràn
CLR TR0
CLR TF0
CPL P1.2
SJMP LOOP
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Khônng dùng timer:
ORG 0000H
CLR P1.2
LOOP: MOV R2,#19
DJNZ R2,$
CPL P1.2
SJMP LOOP
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __
Bài 3.9:
Chương trình dùng timer1 để tăng nội dung ô nhớ TIMER lên 1 cứ sau mỗi 20ms
Assembly code:
COUNT EQU 20000
ORG 0000H
MOV TMOD,#10H
LOOP: MOV TH1,#HIGH(-COUNT)
MOV TL1,#LOW(-COUNT)
SETB TR1
JNB TF1,$
CLR TR1
CLR TF1
INC TIMER
SJMP LOOP
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Thầy Mỹ_hồ trung đã sửa->an toàn tuyệt đối:D
Về Đầu Trang Go down
Xem lý lịch thành viên
Nhok_kid
phó giám đốc
phó giám đốc
avatar

Tổng số bài gửi : 66
Join date : 29/12/2009
Age : 29
Đến từ : Hà Tĩnh

Bài gửiTiêu đề: Re: BÀI TẬP VI XỬ LÝ CHƯƠNG 3   Mon Jun 07, 2010 10:58 am

blue đã viết:
deking đã viết:
blue xem lại giùm bài 4.7 với.hình như mình thấy CNJE chưa đúng thì phải!
thanks!
đã chỉnh rồi.cảm ơn deking đã góp ý
koi lại lần nữa đi blue ơi,
hình như CJNE vẫn chưa ổn.
với bài 4.7 yêu cầu đặt luôn cả mã CR vào trong bộ đệm.
thanks
Về Đầu Trang Go down
Xem lý lịch thành viên
Nhok_kid
phó giám đốc
phó giám đốc
avatar

Tổng số bài gửi : 66
Join date : 29/12/2009
Age : 29
Đến từ : Hà Tĩnh

Bài gửiTiêu đề: BÀI 2.49   Mon Jun 07, 2010 11:21 am

BÀI 2.49:
MOV P3,0FH ; set P3.0- P3.3 làm ngõ vào, xóa P3.4-P3.7
MOV DPTR, #MALED
LOOP:
MOV A, P3
MOVC A,@A+DPTR ; đổi mã HEX nhận dc sang dạng mã hiển thị led
MOV P1, A ; xuất led
SJMP LOOP

MALED: DB 3F, 06, 5B, 4F, 66, 6D, 7D, 07, 7F, 6F, 77, 7C, 59, 5F, 79, 71

các bạn koi lại maled dzùm nha. ko dám khẳng định đúng 100% do hôm đó ko có ghi lại.
Về Đầu Trang Go down
Xem lý lịch thành viên
blue
giám đốc điều hành
giám đốc điều hành
avatar

Tổng số bài gửi : 96
Join date : 28/12/2009
Age : 29
Đến từ : ninh thuận

Bài gửiTiêu đề: Re: BÀI TẬP VI XỬ LÝ CHƯƠNG 3   Mon Jun 07, 2010 1:10 pm

Nhok_kid đã viết:
blue đã viết:
deking đã viết:
blue xem lại giùm bài 4.7 với.hình như mình thấy CNJE chưa đúng thì phải!
thanks!
đã chỉnh rồi.cảm ơn deking đã góp ý
koi lại lần nữa đi blue ơi,
hình như CJNE vẫn chưa ổn.
với bài 4.7 yêu cầu đặt luôn cả mã CR vào trong bộ đệm.
thanks
sửa lại rồi.ban đầu mình cũng nghĩ là phải đặt thêm mã CR và 00 vào bộ đệm,cái này thì thêm một lệnh thôi.nhưng mà vì đang nhập nên bộ đệm dóng vai trò chỉ để đọc,ghi vào thấy nó kỳ kỳ.thầy cũng không bắt bẻ.hehe
Về Đầu Trang Go down
Xem lý lịch thành viên
kil89
trưởng phòng
trưởng phòng
avatar

Tổng số bài gửi : 30
Join date : 31/12/2009
Age : 28

Bài gửiTiêu đề: Re: BÀI TẬP VI XỬ LÝ CHƯƠNG 3   Mon Jun 07, 2010 11:17 pm

Bài 5.9


ORG 0000H
LJMP MAIN
ORG 0023H
LJMP ISR_SP

MAIN:
MOVE TMOD,#20H ;TIMER1 MODE2
MOV TL1,#-3
MOV TH1,#-3 ;FBAUD=9600, XTAL 11059
SETB TR1
MOV SCON,#51H ;UART 8 BITS, REN=1, RI=1
MOV IE,#90H ;EA=1, ES=1: SERIAL PORT INTERRUPT ENABLE
LOOP:
MOV P2,P1
SJMP LOOP

ISR_SP:
CLR RI
MOV A,SBUF
MOV P0,A
RETI



Bài 5.10


ORG 0000H
LJMP MAIN
ORG 001BH
LJMP ISR_T1

MAIN:
MOV TMOD,#10H ;TIMER 1, MODE 1
MOV TL1,#LOW(-500)
MOV TH1,#HIGH(-500)
SETB TR1
MOV IE,#88H ;EA=1, ET1=1
SJMP $

ISR_SP:
CLP P1.7
CLR TR1
MOV TL1,#LOW(-500)
MOV TH1,#HIGH(-500)
SETB TR1
RETI


Bài này kil gửi mail nộp bài cho thầy mà ko thấy thầy reply, thôi thì post lên đây, bà kon thấy có gì sai thì sửa nhé


Được sửa bởi kil89 ngày Sat Jun 12, 2010 2:11 pm; sửa lần 1.
Về Đầu Trang Go down
Xem lý lịch thành viên
Nhok_kid
phó giám đốc
phó giám đốc
avatar

Tổng số bài gửi : 66
Join date : 29/12/2009
Age : 29
Đến từ : Hà Tĩnh

Bài gửiTiêu đề: Re: BÀI TẬP VI XỬ LÝ CHƯƠNG 3   Tue Jun 08, 2010 11:11 pm

Góp ý bài %.9 và các bài dùng ngắt PORT nối tiếp.
Mình thấy 1 số bạn có thói quen khi viết ngắt port nối tiếp thường ép ngắt khi set giá trị cho SCON.

điều này chỉ đúng khi mình đang dùng ngắt phát vì mình biết lúc đó bộ phát đang rảnh còn với ngắt nhận VD như mình nhận các dữ liệu đó xếp vào 1 dãy các ô nhớ, nếu ép ngắt và ngắt đó xảy ra khi dữ liệu chưa nạp vào đủ byte thì kết quả dễ thấy là sai.

thân.
Về Đầu Trang Go down
Xem lý lịch thành viên
Sponsored content




Bài gửiTiêu đề: Re: BÀI TẬP VI XỬ LÝ CHƯƠNG 3   

Về Đầu Trang Go down
 
BÀI TẬP VI XỬ LÝ CHƯƠNG 3
Về Đầu Trang 
Trang 1 trong tổng số 2 trangChuyển đến trang : 1, 2  Next

Permissions in this forum:Bạn không có quyền trả lời bài viết
LỚP DD07KSTN :: Tài liệu :: các môn chuyên ngành-
Chuyển đến