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

Bài giảng hệ thống nhúng ths lưu hoàng

10 0 0

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Nội dung

glkjglkjg Nội dung môn học HỆ THỐNG NHÚNG Khái niệm Hệ thống nhúng Ơn tập Lập trình C Giới thiệu ARM THS LƯU HOÀNG KIT ARM STM32F407 Discovery Các phần mềm lập trình ARM Các tập KIT ARM STM32F407 Discovery Tiểu luận TRƯỜNG ĐẠI HỌC BÀ RỊA – VŨNG TÀU VIỆN CNNT - ĐIỆN - ĐIỆN TỬ Tài liệu tham khảo Mục đích mơn học  Bài giảng Hệ thống nhúng – ĐH  Nắm khái niệm chung hệ thống nhúng BRVT  Lập trình hệ thống nhúng –  Có kiến thức ARM Hồng Trang, Bùi Quốc Bảo – NXB ĐHQG TPHCM  Có khả lập trình C cho ARM  Lập trình nhúng – Vũ Đức Lung, Trần Ngọc Đức – NXB ĐHQG TPHCM  Có khả tự xây dựng ứng dụng nhúng ARM loại VĐK khác  Hệ thống điều khiển nhúng – Lưu Hồng Việt  Web: hocarm.org glkjglkjg Đánh giá kết học tập  Bài kiểm tra (20% điểm)  Điểm chuyên cần (20% điểm)     KHÁI NIỆM VỀ HỆ THỐNG NHÚNG Kiểm tra 45’ vào học kỳ Đi học đầy đủ nghiêm túc Làm đủ kiểm tra đạt trung bình KHÁI NI Ệ M HỆ THỐ NG NHÚNG Ứ NG DỤNG CỦA HỆ THỐ N G NHÚNG Điểm cuối kỳ (60% điểm)  Tiểu luận nhóm: Thiết kế hệ thống nhúng dùng ARM STM32F407 HỆ THỐNG NHÚNG LÀ GÌ? HỆ THỐNG NHÚNG LÀ GÌ?  Hệ thống nhúng (embedded system) thuật ngữ để hệ thống có khả tự trị nhúng vào môi trường hay hệ thống mẹ  Là hệ thống tích hợp phần cứng phần mềm phục vụ toán chuyên dụng nhiều lĩnh vực cơng nghiệp, tự động hố điều khiển, quan trắc truyền tin Đặc điểm hệ thống nhúng hoạt động ổn định có tính tự động hố cao glkjglkjg HỆ THỐNG NHÚNG LÀ GÌ? HỆ THỐNG NHÚNG LÀ GÌ?  Một hệ thống nhúng có nhiều microcomputer bên  Hệ thống nhúng thường thiết kế để thực Một vi điều khiển (microcontroller) microcomputer kết hợp với xử lý(Processor), RAM, ROM, cổng I/O thành khối Đây loại thường dùng cho hệ thống nhúng nhiều rẻ, kích thước nhỏ đáp ứng yêu cầu tiêu thụ lượng thấp chức chuyên biệt  Một hệ thống nhúng thực một vài chức định, thường kèm với yêu cầu cụ thể bao gồm số thiết bị máy móc phần cứng chuyên dụng  Hệ thống nhúng tối ưu hóa nhằm giảm thiểu kích thước chi phí sản xuất  Các hệ thống nhúng thường sản xuất hàng loạt với số lượng lớn 10 HỆ THỐNG NHÚNG VỚI MÁY TÍNH 11 HỆ THỐNG NHÚNG VỚI MÁY TÍNH COMPUTER WASHING MACHINE Sử dụng phần cứng phần mềm Sử dụng phần cứng phần mềm Khả xử lý linh hoạt nhiều tác vụ với tốc độ cao Chỉ có khả thực cơng việc chun biệt hệ thống thiết kế riêng Khả xử lý lượng liệu lớn Khả xử lý lượng liệu giới hạn 12 glkjglkjg ỨNG DỤNG CỦA HỆ THỐNG NHÚNG ỨNG DỤNG CỦA HỆ THỐNG NHÚNG  VD: Xe ơtơ ngày có 50 hệ thống máy tính  Các thiết bị điều khiển  Ơtơ, tàu điện  Truyền thơng  Thiết bị y tế  Hệ thống đo lường  Tồ nhà thơng minh  Thiết bị dây chuyền sản xuất  Robot  Thiết bị gia dụng  13 14 ỨNG DỤNG CỦA HỆ THỐNG NHÚNG ỨNG DỤNG CỦA HỆ THỐNG NHÚNG  VD: Hệ thống tự động hóa cơng nghiệp 15 16 glkjglkjg VI XỬ LÝ TRONG HỆ THỐNG NHÚNG LẬP TRÌNH C CHO VI ĐIỀU KHIỂN Tùy thuộc vào ứng dụng giá thành, người thiết kế định loại vi xử lý dùng hệ thống nhúng  Họ 8086  PowerPC  Họ 8051  PIC  AVR  ARM  … 17 MỘT SỐ KHÁI NIỆM NGÔN NGỮ LẬP TRÌNH C CẤU TRÚC ĐIỀU KHIỂN VÀ HÀM 18 Các kiểu dữ liệu Một số khái niệm C cho Vi điều khiển  Một chương trình C thường bao gồm thành phần như: Tên kiểu liệu (Data Số byte type) char unsigned char int unsigned int long unsigned long float o Các kiểu liệu o thích (comments) o biểu thức (expressions) o câu lệnh (statements) o khối (blocks) o toán tử (operator) Khoảng liệu (Range) –128 to 127 or to 255 to 255 –32,768 to 32,767 to 65,535 –2,147,483,648 to 2,147,483,647 to 4,294,967,295 digits of precision o cấu trúc điều khiển (Flow controls) o hàm (functions) 19 20 glkjglkjg Chú thích (comments)  Có cách để tạo phần thích C là: Tiền xử lý (preprocessor)  Tiền xử lý tiện ích ngơn ngữ C, preprocessor o thích dịng dấu “//” ví dụ: trình biên dịch xử lý trước tất phần khác //day la chu thich o thích block cách kẹp block cần thích vào /* ….*/  Preprocessor bắt đầu dấu “#”  Trong ngơn ngữ C có hai preprocessors sử dụng phổ ví dụ: biến #include #define /* Ban co the type bat ky chu thich nao block Ngay ca ban xuong dong  #include định file đính kèm trình biên dịch Phan chu thich thuong co mau chu la green  #define để định nghĩa chuỗi thay macro */ 21 22 Tiền xử lý (preprocessor) Biểu thức (Expressions)  #include delay.h  Biểu thức phần câu lệnh /* đính kèm nội dung file delay.h lúc biên dịch */  Biểu thức bao gồm biến, tốn tử, gọi hàm…, biểu thức trả giá trị đơn Biểu thức câu  #define Lamp1 PORTA.5 lệnh hoàn chỉnh /* định nghĩa Lamp1 thay thể cho PORTA.5 */  #define max (a,b) ((a)>(b)? (a): (b))  Ví dụ: A>B /* định nghĩa macro tìm số lớn số a b, chương trình bạn gọi x=max(2,3) kết thu x=3 */ 23 24 glkjglkjg Câu lệnh (Statement)  Câu lệnh dịng lệnh hồn chỉnh, bao gồm Khối (Blocks)  Khối kết hợp nhiều câu lệnh để thực keywords, biểu thức câu lệnh khác chung nhiệm vụ  Câu lệnh kết thúc dấu “;”  Khối bao dấu mở khối “{“ đóng khối “}”  Ví dụ: if(A>B) A=A-B; … câu lệnh  Ví dụ khối: 25 26 Toán tử (Operators)  Toán tử ký hiệu báo cho trình biên dịch nhiệm vụ cần thực Bảng 1: toán tử đại số o Các toán tử đại số dùng thực phép toán đại số quen thuộc o Chú ý phân biệt y=x++ y=++x  Các bảng tóm tắt tốn tử C dùng cho lập trình AVR 27 28 glkjglkjg Mảng chuỗi (Array anh String) Bảng 2: Tốn tử truy cập kích thước o Toán tử [] thường sử dụng dùng mảng, phần tử thứ i mảng truy xuất thông qua [i] o Mảng tập hợp biến giống có tên gọi o Chú ý mảng C o Các phần tử mảng xác định số (bắt đầu từ 0) o Kích thước mảng cố định o VD: int a[4] = {1,2,3,4}; int b = a[0]; 29 30 Mảng chuỗi (Array anh String) o Chuỗi tương tự mảng, ngoại trừ Chuỗi có số lượng phần tử thay đổi o Các phần tử chuỗi ký tự ASCII kết thúc Con trỏ (Pointer) o Con trỏ biến chứa địa o Giá trị trỏ thay đổi o VD: char *p; char *k; giá trị p = 0x2000; o Chuỗi khai báo trỏ kiểu char *p = 1; o VD: char * mystring = “embedded”; k = p+2; *k = *p+1; 31 32 glkjglkjg Phép toán với Con trỏ Bảng 3: Toán tử Logic quan hệ o Toán tử Logic quan hệ: thực phép so sánh logic, o Phép cộng: Con trỏ vào địa đầu thường dùng làm điều kiện cấu trúc điều khiển đối tượng (object) Cộng vào trỏ làm đến đối tượng o Phép so sánh: Khi so sánh trỏ, giá trị chúng mang coi số không dấu 33 34 Bảng 4: Toán tử thao tác Bit Bảng 5: Các toán tử khác o Toán tử thao tác Bit (Bitwise operator): toán tử thực Operator Name bit nhị phân số Operator Name ~ & 35 Example Bitwise complement NOT ~x Bitwise AND x&y () Funtion Example Delay(10) Defined (type) Changes bits to and bits to Bitwise AND of x and y | Bitwise OR x|y Bitwise OR of x and y >> Right shift x>>3 Bits in x shifted right bit positions

Ngày đăng: 02/03/2023, 07:43

w