Môn học HỆ NHÚNG

GV: Phạm Văn Thuận Bộ môn Kỹ thuật Máy tính Viện CNTT&TT- ĐH BKHN email: thuanpv@soict.hut.edu.vn

1

Mục tiêu môn học

 Sau khi kết thúc môn học này, sinh viên có thể

• Trình bày kiến trúc tổng thể và hoạt động của một

hệ thống nhúng bất kỳ

• Trình bày được kiến trúc vi điều khiển • Biết sử dụng các môi trường phát triển và lập

trình firmware cho hệ nhúng

2

• Biết lập trình ứng dụng ghép nối trên máy tính • Nắm bắt một số công nghệ mới

Hệ nhúng

Tài liệu tham khảo

 Tài liệu tham khảo chính:

• Embedded C Micheal J.Pont (8051) • Building Embedded Linux System, Karim

Yaghmour

• Linux Device Driver, Jonathan Corbet • ARM System Developer Guide-Designing and Optimizing System Software, Andrew N.Sloss

• Embedded Systems Architecture: A

3

Comprehensive Guide for Engineers and Programmers, Tammy Noergaard

Hệ nhúng

Nội dung môn học

Chương 1: Tổng quan hệ thống nhúng Chương 2: Quy trình phát triển hệ thống nhúng Chương 3: Vi điều khiển và lập trình firmware Chương 4: Hệ điều hành nhúng Chương 5: Phần mềm điều khiển trên PC Chương 6: Giới thiệu công nghệ mới

4

Hệ nhúng

Nội dung chương 1

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

5

1.1. Khái niệm hệ nhúng 1.2. Kiến trúc tổng thể hệ thống nhúng

Hệ nhúng

1.1. Khái niệm hệ nhúng

Máy tính nhúng (Embedded Computer)  Được đặt trong thiết bị khác (bao gồm cả phần

cứng và các kết cấu cơ khí) để điều khiển thiết bị đó làm việc

 Được thiết kế chuyên dụng

 Giá thành: từ vài USD đến hàng trăm ngàn USD

6

Ví dụ: • Điện thoại di động • Bộ điều khiển trong máy giặt, điều hòa nhiệt độ • Một số thiết bị mạng: Switch, Router, …

Hệ nhúng

Khái niệm hệ nhúng

Hệ nhúng (Embedded System)  Một máy tính nhúng  Nhiều máy tính nhúng liên kết với nhau

7

Hệ nhúng

Ví dụ

Bàn chải đánh răng có sử dụng vi điều khiển 8bit được lập trình cho phép

8

- Thay đổi tốc độ, thời gian, dùng pin sạc

Hệ nhúng

Ví dụ

Chuột, bàn phím máy tính được trang bị bộ vi điều khiển 8bit

-Bắt chuyển động, bắt phím

-Mã hóa, kết nối với máy tính

Cấu tạo bên trong một con chuột máy tính

9

Hệ nhúng

Ví dụ

Ổ cứng máy tính

-Vi điều khiển 32 bit (ARM)

10

-Tích hợp bộ xử lý tín hiệu số

Hệ nhúng

Ví dụ

Máy in, máy photocopy

-Vi điều khiển Intel, Motorola, ARM…

11

-Kết nối máy tính

Hệ nhúng

Ví dụ

Máy bán hàng tự động

- Vi điều khiển: 16-bit Hitachi H8/300H Processors

- Cơ cấu chấp hành (motor, tay máy)

12

Hệ nhúng

Ví dụ

Máy ảnh kỹ thuật số

13

-Vi điều khiển DIGIC II Image Processor

Hệ nhúng

Ví dụ

Sony Aibo ERS-7 Robotic Dog - Vi điều khiển 64 bit MIPS R7000

- Hệ điều hành Aperios Sony’s Real Time OS

14

Hệ nhúng

Ví dụ

Point of Sales System

-Vi xử lý Intel X86

15

-OS: Windows XP Embedded

Hệ nhúng

Ví dụ

Systems DL2 Digital Media Server: tạo hiệu ứng ánh sáng trên sân khấu

-Vi xử lý Intel X86

16

-OS: Windows XP Embedded

Hệ nhúng

Ví dụ

Tektronix Logic Analyser

-Vi xử lý Intel X86

17

-OS: Windows XP

Hệ nhúng

Ví dụ

Cánh tay robot

-Vi xử lý Intel X86

18

-OS: Windows XP Embedded & others

Hệ nhúng

Ví dụ

iPhone SmartPhone

-Vi xử lý Apple A4

-OS: iOS 4

19

-Hỗ trợ màn hình chạm đa điểm

Hệ nhúng

Việt Nam???

Bkav SmartHome

-Hạ tầng mạng không dây chuẩn Zigbee

-Hệ thống điều khiển 3D

-Tiết kiệm điện năng

20

-Tự động hoàn toàn theo các kịch bản được thiết lập

Hệ nhúng

Việt Nam???

Robot đánh bóng bàn ToSy

-Vi xử lý hiệu năng cao

-Trí tuệ nhân tạo

21

-Cơ khí chính xác

Hệ nhúng

Việt Nam???

Robot hàn tự động

-Vi xử lý hiệu năng cao

-Hệ điều hành nhúng

22

-Cơ khí chính xác

Hệ nhúng

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

 Kiến trúc hệ thống nhúng

 Đặc trưng hệ thống nhúng

23

• Kiến trúc tổng thể • Kiến trúc vào ra hệ thống nhúng • Mô hình lập trình hệ thống nhúng

Hệ nhúng

Kiến trúc tổng thể

•Hardware Layer (thành phần bắt buộc): tất cả các thành phần vật lý (vi xử lý, bộ nhớ, hệ thống vào ra, cơ cấu chấp hành…)

•System Software Layer (Phần mềm hệ thống): hệ điều hành, device driver…

•Application Software Layer (Phần mềm ứng dụng)

24

Hệ nhúng

Kiến trúc tổng thể

25

Hệ nhúng

Ví dụ - Hệ nhúng Mini2440

26

Hệ nhúng

KIT mini2440

 Hardware Layer

27

Hệ nhúng

KIT mini2440

 System Software Layer

LCD Driver Ethernet Driver USB Host/Slave driver SD card driver CMOS Camera Driver Wifi driver …

28

• Hệ điều hành: Linux, Windows CE, Android • Bootloader: Nboot, Uboot, Supervivi • Driver:

Hệ nhúng

KIT mini2440

 Application Software Layer • Phần mềm nghe nhạc • Phần mềm game • Phần mềm thu thập số liệu và điều khiển • …

29

Hệ nhúng

Kiến trúc vào ra hệ thống nhúng

 Hệ nhúng sử dụng rất nhiều chuẩn giao tiếp vào

ra • UART • USB • Ethernet • SPI, I2C, CAN • …

30

Hệ nhúng

Mô hình lập trình hệ thống nhúng

•Host: hệ thống chứa môi trường phát triển

•Target: hệ nhúng cần phát triển ứng dụng

31

Hệ nhúng

Mô hình lập trình hệ thống nhúng

•Host: hệ thống chứa môi trường phát triển

•Target: hệ nhúng cần phát triển ứng dụng

32

Hệ nhúng

Đặc trưng hệ thống nhúng

 Thường bị giới hạn về tài nguyên: hiệu năng bộ

xử lý, dung lượng bộ nhớ…

 Thường được thiết kế chuyên dụng  Thỏa mãn yêu cầu về độ tin cậy và khả năng chịu lỗi cao, yêu cầu về tính thời gian thực (Realtime)

33

Hệ nhúng

Thảo luận

34

Hệ nhúng