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

Đồ án cuối kỳ đề tài một số giao tiếp với STM32F103

34 30 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 34
Dung lượng 1,36 MB

Nội dung

Nghiên cứu và tìm hiểu về nguyên lý hoạt động của board STM32F103C8T6  Tìm hiểu được các chức năng từng linh kiện được dùng trong đề tài 2. Đặc vấn đề 2.1. Tóm lược nghiên cứu trong và ngoài nước  Trong nước: Chúng ta còn chưa sử dụng, phát triển thiết bị đo nhiệt độ, độ ẩm rộng rãi, chỉ ứng dụng trong một vài lĩnh vực trong một phạm vi nhỏ trong cả nước.  Ngoài nước: Đối với các nước phát triển họ đã ứng dụng rộng rãi các thiết bị này vào nhiều lĩnh vực để thúc đẩy nhu cầu phát triển của đất nước họ 2.2. Một số tài liệu liên quan  Đinh Công Đoan, Bài giảng Hệ thống nhúng 2015.Lưu hành nội bộ.  ARM VietNam, Kiến trúc cơ bản của STM32_ARM Cortex M3, 2010.  http://hshop.vn/products/kit-ra-chon-stm32f103c8t6  Và một số tài liệu khác trên Internet 2.3. Lý do chọn đề tài Với sự biến đổi về thời tiết như hiện nay thì nhu cầu của người dùng về một thiết bị để có thể theo dõi được nhiệt độ, độ ẩm hiện tại ngày càng phổ biến. Vì thế nên nhóm em đã chọn đề tài này

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.HCM KHOA ĐÀO TẠO CHẤT LƯỢNG CAO ĐỒ ÁN CUỐI KỲ ĐỀ TÀI: MỘT SỐ GIAO TIẾP VỚI STM32F103 Giảng viên hướng dẫn : Đinh Công Đoan Môn học: Hệ Thống Nhúng Sinh viên thực hiện: Trần Việt Tấn -14110271 Nguyễn Vũ Minh Sang -14110414 Nguyễn Minh Tân -14110366 Mục lục I Mở đầu Tóm tắt Đặc vấn đề 2.1 Tóm lược nghiên cứu ngồi nước 2.2 Một số tài liệu liên quan .4 2.3 Lý chọn đề tài 2.4 Mục tiêu .4 HỆ THỐNG NHÚNG 2.5 Đối tượng phạm vi nghiên cứu 2.5.1 Đối tượng 2.5.2 Phạm vi nghiên cứu II 2.6 Phương pháp nghiên cứu 2.7 Nội dung đề tài .5 Chương 1: Giới thiệu vi xử lý ARM Cortex-M3 Tổng quan Sự tinh vi Sự an toàn Tính bảo mật .9 GIẢNG VIÊN HƯỚNG DẪN: ĐINH CÔNG ĐOAN Phát triển phần mềm 10 Dòng Performance Access STM32 10 Bộ xử lý ARM Cortex-M3 11 7.1 Giới thiệu sơ lược .11 7.2 Hiệu xuất cao 11 7.3 Giảm chi phí phát triển lượng tiêu thụ 12 7.4 Tích hợp khả dị lỗi theo vết lập trình 12 Vì phải dùng Cortex-M3 đề tài nghiên cứu .13 III Chương 2: Kiến trúc hệ thống ARM Cortex-M3 14 Cấu trúc nhớ .15 Tối đa hiệu 16 2.1 Vịng khóa pha (Phase Lock Loop) 16 Cấu hình cho bus 18 HỆ2.2 THỐNG NHÚNG 2.3 Flash Buffer 18 2.4 Direct Memory Access .19 Tập lệnh Thumb-2 .21 Đơn vị bảo vệ nhớ (MPU) 22 Gỡ lỗi (Debug) theo vết (Trace) 23 Ma trận bus giao diện liên kết 24 IV Chương 3: Giới thiệu kit STM32F103C8T6 .25 Thông số kỹ thuật 25 1.1 Mạch CPU .25 1.2 Thành phần chức linh kiện .26 GIẢNG VIÊN HƯỚNG DẪN: ĐINH CÔNG ĐOAN Mạch nguyên lí mạch layout đề tài 27 2.1 Mạch nguyên lý 27 2.2 Mạch layout 27 V Chương 4: Ứng dụng 28 Mô tả ứng dụng 28 Nạp chương trình từ KeilC 28 VI 2.1 Các bước nạp 28 2.2 Ý nghĩa hàm 31 Kết luận 32 Kết đạt .32 Ưu điểm 32 Nhược điểm 32 THỐNG HướngNHÚNG phát triển đề tài .32 HỆ GIẢNG VIÊN HƯỚNG DẪN: ĐINH CƠNG ĐOAN I Mở đầu Tóm tắt  Nghiên cứu tìm hiểu nguyên lý hoạt động board STM32F103C8T6  Tìm hiểu chức linh kiện dùng đề tài Đặc vấn đề 2.1 Tóm lược nghiên cứu ngồi nước  Trong nước: Chúng ta cịn chưa sử dụng, phát triển thiết bị đo nhiệt độ, độ ẩm rộng rãi, ứng dụng vài lĩnh vực phạm vi nhỏ nước  Ngoài nước: Đối với nước phát triển họ ứng dụng rộng rãi thiết bị vào nhiều lĩnh vực để thúc đẩy nhu cầu phát triển đất nước họ 2.2 Một số tài liệu liên quan  Đinh Công Đoan, Bài giảng Hệ thống nhúng 2015.Lưu hành nội HỆ THỐNG NHÚNG  ARM VietNam, Kiến trúc STM32_ARM Cortex M3, 2010  http://hshop.vn/products/kit-ra-chon-stm32f103c8t6  2.3 Và số tài liệu khác Internet Lý chọn đề tài Với biến đổi thời tiết nhu cầu người dùng thiết bị để theo dõi nhiệt độ, độ ẩm ngày phổ biến Vì nên nhóm em chọn đề tài 2.4 Mục tiêu  Phục vụ nhu cầu nghiên cứu tìm hiểu cơng nghệ  Phục vụ nhu cầu muốn biết nhiệt độ độ ẩm môi trường xung quanh 2.5 Đối tượng phạm vi nghiên cứu 2.5.1 Đối tượng GIẢNG VIÊN HƯỚNG DẪN: ĐINH CƠNG ĐOAN Mơi trường xung quanh nhiệt độ, độ ẩm 2.5.2 Phạm vi nghiên cứu  Nghiên cứu mức độ hiểu chạy Board mạch  Cách tạo project Keil-C nạp code vào board mạch  Trong phạm vi nhỏ 2.6 Phương pháp nghiên cứu Phương pháp tiếp xúc trực tiếp với trường 2.7 Nội dung đề tài Một số giao tiếp với board STM32F103 Ở nhóm em làm mạch ứng dụng để đo nhiệt độ, độ ẩm II Chương 1: Giới thiệu vi xử lý ARM Cortex-M3 Tổng quan Dịng ARM Cortex bao gồm cấu hình khác kiến trúc ARMv7  Cấu hình A cho ứng dụng tinh vi, yêu cầu cao chạy hệ điều hành mở phức tạp Linux, Android vv vv HỆ THỐNG NHÚNG  Cấu hình R dành cho hệ thống thời gian thực  Cấu hình M tối ưu cho ứng dụng vi điều khiển, cần tiết kiệm chi phí Bộ vi xử lý Cortex-M3 vi xử lý ARM dựa kiến trúc ARMv7-M thiết kế đặc biệt để đạt hiệu suất cao ứng dụng nhúng cần tiết kiệm lượng chi phí Đẩy tần số hoạt động cao làm tăng hiệu suất kèm với việc tiêu thụ lượng nhiều việc thiết kế phức tạp Nói cách khác, thực tác vụ cách nâng cao hiệu tính tốn hoạt động tần số thấp dẫn đến đơn giản hóa việc thiết kế tốn lượng Trung tâm vi xử lý Cortex-M3 lõi có cấu trúc đường ống tiên tiến tầng, dựa kiến trúc Harvard GIẢNG VIÊN HƯỚNG DẪN: ĐINH CÔNG ĐOAN Lõi Cortex-M3:  Lõi trung tâm Cortex-M3 dựa kiến trúc Harvard, đặc trưng tách biệt vùng nhớ chứa liệu chương trình có bus riêng để truy cập Vì đọc lúc lệnh liệu từ nhớ, vi xử lý Cortex-M3 thực nhiều hoạt động song song, tăng tốc thực thi ứng dụng HỆ THỐNG NHÚNG  Lõi Cortex có cấu trúc đường ống gồm tầng: Instruction Fetch, Instruction Decode Instruction Execute Khi gặp lệnh nhánh, tầng decode chứa thị nạp lệnh suy đốn dẫn đến việc thực thi nhanh Bộ xử lý nạp lệnh dự định rẽ nhánh giai đoạn giải mã GIẢNG VIÊN HƯỚNG DẪN: ĐINH CÔNG ĐOAN Sau đó, giai đoạn thực thi, việc rẽ nhánh giải vi xử lý phân tích xem đâu lệnh thực thi Nếu việc rẽ nhánh khơng chọn lệnh sẵn sàng Cịn việc rẽ nhánh chọn lệnh rẽ nhánh sẵn sàng lập tức, hạn chế thời gian rỗi chu kỳ  Bộ vi xử lý Cortex-M3 vi xử lý 32-bit, với độ rộng đường dẫn liệu 32 bit, dải ghi giao tiếp nhớ Có 13 ghi đa dụng, hai trỏ ngăn xếp, ghi liên kết, đếm chương trình số ghi đặc biệt có ghi trạng thái chương trình  Bộ vi xử lý Cortex-M3 hỗ trợ hai chế độ hoạt động (Thread Handler) hai mức truy cập tài nguyên lõi xử lí (đặc quyền không đặc quyền), tạo điều kiện cho việc cài đặt hệ thống mở phức tạp bảo mật Những dịng mã khơng đặc quyền bị giới hạn không cho phép truy cập vào số tài nguyên quan trọng (một số lệnh đặc biệt HỆ THỐNG NHÚNG vùng nhớ định).   Chế độ Thread chế độ hoạt động tiêu biểu hỗ trợ mã đặc quyền không đặc quyền Bộ vi xử lý vào chế độ Handler ngoại lệ (exception) xảy tất mã đặc quyền chế độ  Khả địa hóa 2^32=4gb địa chỉ: địa định nghĩa sẵn, dành riêng cho mã lệnh (vùng mã lệnh), SRAM (vùng nhớ), nhớ/thiết bị bên ngoài, thiết bị ngoại vi bên bên ngồi Ngồi cịn có vùng nhớ đặc biệt dành riêng cho nhà cung cấp GIẢNG VIÊN HƯỚNG DẪN: ĐINH CÔNG ĐOAN HỆ THỐNG NHÚNG   NVIC (Nested Vectored Interrupt Controller) thành phần tích hợp vi xử lý Cortex-M3 có khả xử lý ngắt linh hoạt nhanh chóng Trong cài đặt chuẩn, cung cấp NMI (Non-Maskable Interrupt) 32 ngắt vật lý đa dụng với mức ưu tiên pre-emption Nó cấu hình từ đến 240 ngắt vật lý với tối đa 256 mức độ ưu tiên Sự tinh vi Các ngoại vi STM32 giống vi điều khiển khác, hai chuyển đổi ADC, timer, 12C, SPI, CAN, USB RTC Tuy nhiên, ngoại vi có nhiều đặc điểm thú vị Ví dụ ADC 12-bit có tích hợp cảm biến nhiệt độ để tự động hiệu chỉnh nhiệt độ thay đổi hỗ trợ nhiều chế độ chuyển đổi Mỗi định thời có khối capture compare (dùng để bắt kiên với tính GIẢNG VIÊN HƯỚNG DẪN: ĐINH CÔNG ĐOAN input capture tạo dạng sóng ngõ với output compare), khối định thời liên kết với khối định thời khác để tạo mảng đinh thời tinh vi STM32 có hỗ trợ thêm tối đa 12 kênh DMA (Direct Memory Access) Mỗi kênh dùng để truyền liệu đến ghi ngoại vi từ ghi ngoại vi với kích thước từ (word) liệu truyền 8/16 32-bit Mỗi ngoại vi có điều khiển DMA (DMA Controller) kèm dùng để gửi đòi hỏi liệu yêu cầu STM32 vi điều khiển tiêu thụ lượng thấp đạt hiệu suất cao Nó hoạt động điện áp 2V, chạy tần số 72Mhz dịng tiêu thụ có 36mA với tất khối bên vi điều khiển hoạt động Sự an toàn Ngày ứng dụng đại phải hoạt động môi trường khắt khe, địi hỏi tính an tồn cao, địi hỏi sức mạnh xử lý nhiều thiết bị tinh vi Để đáp ứng yêu cầu khắt khe đó, STM32 cung cấp số tính phần cứng hỗ trợ ứng dụng cách tốt Chúng bao gồm phát điện áp thấp, HỆ THỐNG NHÚNG hệ thống bảo vệ xung clock hai Watchdogs Bộ Watchdog cửa sổ (windowed watchdog) Watch phải làm tươi khung thời gian xác định Nếu nhấn sớm, q muộn, Watchdog kích hoạt Bộ thứ hai Watchdog độc lập (independent watchdog), có dao động bên tách biệt với xung nhịp hệ thống bên ngồi (thường thạch anh) tự động chuyển sang dùng dao động nội RC 8Mhz Tính bảo mật Một yêu cầu khắt khe khác thiết kế đại nhu cầu bảo mật mã chương trình để ngăn chặn chép trái phép phần mềm Bộ nhớ Flash STM32 khóa để chống truy cập đọc Flash thơng qua cổng Debug Khi tính bảo vệ đọc kích hoạt, nhớ Flash bảo vệ chống ghi để ngăn chặn mã không tin cậy chèn vào bảng vector ngắt Hơn bảo vệ ghi cho phép phần cịn lại nhớ Flash STM32 có đồng hồ thời gian GIẢNG VIÊN HƯỚNG DẪN: ĐINH CÔNG ĐOAN 10 Đoạn mã cấu hình STM32 sử dụng dao động PLL HỆ THỐNG 2.2 NHÚNG Cấu hình cho bus Khi PLL chọn toàn dao động cho hệ thống, Cortex CPU hoạt động mức 72Mhz tồn phần cịn lại hệ thống hoạt động mức tối ưu người dùng cần phải cấu hình AHB APB thơng qua thah ghi cầu nối 2.3 Flash Buffer Khi xem xét kiến trúc hệ thống STM32 thấy nhân Cortex kết nối Flash thông qua đưởng truyền liệu chuyên biệt I-Bus Bus liệu hoạt động tần số với CPU CPU lấy dao động từ PLL bus liệu hoạt động mức xung nhịp cao 72Mhz Cortex CPU truy cập Flash khơng đáng kể Tuy nhiên PLL kích hoạt sử dụng để tạo dao động cho CPU, thời gian truy cập vào Flash trang bị nhớ đệm 64-bit Hai nhớ đệm thực thi lệnh đọc ghi liệu 64-bit Flash chuyển lệnh 16 32bit cho nhân Cortex để thực thi Kỹ thuật hoạt động tốt lệnh thuộc tập lệnh Thumb- GIẢNG VIÊN HƯỚNG DẪN: ĐINH CÔNG ĐOAN 20 lệnh có khả dự báo dẫn (Branch Prediction) Cortex pipeline Hệ thống đệm Flash quản lý ghi cấu hình Flag.Cùng với việc kích hoạt đệm tiền xử ký, phải điều chỉnh số trạng thái chờ Flash đọc 8bytes lệnh từ nhớ Flash Độ trễ thiết lập sau: 0< SYSCLK

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

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

TÀI LIỆU LIÊN QUAN

w