Kỹ thuật vi điều khiển-p6
lượt xem 89
download
Tham khảo tài liệu 'kỹ thuật vi điều khiển-p6', kỹ thuật - công nghệ, điện - điện tử phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Kỹ thuật vi điều khiển-p6
- 1. Giới thiệu 2. Sơ đồ khối và chân 3. Tổ chức bộ nhớ 4. Các thanh ghi chức năng đặc biệt 5. Dao động và hoạt động reset 6. Tập lệnh (Instruction Set) 7. Các mode định địa chỉ 8. Lập trình IO 9. Tạo trễ 10.Lập trình Timer/Counter 11.Lập trình giao tiếp nối tiếp 12.Lập trình ngắt 13.Lập trình hợp ngữ Xung & Hoi 1
- MOV dest, source ; dest = source MOV A, #72H ;A=72H MOV DPTR, #7634H MOV R4, #62H ;R4=62H MOV DPL, #34H MOV A, R4 ;A=62H MOV DPH, #76H MOV B, 7EH MOV P1, A ;mov A to port 1 MOV DPTR, A MOV Rm, Rn Chú ý 1: MOV A,#72H MOV A,72H ≠ 8086 8051 MOV AL,72H MOV A,#72H MOV BX,72H MOV AL,[BX] MOV A,72H Chú ý 2: MOV A,R3 ≡ MOVHoiA,3 Xung & 2
- ADD A, Source ;A=A+Source ADD A,#6 ;A=A+6 ADD A,R6 ;A=A+R6 ADD A,6 ;A=A+[6] or A=A+R6 ADDC A, source ;A=A+source+CY SETB C ;CY=1 ADDC A,R5 ;A=A+R5+1 SUBB A, source ;A=A-source-CY SETB C ;CY=1 SUBB A,R5 ;A=A-R5-1 Xung & Hoi 3
- SETB bit ; bit=1 CLR bit ; bit=0 SETB C ; CY=1 SETB P0.0 ;bit 0 from port 0 =1 SETB P3.7 ;bit 7 from port 3 =1 SETB ACC.2 ;bit 2 from Accumulator =1 SETB 05 ;set bit địa chỉ 05h (tại RAM có địa chỉ byte 20h) Chú ý: Lệnh xóa bit CLR tương tự lệnh set bit SETB CLR C ;CY=0 Song tồn tại 1 ngoại lệ câu lệnh sau đây chỉ cho CLR CLR A ;A=0 Xung & Hoi 4
- DEC byte ;byte=byte-1 INC byte ;byte=byte+1 INC R7 DEC A DEC 40H ; [40]=[40]-1 CPL A ;1’s complement MOV A,#55H ;A=01010101 B L01: CPL A MOV P1,A ACALL DELAY SJMP L01 Xung & Hoi 5
- ANL - ORL – XRL dest, source vd: MOV R5,#89H ANL R5,#08H RR A RL A RRC A RLC A NOP & RET & RETI Giống như các lệnh của 8086 Xung & Hoi 6
- MUL AB ;B|A = A*B MOV A,#25H MOV B,#65H MUL AB ;25H*65H=0E99 ;B=0EH, A=99H DIV AB ;A = A/B, B = A mod B MOV A,#25 MOV B,#10 DIV AB ;A=2, B=5 Xung & Hoi 7
- Các lệnh nhảy có điều kiện: JZ rel Jump if A=0 Jump if A¹0 JNZ rel Decrement & jump if byte¹0 DJNZ byte, rel Jump if dest ¹ source CJNE dest, source, rel JC rel Jump if CY=1 JNC rel Jump if CY=0 JB bit, rel Jump if bit=1 JNB bit, rel Jump if bit=0 JBC bit, rel Jump if bit=1 & clear bit Xung & Hoi 8
- Ø DJNZ byte, rel-addr Viết chương trình xóa thanh ghi A, sau đó cộng 3 vào A mười lần? à ORG 0000H MOV A, #0; MOV R2, #10 AGAIN: ADD A, #03 DJNZ R2, AGAIN ;repeat until R2=0 (10 lần) MOV P1, A Xung & Hoi 9
- CJNE , , rel • So sánh và nhảy nếu không bằng. CJNE so sánh 2 giá trị đầu tiên và rẽ nhánh nếu các giá trị của 2 toán hạng không bằng nhau • C được set bằng 1 nếu giá trị nguyên không dấu của nhỏ hơn của . Ngược lại, C = 0 • Cả 2 toán hạng không bị ảnh hưởng sau khi thực thi lệnh Xung & Hoi 10
- VD: Viết 1 chương trình so sánh R0, R1: Nếu R0>R1: gửi 1 ra port 2 Else if R0R1 R0_NHO_HON: … ;R0
- VD: MOV A, 79H Port 1 là ngõ vào có giá trị thay đổi liên tục. …. WAIT: CJNE A,P1,WAIT … tác dụng gì? Trả lời: Chương trình lặp lại tại điểm này cho tới khi nhận giá trị 79H tại đầu vào P1. Xung & Hoi 12
- • SJMP rel-addr Là lệnh nhảy không điều kiện. Là lệnh nhảy ngắn (2-byte). Byte đầu tiên là opcode, byte thứ 2 là địa chỉ tương đối của đích. Địa chỉ tương đối trong khoảng 00àFFH nhưng chia thành 2 hướng: tới, lui (forward, backward) nên tầm nhảy cho phép là -128 đến +127 bytes trước lệnh và sau lệnh. • VD: PC 0100H: SJMP RelativeAddress … 0123H: RelativeAddress à Byte độ dời của lệnh: 0123H-0102H=21H là độ dời tương đối Xung & Hoi 13
- AJMP addr11 Là lệnh nhảy không điều kiện. Nhảy đến địa chỉ tuyệt đối. Đích nhảy đến phải ở trong vùng 2K của bộ nhớ chương trình với byte đầu tiên của lệnh theo sau lệnh AJMP. Mã đối tượng như sau: aaa00001 aaaaaaaa A10-A8 & A7-A0 của địa chỉ đích LJMP addr16 Là lệnh nhảy không điều kiện (3 bytes). Byte đầu tiên là opcode, byte 2 & 3 chứa địa chỉ đích 16-bit. Tầm nhảy từ 0000àFFFFH Xung & Hoi 14
- CALL 1 lệnh chuyển điều khiển khác là CALL, dùng để gọi 1 chương trình con (subroutine). LCALL Là lệnh 3 bytes. LCALL dùng để gọi chương trình con nằm bất kỳ đâu trong khoảng 64K byte không gian địa chỉ của 8051. aaaaaaaa aaaaaaaa 00010010 A15-A8 & A7-A0 của địa chỉ đích Xung & Hoi 15
- VD: Ban đầu không khởi động stack pointer (SP). Nhãn Subroutine đặt tại vị trí 1234H trong bộ nhớ chương trình. Tại 0123H thực hiện: LCALL Subroutine Mô tả hoạt động sau khi thực hiện lệnh trên? RAM RAM RAM 0BH 0BH 0BH 12H 34H 0AH 0AH 0AH 01H 09H 09H 09H PC 26H 26H 08H 08H 08H Start SP=07H SP=08H SP=09H Xung & Hoi 16
- ACALL Là lệnh 2-byte. Chương trình con phải ở trong phạm vi 2K của bộ nhớ chương trình so với byte đầu tiên của lệnh theo sau ACALL. aaa10001 aaaaaaaa A10-A8 & A7-A0 của địa chỉ đích Xung & Hoi 17
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Lò nung P6
38 p | 315 | 152
-
Bài giảng Kỹ thuật Vi xử lý P6
0 p | 205 | 68
-
Giáo trình vi điều khiển 8051 P6
11 p | 159 | 47
-
Điều khiển Logic P6
6 p | 111 | 28
-
Tư liệu nghiên cứu mạch đếm sản phẩm trong thiết kế mạch đếm điện tử dùng vi điều khiển mạch báo p6
9 p | 80 | 6
-
Giáo trình phân tích tính ưu việt của vi mạch chuyển đổi trong kỹ thuật điều khiển và đo lường p6
8 p | 63 | 5
-
Giáo trình phân tích khả năng ứng dụng chiến lược theo điều phối cung cấp processor cho bo mạch p6
5 p | 60 | 5
-
Giáo trình hình thành quy trình điều khiển định vị công trình dẫn tim cốt trong lắp đặt ván khuôn p6
8 p | 66 | 5
-
Giáo trình hình thành quy trình điều khiển conector trong việc điều khiển tự động hóa p6
10 p | 42 | 5
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn