1. Trang chủ
  2. » Luận Văn - Báo Cáo

Báo cáo giữa kỳ vi điều khiển và ứng dụng đề tài 3 INTERRUPT

42 6 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 42
Dung lượng 11,86 MB

Nội dung

Vi Điều Khiển Ứng Dụng Đề tài 3: INTERRUPT Giáo viên hướng dẫn : TS.Võ Duy Thành Nhóm: Sinh viên thực : Phạm Anh Dũng - 20181428 Phạm Quốc Huy - 20181534 Phạm Thành Long - 20181623 Phạm Quốc Huy - 20173961 1 NỘI DUNG CHÍNH I TỔNG QUAN VỀ NGẮT II GIỚI THIỆU VỀ STM32F103C8T6 III NGẮT NGOÀI TRÊN STM32F103C8T6 IV THỰC HÀNH NGẮT NGOÀI TRÊN CHIP STM32F103C8T6 2 I TỔNG QUAN VỀ NGẮT  Ngắt (Interrupt): trình xử lý thơng tin vi xử lý Khi có kiện khẩn cấp bên bên vi điều khiển xảy ra, buộc CPU tạm dừng thực chương trình tại, phục vụ nhiệm vụ mà ngắt yêu cầu – nhiệm vụ gọi trình phục vụ ngắt (ISR: Interrupt Service Routine) Sau kết thúc chương trình ngắt CPU quay trở lại vị trí trước để thực tiếp nhiệm vụ dang dở  Một số ngắt phổ biến vi điều khiển: • Ngắt ngồi: Sự kiện thay đổi sườn tín hiệu (edge) sườn lên, sườn xuống, 2. • Ngắt UART: Thường sử dụng ngắt nhận, kiện buffer nhận đủ byte liệu • Ngắt ADC: Thường sử dụng hồn thành việc chuyển đổi ADC • Ngắt Timer: Thường sử dụng tràn ghi đếm, giá trị đếm với ghi so sánh

Báo cáo kỳ: Vi Điều Khiển Ứng Dụng Đề tài 3: INTERRUPT Giáo viên hướng dẫn : TS.Võ Duy Thành Nhóm: Sinh viên thực : Phạm Anh Dũng - 20181428 Phạm Quốc Huy - 20181534 Phạm Thành Long - 20181623 Phạm Quốc Huy - 20173961 1 NỘI DUNG CHÍNH I TỔNG QUAN VỀ NGẮT II GIỚI THIỆU VỀ STM32F103C8T6 III NGẮT NGOÀI TRÊN STM32F103C8T6 IV THỰC HÀNH NGẮT NGOÀI TRÊN CHIP STM32F103C8T6 2 I TỔNG QUAN VỀ NGẮT  Ngắt (Interrupt): trình xử lý thơng tin vi xử lý Khi có kiện khẩn cấp bên bên vi điều khiển xảy ra, buộc CPU tạm dừng thực chương trình tại, phục vụ nhiệm vụ mà ngắt yêu cầu – nhiệm vụ gọi trình phục vụ ngắt (ISR: Interrupt Service Routine) Sau kết thúc chương trình ngắt CPU quay trở lại vị trí trước để thực tiếp nhiệm vụ dang dở  Một số ngắt phổ biến vi điều khiển: • Ngắt ngồi: Sự kiện thay đổi sườn tín hiệu (edge) sườn lên, sườn xuống, 2.  • Ngắt UART: Thường sử dụng ngắt nhận, kiện buffer nhận đủ byte liệu • Ngắt ADC: Thường sử dụng hồn thành việc chuyển đổi ADC • Ngắt Timer: Thường sử dụng tràn ghi đếm, giá trị đếm với ghi so sánh 3 I TỔNG QUAN VỀ NGẮT  Điểm mạnh ngắt: • Vi điều khiển phục vụ nhiều thiết bị, thứ tự thực dựa mức độ ưu tiên gán cho • Vi điều khiển tạm thời ngưng việc thực thi chương trình để phục vụ chương trình khác • Khơng lãng phí thời gian cho thiết bị không cần phục vụ  Ứng dụng: Ngắt giúp chương trình xử lý theo việc, đáp ứng kiện thay đổi mức logic từ chân vi điều khiển (ngắt ngồi), nhận kí tự (ngắt nhận UART)… • Để khơng lãng phí thời gian CPU • Để CPU thực nhiều việc lúc • Thực trao đổi thơng tin với ngoại vi chậm 4 I TỔNG QUAN VỀ NGẮT  Hoạt động ngắt: • Khi chương trình thực câu lệnh thứ k mà gặp tín hiệu báo ngắt vi xử lý thực xong câu lệnh thứ k kiểm tra ngắt • Nếu ngắt khơng chấp nhận vi xử lý bỏ qua ngắt thực câu lệnh • Nếu ngắt chấp nhận vi xử lý tạm dừng chương trình xử lý ngắt Sau xử lý xong chương trình ngắt quay trở thực câu lệnh chương trình 5 I TỔNG QUAN VỀ NGẮT  Các bước thực ngắt vi điều khiển: • Bước 1: Thực xong câu lệnh thực (câu lệnh mã máy sau trình compiler, asembler từ ngôn ngữ bật cao người dùng viết).  • Bước 2: Lưu địa câu lệnh thực lưu trạng thái lượng hoạt động vào vùng nhớ Stack ( Quá trình stacking) • Bước 3: Xóa bit cho phép ngắt toàn cục ghi trạng thái, đưa vi điều khiển chế độ hoạt động bình thường (active mode) chế độ tiết kiệm lượng Bit cho phép ngắt bật lên lại phép ngắt chồng ngắt (Nested Interrupt) • Bước 4: Vi điều khiển thực thi chương trình phục vụ ngắt (ISR) cách nạp địa câu lệnh chương trình phục vụ ngắt vào ghi PC (Địa địa vecter ngắt interrupt vector table) • Bước 5: Khi thực xong chương trình phục vụ ngắt, vi điều khiển thực trình unstacking: nạp lại giá trị ghi PC lưu, bật lại bit cho phép ngắt toàn cục, quay trạng thái lượng ban đầu 6 I TỔNG QUAN VỀ NGẮT  Hoạt động ngắt lồng nhau: Khi ngắt xảy thời điểm, ngắt có mức ưu tiên cao thực trước Khi ngắt chạy, có ngắt khác có mức độ ưu tiên cao gọi thực ngắt ngắt 7 II GIỚI THIỆU VỀ STM32F103C8T6 Hình 1: STM32F103C8T6 Blue Pill 8 II GIỚI THIỆU VỀ STM32F103C8T6 Giới thiệu sơ lược • STM32 dịng chip phổ biến ST với nhiều họ thơng dụng F0,F1,F2,F3,F4… • STM32F103 thuộc họ F1 với lõi ARM COTEX M3 • STM32F103 vi điều khiển 32 bit, tốc độ tối đa 72Mhz • Giá thành STM32F103 rẻ so với loại vi điều khiển có chức tương tự • Mạch nạp cơng cụ lập trình đa dạng dễ sử dụng Ứng dụng • Dùng cho driver để điều khiển ứng dụng • Máy tính thiết bị ngoại vi chơi game • GPS • Thiết bị lập trình PLC • Máy in, máy quét, hệ thống cảnh báo, thiết bị liên lạc nội bộ… 9 II GIỚI THIỆU VỀ STM32F103C8T6 Một số thơng tin khác • Phần mềm lập trình: có nhiều trình biên dịch cho STM32 STM32CubeXIDE, IAR Embedded Workbench, Keil C… • Thư viện lập trình: có nhiều loại thư viện lập trình cho STM32 như: STM32snippets, STM32Cube LL, STM32Cube HAL, Standard Peripheral Libraries, Mbed core Mỗi thư viện có ưu khuyết điểm riêng, có Standard Peripheral Libraries đời lâu thông dụng, hỗ trợ nhiều ngoại vi dễ hiểu rõ chất lập trình • Mạch nạp: Có nhiều loại mạch nạp : ULINK, J-LINK , CMSIS-DAP, STLINK… có mạch nạp STLINK có giá thành rẻ debug lỗi tốt 1010 III NGẮT NGỒI TRÊN STM32F103C8T6  Cấu hình ngắt ngồi STM32CubeMX: • Bước 3: Lựa chọn trạng thái cho GPIO chế độ cho ngắt 2828 III NGẮT NGỒI TRÊN STM32F103C8T6  Cấu hình ngắt ngồi STM32CubeMX: • Bước 4: Cho phép ngắt Line lựa chọn mức độ ưu tiên cho ngắt 2929 III NGẮT NGỒI TRÊN STM32F103C8T6  Cấu hình ngắt ngồi STM32CubeMX: • Bước 5: Cấu hình xung Clock 3030 III NGẮT NGỒI TRÊN STM32F103C8T6  Cấu hình ngắt ngồi STM32CubeMX: • Bước 6: Đặt tên cho Project -> Lựa chọn phần mềm lập trình (KeilC V5) -> Generate Code 3131 III NGẮT NGOÀI TRÊN STM32F103C8T6  Một số hàm quan trọng lập trình ngắt KeilC V5: 3232 III NGẮT NGOÀI TRÊN STM32F103C8T6  Một số hàm quan trọng lập trình ngắt KeilC V5: 3333 III NGẮT NGOÀI TRÊN STM32F103C8T6  Một số hàm quan trọng lập trình ngắt KeilC V5: 3434 III NGẮT NGOÀI TRÊN STM32F103C8T6  Một số hàm quan trọng lập trình ngắt KeilC V5: 3535 IV THỰC HÀNH NGẮT NGOÀI  Nội dung: Ứng dụng ngắt ngồi vào chương trình bật tắt đèn Led 3636 IV THỰC HÀNH NGẮT NGOÀI 3737 IV THỰC HÀNH NGẮT NGOÀI 3838 IV THỰC HÀNH NGẮT NGOÀI 3939 IV THỰC HÀNH NGẮT NGOÀI 4040 TÀI LIỆU THAM KHẢO 4141 Xin cảm ơn Thầy bạn lắng nghe ! 4242 ... COTEX M3 • STM32F1 03 vi điều khiển 32 bit, tốc độ tối đa 72Mhz • Giá thành STM32F1 03 rẻ so với loại vi điều khiển có chức tương tự • Mạch nạp cơng cụ lập trình đa dạng dễ sử dụng Ứng dụng • Dùng... Generate Code 31 31 III NGẮT NGOÀI TRÊN STM32F103C8T6  Một số hàm quan trọng lập trình ngắt KeilC V5: 32 32 III NGẮT NGỒI TRÊN STM32F103C8T6  Một số hàm quan trọng lập trình ngắt KeilC V5: 33 33 III NGẮT... full-speed interface 131 3 III NGẮT NGOÀI TRÊN STM32F103C8T6  NVIC – Nested vectored interrupt controller: là điều khiển xử lý ngắt có MCU STM32F103C8T6  Một số thơng số tính NVIC: • Bao gồm 68

Ngày đăng: 16/12/2021, 21:20

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w