LUẬN VĂN: Thiết kế và thi công hệ thống Kit Vi Điều Khiển 8951

100 11 0
LUẬN VĂN: Thiết kế và thi công hệ thống Kit Vi Điều Khiển 8951

Đ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

Tham khảo luận văn - đề án ''luận văn: thiết kế và thi công hệ thống kit vi điều khiển 8951'', luận văn - báo cáo, điện - điện tử - viễn thông phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả

LUẬN VĂN TỐT NGHIỆP trang1 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG…………… LUẬN VĂN Thiết kế thi công hệ thống Kit Vi Điều Khiển 8951 LUẬN VĂN TỐT NGHIỆP trang2 PHẦN MỞ ĐẦU I KHÁI QUÁT VẤN ĐỀ Ngày kỹ thuật vi điều khiển trở nên quen thuộc ngành kỹ thuật dân dụng Từ dây chuyền sản xuất lớn đến thiết bị gia dụng, thấy diện vi điều khiển Các vi điều khiển có khả xử lý nhiều hoạt động phức tạp mà cần chip vi mạch nhỏ, thay tủ điều khiển lớn phức tạp mạch điện gọn nhẹ, dễ dàng thao tác sử dụng Vi điều khiển khơng góp phần vào kỹ thuật điều khiển mà cịn góp phần to lớn vào việc phát triển thơng tin Đó đời hàng loạt thiết bị tối tân ngành viễn thơng, truyền hình, đặc biệt đời mạng Internet –siêu xa lộ thơng tin, góp phần đưa người đến đỉnh cao văn minh nhân loại Chính lý trên, việc tìm hiểu, khảo sát vi điều khiển điều mà sinh viên ngành điện mà đặc biệt chuyên ngành kỹ thuật điện-điện tử phải quan tâm Đó nhu cầu cần thiết cấp bách sinh viên, đề tài thực đáp ứng nhu cầu Các điều khiển sử dụng vi điều khiển đơn giản để vận hành sử dụng đươc lại điều phức tạp Phần công việc xử lý phụ thuộc vào người, chnh chương trình hay phần mềm Tuy thấy máy tính ngày thơng minh, giải toán phức tạp vài phần triệu giây, dựa hiểu biết người Nếu khơng có tham gia người hệ thống vi điều khiển vật vơ tri Do nói đến vi điều khiển giống máy tính bao gồm phần phần cứng phần mềm Các vi điều khiển theo thời gian với phát triển công nghệ bán dẫn tiến triển nhanh, từ vi điều khiển Bit đơn giản đến vi điều khiển 32 Bit Với công nghệ tiên tiến ngày máy tính đến việc suy nghĩ, tri thức thông tin đưa vào, máy tính thuộc hệ trí tuệ nhân tạo Mặc dù vi điều khiển bước dài để tiếp cận với kỹ thuật việc có sớm chiều Việc hiểu chế hoạt động vi điều khiển Bit sở để tìm hiểu sử dụng vi điều khiển tối tân hơn, bước muốn xâm nhập sâu vào lĩnh vực Để tìm hiểu vi điều khiển cách khoa học mang lại hiệu cao làm tản cho việc xâm nhập vào hệ thống tối tân Việc trang bị kiến thức vi điều khiển cho sinh viên cần thiết Xuất phát từ thực tiển em đến định Thiết kế thi công hệ thống Kit Vi Điều Khiển 8951 Nhằm đáp ứng nhu cầu ham muốn học hỏi thân LUẬN VĂN TỐT NGHIỆP trang3 II.GIỚI HẠN VẤN ĐỀ Do thời gian nghiên cứu thực đề tài giới hạn vòng tuần lễ, vốn kiến thức việc tìm hiểu sâu hệ vi điều khiển hạn chế, luận án thực phạm vi sau: * Phần I : Giới thiệu linh kiện sử dụng mạch * Phần II : Thiết kế thi công phần cứng * Phần III : Thiết kế phần mềm * Phần IV : Phụ lục III MỤC TIÊU NGHIÊN CỨU Dựa sở đề tài vi xử lý vi điều khiển, đặc biệt tính chúng họ IC giao tiếp, hiển thị giải mã …, nhằm thiết kế hệ thống vi điều khiển góp phần làm phong phú thêm cho việc hiểu biết lĩnh vực đồng thời mở rộng định hướng cho đề tài sau LUẬN VĂN TỐT NGHIỆP PHẦN I : GIỚI CHƯƠNG I trang4 THIỆU CÁC LINH KIỆN SỬ DỤNG TRONG MẠCH KHẢO SÁT VI ĐIỀU KHIểN 8951 I GIỚI THIỆU CẤU TRÚC PHẦN CỨNG HỌ MCS-51 (8951): 1.Giới thiệu họ MCS-51: MCS-51 họ IC vi điều khiển hãng Intel sản xuất Các IC tiêu biểu cho họ 8051 8031 Các sản phẩm MCS-51 thích hợp cho ứng dụng điều khiển Việc xử lý Byte toán số học cấu trúc liệu nhỏ thực nhiều chế độ truy xuất liệu nhanh RAM nội Tập lệnh cung cấp bảng tiện dụng lệnh số học Bit gồm lệnh nhân lệnh chia Nó cung cấp hổ trợ mở rộng Chip dùng cho biến Bit kiểu liệu riêng biệt cho phép quản lý kiểm tra Bit trực tiếp điều khiển hệ thống logic đòi hỏi xử lý luận lý 8951 vi điều khiển Bit, chế tạo theo công nghệ CMOS chất lượng cao, công suất thấp với KB PEROM (Flash Programeable and erasable read only memory) Thiết bị chế tạo cách sử dụng nhớ không bốc mật độ cao ATMEL tương thích với chuẩn cơng nghiệp MCS-51 tập lệnh chân PEROM ON-CHIP cho phép nhớ lập trình lập trình hệ thống lập trình viên bình thường Bằng cách kết hợp CPU Bit với PEROM Chip đơn, ATMEL AT89C51 vi điều khiển mạnh (có cơng suất lớn) mà cung ấp linh động cao giải pháp giá nhiều ứng dụng vi điều khiển AT89C51 cung cấp đặc tính chuẩn sau: KB nhớ đọc xóa lập trình nhanh (EPROM), 128 Byte RAM, 32 đường I/O, TIMER/COUNTER 16 Bit, vectơ ngắt có cấu trúc mức ngắt, Port nối tiếp bán song công, mạch dao động tạo xung Clock dao động ON-CHIP Thêm vào đó, AT89C51 thiết kế với logic tĩnh cho hoạt động đến mức không tần số hỗ trợ hai phần mềm lựa chọn chế độ tiết kiệm công suất, chế độ chờ (IDLE MODE) dừng CPU cho phép RAM, timer/counter, port nối tiếp hệ thống ngắt tiếp tục hoạt động Chế độ giảm công suất lưu nội dung RAM treo dao động làm khả hoạt động tất chức khác Reset hệ thống Các đặc điểm 8951 tóm tắt sau: KB nhớ lập trình lại nhanh, có khả tới 1000 chu kỳ ghi xoá Tần số hoạt động từ: 0Hz đến 24 MHz mức khóa nhớ lập trình Timer/counter 16 Bit 128 Byte RAM nội Port xuất /nhập I/O bit Giao tiếp nối tiếp 64 KB vùng nhớ mã ngồi LUẬN VĂN TỐT NGHIEÄP trang5 64 KB vùng nhớ liệu ngoại Xử lý Boolean (hoạt động bit đơn) 210 vị trí nhớ định vị bit s cho hoạt động nhân chia 2.Sơ đồ khối AT89C51 trình bày hình 1-1 INT1\ INT0\ SERIAL PORT TEMER0 TEMER1 TEMER2 8032\8052 128 byte RAM 8032\8052 INTERRUP T CONTROL OTHER REGISTE R 128 byte RAM ROM 0K: 8031\8032 4K:8951 8K:8052 TEMER2 8032\8052 TEMER1 TEMER1 CPU BUS CONTROL I/O PORT SERIAL PORT OSCILATOR EA\ RST ALE\ PSEN\ P0 P1 P2 P3 Address\Data TXD RXD LUẬN VĂN TỐT NGHIỆP trang6 II KHẢO SÁT SƠ ĐỒ CHÂN 8951, CHỨC NĂNG TỪNG CHÂN: 1.Sơ đồ chân 8951: 40 30pF Vcc 19 XTAL.1 12 MHz 30pF 18 XTAL.2 PSEN\ 29 ALE 30 EA\ 31 RD WR T1 T0 INT1 INT0 TXD RXD P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1 P0.0 RST 17 16 15 14 13 12 11 10 8951 P3.7 P3.6 P3.5 P3.4 P3.3 P3.2 P3.1 P3.0 P1.7 P1.6 P1.5 P1.4 P1.3 P1.2 P1.1 P1.0 P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0 32 AD7 33 AD6 34 AD5 35 AD4 36 AD3 37 AD2 38 AD1 39 AD0 28 A15 27 A14 26 A13 25 A12 24 A11 23 A10 22 A9 21 A8 Vss 20 Hình1-2 Sơ đồ chân IC 8951 2.Chức chân 8951 - 8951 có tất 40 chân có chức đường xuất nhập Trong có 24 chân có tác dụng kép (có nghĩa chân có chức năng), đường hoạt động đường xuất nhập đường điều khiển thành phần bus liệu bus địa a.Các Port:  Port 0: - Port port có chức chân 32 – 39 8951 Trong thiết kế cỡ nhỏ khơng dùng nhớ mở rộng có chức đường IO Đối với thiết kế cỡ lớn có nhớ mở rộng, kết hợp bus địa bus liệu  Port 1: - Port port IO chân 1-8 Các chân ký hiệu P1.0, P1.1, P1.2, … có thề dùng cho giao tiếp với thiết bị ngồi cần Port khơng có chức khác, chúng dùng cho giao tiếp với thiết bị bên  Port 2: - Port port có tác dụng kép chân 21- 28 dùng đường xuất nhập byte cao bus địa thiết bị dùng nhớ mở rộng  Port 3: LUẬN VĂN TỐT NGHIỆP trang7 - Port port có tác dụng kép chân 10-17 Các chân port có nhiều chức năng, cơng dụng chuyển đổi có liên hệ với đặc tính đặc biệt 8951 bảng sau: Bit P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7 Tên RXT TXD INT0\ INT1\ T0 T1 WR\ RD\ Chức chuyển đổi Ngõ vào liệu nối tiếp Ngõ xuất liệu nối tiếp Ngõ vào ngắt cứng thứ Ngõ vào ngắt cứng thư Ngõ vào củaTIMER/COUNTER thứ Ngõ vào củaTIMER/COUNTER thứ Tín hiệu ghi liệu lên nhớ ngồi Tín hiệu đọc nhớ liệu ngồi b.Các ngõ tín hiệu điều khiển:  Ngõ tín hiệu PSEN (Program store enable): - PSEN tín hiệu ngõ chân 29 có tác dụng cho phép đọc nhớ chương trình mở rộng thường nói đến chân 0E\ (output enable) Eprom cho phép đọc byte mã lệnh - PSEN mức thấp thời gian Microcontroller 8951 lấy lệnh Các mã lệnh chương trình đọc từ Eprom qua bus liệu chốt vào ghi lệnh bên 8951 để giải mã lệnh Khi 8951 thi hành chương trình ROM nội PSEN mức logic  Ngõ tín hiệu điều khiển ALE (Address Latch Enable): - Khi 8951 truy xuất nhơđ bên ngồi, port có chức bus địa bus liệu phải tách đường liệu địa Tín hiệu ALE chân thứ 30 dùng làm tín hiệu điều khiển để giải đa hợp đường địa liệu kết nối chúng với IC chốt - Tín hiệu chân ALE xung khoảng thời gian port đóng vai trị địa thấp nên chốt địa hoàn toàn tự động Các xung tín hiệu ALE có tốc độ 1/6 lần tần số dao động chip dùng làm tín hiệu clock cho phần khác hệ thống Chân ALE dùng làm ngõ vào xung lập trình cho Eprom 8951  Ngõ tín hiệu EA\(External Access) : - Tín hiệu vào EA\ chân 31 thường mắt lên mức mức Nếu mức 1, 8951 thi hành chương trình từ ROM nội khoảng địa thấp Kbyte Nếu mức 0, 8951 thi hành chương trình từ nhớ mở rộng Chân EA\ lấy làm chân cấp nguồn 21V lập trnh cho Eprom 8951  Ngõ tín hiệu RST (Reset): -Ngõ vào RST chân ngõ vào Reset 8951 Khi ngõ vào tín hiệu đưa lên cao chu kỳ máy, ghi bên nạp giá trị thích hợp để khởi động hệ thống Khi cấp điện mạch tự động Reset  Các ngõ vào giao động X1,X2: -Bộ dao động được tích hợp bên 8951, sử dụng 8951 người thiết kế cần kết nối thêm thạch anh tụ hình vẽ sơ đồ Tần số thạch anh thường sử dụng cho 8951 12Mhz  Chân 40 (Vcc) nối lên nguồn 5V III.CẤU TRÚC BÊN TRONG VI ĐIỀU KHIỂN Tổ chức nhớ: LUẬN VĂN TỐT NGHIỆP FFFF FF 00 trang8 FFFF CODE Memory ON-CHIP Memory 0000 Enable via PSEN DATA Memory 0000 Enable via RD & WR Bảng tóm tắt vùng nhớ 8951 Hình 1.3 : External Momery LUẬN VĂN TỐT NGHIEÄP trang9 Bản đồ nhớ Data Chip sau: Địa byte Địa byte Địa bit 7F Địa bit FF F0 F7 F6 F5 F4 F3 F2 F1 F0 B RAM đa dụng E0 E7 E6 E5 E4 E3 E2 E1 E0 ACC D0 D7 D6 D5 D4 D3 D2 D1 D0 PSW 30 2F 2E 2D 2C 2B 2A 29 28 27 26 25 24 23 22 21 20 1F 18 17 10 0F 08 07 00 BC BB BA B9 B8 IP B0 B7 B6 B5 B4 B3 B2 B1 B0 P.3 AC AB AA A9 A8 IE A0 A7 A6 A5 A4 A3 A2 A1 A0 P2 B8 7F 77 6F 67 5F 57 4F 47 3F 37 2F 27 1F 17 0F 07 7E 76 6E 66 5E 56 4E 46 3E 36 2E 26 1E 16 0E 06 7D 75 6D 65 5D 55 4D 45 3D 35 2D 25 1D 15 0D 05 7C 7B 74 73 6C 6B 64 63 5C 5B 54 53 4C 4B 44 43 3C 3B 34 33 2C 2B 24 23 1C 1B 14 13 0C 0B 04 03 Bank 7A 72 6A 62 5A 52 4A 42 3A 32 2A 22 1A 12 0A 02 79 71 69 61 59 51 49 41 39 31 29 21 19 11 09 01 Bank Bank Bank ghi (mặc định cho R0 -R7) 78 70 68 60 58 50 48 40 38 30 28 20 18 10 08 00 - - A8 AF - 99 khơng địa hố bit SBUF 98 9F 9E 9D 9C 9B 9A 99 98 SCON 90 97 96 95 94 93 92 91 90 8D 8C 8B 8A 89 P1 không địa hố bit khơng địa hố bit khơng địa hố bit khơng địa hố bit khơng địa hố bit TH1 TH0 TL1 TL0 TMO D 88 8F 8E 8D 8C 8B 8A 89 88 TCON 87 khơng địa hố bit PCON 83 khơng địa hố bit DPH 82 khơng địa hố bit DPL 81 khơng địa hoá bit SP 88 87 86 85 84 83 82 81 80 P0 RAM CÁC THANH GHI CHỨC NĂNG ĐẶC BIỆT - Bộ nhớ 8951 bao gồm ROM RAM RAM 8951 bao gồm nhiều thành phần: phần lưu trữ đa dụng, phần lưu trữ địa hóa bit, bank ghi ghi chức đặc biệt - 8951 có bg nhớ theo cấu trúc Harvard: có vùng nhớ riêng biệt cho chương trình liệu Chương trình liệu chứa bên 8951 8951 kết nối với 64K byte nhớ chương trình 64K byte liệu Hai đặc tính cần ý là:  Các ghi port xuất nhập định vị (xác định) nhớ truy xuất trực tiếp giống địa nhớ khác LUAÄN VĂN TỐT NGHIỆP trang10  Ngăn xếp bên Ram nội nhỏ so với Ram ngoại Microprocontroller khác RAM bên 8951 phân chia sau:  Các bank ghi có địa từ 00H đến 1FH  RAM địa hóa bit có địa từ 20H đến 2FH  RAM đa dụng từ 30H đến 7FH  Các ghi chức đặc biệt từ 80H đến FFH  RAM đa dụng: - Mặc dù hình vẽ cho thấy 80 byte đa dụng chiếm địa từ 30H đến 7FH, 32 byte từ 00H đến 1FH dùng với mục đích tương tự (mặc dù địa có mục đích khác) - Mọi địa vùng RAM đa dụng truy xuất tự dùng kiểu địa trực tiếp gián tiếp  RAM truy xuất bit: - 8951 chứa 210 bit địa hóa, có 128 bit có chứa byte có chứa địa từ 20F đến 2FH bit cịn lại chứa nhóm ghi có chức đặc biệt - Ý tưởng truy xuất bit phần mềm đặc tính mạnh microcontroller xử lý chung Các bít đặt, xóa, AND, OR, …, với lệnh đơn Đa số microcontroller xử lý đòi hỏi chuỗi lệnh đọc– sửa- ghi để đạt mục đích tương tự Ngồi port truy xuất bít - 128 bit truy xuất bit truy xuất byte bit phụ thuộc vào lệnh dùng  Các bank ghi: - 32 byte thấp nhớ nội dành cho bank ghi Bộ lệnh 8951 hỗ trợ ghi có tên R0 đến R7 theo mặc định sau reset hệ thống, ghi có địa từ 00H đến 07H - Các lệnh dùng ghi RO đến R7 ngắn nhanh so với lệnh có chức tương ứng dùng kiểu địa trực tiếp Các liệu dùng thường xuyên nên dùng ghi - Do có bank ghi nên thời điểm có bank ghi truy xuất ghi RO đến R7 đề chuyển đổi việc truy xuất bank ghi ta phải thay đổi bit chọn bank ghi trạng thái Các ghi có chức đặc biệt: - Các ghi nội 8951 truy xuất ngầm định lệnh - Các ghi 8951 định dạng phần RAM chip ghi có địa (ngoại trừ ghi điếm chương trình ghi lệnh ghi bị tác động trực tiếp) Cũng R0 đến R7, 8951 có 21 ghi có chức đặc biệt (SFR: Special Function Register) vùng RAM nội từ địa 80H đến FFH Chú ý: tất 128 địa từ 80H đến FFH không định nghĩa, có 21 ghi có chức đặc biệt định nghĩa sẵn địa - Ngoại trừ ghi A truy xuất ngầm nói, đa số ghi có chức đặc biệt SFR địa hóa bit byte  Thanh ghi trạng thái chương trình (PSW: Program Status Word): Từ trạng thái chương trình địa D0H tóm tắt sau: BIT SYMBOL ADDRESS PSW.7 CY D7H DESCRIPTION Cary Flag LUẬN VĂN TỐT NGHIỆP trang86 - Sự định địa trực tiếp truy xuất giá trị Chip ghi phần cứng Chip Một byte địa trực tiếp đưa vào Opcode để định rõ vị trí dùng sau : Opcode Direct Addressing - Tùy thuộc bit bậc cao địa trực tiếp mà vùng nhớ chọn Khi bit = 0, địa trực tiếp khoảng 0127 (00H7FH) 128 vị trí nhớ thấp RAM Chip chọn - Tất Port I/O, ghi chức đặc biệt, ghi điều khiển ghi trạng thái quy định địa khoảng 128255 (80FFH) Khi byte địa trực tiếp nằm giới hạn (ứng với bit = 1) ghi chức đặc biệt truy xuất Ví dụ Port Port quy định địa trực tiếp 80H 90H, P0, P1 lað dạng thức rút gọn thuật nhớ Port, biến thiên cho phép thay hiểu dạng thức rút gọn thuật nhớ chúng Chẳng hạn lệnh : MOV P1, A  biên dịch xác định địa trực tiếp Port 90H đặt vào hai byte lệnh (byte port 0) 1.3 Sự định vị địa gián tiếp (Indirect Addressing): - Sự định địa gián tiếp tượng trưng ký hiệu @ đặt trước R0, R1 hay DPTR R0 R1 hoạt động ghi trỏ mà nội dung cho biết địa RAM nội nơi mà liệu ghi đọc Bit có trọng số nhỏ Opcode lệnh xác định R0 hay R1 dùng trỏ Pointer Opcode i 1.4 Sự định địa tức thời (Immediate Addressing): - Sự định địa tức thời tượng trưng ký hiệu # đứng trước số, biến ký hiệu biểu thức số học sử dụng hằng, ký hiệu, hoạt động người điều khiển Trình biên dịch tính tốn giá trị thay liệu tức thời Byte lệnh thêm vô chứa trị số liệu tức thời sau: LUAÄN VĂN TỐT NGHIỆP trang87 Opcode Immediate Data 1.5 Sự định địa tương đối: - Sự định địa tương đối sử dụng với lệnh nhảq Một địa tương đối (hoặc Offset) giá trị bit mà cộng vào đếm chương trình PC để tạo thành địa lệnh thực thi Phạm vi nhảy nằm khoảng 128  127 Offset tương đối gắn vào lệnh byte thêm vào sau: Opcode Relative Offset - Những nơi nhảy đến thường rõ nhãn trình biên dịch xác định Offset Relative cho phù hợp - Sự định vị tương đối đem lại thuận lợi cho việc cung cấp mã vị trí độc lập, bất lợi nhảy ngắn phạm vi -128127 byte 1.6 Sự định địa tuyệt đối (Absolute Addressing) : - Sự định địa tuyệt đối dùng với lệnh ACALL AJMP Các lệnh byte cho phép phân chia trang 2K lưu hành nhớ mã việc cung cấp 11 bit thấp để xác định địa trang 2K (A0A10 gồm A10A8 Opcode A7A0 byte)và bit cao để chọn trang 2K (5 bit cao lưu hành đếm c`ương trình bit Opcode) Addr 10  Addr Opcode Addr  Addr - Sự định vị tuyệt đối đem lại thuận lợi cho lệnh ngắn (2 byte), bất lợi việc giới hạn phạm vi nơi gởi đến cung cấp mã có vị trí độc lập LUẬN VĂN TỐT NGHIỆP trang88 1.7 Sự định vị dài (Long Addressifg): - Sự định vị dài dùng với lệnh LCALL LJMP Các lệnh byte bao gồm địa nơi gởi tới 16 bit đầy đủ byte byte lệnh Opcode Addr 15  Addr Addr  Addr - Ưu điểm định dài vùng nhớ mã 64K dùng hết, nhược điểm lệnh dài byte vị trí lệ thuộc Sự phụ thuộc vào vị trí bất lợi chương trình khơng thể thực thi địa khác 1.8 Sự định địa phụ lục (Index Addressing) : - Sự định địa phụ lục dùng ghi (cũng đếm chương trình đếm liệu) Offset (thanh ghiA) hình thành địa liên quan lệnh JMP MOVC Base Register PC (or PDTR) Offset Effective Address ACC Index Addressing - Các bảng lệnh nhảy bảng tra tạo nên cách dễ dàng cách dùng địa phụ lục LUẬN VĂN TỐT NGHIỆP trang89 II CÁC KIỂU LỆNH (INSTRUCTION TYPES) CỦA 8951: 8951 chia 5nhóm lệnh : Các lệnh số học Lệnh logic Dịch chuyển diệu Lý luận Rẽ nhánh chương trình Từng kiểu lệnh mơ tả sau : Các lệnh số học (Arithmetic Instrustion) : ADD A, ADD A, Rn : (A)  (A) + (Rn) ADD A, direct : (A)  (A) + (direct) ADD A, @ Ri : (A)  (A) + ((Ri)) ADD A, # data : (A)  (A) + # data ADDC A, Rn : (A)  (A) + (C) + (Rn) ADDC A, direct : (A)  (A) + (C) + (direct) ADDC A, @ Ri : (A)  (A) + (C) + ((Ri)) ADDC A, # data : (A)  (A) + (C) + # data SUBB A, SUBB A, Rn : (A)  (A) - (C) - (Rn) SUBB A, direct : (A)  (A) - (C) - (direct) SUBB A, @ Ri : (A)  (A) - (C) - ((Ri)) SUBB A, # data : (A)  (A) - (C) - # data INC A : (A)  (A) + INC direct : (direct)  (direct) + INC Ri : ((Ri))  ((Ri)) + INC Rn : (Rn)  (Rn) + INC DPTR : (DPTR)  (DPTR) + INC DEC DEC A : (A)  (A) - DEC direct : (direct)  (direct) - LUAÄN VĂN TỐT NGHIỆP trang90 DEC @Ri : ((Ri))  ((Ri)) - DEC Rn : (Rn)  (Rn) - MULL AB : (A)  LOW [(A) x (B)] ; có ảnh hưởng cờ OV : (B)  HIGH [(A) x (B)] ; cờ Cary xóa DIV AB : (A)  Integer Result of [(A)/(B)]; cờ OV : (B)  Remainder of [(A)/(B)]; cờ Carry xóa DA A : Điều chỉnh ghi A thành số BCD phép cộng BCD (thường DA A kèm với ADD, ADDC) Nếu [(A3-A0)>1] [(AC)=1]  (A3A0)  (A3A0) + Nếu [(A7-A4)>9] [(C)=1]  (A7A4)  (A7A4) + Các hoạt động logic (Logic Operation) : Tất lệnh logic sử dụng ghi A toán hạng thực thi chu kỳ máy, A chu kỳ máy Những hoạt động logic thực byte vị trí nhớ liệu nội mà không qua ghi A Các hoạt động logic tóm tắt sau : ANL ANL A, Rn : (A)  (A) AND (Rn) ANL A, direct : (A)  (A) AND (direct) ANL A,@ Ri : (A)  (A) AND ((Ri)) ANL A, # data : (A)  (A) AND (# data) ANL direct, A : (direct)  (direct) AND (A) ANL direct, # data : (direct)  (direct) AND # data ORL ORL A, Rn : (A)  (A) OR (Rn) ORL A, direct : (A)  (A) OR (direct) ORL A,@ Ri : (A)  (A) OR ((Ri)) ORL A, # data : (A)  (A) OR # data ORL direct, A : (direct)  (direct) OR (A) ORL direct, # data : (direct)  (direct) OR # data XRL XRL A, Rn : (A)  (A)  (Rn) XRL A, direct : (A)  (A)  (direct) LUẬN VĂN TỐT NGHIỆP trang91 XRL A,@ Ri : (A)  (A)  ((Ri)) XRL A, # data : (A)  (A)  # data XRL direct, A : (direct)  (direct)  (A) XRL direct, # data : (direct)  (direct)  # data CLR A : (A)  CLR C : (C)  CLR Bit : (Bit)  RL A : Quay vòng ghi A qua trái bit (An + 1)  (An); n = 06 (A0)  (A7) RLC A : Quay vòng ghi A qua trái bit có cờ Carry (An + 1)  (An); n = 06 (C)  (A7) (A0)  (C) RR A : Quay vòng ghi A qua phải bit (An + 1)  (An); n = 06 (A0)  (A7) RRC A : Quay vòng ghi A qua phải bit có cờ Carry (An + 1)  (An); n = 06 (C)  (A7) (A0)  (C) SWAP A : Đổi chổ bit thấp bit cao A cho (A3A0)(A7A4) Các lệnh rẽ nhánh : Có nhiều lệnh để điều khiển lên chương trình bao gồm việc gọi trả lại từ chương trình chia nhánh có điều kiện hay khơng có điều kiện Tất lệnh rẽ nhánh khơng ảnh hưởng đến cờ Ta định nhãn cần nhảy tới mà không cần rõ địa chỉ, trình biên dịch đặt địa nơi cần nhảy tới vào lệnh đưa Sau tóe tắt hoạt động lệnh nhảy JC rel : Nhảy đến “rel” cờ Carry C = JNC rel : Nhảy đến “rel” cờ Carry C = JB bit, rel : Nhảy đến “rel” (bit) = JNB bit, rel : Nhảy đến “rel” (bit) = JBC bit, rel : Nhảy đến “rel” bit = xóa bit LUẬN VĂN TỐT NGHIỆP ACALL trang92 addr11: Lệnh gọi tuyệt đối page 2K (PC)  (PC) + (SP)  (SP) + ((SP))  (PC7PC0) (SP)  (SP) + ((SP))  (PC15PC8) (PC10PC0)  page Address LCALL addr16: Lệnh gọi dài chương trình 64K (PC)  (PC) + (SP)  (SP) + ((SP))  (PC7PC0) (SP)  (SP) + ((SP))  (PC15PC8) (PC)  Addr15Addr0 RET : Kết thúc chương trình trở chương trình (PC15PC8)  (SP) (SP)  (SP) - (PC7PC0)  ((SP)) (SP)  (SP) -1 RETI : Kết thúc thủ tục phục vụ ngắt quay chương trình hoạt động tương tự RET AJMP Addr11 : Nhảy tuyệt đối không điều kiện 2K (PC)  (PC) + (PC10PC0)  page Address LJMP Addr16 : Nhảy dài không điều kiện 64K Hoạt động tương tự lệnh LCALL SJMP rel : Nhảy ngắn không điều kiện (-128127) byte (PC)  (PC) + (PC)  (PC) + byte JMP @ A + DPTR:Nhảy không điều kiện đến địa (A) + (DPTR) (PC)  (A) + (DPTR) JZ rel : Nhảy đến A = Thực hành lệnh kế A  (PC)  (PC) + (A) =  (PC)  (PC) + byte LUAÄN VĂN TỐT NGHIỆP JNZ trang93 rel : Nhảy đến A  Thực hành lệnh kế A = (PC)  (PC) + (A) < >  (PC)  (PC) + byte CJNE A, direct, rel : So sánh nhảy đến A  direct (PC)  (PC) + (A) < > (direct)  (PC)  (PC) + Relative Address (A) < (direct)  C = (A) > (direct)  C = (A) = (direct) Thực hành lệnh CJNE A, # data, rel : Tương tự lệnh CJNE A, direct, rel CJNE Rn, # data, rel : Tương tự lệnh CJNE A, direct, rel CJNE @ Ri, # data, rel : Tương tự lệnh CJNE A, direct, rel DJNE Rn, rel : Giảm Rn nhảy Rn  (PC)  (PC) + (Rn)  (Rn) -1 (Rn) < >  (PC)  (PC) + byte DJNZ direct, rel : Tương tự lệnh DJNZ Rn, rel Các lệnh dịch chuyển liệu: Các lệnh dịch chuyển liệu vùng nhớ nội thực thi chu kỳ máy Mẫu lện` MOV , cho phép di chuyển liệu vùng nhớ RAM nội vùng nhớ ghi chức đặc biệt mà không thông qua ghi A Vùng Ngăn xếp 8951 chứa 128 byte RAM nội, trỏ Ngăn xếp SP tăng địa 7FH byte PUSH vào byte POP khơng biết rõ Các lệnh dịch chuyển nhớ nội nhớ ngoại dùng định vị gián tiếp Địa gián tiếp dùng địa byte (@ Ri) địa byte (@ DPTR) Tất lệnh dịch chuyển hoạt động toàn nhớ thực thi chu kỳ máy dùng ghi A làm toán hạng DESTINATION Việc đọc ghi RAM (RD WR) tích cực suốt q trình thực thi lệnh MOVX, cịn bình thường RD WR khơng tích cực (mức 1) Tất lệnh dịch chuyển đểu không ảnh hưởng đến cờ Hoạt động lệnh tóm tắt sau : MOV A,Rn : (A)  (Rn) MOV A, direct : (A)  (direct) LUAÄN VĂN TỐT NGHIỆP trang94 MOV A, @ Ri : (A)  ((Ri)) MOV A, # data : (A)  # data MOV Rn, A : (Rn)  (A) MOV Rn, direct : (Rn)  (direct) MOV Rn, # data : (Rn)  # data MOV direct, A : (direct)  (A) MOV direct, Rn (direct)  (Rn) MOV direct, direct : (direct)  (direct) MOV direct, @ Ri : (direct)  ((Ri)) MOV direct, # data : (direct)  data MOV @ Ri, A : ((Ri))  (A) MOV @ Ri, direct : ((Ri))  (direct) MOV @ Ri, # data : ((Ri))  # data MOV DPTR, # data16 : (DPTR)  # data16 MOV A, @ A + DPTR : (A)  (A) + (DPTR) MOV @ A + PC : (PC)  (PC) + (A)  (A) + (PC) MOVX A, @ Ri : (A)  ((Ri)) MOVX A, @ DPTR : (A)  ((DPTR)) MOVX @ Ri, A : ((Ri))  (A) MOVX @ DPTR, A : ((DPTR))  (A) PUSH direct : Cất liệu vào Ngăn xếp (SP)  (SP) + (SP)  (Drirect) POP direct : Lấy từ Ngăn xếp direct (direct)  ((SP)) (SP)  (SP) - XCH A, Rn : Đổi chổ nội dung A với Rn (A)  (Rn) XCH A, direct : (A)  (direct) XCH A, @ Ri : (A)  ((Ri)) XCHD A, @ Ri : Đổi chổ bit thấp (A) với ((Ri)) (A3A0)  ((Ri3Ri0)) LUẬN VĂN TỐT NGHIEÄP trang95 Các lệnh luận lý (Boolean Instruction) : 8951 chứa xử lý luận lý đầy đủ cho hoạt động bit đơn, điểm mạnh họ vi điều khiển MSC-51 mà họ vi điều khiển khác khơng có RAM nội chứa 128 bit đơn vị vùng nhớ ghi chức đặc biệt cấp lên đến 128 đơn vị khác Tất đường Port bit định vị, đường xử lý Port đơn vị riêng biệt Cách truy xuất bit không lệnh rẽ nhánh không, mà danh mục đầy đủ lệnh MOVE, SET, CLEAR, COMPLEMENT, OR, AND Toàn truy xuất bit dùng định vị trực tiếp với địa từ 00H7FH 128 vùng nhớ thấp 80HFFH vùng ghi chức đặc biệt Bit Carry C ghi PSW\ từ trạng thái chương trình dùng tích lũy đơn bộxử lý luận lý Bit Carry bit định vị có địa trực tiếp nằm PSW Hai lệnh CLR C CLR CY có tác dụng xóa bit cờ Carry lệnh byte lệnh sau byte Hoạt động lệnh luận lý tóm tắt sau: CLR C : Xóa cờ Carry xuống Có ảnh hưởng cờ Carry CLR BIT : Xóa bit xuống Không ảnh hưởng cờ Carry SET C : Set cờ Carry lên Có ảnh hưởng cờ Carry SET BIT_: Set bit lên Không ảnh hưởng cờ Carry CPL C : Đão bit cờ Carry Có ảnh hưởng cờ Carry CPL BIT : Đão bit Không ảnh hưởng cờ Carry ANL C, BIT : (C)  (C) AND (BIT) : Có ảnh hưởng cờ Carry ANL C, /BIT : (C)  (C) AND NOT (BIT):Không ảnh hưởng cờ Carry ORL C, BIT : (C)  (C) OR (BIT) : Tác động cờ Carry ORL C, /BIT : (C)  (C) OR NOT (BIT) : Tác động cờ Carry MOV C, BIT : (C)  (BIT) : Cờ Carry bị tác động MOV BIT, C : (BIT)  (C) : Không ảnh hưởng cờ Carry Các lệnh xen vào (Miscellamous Intstruction) : NOP : Không hoạt động cả, tốn byte chu kỳ máy Ta dùng để delay khoảng thời gian nhỏ LUẬN VĂN TỐT NGHIỆP trang96 Chương II KHẢO SÁT IC SỬ DỤNG I Khảo sát nhớ EPROM 2764 Các nhớ EPROM thông dụng tồn nhiều kiểu mạch khác Họ 27XXX có loại vi mạch sau:2708 (1Kx8), 2716 (2Kx8), 2732 (4Kx8), 2764 (8Kx8) …… với Tac = 250_ 450 ns tuỳ theo loại EPROM cụ thể Số đường địa thay đổi tùy thuộc vào dung lượng loại EPROM, số đường liệu Hoạt động họ 27XXX tương tự nhau, thời lượng có hạn nên khảo sát EPROM sử dụng mạch EPROM 2764 Sơ đồ chân: Trong A0 – A12 : 13 đường địa vào O0 _ O7 : đường liệu OE\ : Output Enable CE\ : Chip Enable PGM\ : Nạp chương trình EPROM 2764 có 13 đường địa nên có dung lượng KB đường liệu ngõ vào cung cấp Vpp Vcc Ngõ vào Vcc nối lên 5v EPROM đọc liệu nối với 30v nạp trình cho EPROM Thời gian truy xuất Tac = 150 ns Hai ngõ vào điều khiển CE\ OE\: + OE\ : Được dùng để điều khiển đệm (Output Buffer) phép liệu EPROM có xuất ngồi hay khơng + CE\ : Là ngõ vào cho phép hai chức năng: - Khi hoạt động bình thường CE\ tín hiệu cho phép, để đọc liệu từ EPROM CE\ phải mức logic ,để mạch điện bên lựa chọn liệu chuyển đến Output Buffer kết hợp với tín hiệu cho phép OE\ mức logic liệu xuất ngõ D7 – D0 - Khi CE\ =1 EPROM trạng thái chờ (Standby) Công suất tiêu thụ trạng thái đọc liệu 525 mW, trạng thái chờ 132 mW Bảng trạng thái làm việc EPROM 2764: OE\ CE\ PGM Vpp Vcc Output VIL VIL VIH Vcc Vcc D out Read VIH X X Vcc Vcc High Z Standby LUẬN VĂN TỐT NGHIỆP Program Program Verify Program Inhibit VIL VIL VIH X VIL X VIL VIH X trang97 Vpp Vpp Vpp Vcc Vcc Vcc D in D out High Z II Khảo sát SRAM 6264 SRAM 6264 có dung lượng KB dùng để lưu trữ chương trình liệu Sơ đồ chân: Trong A0 – A 12 :13 đường địa vào WR\ : cho phép ghi mức logic OE\ : cho phép xuất mức logic CS \ : cho phép chọn vi mạch hoạt động ( mức ) NC : No Conection Bộ nhớ SRAM có khả lưu trữ thơng tin chừng cấp điện Thời gian truy xuất Tac = 250 ns Bảng trạng thái làm việc SRAM 6264 WR\ CS\ CS OE\ Output X H X X High Z Not Select X X L X High Z Not Select H L H H High Z Output Disable Read H L H L D Out L L H H D in Write III Khảo sát IC giải mã 74138 : Khi ta muốn có nhiều đầu chọn vỏ từ giải mã mà dùng mạch logic đơn giản thiết kế trở nên cồng kềnh số lượng mạch cửa tăng lên Trong trường hợp ta thường dùng mạch giải mã có sẵn Một mạch giải mã hay sử dụng 74LS138 ,mạch giải mã đường LUAÄN VĂN TỐT NGHIỆP trang98 Sơ đồ chân: Trong đó: Y0-Y7: đầu chọn mạch giải mã A,B,C:Ba đầu vào chọn E1\,E2\,E3:đầu vào cho phép Bảng trạng thái làm việc 74138: Các đầu vào Cho phép Điều khiển C B A G2B\ G2A\ G1 X X X 0 0 1 1 X X X 0 1 0 1 X X X 1 1 X X 0 0 0 0 X X 0 0 0 0 Các đầu Y0 \ Y1 \ Y2 \ Y3 \ Y4 \ X 1 1 X 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Trong : X giá trị khơng quan tâm Y5 \ Y6 \ Y7 \ 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 LUẬN VĂN TỐT NGHIỆP trang99 IV: khảo sát IC giải mã BCD to Decimal SN74145 Sơ đồ chân: Trong :0 -9 10 đầu A,B,C,D đầu vào Bảng trạng thái No Input D C 0 0 0 0 1 Valid 1 1 1 1 B 0 1 0 1 0 1 0 1 A 1 1 1 1 0 1 1 1 1 1 1 1 output 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 LUẬN VĂN TỐT NGHIỆP TÀI LIỆU THAM KHẢO Kỹ Thuật Vi Xử Lý: Tác giả: Trần Văn Trọng (ĐHSP Kỹ Thuật-TP.HCM) Xuất năm 1995 Giáo trình Vi Xử Lý – Vi điều khiển Người soạn: Nguyễn Đình Phú Lập Trình Cho Các Hệ Vi Xử Lý Biên sọan: Hùynh Thúc Cước Đặng Văn Đức Nghiêm Mỹ Nguyễn Văn Tam Trần Bá Thái Nguyễn Chí Thức Nhà xuất Thống Kê Kỹ Thuật Vi Điều Khiển Tác giả : Lê Văn Doanh Phạm Chắc Chương Nhà Xuất Bản Khoa Học Và Kỹ Thuật năm 1998 THE 8051 MICROCONTROLLER Tác Giả: Scott MacKenzie Trình Biên Dịch ASM51 trang100 ... làm vi? ??c Mode LUẬN VĂN TỐT NGHIỆP trang44 Phần II THI? ??T KẾ VÀ THI CƠNG PHẦN CỨNG Chương I: THI? ??T KẾ PHẦN CỨNG VÀ TÍNH TỐN I.)Tóm tắt thi? ??t kế: u cầu đề tài thi? ??t kế hệ thống kít vi điều khiển 8951. .. nghệ chế tạo logic Thích ứng công nghệ chế tạo điều chỉnh công nghệ sản xuất thi? ??t bị ngoại vi công nghệ sản xuất mạch hệ vi điều khiển Thích ứng logic nhiệm vụ tạo tín hiệu điều khiển ngoại vi. .. điều khiển ngắt vi điều khiển phần mềm Nghĩa ta thực cho phép ngắt hặc cấm ngắt vi điều khiển cách thi? ??t lập điều khiển phần mềm Bộ vi điều khiển tự động cấm ngắt trường hợp sau: +Khởi động hệ

Ngày đăng: 26/04/2021, 17:27

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

Tài liệu liên quan