Nghiên cứu, thiết kế hệ điều hành trên bộ vi điều khiển 8 bít

86 362 0
Nghiên cứu, thiết kế hệ điều hành trên bộ vi điều khiển 8 bít

Đ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

Header Page of 16 giáo dục đào tạo trờng đại học bách khoa hà nội - luận văn thạc sỹ khoa học Nghiên cứu, thiết kế hệ điều hành vi điều khiển bít ngành: xử lý thông tin truyền thông M số: vũ trung kiên Ngời hớng dẫn khoa học: TS Nguyễn Linh Giang hà nội 2006 Footer Page of 16 Header Page of 16 -2- Lời cam đoan Tôi xin cam đoan luận văn kết nghiên cứu thân dới hớng dẫn TS Nguyễn Linh Giang Nếu có sai phạm, xin hoàn toàn chịu trách nhiệm Ngời làm cam đoan Vũ Trung Kiên Footer Page of 16 Header Page of 16 -3- Mục lục Lời cam đoan Danh mục ký hiệu, chữ viết tắt Danh mục bảng Danh mục hình vẽ, đồ thị Lời nói đầu Chơng - Tổng quan hệ điều hành 11 1.1 Khái niệm hệ điều hành (OS-Operating System) 11 1.1.1 Khái niệm 11 1.1.2 Chức hệ điều hành 11 1.1.3 Các thành phần hệ điều hành 13 1.2 Quản lý tiến trình 16 1.2.1 Các trạng thái tiến trình 16 1.2.2 Khái niệm tài nguyên găng đoạn tới hạn 17 1.2.3 Hiện tợng bế tắc 19 1.3 Lập lịch cho CPU 20 1.3.1 Khái niệm CPU 20 1.3.2 Các trạng thái tiến trình liên quan đến CPU 20 1.3.3 Lập lịch cho CPU 22 1.4 Quản lý nhớ 25 1.4.1 Yêu cầu phải quản lý nhớ 25 1.4.2 Các sơ đồ quản lý nhớ 26 Chơng - Vi điều khiển ngôn ngữ lập trình cho vi điều khiển 28 2.1 Vi điều khiển 28 2.1.1 Vi xử lý vi điều khiển 28 2.1.2 Tổ chức nhớ vi điều khiển 30 2.1.3 Các định thời 35 2.1.4 Bộ xử lý ngắt 37 2.2 Ngôn ngữ lập trình cho vi điều khiển 39 Footer Page of 16 Header Page of 16 -4- 2.2.1 Tổng quan ngôn ngữ lập trình cho vi điều khiển 39 2.2.2 Những vấn đề với ngôn ngữ C viết cho vi điều khiển 42 Chơng - thiết kế hệ vi điều khiển 49 3.1 Xác định yêu cầu thiết kế 50 3.2 Lựa chọn cấu hình cho hệ thống 51 3.2.1 Lựa chọn điều khiển trung tâm 51 3.2.2 Giao diện ngời sử dụng 52 3.2.3 Các thiết bị mô trình hoạt động tiến trình 53 3.3 Thiết kế mạch điện 58 3.4 Đo thử kiểm tra lỗi 59 Chơng - Thiết kế hệ điều hành .60 4.1.1 Mục đích yêu cầu thiết kế 60 4.1.2 Mục đích 60 4.1.2 Yêu cầu 63 4.2 Trình tự thiết kế hệ điều hành 64 4.3 Xây dựng tiến trình 65 4.3.1 Xây dựng tác vụ tơng ứng tiến trình 65 4.3.2 Giải toán tài nguyên găng 69 4.4 Lập lịch cho CPU 71 4.4.1 Sự kiện chuyển trạng thái tiến trình 71 4.4.2 Lập lịch cho CPU 80 4.5 Quản lý nhớ 83 Kết luận kiến nghị .86 Tài liệu tham khảo 87 Footer Page of 16 Header Page of 16 -5- Danh mục ký hiệu, chữ viết tắt STT Chữ viết tắt FCFS First Come First Served FIFO First In First Out LIFO Last In First Out MCS Micro Controller System OS RTOS RR Round Robbin SJF Shortest Job First SRT Shortest Remain Time 10 uC Footer Page of 16 Chữ đầy đủ Operating System Real Time Operating System Micro Controller Header Page of 16 -6- Danh mục bảng Bảng 1.1 Trạng thái tiến trình 19 Bảng 1.2 Thời gian thực tiến trình 25 Bảng 1.3 Thời gian chờ tiến trình 25 Bảng 2.1 Bộ nhớ liệu chíp AT89S52 33 Footer Page of 16 Header Page of 16 -7- Danh mục hình vẽ, đồ thị Hình 1.1 Các trạng thái tiến trình 17 Hình 1.2 Các trạng thái tiến trình liên quan đến CPU 20 Hình 1.3 Sơ đồ thực tiến trình 21 Hình 1.4 Sơ đồ tổ chức hàng đợi tiến trình 22 Hình 1.5 Sơ đồ Grant 25 Hình 2.1 Sơ đồ khối vi điều khiển AT89S52 29 Hình 2.2 Tổ chức nhớ vi điều khiển 30 Hình 2.3 Sơ đồ ghép nối AT89S52 với EPROM 31 Hình 2.4 Sơ đồ ghép nối AT89S52 với RAM 34 Hình 2.5 Giải mã địa cho vi mạch nhớ 34 Hình 2.6 Bộ nhớ liệu đọc nh nhớ chơng trình 35 Hình 2.7 Hoạt động Timer0 Timer1 chế độ 36 Hình 2.8 Các nguồn ngắt AT89S52 38 Hình 3.1 Trình tự thiết kế phần cứng cho hệ thống 49 Hình 3.2 Sơ đồ khối hệ vi điều khiển 51 Hình 3.3 Ghép nối vi điều khiển với RAM 52 Hình 3.4 Giao diện ngời sử dụng hệ vi điều khiển 53 Hình 3.5 Hiển thị LED đoạn kỹ thuật quét 54 Hình 3.6 Ghép nối ma trận LED hệ vi điều khiển 57 Hình 3.7 Nguyên tắc xếp chữ ma trận LED 58 Hình 4.1 Các tác vụ đợc thực đồng thời (song song) 62 Hình 4.2 Các tác vụ đợc thực luân phiên liên tục 62 Hình 4.3 Giản đồ xung P1 69 Hình 4.4 Chốt lại giá trị P1 70 Footer Page of 16 Header Page of 16 -8- Hình 4.5 Các tiến trình đợc phân bổ thời gian CPU 71 Hình 4.6 Chuyển tiến trình kiện time out 73 Hình 4.7 Các tiến trình đợc phân bổ thời gian CPU khác 74 Hình 4.8 Ngời sử dụng lệnh vào thời điểm khác 75 Hình 4.9 Chuyển cá tiến trình kiện interrupt 76 Hình 4.9 Mô tả trạng thái tài nguyên tiến trình 77 Hình 4.10 Các tài nguyên cần lu dừng tiến trình 78 Hình 4.11 Phân bổ ngăn xếp cho tiến trình 79 Hình 4.12 Lập lịch cho tiến trình thực quét chữ ma trận LED 81 Hình 4.13 Lập lịch cho tiến trình quét số LED đoạn 81 Hình 4.14 Lập lịch cho tiến trình điều khiển LCD 82 Hình 4.15 Lập lịch cho tiến trình thời gian thực 82 Hình 4.16 Tổ chức nhớ ROM hệ vi điều khiển 83 Hình 4.17 Thay đổi vị trí đặt chơng trình phục vụ ngắt 84 Hình 4.18 Phân bổ nhớ ROM 85 Hình 4.19 Phân bổ nhớ RAM 85 Footer Page of 16 Header Page of 16 -9- Lời nói đầu Cùng với phát triển khoa học kỹ thuật, cụm từ tự động hoá trở nên phổ thông Từ máy móc tự động nhà máy xí nghiệp thay cho sức lao động công nhân, từ đồ gia dụng tự động gia đình giúp ích cho ngời nội trợ nói chung thiết bị có khả tự động hoá xuất khắp nơi Một câu hỏi đặt với nhiều ngời nhờ đâu mà thiết bị có khả tự động đợc? Để trả lời câu hỏi cần phải từ có cụm từ tự động hoá đời Trớc kia, cha có công nghệ bán dẫn, phần tử có tiếp điểm đợc đầu nối với theo mạch logic tạo hệ thống tự động, nhiên khả đáp ứng tính tự động hệ thống không cao Công nghệ bán dẫn đời, giải đợc hạn chế đáp ứng (tốc độ) phần tử có tiếp điểm nhiên phải chờ đến có xuất vi xử lý, hệ thống có tính tự động hoá cao đời Đặc trng hệ thống đợc mô tả công thức đơn giản: Phần cứng + Phần mềm = ứng dụng Theo công thức tuỳ biến thành phần phần cứng phần mềm cho ứng dụng khác Thông thờng phần mềm thành phần đợc tuỳ biến Một hệ thống với vi xử lý giả suy nghĩ hành động ngời lý đơn giản chúng hoạt động theo chơng trình ngời thiết kế đa vào mà chơng trình thuật toán ý nghĩ ngời lập trình Nh để hệ thống có tính thông minh, tự động hoá cao phần mềm viết cho vấn đề quan trọng Một hệ thống với phần cứng nhng đợc viết hệ điều hành khả trở nên mạnh nhiều so với hệ thống có chơng trình Với mục đích không ngừng đáp ứng nhu cầu Footer Page of 16 Header Page 10 of 16 -10- xã hội, môn học hệ nhúng đợc đa vào giảng dạy trờng Cao đẳng Đại học Tuy nhiên để có hiệu qủa giảng dạy tốt cần có phơng pháp nghiên cứu thiết kế tắc cần phải có thiết bị phục vụ qua trình thí nghiệm Trờng Đại học Công nghiệp Hà nội trờng đào tạo cử nhân kỹ s thực hành Trong chơng trình đào tạo có môn kỹ thuật vi điều khiển, coi tảng để tiếp cận với hệ thống nhúng sử dụng vi điều khiển có hệ điều hành Việc nghiên cứu để đa vào giảng dạy môn thiết kế hệ điều hành cho hệ vi điều khiển phù hợp với yêu cầu Với hớng dẫn TS Nguyễn Linh Giang, khuôn khổ luận văn này, mạnh dạn nghiên cứu nguyên tắc thiết kế hệ điều hành hệ vi điều khiển Nội dung luận văn bao gồm chơng, đó: Chơng 1: Giới thiệu tổng quan hệ điều hành Chơng 2: Giới thiệu vi điều khiển đợc sử dụng để viết hệ điều hành ngôn ngữ lập trình cho vi điều khiển Chơng Thiết kế phần cứng hệ vi điều khiển Chơng Thiết kế hệ điều hành cho hệ vi điều khiển Do thời gian khả có hạn nên luận văn nhiều thiếu sót Rất mong đợc góp ý thông cảm thầy giáo, cô giáo Hà nội, ngày 30 tháng 10 năm 2006 Học viên Vũ Trung Kiên Footer Page 10 of 16 Header Page 72 of 16 -73- Có thể mô tả hoạt động chơng trình hình 4.6 Hết 100ms, xảy ngắt định thời task task task t ISRtimer0() { while(counter

Ngày đăng: 17/03/2017, 04:59

Từ khóa liên quan

Mục lục

  • bìa

  • Loi cam doan

  • Muc luc

  • Danh muc cac ky hieu,cac chu viet tat

  • Danh muc cac bang

  • Danh muc cac hinh ve do thi

  • Loi noi dau

  • Chuong 1

  • Chuong 2

  • Chuong 3

  • Chuong 4

  • Ket luan va kien nghi

  • Tai lieu tham khao

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan