1. Trang chủ
  2. » Địa lý

Giáo trình Hệ thống nhúng: Phần 1

10 17 0

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

THÔNG TIN TÀI LIỆU

Nội dung

Khác với cac máy tính đa chức năng, chẳng hạn như may tính cá nhân, một hệ thống nhúng chỉ thực hiện một hoặc một vài chức năng nhất định, thường đi kèm với những yêu cầu cụ thể và bao[r]

(1)

BỘ CÔNG THƯƠNG

TRƯỜNG CAO ĐẲNG KỸ THUẬT CAO THẮNG

KHOA ĐIỆN TỬ TIN HỌC



LẠI NGUYỄN DUY

LƯU VĂN ĐẠI

GIÁO TRÌNH

HỆ THỐNG NHÚNG

(2)(3)

MỤC LỤC

CHƯƠNG TỔNG QUAN VỀ HỆ THỐNG NHÚNG

1.1. KHÁI NIỆM VỀ HỆ THỐNG NHÚNG

1.2. LỊCH SỬ PHÁT TRIỂN CỦA HỆ THỐNG NHÚNG

1.3. ĐẶC ĐIỂM HỆ THỐNG NHÚNG

1.4. KIẾN TRÚC ĐIỂN HÌNH CỦA HỆ THỐNG NHÚNG

1.5. PHÂN LOẠI HỆ THỐNG NHÚNG

1.6. PHẠM VI ỨNG DỤNG CỦA HỆ THỐNG NHÚNG

1.7. CÂU HỎI VÀ BÀI TẬP

CHƯƠNG CÁC THÀNH PHẦN CỦA MỘT HỆ THỐNG NHÚNG

2.1. CÁC THÀNH PHẦN PHẦN CỨNG CỦA HỆ THỐNG NHÚNG

2.1.1 Đơ n v x lý trung tâm CPU

2.1.2 Bộ nhớ 10

2.1.3 Ngoại vi 13

2.2. MỘT SỐ NỀN TẢNG PHẦN CỨNG THÔNG DỤNG 21

2.3. CÁC THÀNH PHẦN PHẦN MỀM HỆ THỐNG NHÚNG 23

2.3.1 Phần mềm nhúng gì? 23

2.3.2 Đặc điểm phần mềm nhúng 24

2.3.3 Quy trình phát triển phần mềm nhúng 24

2.4. CÂU HỎI VÀ BÀI TẬP 27

CHƯƠNG XÂY DỰNG HỆ THỐNG NHÚNG 29

3.1. CÁC BƯỚC XÂY DỰNG PHẦN CỨNG 29

3.1.1 Lựa chọn kiến trúc CPU 29

3.1.2 Lựa chọn CPU vendor 29

3.1.3 CPU support hệ điều hành nào 29

3.1.4 Tìm hiểu đặc tả, chế boot CPU 30

3.1.5 Xây dựng sơ đồ nguyên lý cho hệ thống 30

3.1.6 Thiết kế PCB 30

3.2. CÁC BƯỚC XÂY DỰNG PHẦN MỀM 31

3.2.1 Cài đặt boot loader 31

3.2.2 Cài đặt Linux OS (porting) 32

3.2.3 Phát triển driver 32

3.2.4 Xây dựng root file system (rootfs) 32

3.2.5 Phát triển phần mềm ứng dụng 32

(4)

CHƯƠNG LẬP TRÌNH NHÚNG TRÊN ARM 34

4.1. GIỚI THIỆU ARM STM32 34

4.2. GIỚI THIỆU KIT 36

4.2.1 Đặc tính kit 36

4.2.2 Đặc tính STM32F103RDT6 37

4.2.3 Sơ đồ nguyên lý board 39

4.2.4 Hướng dẫn set jump cho board 41

4.3. TẠO DỰ ÁN VỚI KEIL ARM 46

4.3.1 Bộ thư viện CMSIS 46

4.3.2 Khởi tạo dự án mới 46

4.3.3 Cấu hình project 49

4.3.4 Trình diễn 51

4.4. CÁC BƯỚC NẠP CHƯƠNG TRÌNH 51

4.5. LẬP TRÌNH NHÚNG TRÊN ARM 54

4.5.1 Điều khiển LED đơn 54

4.5.2 Đọc trạng thái nút nhấn 58

4.5.3 Điều khiển LED đoạn 59

4.5.4 LCD 16X2 bit 62

4.5.5 Lập trình UART giao tiếp PC 64

4.6. CÂU HỎI VÀ BÀI TẬP 70

(5)

Chương Tổng quan hệ thống nhúng

1

CHƯƠNG TỔNG QUAN VỀ HỆ THỐNG

NHÚNG

1.1. KHÁI NIỆM VỀ HỆ THỐNG NHÚNG

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ẹ Đó hệ thống tích hợp phần cứng phần phềm để thực một nhóm chức chuyên biệt cụ thể

Hệ thống nhúng (HTN) thường thiết kế để thực chức chuyên biệt Khác với cac máy tính đa chức năng, chẳng hạn may tính cá nhân, 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 chun dụng mà ta khơng tìm thấy máy tính đa nói chung Vì hệ thống xây dựng cho số nhiệm vụ định nên nhà thiết kế 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 HTN đa dạng, phong phú chủng loại Đó thiết bị cầm tay nhỏ gọn đồng hồ kĩ thuật số máy chơi nhạc MP3, sản phẩm lớn đèn giao thơng, kiểm sốt nhà máy hệ thống kiểm soát máy lượng hạt nhân Xét độ phức tạp, hệ thống nhúng đơn giản với vi điều khiển phức tạp với nhiều đơn vị, thiết bị ngoại vi mạng lưới nằm gọn lớp vỏ máy lớn

Các thiết bị PDA máy tính cầm tay có số đặc điểm tương tự với hệ thống nhúng hệ điều hành vi xử lý điều khiển chúng thiết bị hệ thống nhúng thật chúng thiết bị đa năng, cho phép sử dụng nhiều ứng dụng kết nối đến nhiều thiết bị ngoại vi

Hình 1.1 Một số thiết bị nhúng thông dụng * Một số ví dụ điển hình hệ thống nhúng

 Các hệ thống dẫn đường không lưu, hệ thống định vị toàn cầu, vệ tinh

 Các thiết bị gia dụng: tủ lạnh, lị vi sóng, lị nướng,…

 Các thiết bị kết nối mạng: router, hub, gateway,…

(6)

Chương Tổng quan hệ thống nhúng

2

 Các thiết bị y tế: máy thẩm thấu, máy điều hòa nhịp tim,…

 Các máy trả lời tự động

 Dây chuyền sản xuất tự động công nghiệp, robots

1.2. LỊCH SỬ PHÁT TRIỂN CỦA HỆ THỐNG NHÚNG

Hệ thống nhúng Apollo Guidance Computer (Máy tính Dẫn đường Apollo) phát triển Charles Stark Draper phịng thí nghiệm trường đại học MIT Hệ thống nhúng sản xuất hàng loạt máy hướng dẫn cho tên lửa quân vào năm 1961 Nó máy hướng dẫn Autonetics D-17, xây dựng sử dụng bóng bán dẫn đĩa cứng để trì nhớ Khi Minuteman II đưa vào sản xuất năm 1996, D-17 thay với máy tính sử dụng mạch tích hợp Tính thiết kế chủ yếu máy tính Minuteman đưa thuật tốn lập trình lại sau để làm cho tên lửa xác hơn, máy tính kiểm tra tên lửa, giảm trọng lượng cáp điện đầu nối điện

Từ ứng dụng vào năm 1960, hệ thống nhúng giảm giá phát triển mạnh mẽ khả xử lý Bộ vi xử lý hướng đến người tiêu dùng Intel 4004, phát minh phục vụ máy tính điện tử hệ thống nhỏ khác Tuy nhiên cần chip nhớ hỗ trợ khác Vào năm cuối 1970, xử lý bit sản xuất, nhìn chung chúng cần đến chip nhớ bên

Vào thập niên 80, kỹ thuật mạch tích hợp đạt trình độ cao dẫn đến nhiều thành phần đưa vào chip xử lý Các vi xử lý gọi vi điều khiển chấp nhận rộng rãi Với giá thấp, vi điều khiển trở nên hấp dẫn để xây dựng hệ thống chuyên dụng Đã có bùng nổ số lượng hệ thống nhúng tất lĩnh vực thị trường số nhà đầu tư sản xuất theo hướng Ví dụ, nhiều chip xử lý đặc biệt xuất với nhiều giao diện lập trình kiểu song song truyền thống để kết nối vi xử lý Vào cuối năm 80, hệ thống nhúng trở nên phổ biến hầu hết thiết bị điện tử khuynh hướng tiếp tục

Cho đến nay, khái niệm hệ thống nhúng nhiều người chấp nhận là: hệ thống thực số chức đặc biệt có sử dụng vi xử lý Khơng có hệ thống nhúng có phần mềm

1.3. ĐẶC ĐIỂM HỆ THỐNG NHÚNG

* Hệ thống nhúng hệ thống máy tính

Hệ thống nhúng thường khối riêng biệt mà hệ thống phức tạp nằm thiết bị mà điều khiển

* Có tài nguyên giới hạn

(7)

Chương Tổng quan hệ thống nhúng

3 * Chuyên dụng

Hệ thống nhúng thiết kế để thực chức chuyên biệt Đây điểm khác biệt so với hệ thống máy tính khác máy tính cá nhân siêu máy tính thực nhiều chức khác với phép tính phức tạp Chuyên dụng giúp nâng cao tính dễ sử dụng tiết kiệm tài nguyên

* Tương tác với giới thực

 Cảm nhận môi trường: cảm biến nhiệt độ, độ ẩm, ánh sáng, trọng lượng…, cảm nhận tín hiệu điện (máy dị nhiễu điện từ)

 Tác động trở lại mơi trường (hú cịi báo động phát khói tịa nhà…)

 Tốc độ tương tác phải đáp ứng thời gian thực (hệ thống còi báo hỏa, hệ thống chống trộm tơ,…)

 Có thể có khơng có giao diện giao tiếp với người dùng máy tính cá nhân Với hệ thống đơn giản, thiết bị nhúng sử dụng LCD nhỏ, Joystick, LED, nút bấm, thị chữ số thường kèm với menu đơn giản Hiện kết nối đến hệ thống nhúng thông qua giao diện Web, việc cho phép giảm thiểu chi phí cho hình cung cấp khả hiển thị nhập liệu thuận tiện thuận tiện thông qua mạng máy tính khác

* Yêu cầu chất lượng, ổn định độ tin cậy cao

Nhiều loại thiết bị nhúng có yêu cầu cao chất lượng, tính ổn định độ tin cậy Lỗi hệ thống nhúng gây tai nạn khủng khiếp: Hệ thống điều khiển máy bay, tên lửa, hệ thống điều khiển động ô tô…Lỗi hệ thống nhúng khơng sửa (vd: vệ tinh nhân tạo), sửa chi phí cao (thu hồi sản phẩm thiết kế lại tồn bộ…) Vì việc phát triển hệ thống nhúng yêu cầu quy trình kiểm tra – kiểm thử cẩn thận

Thông thường với hệ thống yêu cầu độ ACTIVE cao việc trang bị hệ thống dự phòng, backup điều chắn

1.4. KIẾN TRÚC ĐIỂN HÌNH CỦA HỆ THỐNG NHÚNG

Mỗi hệ thống nhúng có kiến trúc thổng thể sau:

Hình 1.2 Kiến trúc tổng thể hệ thống nhúng

* Hardware

Vi xử lý, nhớ, tụ điện, điện trở, mạch tích hợp, bảng mạch in, connector, … Tất nhiên, thành phần bắt buột phải có cho tất hệ thống nhúng

(8)

Chương Tổng quan hệ thống nhúng

4

 Vi xử lý: Bộ xử lý thiết kế riêng, bao gồm phần xử lý Có thể thay đổi thêm bớt thành phần ngoại vi cách linh hoạt

 Vi điều khiển: Được tích hợp thành phần ngoại vi chip để giảm kích thước hệ thống

 SoC (System on Chip): Một vi mạch tích hợp cao, hỗ trợ đa nhân xử lý nhiều giao tiếp chip Giúp tăng tốc thời gian thiết kế hệ thống Sử dụng mạch tích hợp cho ứng dụng cụ thể (ASIC) mạch logic khả trình (FPGA)

* Phần mềm hệ thống

 Khơng bắt buộc phải có

 Device driver: UART, Ethernet, ADC…

 Hệ điều hành nhúng: eCos, ucLinux, VxWorks, Monta Vista Linux, BIOS, QNX…

 Quản lý nhớ, quản lý tiến trình, quản lý chia tài ngun

 Có thể tái sử dụng hệ thống nhúng khác

* Phần mềm ứng dụng

 Không bắt buộc phải có

 Quyết định hành vi (chức năng) hệ thống nhúng

 Khó tái sử dụng hệ thống nhúng khác

1.5. PHÂN LOẠI HỆ THỐNG NHÚNG

*Hệ thống phân phối hệ thống không phân phối:

 Các hệ thống không phân phối thường hoạt động riêng biệt

 Hệ thống phân phối phối kết thiết bị kết nối với

*Hệ thống liệu hệ thống điều khiển

 Các hệ thống liệu dùng để xử lý liệu, xử lý cung cấp liệu thơng tin cần thiết có u cầu

 Các hệ thống điều khiển dùng để điều khiển hệ thống, điều khiển quy trình sản xuất thiết bị

1.6. PHẠM VI ỨNG DỤNG CỦA HỆ THỐNG NHÚNG

Danh sách bao gồm lĩnh vực quan trọng sử dụng đến hệ thống nhúng

Điện tử ô tô: Ơ tơ đại bán chúng có lượng đáng kể thiết bị điện tử Trong có hệ thống điều khiển túi khí, hệ thống điều khiển động cơ, hệ thống phanh, điều hòa nhiệt độ, hệ thống GPS, tính an tồn, nhiều

Điện tử máy bay: Một phần quan trọng tổng giá trị máy bay thiết bị xử lý thông tin, có hệ thống điều khiển bay, hệ thống chống va chạm, hệ thống thông tin phi công, v.v Độ tin cậy mang tầm quan trọng tối cao

Tầu hỏa: Đối với tầu hỏa, tình tương tự với ô tô máy bay Một lần

nữa, tính đảm bảo an tồn đóng góp phần quan trọng tổng giá trị tầu hỏa, độ tin cậy quan trọng

Viễn thông: Điện thoại di động trở trành thị trường phát triển

(9)

Chương Tổng quan hệ thống nhúng

5

Y tế: Có tiềm lớn cho việc nâng cấp dịch vụ y tế việc xử lý thông tin thiết bị y tế

Quân sự: xử lý thông tin dùng thiết bị quân từ nhiều năm Thực tế, số máy tính máy tính phân tích tín hiệu radar quân

Các hệ chứng thực: dùng để chứng thực người dùng Ví dụ SMARTpen

thiết bị hình bút, có chức phân tích tham số vật lý người dùng kí tên Các tham số vật lý gồm độ nghiêng, lực ấn gia tốc Các giá trị truyền cho PC nơi so sánh với thơng tin có sẵn người dùng Kết so sánh ảnh chữ kí cách kí với thơng tin lưu trữ Ngồi cịn hệ thống nhận dạng khn mặt nhận vân tay

Điện gia dụng: thiết bị audio video, TV, máy chơi điện tử

Tịa nhà thơng minh (smart buildings): Có thể dùng tin học để tăng mức độ tiện nghi tòa nhà, giảm tiêu thụ lượng, tăng an toàn bảo mật Các hệ thống vốn không liên hệ với phải kết nối để phục vụ mục đích Có xu hướng tới việc tích hợp điều hịa nhiệt độ, ánh sáng, kiểm sốt truy nhập, kế tốn phân phối thơng tin vào hệ thống đơn Ví dụ, tiết kiệm lượng làm mát, sưởi ấm, chiếu sáng phịng trống Sử dụng mành cửa sổ cách thơng minh tối ưu hóa đèn điều hịa nhiệt độ

Robotics: lĩnh vực truyền thống hệ thống nhúng Các khía cạnh

khí quan trọng robot Hầu hết đặc điểm mô tả áp dụng cho robotics

Hình 1.3 Các thành phần thiết bị điện tử công việc thiết kế

1.7. CÂU HỎI VÀ BÀI TẬP

1 Thế hệ thống nhúng, nêu lĩnh vực ứng dụng hệ thống nhúng Trình bày lịch sử phát triển đặc điểm hệ thống nhúng

3 Phân loại hệ thống nhúng

(10)

Chương Các thành phần hệ thống nhúng

6

CHƯƠNG CÁC THÀNH PHẦN CỦA MỘT

HỆ THỐNG NHÚNG

2.1. CÁC THÀNH PHẦN PHẦN CỨNG CỦA HỆ THỐNG NHÚNG

Hệ thố ng nhúng mộ t hệ thố ng vi xử lý đả m nhiệ m mộ t c riêng biệ t Tuy nhiên thiế t kế hệ thố ng nhúng đòi hỏ i phả i quan tâm nhiề u yế u tố hơ n mộ t hệ thố ng vi xử lý thông thư ng Mộ t hệ thố ng nhúng thông thư ng mộ t hệ thố ng dự a vi xử lý mà chủ yế u vi xử lý 32 bit kế t hợ p vớ i nhớ , ngoạ i vi cầ n thiế t phụ c vụ cho c củ a hệ thố ng Vi điề u khiể n ARM thư ng lự a chọ n tố i u cho hệ thố ng nhúng bở i chúng hỗ trợ nhiề u Các hệ thố ng nhúng sử dụ ng ARM làm giả m ngoạ i vi, làm cho hệ thố ng n giả n ng vẫ n đáp ứ ng đư ợ c yêu cầ u Hiệ n ARM đư ợ c nhiề u hãng nghiên u sả n xuấ t vớ i tính ngày vư ợ t trộ i

Mộ t hệ thố ng nhúng bả n xem bao gồ m phầ n ng vi xử lý, vi điề u khiể n, nhớ , ngoạ i vi

Hình 2.1 Kiến trúc điển hinh chip VXL/VĐK nhúng

Ngày đăng: 09/03/2021, 02:35

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w