1. Trang chủ
  2. » Tất cả

Giáo trình Vi điều khiển 2 (Nghề Công nghệ kỹ thuật điều khiển và tự động hóa Cao đẳng)

120 4 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 120
Dung lượng 1,58 MB

Nội dung

CỤC HẢNG HẢI VIỆT NAM TRƯỜNG CAO ĐẲNG HÀNG HẢI I GIÁO TRÌNH MƠ ĐUN:VI ĐIỀU KHIỂN NGHỀ: CƠNG NGHỆ KỸ THUẬT ĐIỀU KHIỂN VÀ TỰ ĐỘNG HĨA TRÌNH ĐỘ CAO ĐẲNG Ban hành kèm theo Quyết định số: ngày .tháng năm Hiệu trưởng trường Cao đẳng Hàng hải I Hải Phòng TUYÊN BỐ BẢN QUYỀN Tài liệu thuộc loại sách giáo trình nên nguồn thơng tin phép dùng ngun trích dùng cho mục đích đào tạo tham khảo Mọi mục đích khác mang tính lệch lạc sử dụng với mục đích kinh doanh thiếu lành mạnh bị nghiêm cấm LỜI GIỚI THIỆU Giáo trình Mơ đun Vi điều khiển giáo trình mơ đun đào tạo chun ngành biên soạn theo nội dung chương trình khung Hiệu trưởng trường Cao đẳng Hàng hải ban hành dành cho hệ Cao đẳng nghề công nghệ kỹ thuật điều khiển tự động hóa Nội dung biên soạn ngắn gọn, dễ hiểu, tích hợp kiến thức kỹ chặt chẽ với nhau, logíc Khi biên soạn, tác giả cố gắng cập nhật kiến thức có liên quan đến nội dung chương trình đào tạo phù hợp với mục tiêu đào tạo, nội dung lý thuyết thực hành biên soạn gắn với nhu cầu thực tế sản xuất đồng thời có tính thực tiễn cao Nội dung giáo trình biên soạn với dung lượng thời gian đào tạo 90 gồm có: Bài 1: Tổng quan vi điều khiển PIC Bài 2: Vi điều khiển PIC 16F877A Bài 3: Ngơn ngữ lập trình CS1 Bài 4: Thiết kế mạch điều khiển LED đơn Bài 5: Thiết kế mạch điều khiển hình LCD16x2 Bài 6: Thiết kế mạch điều khiển động bước Bài 7: Thiết kế mạch điều khiển hình led Bài 8: Thiết kế mạch điều khiển đọc liệu từ bàn phím Hexa Bài 9: Thiết kế mạch điều khiển hình LED ma trận Bài 10: Thiết kế mạch điều khiển ngắt Bài 11: Thiết kế mạch đọc kiểm tra nút nhấn Mặc dù cố gắng tổ chức biên soạn để đáp ứng mục tiêu đào tạo không tránh khiếm khuyết Rất mong nhận đóng góp ý kiến thầy, giáo, bạn đọc để người biên soạn hiệu chỉnh hoàn thiện Các ý kiến đóng góp xin gữi Trường Cao đẳng Hàng hải I số 498 Đà Nẵng, Hải An, Hải Phòng Hải Phòng, ngày tháng năm 201 Tham gia biên soạn Chủ biên : Ths.Nguyễn Thị Ngọc Hà MỤC LỤC TT Nội dung Trang Lời giới thiệu Mục lục Danh mục bảng, biểu, hình ảnh Nội dung Bài 1: Tổng quan vi điều khiển PIC Bài 2: Vi điều khiển PIC 16F877A 15 Bài 3: Ngôn ngữ lập trình C51 34 Bài 4: Thiết kế mạch điều khiển LED đơn 50 Bài 5: Thiết kế mạch điều khiển hình LCD16x2 56 Bài 6: Thiết kế mạch điều khiển động bước 68 Bài 7: Thiết kế mạch điều khiển hình led 75 Bài 8: Thiết kế mạch điều khiển đọc liệu từ bàn phím Hexa 83 Bài 9: Thiết kế mạch điều khiển hình LED ma trận 89 Bài 10: Thiết kế mạch điều khiển ngắt 100 Bài 11: Thiết kế mạch đọc kiểm tra nút nhấn Tài liệu tham khảo 110 120 Danh mục bảng biểu TT Tên bảng Trang Bảng 5.1 Bảng chức chân LCD16x2 58 Bảng 5.2 Bảng mã lệnh điều khiển LCD16x2 59 Bảng 7.1 Bảng mã hiển thị số lên led 77 Bảng 7.2 Bảng mã điều khiển led 77 Bảng 8.1 Bảng mã điều khiển mã liệu đầu bàn phím Hexa 84 Bảng 9.1 Bảng mã điều khiển quét hàng led ma trận 91 Bảng 9.2 Bảng mã phông chữ hiển thị led ma trận 91 Bảng 11.1 Bảng mã số liệu nút nhấn 111 Danh mục hình vẽ TT Tên hình vẽ Trang 10 Hình 1.1 Kiến trúc Von-Neuman 11 Hình 1.2 Kiến trúc Havard Hình 1.3 Cơ chế pipelining 12 Hình 2.1 Vi điều khiển PIC16F877A/PIC16F874A dạng sơ đồ chân 16 Hình 2.2 Sơ đồ khối vi điều khiển PIC16F877A Hình 2.3 Bộ nhớ chương trình 18 Hình 2.4 Sơ đồ nhớ liệu PIC16F877A 20 Hình 2.5 Sơ đồ khối Timer0 25 Hình 2.6 Sơ đồ khối Timer1 26 10 Hình 2.7 Sơ đồ khối Timer2 27 11 Hình 2.8 Sơ đồ khối chuyển đổi ADC 30 12 Hình 2.9 Các cách lưu kết chuyển đổi AD 30 13 Hình 2.10 Ngun lí hoạt động so sánh đơn giản 31 14 Hình 2.11 Các chế độ hoạt động comparator 32 15 Hình 4.1 Sơ đồ nguyên lý mạch led đơn 50 16 Hình 5.1 Sơ đồ nguyên lý hình LCD16x2 57 17 Hình 6.1 Sơ đồ nguyên lý mạch điều khiển động bước 69 18 Hình 6.2 Hình ảnh thực tế động bước 69 19 Hình 6.3 Giản đồ xung điều khiển động bước 70 20 Hình 7.1 Sơ đồ nguyên lý hình LED 76 6 19 21 Hình 8.1 Sơ đồ nguyên lý mạch bàn phím Hexa 83 22 Hình 9.1 Sơ đồ nguyên lý hình LED ma trận 90 23 Hình 10.1 Sơ đồ mạch chân vào AT89S51 101 24 Hình 11.1 Sơ đồ ngun lý mạch nút nhấn 110 GIÁO TRÌNH MƠ ĐUN Tên mô đun: Vi điều khiển Mã mô đun: MĐ 6510305.31 Vị trí, tính chất, ý nghĩa vai trị mơ đun: - Vị trí mơ đun: Mơ đun bố trí dạy sau học xong môn học mô đun, môn học kỹ thuật sở - Tính chất mơ đun: Là mơ đun kỹ thuật, thuộc mô đun đào tạo nghề bắt buộc - Ý nghĩa vai trị mơ đun: Trong dây chuyền sản xuất, thiết bị tự động đơn lẻ hệ nhúng việc ứng dụng vi điều khiển đặc biệt họ vi điều khiển tích hợp nhiều khối ngoại vi lĩnh vực phổ biến nhằm tăng tính linh hoạt, độ xác, giảm giá thành độ ổn định hệ thống Mục tiêu mơ đun: Về kiến thức: - Trình bày cấu trúc, ứng dụng vi điều khiển công nghiệp - Kiểm tra viết chương trình điều khiển Về kỹ năng: - Sử dụng thiết bị dùng vi điều khiển - Viết chương trình điều khiển - Xác định nguyên nhân gây hư hỏng xảy thực tế Năng lực tự chủ trách nhiệm: - Rèn luyện cho sinh viên thái độ nghiêm túc, cẩn thận, xác học tập thực cơng việc Nội dung mô đun: BÀI 1: TỔNG QUAN VỀ VI ĐIỀU KHIỂN PIC MĐ 6510305.31.01 Giới thiệu Bài giới thiệu cho người học vi điều khiển Pic Pic họ vi điều khiển RISC sản xuất cơng ty Microchip Technology Dịng PIC PIC1650 phát triển Microelectronics Divisiont PIC bắt nguồn từ chữ viết tắt “Programmable IntelligentComputer” (Máy tính khả trình thơng minh) sản phẩm hãng General Instruments đặt cho dòng sản phẩm họ PIC1650 Mục tiêu - Giúp người học hiểu rõ vi điều khiển Pic - Biết kiến trúc kiến trúc vi điều khiển Pic - Định hướng thao tác cho người học dòng Pic cách lựa chọn vi điều khiển Pic Nội dung Pic PIC viết tắt “Programable Intelligent Computer”, tạm dịch “máy tính thơng minh khả trình” hãng Genenral Instrument đặt tên cho vi điều khiển họ: PIC1650 thiết kế để dùng làm thiết bị ngoại vi cho vi điều khiển CP1600 Vi điều khiển sau nghiên cứu phát triển thêm từ hình thành nên dịng vi điều khiển PIC ngày Kiến trúc Pic Cấu trúc phần cứng vi điều khiển thiết kế theo hai dạng kiến trúc: kiến trúc Von Neuman kiến trúc Havard 2.1 Kiến trúc Von Neuman Còn gọi kiến trúc Princeton, cách tổ chức nhớ kiểu kiến trúc nhớ Bus liệu Thời kỳ đầu kỷ nguyên máy tính, nhớ khơng có độ tin cậy hay tạo lỗi hệ thống Chính mà kiểu kiến trúc ưa chuộng, dễ dàng thiết kế, nâng cao độ tin cậy hệ thống dễ dàng thay vùng nhớ bị lỗi kỹ thuật Nhờ lợi mà thời gian kiểu kiến trúc thương mại sản xuất Tuy nhiên có số nhược điểm: hạn chế băng thông, thực nhiều lần lấy liệu cho lệnh, thực song song thao tác Chính phổ biến kiến trúc Von Neumann mà hầu hết loại Vi Điều Khiến xây dựng quanh cấu trúc này, giá thành nhớ rẻ nhiều độ tin cậy tăng lên nhiều Von Neumann Architecture 8-bit Bus CPU Program & Data Memory Hình 1.1: Kiến trúc Von-Neuman 2.2 Kiến trúc Harvard Havard có khơng gian nhớ dành cho nhớ liệu nhớ chương trình riêng biệt Lợi hiệu kiểu liệu có Bus liệu riêng biệt hoạt động đồng thời phục vụ cho nhớ liệu nhớ chương trình: Trong CPU lấy liệu từ nhớ chương trình, đọc ghi liệu vùng nhớ liệu Một lợi khác kiến trúc Harvard độ rộng Bus nhớ chương trình Bus liệu khác Khơng phải tất tất loại Vi điều khiển có kiến trúc Harvard điều có lợi này, PIC có Do bus có độ rộng khác nên độ rộng Bus nhớ chương trình rộng nhớ liệu Với PIC-8bit Bus dự liệu ln 8-bit, nhiên Bus nhớ chương trình rộng hơn, tùy thuộc mục đích loại PIC Với PIC 8-bit có loại phân chia thành loại có độ rộng Bus nhớ chương trình 12-bit, 14bit, 16-bit Bus nhớ chương trình rộng đưa liệu từ nhớ chương trình nhiều chu kỳ máy 10 Chú ý: Bit khơng có tác dụng sử dụng Timer2 làm nguồn xung tốc độ BAUD cho Port nối tiếp Bit 2: TR2: Bit cho phép Timer2 bắt đầu hoạt động = Cho phép Timer2 hoạt động = Không cho phép Timer2 hoạt động Bit 1: CT2#: Bit lựa chọn nguồn xung cung cấp cho Timer2 = Nguồn xung lấy từ chân T2 = Nguồn xung lấy từ dao động thạch anh Bit 0: CP/RL2#: Bit cho phép tự động cập nhật giá trị vào Timer2 chế độ đọc tần số = Cho phép tự động cập nhật giá trị = Không cho phép tự động cập giá trị Chú ý: Bit khơng có tác dụng sử dụng Timer2 làm nguồn xung tốc độ BAUD cho Port nối tiếp  Cấu trúc chương trình ngắt - Chương trình phục vụ ngắt ngồi: void { interrupt_intx (void) interrupt y IEx = 0; //Chương trình điều khiển ngắt ngồi intx } Trong đó: + x: tên ngắt tương ứng + y: mức ưu tiên ngắt với giá trị: 0, 1, 2, (0 mức ưu tiên cao nhất) - Chương trình phục vụ ngắt Timer: void interrupt_timerx (void) interrupt y { TFx = 0; //Chương trình điều khiển ngắt Timerx } Trong đó: + x: tên ngắt Timer tương ứng + y: mức ưu tiên ngắt với giá trị: 0, 1, 2, (0 mức ưu tiên cao nhất) 106 Bài tập thực hành: Lập trình đếm sản phẩm khoảng thời gian định sử dụng ngắt  Dụng cụ chuẩn bị: + Đồng hồ số + Kit thực hành vi điều khiển 8051 + Ocillocope + Mạch nạp AT89S52 + Các loại cáp kết nối sợi, sợi, sợi  Đề bài: Học sinh tự thiết kế lập trình theo yêu cầu sau: Yêu cầu: - Thiết kế lưu đồ thuật tốn lập trình đếm sản phẩm vịng 10s sử dụng cảm biến hồng ngoại để phát vật chắn Số sản phẩm đếm được hiển thị lên hình LCD16x2 Sau 10s chương trình khơng cho phép đếm sản phẩm qua - Sử dụng cáp để kết nối tín hiệu đầu mạch đếm sản phẩm với chân ngắt INT0 Các chân điều khiển LCD nối với chân bit thấp P1 Các chân liệu LCD nối với P3  Phần trả lời: ( Học sinh vẽ lưu đồ thuật tốn lập trình máy tính )  Chương trình : - Học sinh tự viết chương trình máy tính chạy thử Kit thực hành 3.Chương trình tham khảo Đề 1: Sử dụng ngắt Timer viết chương trình điều khiển Led đơn LD0 LD1theo yêu cầu sau: Led đơn LD0 nhấp nháy liên tục vòng 2s sau tắt chuyển sang led đơn LD1 nhấp nháy 10 lần Quá trình lặp lặp lại liên tục Led đơn LD0 nối với P1^0 LD1 nối với P1^1 - Chương trình: #include #include #include sbit LD0 = 107 P1^0; sbit LD1 = P1^1; unsigned int counter = 0; void delay_us (unsigned int du_lieu) { unsigned int i; for(i=0;i

Ngày đăng: 05/01/2023, 17:19