1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Tài liệu môn kỹ thuật vi điều khiển 2

18 78 0

Đ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

Thông tin cơ bản

Định dạng
Số trang 18
Dung lượng 777,5 KB

Nội dung

2 CÁC THANH GHI CHỨC NĂNG ĐẶC BIỆT (SFR) SƠ ĐỒ SFRs (Special function registers) Gồm: 21 sfr (51), 27 sfr (52) Cao Nguyễn Khoa Nam - Khoa Điện - Trường Cao đẳng Công nghệ Đà Nẵng Phân bố: 80H đến FFH RAM caonam@gmail.com Thanh ghi • ACC (A): địa 0E0H (Accumulator) • Là ghi tính tốn 8051 • Sử dụng phép tính số học: +, -, *, / • Các phép logic AND, OR, XOR … • Các phép dịch, quay byte (shift, rotate): RL, RR … Cao Nguyễn Khoa Nam - Khoa Điện - Trường Cao đẳng Công nghệ Đà Nẵng caonam@gmail.com Thanh ghi phụ • Là ghi tính tốn phụ (B) • Địa 0F0H • B dùng với chứa A phép tốn nhân, chia • MUL AB ; nhân số 8-bit không dấu chứa A & B, KQ 16-bit chứa vào cặp ghi B:A (B chứa byte cao) • DIV AB ; chia A B, thương số cất A, dư cất B • B xử lý ghi nháp • B định địa bit F7 F6 F5 F4 F3 F2 F1 F0 Cao Nguyễn Khoa Nam - Khoa Điện - Trường Cao đẳng Công nghệ Đà Nẵng caonam@gmail.com Thanh ghi trạng thái chương trình(PSW) Mơ tả tồn trạng thái chương trình hoạt động hệ thống C AC F0 RS1 RS0 OV Cờ nhớ Cờ nhớ phụ User flag Bit chọn dãy ghi Bit chọn dãy ghi Cờ tràn Dự trữ - User define bit Cờ chẵn lẻ RS1 RS0 Register Bank P PSW.7 C PSW.6AC PSW.5-PSW.4RS1 PSW.3RS0 PSW.2OV PSW.1-PSW.0 P Byte Address of R0-R7 0 00H-07H 1 08H-0FH 10H-17H 1 18H-1FH Cao Nguyễn Khoa Nam - Khoa Điện - Trường Cao đẳng Công nghệ Đà Nẵng caonam@gmail.com Thanh ghi trạng thái chương trình(PSW) • C (carry flag) - Cờ nhớ • Được set có số nhớ từ phép cộng bit hay có số mượn mang đến bit • MOV A,#FFH • ADD A,#1 • Còn dùng ghi bit lệnh logic thao tác bit • ANL C,25H • AC (auxiliary carry) – Cờ nhớ phụ • Được set có số nhớ từ bit sang bit • RS1, RS0 - Các bit chọn dãy (bank) ghi • Dùng để xác định dãy ghi tích cực • Chúng xóa reset Cao Nguyễn Khoa Nam - Khoa Điện - Trường Cao đẳng Công nghệ Đà Nẵng caonam@gmail.com Thanh ghi trạng thái chương trình(PSW) • OV (overflow flag) - Cờ tràn • Set sau phép tốn cộng trừ có xuất tràn số học Khi số có dấu cộng trừ, phần mềm kiểm tra bit tràn OV để xác định KQ có nằm tầm hay khơng • Với số có dấu, KQ nhỏ -128 lớn +127 set cờ OV = Với số khơng dấu, OV=1 KQ vượt q 255 • VD: 0F thập phân 15 +7F +127 _ 8E 142 • 8EH biễu diễn -114 khơng với KQ mong muốn 142 nên OV = Cao Nguyễn Khoa Nam - Khoa Điện - Trường Cao đẳng Công nghệ Đà Nẵng caonam@gmail.com Thanh ghi trạng thái chương trình(PSW) • P (parity) - Cờ chẵn lẻ • Kiểm tra chẵn lẻ cho chứa A • Số bit chứa A cộng với bit P ln ln chẵn • MOV A,#10101101B P=1 • Bit chẵn lẻ sử dụng kết hợp với chương trình xuất/nhập nối tiếp trước truyền liệu để kiểm tra chẵn lẻ sau nhận liệu Bài tập áp dụng: Kiểm tra giá trị bit C, AC, OV P trường hợp sau: VD1: MOV A,#88H ADD A,#93H VD2: MOV A,#9CH ADD A,#64H VD3: MOV A,#38H ADD A,#2FH VD4: MOV A,#FFH ADD A,#1 Cao Nguyễn Khoa Nam - Khoa Điện - Trường Cao đẳng Cơng nghệ Đà Nẵng caonam@gmail.com Ví dụ VD: MOV A,#88H ADD A,#93H 88H 10001000 +93H + 10010011 11B H 00011011 C=1 AC=0 P=0 VD: MOV A,#38H ADD A,#2FH 38 00111000 +2F +00101111 67 01100111 C=0 AC=1 P=1 VD: MOV A,#9CH ADD A,#64H 9C 10011100 +64 + 01100100 100 00000000 C=1 AC=1 P=0 VD: MOV ADD A=00H; MOV ADD A,#0FFH A,#1 C=1; AC=1; P=0 A,#0FH A,#1 A=10H; C=0; AC=1; P=1; Cao Nguyễn Khoa Nam - Khoa Điện - Trường Cao đẳng Công nghệ Đà Nẵng caonam@gmail.com Những lệnh ảnh hưởng đến bit cờ X Cao Nguyễn Khoa Nam - Khoa Điện - Trường Cao đẳng Công nghệ Đà Nẵng caonam@gmail.com Con trỏ ngăn xếp (SP) Địa byte 81H • Ngăn xếp (stack) (bộ xếp chồng) cấu trúc liệu kiểu thùng chứa, hoạt động theo nguyên lý “vào sau trước” • SP (stack pointer) chứa địa liệu đỉnh stack • Mặc định stack địa 08H RAM (SP=07H) Muốn thay đổi vùng nhớ stack ta cần thay đổi giá trị SP (ví dụ MOV SP,#5FH) • Việc cất liệu vào stack thực thông qua lệnh PUSH) (làm tăng SP trước ghi liệu) Việc lấy liệu khỏi stack thực thông qua lệnh POP (lấy liệu khỏi stack trước giảm SP) Cao Nguyễn Khoa Nam - Khoa Điện - Trường Cao đẳng Công nghệ Đà Nẵng caonam@gmail.com Con trỏ ngăn xếp (SP) Cơng dụng stack: •PUSH, POP: lưu lấy liệu tạm thời trình xử lý •ACALL, LCALL, Ngắt: cất đếm chương trình PC •RET, RETI: phục hồi đếm chương trình PC Cao Nguyễn Khoa Nam - Khoa Điện - Trường Cao đẳng Cơng nghệ Đà Nẵng caonam@gmail.com Ví dụ: VD: MOV MOV MOV PUSH PUSH PUSH R6,#25H R1,#12H R4,#0F3H 0BH 0BH 0BH 0BH 0AH 0AH 0AH 0AH F3 09H 09H 09H 12 09H 12 08H 08H 08H 25 08H 25 Start SP=07H 25 SP=08H Cao Nguyễn Khoa Nam - Khoa Điện - Trường Cao đẳng Công nghệ Đà Nẵng SP=09H SP=0AH caonam@gmail.com Con trỏ liệu (DPTR) • DPTR (data pointer) dùng để truy xuất nhớ chương trình nhớ liệu ngồi • VD: MOV MOV MOVX MOVC A,#55H DPTR,#1000H @DPTR,A A,@A+DPTR 83H 82H DPH DPL Cao Nguyễn Khoa Nam - Khoa Điện - Trường Cao đẳng Công nghệ Đà Nẵng caonam@gmail.com Các ghi I/O port: P0, P1, P2, P3 • Tất port định địa bit (P0.0, P0.1…P0.7) • Cơng dụng: • Điều khiển thiết bị đầu SETB P1.0 CLR P1.0 • Đọc tín hiệu đầu vào WAIT: JB P1.5, WAIT SETB P1.0 Cao Nguyễn Khoa Nam - Khoa Điện - Trường Cao đẳng Công nghệ Đà Nẵng caonam@gmail.com Các ghi định thời • 8051 có đếm/định thời 16-bit để định khoảng thời gian đếm kiện • Mỗi định thời có ghi: THx, TLx để lưu giá trị thiết lập giá trị ban đầu cho định thời/ đếm • Hoạt động định thời thiết lập bởi: • TMOD (Timer Mode Register) • TCON (Timer Control Register) Cao Nguyễn Khoa Nam - Khoa Điện - Trường Cao đẳng Công nghệ Đà Nẵng caonam@gmail.com Các ghi port nối tiếp • 8051 có port nối tiếp để truyền thơng với thiết bị nối tiếp • SBUF (Serial Data Buffer): lưu trữ liệu truyền nhận • SCON (Serial Port Control Register): chọn chế độ hoạt động Cao Nguyễn Khoa Nam - Khoa Điện - Trường Cao đẳng Công nghệ Đà Nẵng caonam@gmail.com Các ghi ngắt • IE (interrupt enable): Thanh ghi cho phép ngắt • IP (interrupt priority): Thanh ghi ưu tiên ngắt Cao Nguyễn Khoa Nam - Khoa Điện - Trường Cao đẳng Công nghệ Đà Nẵng caonam@gmail.com ... dụ: VD: MOV MOV MOV PUSH PUSH PUSH R6, #25 H R1,#12H R4,#0F3H 0BH 0BH 0BH 0BH 0AH 0AH 0AH 0AH F3 09H 09H 09H 12 09H 12 08H 08H 08H 25 08H 25 Start SP=07H 25 SP=08H Cao Nguyễn Khoa Nam - Khoa Điện... trị SP (ví dụ MOV SP,#5FH) • Vi c cất liệu vào stack thực thông qua lệnh PUSH) (làm tăng SP trước ghi liệu) Vi c lấy liệu khỏi stack thực thông qua lệnh POP (lấy liệu khỏi stack trước giảm SP)... số có dấu, KQ nhỏ - 128 lớn + 127 set cờ OV = Với số khơng dấu, OV=1 KQ vượt q 25 5 • VD: 0F thập phân 15 +7F + 127 _ 8E 1 42 • 8EH biễu diễn -114 không với KQ mong muốn 1 42 nên OV = Cao Nguyễn

Ngày đăng: 23/05/2020, 11:54

TỪ KHÓA LIÊN QUAN

w