intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Giáo trình Lắp ráp, lập trình vi xử lý (Nghề: Điện tử công nghiệp - Trình độ: Cao đẳng) - CĐ Kỹ thuật Công nghệ Quy Nhơn

Chia sẻ: _ _ | Ngày: | Loại File: PDF | Số trang:66

16
lượt xem
6
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Giáo trình "Lắp ráp, lập trình vi xử lý (Nghề: Điện tử công nghiệp - Trình độ: Cao đẳng)" biên soạn với mục tiêu giúp người học trình bày được kiến thức cơ bản về vi điều khiển PIC; nắm được ứng dụng của các khối chức năng trong vi điều khiển PIC. Mời các bạn cùng tham khảo!

Chủ đề:
Lưu

Nội dung Text: Giáo trình Lắp ráp, lập trình vi xử lý (Nghề: Điện tử công nghiệp - Trình độ: Cao đẳng) - CĐ Kỹ thuật Công nghệ Quy Nhơn

  1. UBND TỈNH BÌNH ĐỊNH TRƯỜNG CAO ĐẲNG KỸ THUẬT CÔNG NGHỆ QUY NHƠN GIÁO TRÌNH MÔ ĐUN: LẮP RÁP, LẬP TRÌNH VI XỬ LÝ NGHỀ: ĐIỆN TỬ CÔNG NGHIỆP TRÌNH ĐỘ: CAO ĐẲNG Ban hành kèm theo Quyết định số: 99/QĐ-CĐKTCNQN ngày 14 tháng 3 năm 2018 của Hiệu trưởng Trường Cao đẳng Kỹ thuật Công nghệ Quy Nhơn Bình Định, năm 2018
  2. TUYÊN BỐ BẢN QUYỀN Tài liệu này thuộc loại sách giáo trình nên các nguồn thông tin có thể được phép dùng nguyên bản hoặc trích dùng cho các mục đích về đào tạo và tham khảo. Mọi mục đích khác mang tính lệch lạc hoặc sử dụng với mục đích kinh doanh thiếu lành mạnh sẽ bị nghiêm cấm. 1
  3. LỜI GIỚI THIỆU Để thực hiện biên soạn giáo trình đào tạo nghề Điện tử công nghiệp ở trình độ Cao Đẳng, giáo trình Lắp ráp, lập trình vi xử lý là một trong những giáo trình mô đun đào tạo chuyên ngành được biên soạn theo nội dung chương trình khung được Bộ Lao động Thương binh Xã hội và Tổng cục Dạy Nghề phê duyệt. Nội dung biên soạn ngắn gọn, dễ hiểu, tích hợp kiến thức và kỹ năng chặt chẽ với nhau, logíc. Khi biên soạn, nhóm biên soạn đã cố gắng cập nhật những kiến thức mới có liên quan đến nội dung chương trình đào tạo và phù hợp với mục tiêu đào tạo, nội dung lý thuyết và thực hành được biên soạn gắn với nhu cầu thực tế trong sản xuất đồng thời có tính thực tiển cao. Trong quá trình sử dụng giáo trình, tuỳ theo yêu cầu cũng như khoa học và công nghệ phát triển có thể điều chỉnh thời gian và bổ sung những kiên thức mới cho phù hợp. Trong giáo trình, chúng tôi có đề ra nội dung thực tập của từng bài để người học cũng cố và áp dụng kiến thức phù hợp với kỹ năng. Tuy nhiên, tùy theo điều kiện cơ sở vật chất và trang thiết bị, các trường có thề sử dụng cho phù hợp. Mặc dù đã cố gắng tổ chức biên soạn để đáp ứng được mục tiêu đào tạo nhưng không tránh được những khiếm khuyết. Rất mong nhận được đóng góp ý kiến của các thầy, cô giáo, bạn đọc để nhóm biên soạn sẽ hiệu chỉnh hoàn thiện hơn. Các ý kiến đóng góp xin gửi về Trường Cao Đẳng Kỹ thuật công nghệ Quy Nhơn, 172 An Dương Vương, TP. Quy Nhơn. Tham gia biên soạn 1. Lê Tấn Hòa 2
  4. MỤC LỤC Trang LỜI GIỚI THIỆU............................................................................................ 1 BÀI 1: NHẬP MÔN VI ĐIỀU KHIỂN PIC................................................... 5 1.1. Giới thiệu về vi điều khiển PIC 18F4550.................................................5 1.2. Tạo project trên phần mềm lập trình PIC C complier (CCS)................... 7 1.3. Lập trình ứng dụng đơn giản.................................................................. 10 BÀI 2: ĐIỀU KHIỂN HIỂN THỊ SỬ DỤNG VI ĐIỀU KHIỂN PIC...........17 2.1. Lập trình điểu khiển hiển thị 1 Led đơn sáng tắt....................................17 2.2. Lập trình điểu khiển hiển thị 2 Led đơn sáng tắt luân phiên.................. 18 2.3. Lập trình điểu khiển hiển thị 8 Led đơn................................................. 19 2.4. Lập trình điểu khiển hiển thị số trên 1 Led 7 đoạn.................................21 2.5. Lập trình điều khiển hiển thị số trên 2 led 7 đoạn:................................. 24 2.6. Lập trình điều khiển hiển thị ký tự trên Led ma trận 8x8.......................25 2.7. Lập trình điều khiển hiển thị ký tự trên màn hình LCD 1602................ 29 BÀI 3: SỬ DỤNG BỘ ĐỊNH THỜI TIMER................................................33 3.1. Cài đặt chế độ cho bộ định thời.............................................................. 33 3.2. Lập trình ứng dụng sử dụng bộ định thời............................................... 36 BÀI 4: SỬ DỤNG NGẮT............................................................................. 41 4.1. Lập trình điều khiển hoạt động ngắt timer:............................................ 41 4.2. Lập trình ứng dụng sử dụng ngắt ngoài..................................................45 4.3. Lập trình hiển thị số lượng sản phẩm đếm được sử dụng ngắt ngoài.....47 4.4. Lập trình hệ thống đo tốc độ quay động cơ sử dụng ngắt ngoài INT2 và ngắt timer...................................................................................................50 BÀI 5: ĐIỀU CHẾ ĐỘ RỘNG XUNG PWM, ADC.................................... 53 5.1. Lập trình điều chế độ rộng xung.............................................................53 5.2. Lập trình đọc giá trị nhiệt độ từ cảm biến nhiệt LM35.......................... 56 BÀI 6: LẬP TRÌNH ĐIỀU KHIỂN THIẾT BỊ TỪ MÁY TÍNH................. 60 6.1. Lý thuyết liên quan:................................................................................60 6.2. Trình tự thực hiện................................................................................... 60 6.3. Thực hành:..............................................................................................60 6.4. Câu hỏi ôn tập:........................................................................................61 3
  5. GIÁO TRÌNH MÔN ĐUN Tên mô đun: Lắp ráp, lập trình vi xử lý Mã mô đun: MĐ 21 Vị trí, tính chất, ý nghĩa và vai trò của mô đun: - Vị trí: Mô đun được bố trí dạy sau khi học xong môn Lắp ráp, sửa chữa mạch xung - số; - Tính chất: là mô – đun trang bị kiến thức và kỹ năng lập trình ứng dụng sử dụng vi điều khiển PIC. Mục tiêu của mô đun: - Kiến thức: + Trình bày được kiến thức cơ bản về vi điều khiển PIC + Trình bày được ứng dụng của các khối chức năng trong vi điều khiển PIC - Kỹ năng: + Lập trình điều khiển các ứng dụng đơn giản sử dụng vi điều khiển PIC. - Năng lực tự chủ và trách nhiệm: + Rèn luyện cho người học thái độ nghiêm túc, cẩn thận, chính xác trong học tập và thực hiện công việc. Nội dung của mô đun: Số Thời gian(giờ) Tên các bài trong mô đun TT TS LT TH KT 1 Bài 1: Nhập môn vi điều khiển PIC 6 2 4 Bài 2: Điều khiển hiển thị sử dụng vi điều 2 30 10 19 1 khiển PIC 3 Bài 3: Sử dụng bộ định thời Timer 12 4 8 4 Bài 4: Sử dụng ngắt 24 8 15 1 5 Bài 5: Điều chế độ rộng xung PWM, ADC 12 4 8 Bài 6: Lập trình điều khiển thiết bị từ máy 6 6 2 4 tính Tổng cộng 90 30 58 2 4
  6. BÀI 1: NHẬP MÔN VI ĐIỀU KHIỂN PIC Mã bài: MĐ21-01 Thời gian: 06 giờ (LT: 01, TH: 03, Tự học:02) Mục tiêu thực hiện: - Mô tả được cấu trúc họ vi điều khiển PIC. - Trình bày được cấu trúc của một chương trình viết bằng CCS PIC. 1.1. Giới thiệu về vi điều khiển PIC 18F4550 PIC là một họ vi điều khiển RISC được sản xuất bởi công ty Microchip Technology. PIC bắt nguồn từ chữ viết tắt của “Programmable Intelligent Computer”(Máy tính khả trình thông minh). Ngày nay rất nhiều dòng PIC được xuất xưởng với hàng loạt các module ngoại vi tích hợp sẵn(như USART, PWM, ADC…), với bộ nhớ chương trình từ 512 Word đến 32K Word. Hiện nay có khá nhiều dòng PIC và có rất nhiều khác biệt về phần cứng, nhưng chúng ta có thể điểm qua một vài nét như sau: - 8/16 bit CPU, xây dựng theo kiến truc Harvard có sửa đổi - Flash và ROM có thể tuỳ chọn từ 256 byte đến 256 Kbyte - Các cổng Xuất/ Nhập(I/O)(mức logic thường từ 0V đến 5.5V, ứng với logic 0 và logic 1) - 8/16 bit Timer - Các chuẩn giao tiếp nối tiếp đồng bộ/ khung đồng bộ USART - Bộ chuyển đổi ADC Analog-to-digital converters, 10/12 bit - Bộ so sánh điện áp(Voltage Comparator) - Các module Capture/ Compare/ PWM - LCD - MSSP Peripheral dựng cho các giao tiếp I2C, SPI. - Bộ nhớ nội EPROM – có thể ghi/xoá tới 1 triệu lần - Module Điều khiển động cơ, đọc encoder - Hỗ trợ giao tiếp USB, CAN, LIN, IrDA - Một số dòng có tích hợp bộ RF(PIC16f639, và RFPIC) - KEELOQ mờ hoá và giải mờ - DSP những tính năng xử lý tín hiệu số(dsPIC) Đặc điểm thực thi tốc độ cao của RISC CPU của họ vi diều khiển PIC16F87XA - Chỉ gồm 35 lệnh đơn. - Tất cả các lệnh là 1 chu kỳ ngoại trừ chương trình con là 2 chu kỳ. - Tốc độ hoạt động : + DC-20MHz ngõ vào xung clock. + DC-200ns chu kỳ lệnh. - Độ rộng của bộ nhớ chương trình Flash là 8K x 14word, của bộ nhớ dữ liệu(RAM) là 368 x 8bytes, của bộ nhớ dữ liệu là EPROM(RAM) là 256x8 bytes. Những đặc tính ngoại vi: - Timer0: 8-bit định thời/đếm với 8-bit PreScaler - Timer1: 16-bit định thời/đếm với PreScaler, có thể được tăng lên trong suốt chế độ Sleep qua thạch anh/ xung clock bên ngoài. 5
  7. - Timer2: 8-bit định thời/đếm với 8-bit, PreScaler và postscaler - Hai module Capture, Compare, PWM + Capture có độ rộng 16 bit, độ phân giải 12.5ns + Compare có độ rộng 16 bit, độ phân giải 200ns + Độ phân giải lớn nhất của PWM là 10bit. - Có 13 ngõ I/O có thể điều khiển trực tiếp - Dòng vào và dòng ra lớn : + 25mA dòng vào cho mỗi chân + 20mA dòng ra cho mỗi chân Các dòng PIC và cách lựa chọn vi điều khiển PIC: - PIC 12xxxx: độ dài lệnh 12 bit - PIC 16xxxx: độ dài lệnh 14 bit - PIC 18xxxx: độ dài lệnh 16 bit - C: PIC có bộ nhớ EPROM(chỉ có 16C84 là EEPROM). - F: PIC có bộ nhớ FLASH. - LF: PIC có bộ nhớ FLASH hoạt động ở mức điện áp thấp. - LV: tương tự LF, đây là ký hiệu cũ. Bên cạnh đó có một số ký hiệu xxFxxxx là bộ nhớ EEPROM, nếu có thêm chữ A ở cuối là bộ nhớ FLASH(ví dụ 16F877 có bộ nhớ EEPROM, còn 16F877A có bộ nhớ là FLASH) Hình 1.1.a. Vi điều khiền 18F4550 dạng PDIP 40 chân 6
  8. Hình 1.1.b. Vi điều khiền 18F4550 dạng TQFP 44 chân Hình 1.1.a. Vi điều khiền 18F4550 dạng QFN 44 chân 1.2. Tạo project trên phần mềm lập trình PIC C complier (CCS) 1.2.1. Lý thuyết liên quan - Giới thiệu về phần mềm CCS 7
  9. CCS là trình biên dịch lập trình ngôn ngữ C cho Vi điều khiển PIC của hãng Microchip. Chương trình là sự tích hợp của 3 trình biên dich riêng biết cho 3 dòng PIC khác nhau: ‐ PCB cho dòng PIC 12‐bit opcodes ‐ PCM cho dòng PIC 14‐bit opcodes ‐ PCH cho dòng PIC 16 và 18‐bit Tất cả 3 trình biên dịch được tích hợp lại vào trong một chương trình bao gồm cả trình soạn thảo và biên dịch là CCS. Giống như nhiều trình biên dịch C khác cho PIC, CCS giúp cho người sử dụng nắm bắt nhanh được vi điều khiển PIC và sử dụng PIC trong các dự án. Các chương trình điều khiển sẽ được thực hiện nhanh chóng và đạt hiệu quả cao thông qua việc sử dụng ngôn ngữ lạp trình cấp cao – Ngôn ngữ C. 1.2.2. Trình tự thực hiện: + Bước 1: Khởi động chương trình làm việc PIC C Compiler. Từ giao diện chương trình chọn Project ‐> New ‐> PIC Wizard. + Bước 2: Tạo một thư mục mới, vào thư mục đó và lưu tên files cần tạo + Bước 3: Thiết lập các thuộc tính của Project. Trên cửa sổ New Project hiện ra. Sổ này bao gồm nhiều Tab, mỗi Tab mô tả về một vài tính năng của con PIC. Ta sẽ chọn tính năng sử dụng tại các Tab tương ứng. Các mục chọn này chính là đề cập đến các tính năng của một con 8
  10. PIC, tùy theo từng loại mà sẽ có các Tab tương ứng. Đối với từng dự án khác nhau, khi sử dụng tính năng nào ta sẽ chọn mục đó. Tab General Tab General cho phép ta lựa chọn loại PIC mà ta sử dụng và một số lựa chọn khác như chọn tần số thạch anh dao động, thiết lập các bit CONFIG nhằm thiết lập chế độ hoạt động cho PIC. Device: Liệt kê danh sách các loại PIC 12F, 16F, 18F… Ta sẽ chọn tên Vi điều khiển PIC mà ta sử dụng trong dự án. Lấy ví dụ chọn PIC16F877A. Oscilator Frequency: Tần số thạch anh ta sử dụng, chọn 20 MHz(tùy từng loại) Fuses: Thiết lập các bit Config như: Chế độ dao động(HS, RC, Internal), chế độ bảo vệ Code, Brownout detected… Chọn kiểu con trỏ RAM là 16‐bit hay 8‐bit. Tab Communications Tab Communications liệt kê các giao tiếp nối tiếp mà một con PIC hỗ trợ, thường là RS232 và I2C, cùng với các lựa chọn để thiết lập chế độ hoạt động cho từng loại giao tiếp. Giao tiếp RS232: Mỗi một Vi điều khiển PIC hỗ trợ một cổng truyền thông RS232 chuẩn. Tab này cho phép ta lựa chọn chân Rx, Tx, tốc độ Baud, Data bit, Bit Parity… Giao tiếp I2C: Để sử dụng I2C ta tích vào nút chọn Use I2C, khi đó ta có các lựa chọn: Chân SDA, SCL, Tốc độ truyền(Fast ‐ Slow), chế độ Master hay Slave, địa chỉ cho Salve. Tab SPI and LCD Tab này liệt kê cho người dùng các lựa chọn đối với giao tiếp nối tiếp SPI, chuẩn giao tiếp tốc độ cao mà PIC hỗ trợ về phần cứng. Tab Timer Liệt kê các bộ đếm/định thời mà các con PIC dòng Mid‐range có: Timer0, timer1, timer2, WDT… Tab Analog Liệt kê các lựa chọn cho bộ chuyển đổi tương tự/số(ADC) của PIC. Tùy vào từng IC cụ thể mà có các lựa chọn khác nhau, bao gồm: ‐ Lựa chọn cổng vào tương tự ‐ Chọn chân điện áp lấy mẫu(Vref) ‐ Chọn độ phân giải: 8‐bit = 0 ~ 255 hay 10‐bit = 0~1023 ‐ Nguồn xung đồng hồ cho bộ ADC(trong hay ngoài), từ đó mà ta có được tốc độ lấy mẫu, thường ta chọn làinternal 2‐6 us. ‐ Khi không sử dụng bộ ADC ta chọn none Tab Other Tab này cho phép ta thiết lập các thông số cho các bộ Capture/ Comparator / PWM. Tab Interrupts và Tab Driver 9
  11. Tab Interrupts cho phép ta lựa chọn nguồn ngắt mà ta muốn sử dụng. Tùy vào từng loại PIC mà số lượng nguồn ngắt khác nhau, bao gồm: ngắt ngoài 0(INT0), ngắt RS232, ngắt Timer, ngắt I2C‐SPI, ngắt onchange PORTB.v.v… Tab Drivers được dùng để lựa chọn những ngoại vi mà trình dịch đã hỗ trợ các hàm giao tiếp. + Bước 4: Kết thúc tạo Project Sau các bước chọn trên, ta nhấn OK để kết thúc quả trình tạo một Project trong CCS, một Files ten_project.c được tạo ra, chứa những khai báo cần thiết cho PIC trong một Files ten_project.h. 1.2.3. Thực hành: Người học sử dụng máy tính thực hành tạo các Project theo yêu cầu của người hướng dẫn. Tên Project: Baitap_1 PIC: 18F4550 Tần số thạch anh: 20MHz (chế độ tần số cao HS) Interrupt: Ngắt ngoài 1 Folder lưu trữ: ổ D > DTCN > PIC 1.2.4. Đánh giá thực hành + Thực hiện đúng trình tự các bước ◻ + Các file project được lưu cùng 1 thư mục ◻ + Các thuộc tính của Project đúng theo yêu cầu ◻ + Chọn đúng dòng Pic theo yêu cầu ◻ 1.2.5. Câu hỏi ôn tập: 1. IC PIC 18F4550 dạng DIP có cấu tạo bao nhiêu chân? 2. IC PIC 18F4550 dạng DIP có bao nhiêu Port I/O? 1.3. Lập trình ứng dụng đơn giản 1.3.1. Lý thuyết liên quan - Khái quát ngôn ngữ C: Các hệ số đếm: Hệ nhị phân: Hệ số dùng các ký số “0” và “1” để biểu diễn số. VD: 1101, 1001 … Hệ thập phân: Hệ số dùng các ký số từ “0” đến “9” để biểu diễn số. VD: 15; 12.96; -902.6 … Hệ thập lục phân: Hệ số dùng các ký số “0” đến “9” cùng các ký tự “A” đến “F” để biểu diễn số. VD: 9AF; 6BC … Biến, hằng, mảng: Biến: Một biến được đặc trưng bởi 2 đặc tính: kiểu biến và tầm vực của biến. Biến: = ; (phần khai báo giá trị có thể có hoặc không) Biến toàn cục: 10
  12. + Biến toàn cục là biến xuất hiện khi chương trình thực thi, tồn tại suốt trong thời gian chương trình thực thi chỉ được giải phóng khi chương trình kết thúc. + Tất cả các hàm trong chương trình đều có thể truy xuất giá trị của biến toàn cục + Biến toàn cục được khai báo đầu chương trình trong phần khai báo biến Biến địa phương: + Biến địa phương là biến xuất hiện khi đoạn chương trình chứa biến địa phương thực thi, giải phóng khi đoạn chương trình đó kết thúc. + Chỉ chương trình con, đoạn chương trình chưa biến địa phương mới được truy xuất biến + Biến địa phương được khai báo trong đoạn chương trình, chương trình con Kiểu biến: + bit + signed char + long int + char + int + float + unsigned char + unsigned int + double Hằng: Hằng số trong C có ý nghĩa theo đúng hằng số toán học. Có nghĩa là giá trị của hằng số không thay đổi trong suốt quá trình chương trình thực thi. Hằng số luôn có tầm vực toàn cục. Để khai báo hằng số thuộc một kiểu dữ liệu nào đó ta thêm từ khóa “const” vào phía trước từ khóa quy định kiểu dữ liệu. VD: const int8 a = 10; Mảng: - Khai báo: const[] = {}; VD: const int8 vidu[2] = {1,2}; - Khai báo biến mảng: Khai báo tương tự khai báo mảng hằng số. Tuy nhiên không có từ khóa const và không cần cài đặt giá trị cho các phần tử của mảng(mặc định giá trị đầu sẽ là giá trị mặc định của kiểu dữ liệu mảng). Cấu trúc lệnh: Bảng Các cấu trúc lệnh trong C If(expr) stmt; [else stmt;] If(x= =25) x = 1; else x = x+1 While(expr) stmt; While(get_rtccc()!=0) Putc(‘n’); 11
  13. Do stmt while(expr); Do { Putc(c=getc()); } While(c!=0); For(expr1; expr2; expr3) stmt; For(i=1;i
  14. số. Với những hàm không có tham số thì không phải truyền. Có 3 loại truyền tham số: Truyền tham trị: Giá trị của tham số thực sự được gửi đến cho hàm. Khi thực hiện truyền tham số theo kiểu này thì hàm được gọi chỉ tác động lên bản sao của tham số gốc, do vậy nó chỉ làm thay đổi giá trị của bản sao mà không ảnh hưởng đến tham số gốc. VD: void test(int x) { x=x+10; } void main() { int n=5; test(n); cout
  15. //Phần các chỉ thị tiền xử lý #include < 18F4550.h > #include < delay.h > .... //Phần khai báo biến, hằng, mảng toàn cục Int a, b; .... // Phần khai báo hàm Prototype Void ADC_Processing() ; Void timer_INT(); … //Chương trình chính Main() {... } //Chương trình con Void ADC_Processing() {... } //Chương trình xử lý ngắt #Interrupts Void timer_INT() {... } - Hàm điều khiển xuất nhập cơ bản a. Hàm Output_low(pin), Output_high(pin) Được sử dụng để thiết lập trạng thái mức cao(high, logic 1) hoặc mức thấp(low, logic 0) cho các chân ngõ ra của vi điều khiển. Ví dụ: chuông trình tạo xung vuông với chu kỳ 500ms, duty = 50%, tại chân B0 của IC 18F4550 sẽ làm nhấp nháy 1 led. #include #use delay(clock=20000000) main() { while(1) { output_high(pin_B0); delay_ms(250); // trễ 250ms output_low(pin_B0); delay_ms(250); } // trễ 250ms } b. Output_bit(pin,value) Hàm xuất giá trị 0 hoặc 1 trên chân pin Ví dụ: chương trình tạo xung vuông chu kỳ 500ms int1 x; // khai báo x = 0 main() { while(1) { output_bit( pin_B0, !x) ; 14
  16. Delay_ms(250); } } c. Input(pin) Hàm trả về giá trị 0 hoặc 1, giá trị của chân IC. 1.3.2. Trình tự thực hiện - Bước 1: Kết nối mạch nạp PICKIT2 giữa mô đun thực hành và máy tính - Bước 2: Kiểm tra trạng thái kết nối trên phần mềm PICKIT2 - Bước 3: Tạo Project, viết chương trình trên phần mềm PIC Complier - Bước 4: Sử dụng phần mềm PICKIT2, nạp chương trình vào IC 18F4550 15
  17. - Bước 5: Vận hành hoạt động của mô đun thực hành và chỉnh sửa chương trình 1.3.3. Thực hành: Người học thực hiện viết chương trình xuất nhập cơ bản, sử dụng PICKIT 2 nạp chương trình vào vi điều khiển PIC 18F4550. Thiết bị thực hành: - Máy vi tính PC; - Mạch nạp PIC KIT 2; - Mô đun thực hành PICKIT Training. 1.3.4. Câu hỏi ôn tập: 1. Thực thi hàm “output_high(pin_B0)” chân B0 sẽ có trạng thái như thế nào? 2. Thực thi hàm “output_bit( pin_B0, 0)” chân B0 sẽ có trạng thái như thế nào? 16
  18. BÀI 2: ĐIỀU KHIỂN HIỂN THỊ SỬ DỤNG VI ĐIỀU KHIỂN PIC Mã bài: MĐ21 – 02 Thời gian: 30 giờ (LT: 05, TH: 14, Tự học: 10, KT: 01) Mục tiêu: - Trình bày được các phương pháp hiển thị dùng VĐK PIC - Xây dựng được các chương trình hiển thị ra Led đơn, Led 7 đoạn và màn hình LCD từ VĐK PIC Nội dung chính: 2.1. Lập trình điểu khiển hiển thị 1 Led đơn sáng tắt 2.1.1. Lý thuyết liên quan - Lý thuyết về led đơn: Có rất nhiều loại led đơn dùng để hiển thị. Phương pháp đơn giản như sau: Hình 2.1: Hiển thị led đơn Các led này sáng khi được cấp áp cỡ 2 V, dòng 10-20mA. Nếu sử dụng một chân ra từ vi điều khiển để bật tắt led, phải dùng thêm điện trở hạn dòng, hạn áp. Tính toán: Muốn bật đèn, ta cho chân ra vi điều khiển lên mức cao nối với đầu vào của mạch trên. Chân ra vi điều khiển ở mức logic cao có điện áp 5V. Cho điện áp rơi trên led là 2V, dòng qua là 15mA. Suy ra, điện áp rơi trên trở là 3V. Dòng qua led chính là dòng qua điện trở và bằng 15mA. Suy ra, điện trở cần dùng: R=3/15mA=200 Ω Chọn điện trở tiêu chuẩn 220 Ω - Các hàm xuất hiển thị led đơn Output_low(pin), Output_high(pin): Được sử dụng để thiết lập trạng thái mức cao(high, logic 1) hoặc mức thấp(low, logic 0) cho các chân ngõ ra của vi điều khiển. Output_bit(pin,value): Hàm xuất giá trị 0 hoặc 1 trên chân pin 2.1.2. Trình tự thực hiện - Bước 1: Viết lưu đồ thuật toán theo yêu cầu kỹ thuật 17
  19. - Bước 2: Viết chương trình dựa trên lưu đồ thuật toán #include #fuses NOWDT,PUT,HS,NOPROTECT #use delay(clock=20000000) void main() { while(TRUE) { output_high(PIN_B0); // led 1 sáng delay_ms(1000);// tạo thời gian trễ output_low(PIN_B0); // led 1 tắt delay_ms(1000);} // tạo thời gian trễ } - Bước 3: Kiểm tra và nạp chương trình qua PICKIT2 - Bước 4: Vận hành, quan sát và chỉnh sửa 2.1.3. Thực hành: Người học thực hành theo trình tự tiến hành Thiết bị thực hành: - Máy vi tính PC; - Mạch nạp PIC KIT 2; - Mô đun thực hành PICKIT Training. 2.2. Lập trình điểu khiển hiển thị 2 Led đơn sáng tắt luân phiên 2.2.1. Lý thuyết liên quan Đọc mục 2.1.1 2.2.2. Trình tự thực hiện - Bước 1: Viết lưu đồ thuật toán theo yêu cầu kỹ thuật 18
  20. - Bước 2: Viết chương trình dựa trên lưu đồ thuật toán #include #fuses NOWDT,PUT,HS,NOPROTECT #use delay(clock=20000000) void main() { while(TRUE) { output_high(PIN_B0); // led 1 sáng output_low(PIN_B1); // led 2 tắt delay_ms(1000);// tạo thời gian trễ output_low(PIN_B0); // led 2 sáng output_high(PIN_B1); // led 1 tắt delay_ms(1000);} // tạo thời gian trễ } - Bước 3: Kiểm tra và nạp chương trình qua PICKIT2 - Bước 4: Vận hành, quan sát và chỉnh sửa 2.2.3. Thực hành: Người học thực hiện viết chương trình điều khiển 2 led theo yêu cầu kỹ thuật như trên, nạp vào vi điều khiển PIC 18F4550. Thiết bị thực hành: - Máy vi tính PC; - Mạch nạp PIC KIT 2; - Mô đun thực hành PICKIT Training. 2.3. Lập trình điểu khiển hiển thị 8 Led đơn 2.3.1. Lý thuyết liên quan Đọc mục 2.1.1 2.3.2. Trình tự thực hiện - Bước 1: Viết lưu đồ thuật toán theo yêu cầu kỹ thuật 19
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2