Kỹ thuật vi điều khiển-p7 potx

15 372 0
Kỹ thuật vi điều khiển-p7 potx

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Xung & Hoi1 1.Giớithiệu 2.Sơđồ khốivàchân 3.Tổchứcbộnhớ 4.Cácthanhghichứcnăng đặcbiệt(SFR) 5.Dao độngvàhoạt độngreset 6.Tậplệnh 7. 7. C C á á c c mode mode đ đ ị ị nh nh đ đ ị ị a a ch ch ỉ ỉ (addressing modes) (addressing modes) 8.LậptrìnhIO 9.Tạotrễ 10.LậptrìnhTimer/Counter 11.Lậptrìnhgiaotiếpnốitiếp 12.Lậptrìnhngắt 13.Lậptrìnhhợpngữ Xung & Hoi2 •Dữliệuchứa ởđâukhithựcthi1 lệnh? à Nhiềulờigiải tương ứngcáckiểu định địachỉ khácnhau •Cáckiểu định địachỉ chophépxác địnhnguồnvà đíchcủa dữliệutheonhiềucáchkhácnhautùytìnhhuốnglậptrình. 1.Tứcthời 2.Thanhghi 3.Trựctiếp 4.Giántiếp 5.Chỉ số Xung & Hoi3 7-1. Định địachỉ tứcthời MOVA,#65H MOVR6,#65H MOVDPTR,#2343H MOVP1,#65H VD : NumEQU30 … MOVR0, #Num MOVDPTR, #data1 … ORG100H data1:db“BACHKHOA” Xung & Hoi4 7-2. Định địachỉ thanhghi MOVRn, A;n=0, ,7 ADDA, Rn MOVDPL, R6 MOVDPTR, A MOVRm, Rn Xung & Hoi5 7-3. Định địachỉ trựctiếp * •Dùngtruyxuấtcácbiếnnhớ hoặccácthanhghitrênchip •Mặcdầucóthể truycậpcả128 bytes RAM nộisửdụngkiểu định địachỉ trựctiếp, song thôngthườngtachỉ dùngchovùngRAM nội đamụcđích(có địachỉ từ 30 –7FH) MOVR0, 40H MOV56H, A MOVA, 4; ≡ MOV A, R4 MOV6, 2; copy R2 to R6; MOV R6,R2 ! Thanhghichứcnăng đặcbiệt& địachỉ: MOV0E0H, #66H; ≡ MOV A,#66H MOV0F0H, R2; ≡ MOV B, R2 MOV80H,A; ≡ MOV P1,A Xung & Hoi6 •Làmthế nàonhậnbiết1 biếnkhi địachỉ biến đã đượcxác định, tínhtoánhoặcsửađổitrongkhi1 chươngtrình đang chạy? •Khiquảnlýcácvịtrínhớ liêntiếp. Các điểmnhập được định chỉ số trongcácbảngchứatrongRAM (cácdãysốhay các chuỗikýtự) àGiảipháplàkiểu định địachỉ giántiếp •Khinày, thanhghi đượcsửdụngnhư 1 con trỏ (pointer) đến dữ liệu •MOVA,@Ri ; copy dữ liệutrỏ bởiRivàoA (i=0 hay 1) •MOV@R1,B •Nóicáchkhác, nộidung củacácthanhghiR0 hay R1 cóthể là nguồnhoặc đíchtrongcáclệnhMOV, ADD & SUBB 7-4. Định địachỉ giántiếp Xung & Hoi7 AViếtchươngtrìnhcopy 10 bytes từ vùngRAM có địachỉ bắt đầu là37H tớivùngRAM có địachỉ bắt đầulà59H Giải đáp: MOV R0,#37h; Con trỏ nguồn MOV R1,#59h; Con trỏđích MOV R2,#10; Bộđếm L1: MOV A,@R0 MOV @R1,A INC R0 INC R1 DJNZ R2,L1 Bàitoán7.1. Copy bytes trongRAM nội Xung & Hoi8 AViếtchươngtrìnhxóaRAM nộitừ60H à 7FH Trả lời: MOVR0,#60H LOOP:MOV@R0,#0 INCR0 CJNER0,#80H,LOOP Bàitoán7.2. XóaRAM nội Xung & Hoi9 7-5. Định địachỉ chỉ số & truycậpROM nội • Đượcsửdụngkhitruycậpcácthànhphầndữliệucủabảng nhảy hoặc bảngtìmkiếm MOVCA, @A+DPTR A = nộidung tại địachỉ A+DPTR trongROM Chúý: •Cácthànhphầndữliệu đượclưutrongkhônggianbộnhớ chươngtrìnhROM của8051, nênsửdụngMOVC thayvì MOV. “C”: code. PC (or DPTR) A PC (or DPTR) + = Thanhghinền Offset Địachỉ tác động Xung & Hoi10 Bàitoán7.3. Copy bytes ROM à RAM • VD: Giả sử khônggianbộnhớ ROM bắt đầutạiđịa chỉ 250H chứa“ROBOCON”, viếtchươngtrình truyềncácbytes trênvàovùngnhớ RAM bắt đầutại địachỉ 40H [...]... DPTR,#MYDATA MOV R0,#40H L1: CLR A MOVC A,@A+DPTR JZ L2 MOV @R0,A INC DPTR INC R0 SJMP L1 L2: SJMP L2 ; ORG 250H MYDATA: DB “ROBOCON”,0 END Xung & Hoi 11 Bài toán 7.4 Đọc x & xuất x2 • Vi t chương trình đọc giá trị x từ port 1 và xuất giá trị x2 ra port 2 ? Xung & Hoi 12 Giải đáp: ORG 0 MOV DPTR, #TAB1 MOV A, #0FFH ; chú ý! MOV P1, A L01: MOV A, P1 MOVC A, @A+DPTR MOV P2, A SJMP L01... con được gọi Bảng phải được định nghĩa ngay sau lệnh RET trong chương trình MOV A, entry-number CALL TIM-KIEM … … TIM-KIEM: INC A MOVC A, @A+PC RET TABLE: DB data1,data2,data3,… Xung & Hoi 14 Homework Vi t chương trình cho 2 ví dụ trên dùng MOVC A, @A+PC thay vì MOVC A, @A+DPTR? Xung & Hoi 15 . cóthể là nguồnhoặc đíchtrongcáclệnhMOV, ADD & SUBB 7-4. Định địachỉ giántiếp Xung & Hoi7 AViếtchươngtrìnhcopy 10 bytes từ vùngRAM có địachỉ bắt đầu là37H tớivùngRAM có địachỉ bắt đầulà59H. A,@R0 MOV @R1,A INC R0 INC R1 DJNZ R2,L1 Bàitoán7.1. Copy bytes trongRAM nội Xung & Hoi8 AViếtchươngtrìnhxóaRAM nộitừ60H à 7FH Trả lời: MOVR0,#60H LOOP:MOV@R0,#0 INCR0 CJNER0,#80H,LOOP Bàitoán7.2 Hoi10 Bàitoán7.3. Copy bytes ROM à RAM • VD: Giả sử khônggianbộnhớ ROM bắt đầutạiđịa chỉ 250H chứa“ROBOCON”, vi tchươngtrình truyềncácbytes trênvàovùngnhớ RAM bắt đầutại địachỉ 40H Xung & Hoi11 Giải đáp: ORG0 MOVDPTR,#MYDATA MOVR0,#40H L1:CLRA MOVCA,@A+DPTR JZL2 MOV@R0,A INCDPTR INCR0 SJMPL1 L2:SJMPL2 ;

Ngày đăng: 11/08/2014, 01:20

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan