« Home « Kết quả tìm kiếm

Giáo trình Vi xử lý -Vi điều khiển


Tóm tắt Xem thử

- Giáo trình Vi xử lý - Vi điều khiển Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương MỤC LỤC Danh mục hình vẽ.
- Vi xử lý và vi điều khiển.
- Ứng dụng của Vi xử lý – vi điều khiển.
- 44 ©[email protected] 1 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương CHƯƠNG 4 LẬP TRÌNH HỢP NGỮ CHO 8051.
- Địa chỉ theo thanh ghi.
- Địa chỉ trực tiếp.
- Các lệnh điều khiển chương trình (rẽ nhánh.
- Các thanh ghi của bộ Timer 0.
- Các thanh ghi của bộ Timer 1.
- 88 ©[email protected] 2 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương CHƯƠNG 8 PHỐI GHÉP 8051 VỚI THẾ GIỚI THỰC.
- 108 ©[email protected] 3 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương Danh mục hình vẽ Hình 1-1.
- 25 Hình 3-1.Kiến trúc vi điều khiển 8051.
- Thanh ghi PSW.
- Chọn bank thanh ghi.
- Thanh ghi PCON.
- Thanh ghi SBUF.
- Thanh ghi SCON.
- Các tín hiệu điều khiển ngắt.
- Thanh ghi điều khiển ngắt.
- Thanh ghi IP.
- 93 ©[email protected] 4 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương Hình 8-2.
- 101 ©[email protected] 5 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương Danh mục bảng biểu Bảng 1-1.
- Các thanh ghi chức năng đặc biệt.
- 98 ©[email protected] 6 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương CHƯƠNG 1 TỔNG QUAN VỀ VI XỬ LÝ – VI ĐIỀU KHIỂN 1.1 GIỚI THIỆU CHUNG VỀ VI XỬ LÝ – VI ĐIỀU KHIỂN 1.1.1.
- Vi điều khiển thường được dùng để xây dựng các hệ thống nhúng.
- Vi điều khiển khác với các bộ vi xử lý đa năng ở chỗ là nó có thể hoạt động chỉ với vài vi mạch hỗ trợ bên ngoài.
- Vi xử lý và vi điều khiển Khái niệm “vi xử lý” (microprocessor) và “vi điều khiển” (microcontroller).
- Ở đây, tôi chỉ nói đên ứng dụng của vi điều khiển.
- Vi điều khiển có thể dùng trong thiết kế các loại máy tính nhúng.
- Các sản phẩm công nghiệp ©[email protected] 10 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương Điều khiển động cơ Điều khiển số (PID, mờ.
- Sơ đồ khối hệ vi xử lý Để có thể giao tiếp và điều khiển các cơ quan chấp hành (các ngoại vi), CPU sử dụng 03 loại tín hiệu cơ bản là tín hiệu địa chỉ (Address), tín hiệu dữ liệu (Data) và tín hiệu điều khiển (Control).
- ©[email protected] 12 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương Hình 1-4.
- CPU gửi tín hiệu ra bus điều khiển để cho phép các đầu ra của ô nhớ hay các ©[email protected] 13 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương cổng I/O đã được địa chỉ hoá.
- Giá trị tương ứng giữa các hệ số ©[email protected] 15 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương 1.3.2.
- Bảng mã ASCII ©[email protected] 16 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương Bảng 1-3.
- ©[email protected] 18 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương CHƯƠNG 2 VI ĐIỀU KHIỂN 2.1.
- Sau đó rất nhiều họ Vi điều ©[email protected] 19 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương khiển của nhiều nhà chế tạo khác nhau lần lượt được đưa ra thị trường với tính năng được cải tiến ngày càng mạnh.
- ỨNG DỤNG CỦA VI ĐIỀU KHIỂN Về cơ bản, vi điều khiển rất đơn giản.
- Một kịch bản chung cho hoạt động của một vi điều khiển như sau: 1.
- Các bit của các thanh ghi SFR cho biết trạng thái của tất cả các mạch trong vi điều khiển.
- Toàn bộ vi điều khiển hoạt động theo chu kỳ của chuỗi xung chính.
- ©[email protected] 20 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương 4.
- ROM nội thường là nhỏ hơn và đắt tiền hơn, nhưng lá ghim thêm có sẵn để kết ©[email protected] 21 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương nối với môi trường ngoại vi.
- ©[email protected] 22 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương Hình 2-2.
- Mỗi họ vi điều khiển thường có các tập lệnh khác nhau.
- Mỗi vi điều khiển sẽ có một hoặc một số thanh ghi (được gọi là cổng) được kết nối với các chân của vi điều khiển.
- ©[email protected] 23 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương Hình 2-3.
- Ghép nối bộ dao động ©[email protected] 24 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương Bộ dao động đóng vai trò nhạc trưởng làm nhiệm vụ đồng bộ hóa hoạt động của tất cả các mạch bên trong vi điều khiển.
- Mỗi loại vi điều khiển cần số chu kỳ khác nhau để thực hiện lệnh.
- Truyền nhận nối tiếp ©[email protected] 25 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương Kết nối song song giữa vi điều khiển và thiết bị ngoại vi được thực hiện qua các cổng vào/ra là giải pháp lý tưởng với khoảng cách ngắn trong vài mét.
- ©[email protected] 26 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương CHƯƠNG 3 KIẾN TRÚC VI ĐIỀU KHỂN 8051 3.1.
- 4 KB PEROM (Flash Programmable and Erasable Read Only Memory), có khả năng tới 1000 chu kỳ ghi xoá + Tần số hoạt động từ: 0Hz đến 24 MHz ©[email protected] 27 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương + 3 mức khóa bộ nhớ lập trình + 128 Byte RAM nội.
- Giao tiếp nối tiếp điều khiển bằng phần cứng.
- Sơ đồ chân VĐK AT89C51 ©[email protected] 28 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương Chip AT89C51 có các tín hiệu điều khiển cần phải lưu ý như sau: Tín hiệu vào /EA trên chân 31 thường đặt lên mức cao ( +5V) hoặc mức thấp (GND).
- ©[email protected] 29 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương Hình 3-3.
- Cổng vào/ra ©[email protected] 30 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương Hình 3-4.
- Port 0 Port 0 là port có 2 chức năng ở các chân 32 – 39 của AT89C51: ©[email protected] 31 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương - Chức năng I/O (xuất/nhập): dùng cho các thiết kế nhỏ.
- Chức năng khác: mô tả như sau: ©[email protected] 32 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương Bảng 3-1.
- ©[email protected] 33 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương RST (Reset): RST (chân 9) cho phép reset AT89C51 khi ngõ vào tín hiệu đưa lên mức 1 trong ít nhất là 2 chu kỳ máy.
- Các byte RAM có địa chỉ từ 00h – 7Fh và các thanh ghi chức năng đặc biệt (SFR) có ©[email protected] 34 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương địa chỉ từ 80h – 0FFh có thể truy xuất trực tiếp.
- RAM có thể định địa chỉ bit: ©[email protected] 36 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương Vùng địa chỉ từ 20h – 2Fh gồm 16 byte.
- ©[email protected] 37 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương PCH: Program Counter High – PCL: Program Counter Low DPH: Data Pointer High – DPL: Data Pointer Low Hình 3-9.
- ALE tích cực lần thứ hai ©[email protected] 38 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương được giải thích tương tự và byte 2 được đọc từ bộ nhớ chương trình.
- VD: Câu lệnh: MOV A,#1 MOV 0E0h,#1 ©[email protected] 39 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương có cùng kết quả.
- Thanh ghi PSW CY (Carry): cờ nhớ, thường được dùng cho các lệnh toán học không dấu (C = 1 khi có nhớ trong phép cộng hay mượn trong phép trừ) AC (Auxiliary Carry): cờ nhớ phụ (thường dùng cho các phép toán BCD).
- Cờ P thường được dùng để ©[email protected] 40 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương kiểm tra lỗi truyền dữ liệu.
- Các thanh ghi này không cho phép định địa chỉ bit.
- Các thanh ghi định thời (Timer Register) ©[email protected] 41 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương Các cặp thanh ghi (TH0, TL0), (TH1, TL1) và (TH2, TL2) là các thanh ghi dùng cho các bộ định thời 0, 1 và 2 trong đó bộ định thời 2 chỉ có trong 8032/8052.
- Các thanh ghi điều khiển: Bao gồm các thanh ghi IP (Interrupt Priority), IE (Interrupt Enable), TMOD (Timer Mode), TCON (Timer Control), T2CON (Timer 2 Control), SCON (Serial port control) và PCON (Power control.
- Thanh ghi TCON tại địa chỉ 88h điều khiển hoạt động của bộ định thời và ngắt.
- Thanh ghi T2CON tại địa chỉ C8h điều khiển hoạt động của bộ định thời 2.
- Thanh ghi SCON tại địa chỉ 98h điều khiển hoạt động của port nối tiếp.
- ©[email protected] 42 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương PD (Power Down): được xoá bằng phần cứng khi hoạt động reset xảy ra.
- Khi bit IDL = 1 thì vi điều khiển sẽ chuyển sang chế độ nghỉ.
- Trạng thái hiện hành của vi điều khiển được duy trì và nội dung các thanh ghi không đổi.
- ©[email protected] 43 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương 3.7.
- Các vi điều khiển tương thích với 8051 có 255 lệnh.
- Theo thanh ghi 3.
- Địa chỉ theo thanh ghi Chế độ đánh địa chỉ theo thanh ghi liên quan đến việc sử dụng các thanh ghi ©[email protected] 45 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương để lưu dữ liệu cần được thao tác và các các toán hạng là 1 trong các thanh ghi Ri của các bank được chọn.
- ©[email protected] 46 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương 4.1.4.
- Sao chép A vào vị trí ngăn nhớ RAM do R0 chỉ ©[email protected] 47 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương INC R0 .
- Ví dụ: RET (Kết thúc chương trình con) Lệnh này không có toán hạng ©[email protected] 48 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương JZ TEMP (Chuyển con trỏ chương trình đến vị trí TEMP) Chỉ có 1 toán hạng ADD A, R3.
- ©[email protected] 49 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương Trong phép trừ thì các bộ vi xử lý 8051 (thực tế là tất cả mọi CPU hiện đại) đều sử dụng phương pháp bù 2.
- ©[email protected] 50 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương Sau khi SUBB thì A = 62H - 96H = CCH và cờ nhớ được lập báo rằng có mượn.
- ©[email protected] 51 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương Phép chia Tử số Mẫu số Thương số Số dư Byte cho Byte A B A B Bảng 4-2.
- Đích thường là thanh ghi tổng (tích luỹ).
- ©[email protected] 52 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương Các toán hạng đích và nguồn được Hoặc với nhau và kết quả được đặt vào đích.
- Đích thường là thanh ghi tổng.
- Bây giờ nội dung của thanh ghi A là AAH ©[email protected] 53 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương e.
- ©[email protected] 54 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương Trong RLC A thì các bit được dịch phải một bit và đẩy bit MSB vào cờ nhớ CY, sau đó CY được chuyển vào bit LSB.
- Thoát khi P1.2 = 1 ©[email protected] 55 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương MOV P0, A .
- Nhảy có điều kiện: ©[email protected] 56 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương a.
- ©[email protected] 57 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương Cần phải lưu ý rằng cũng có lệnh “JC nhãn”.
- Đặt vào trong các thanh ghi R0 (byte thấp) và R5 (byte cao).
- Xoá thanh ghi A = 0 MOV R5, A .
- Nếu CY = 1 tăng R5 (R5 = 1) ©[email protected] 58 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương N-2: ADD A, #0E2H .
- Để đảm bảo rằng sau khi thực hiện một chương trình được gọi để 8051 biết ©[email protected] 59 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương được chỗ quay trở về thì nó tự động cất vào ngăn xếp địa chỉ của lệnh đứng ngay sau lệnh gọi LCALL.
- Trả điều khiển về nguồn gọi (khi R5 = 0) END .
- Kết thúc tệp tin của hợp ngữ ©[email protected] 60 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương 4.3 CẤU TRÚC CHUNG CHƯƠNG TRÌNH HỢP NGỮ CHO 8051 4.3.1.
- Mỗi dòng lệnh không vượt quá 255 ký tự - Mỗi dòng lệnh phải bắt đầu bằng 1 ký tự, nhãn, lệnh hoặc chỉ thị định hướng ©[email protected] 61 Giáo trình Vi xử lý – Vi điều khiển - Trường Đại học Sao Đỏ - Bộ Công thương - chương trình dịch - Mọi thứ sau dấu