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

(Luận văn) nghiên cứu, thiết kế hệ điều hành trên bộ vi điều khiển 8 bít

86 1 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

bộ 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 lu Nghiên cứu, thiết kế hệ điều hành vi điều khiển bít an va n ngành: xử lý thông tin truyền thông tn to p ie gh M∙ sè: nl w d oa vò trung kiªn an lu nf va Ng−êi h−íng dÉn khoa häc: TS NguyÔn Linh Giang z at nh oi lm ul z hµ néi 2006 m co l gm @ an Lu n va ac th si -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 cđa TS Ngun Linh Giang NÕu cã g× sai phạm, xin hoàn toàn chịu trách nhiệm Ngời làm cam đoan Vũ Trung Kiên lu an n va p ie gh tn to d oa nl w nf va an lu z at nh oi lm ul z m co l gm @ an Lu n va ac th si -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 lu 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 an n va gh tn to 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 p ie 1.3.1 Kh¸i niÖm giê 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ý bé nhí 25 nl w d oa 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 Vi ®iỊu khiĨn ngôn ngữ lập trình nf va an lu Chơng - cho vi ®iỊu khiĨn 28 lm ul 2.1 Vi ®iỊu khiÓn 28 z at nh oi z 2.1.1 Vi xö lý vi điều khiển 28 2.1.2 Tỉ chøc bé nhí cđa 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 m co l gm @ an Lu n va ac th si -42.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 bé ®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 lu 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 an n va 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 p ie gh tn to 4.3 Xây dựng tiến trình 65 oa nl w 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ý bé nhí 83 d KÕt luËn vµ kiÕn nghÞ .86 nf va an lu Tài liệu tham khảo 87 z at nh oi lm ul z m co l gm @ an Lu n va ac th si -5- Danh mục ký hiệu, chữ viết tắt 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 ie SRT Shortest Remain Time lu STT Chữ đầy ®ñ Operating System an Real Time Operating System n va gh tn to p uC Micro Controller d oa nl w 10 nf va an lu z at nh oi lm ul z m co l gm @ an Lu n va ac th si -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 trªn chÝp cđa AT89S52 33 lu an n va p ie gh tn to d oa nl w nf va an lu z at nh oi lm ul z m co l gm @ an Lu n va ac th si -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 cđa bé vi ®iỊu khiĨn AT89S52 29 H×nh 2.2 Tỉ chøc bé nhí cđa vi ®iỊu khiĨn 30 lu an Hình 2.3 Sơ đồ ghép nối AT89S52 víi EPROM 31 n va 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 to tn H×nh 2.6 Bộ nhớ liệu đọc nh nhớ chơng trình 35 ie gh H×nh 2.7 Hoạt động Timer0 Timer1 chế độ 36 p Hình 2.8 Các ngn ng¾t cđa AT89S52 38 Hình 3.1 Trình tự thiết kế phần cøng cho hÖ thèng 49 w oa nl Hình 3.2 Sơ đồ khối hệ vi ®iỊu khiĨn 51 d Hình 3.3 Ghép nối vi điều khiển víi RAM ngoµi 52 an lu Hình 3.4 Giao diện ngời sử dụng hƯ vi ®iỊu khiĨn 53 nf va Hình 3.5 Hiển thị LED đoạn b»ng kü thuËt quÐt 54 lm ul 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 z at nh oi 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 z m co l gm @ H×nh 4.4 Chốt lại giá trị P1 70 an Lu n va ac th si -8Hình 4.5 Các tiến trình đợc phân bæ thêi gian CPU b»ng 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 lu Hình 4.15 Lập lịch cho tiÕn tr×nh thêi gian thùc 82 an H×nh 4.16 Tỉ chøc bé nhí ROM cđa hƯ vi ®iỊu khiĨn 83 n va Hình 4.17 Thay đổi vị trí đặt chơng trình phục vụ ngắt 84 tn to Hình 4.18 Phân bổ nhớ ROM 85 Hình 4.19 Phân bổ nhớ RAM 85 p ie gh d oa nl w nf va an lu z at nh oi lm ul z m co l gm @ an Lu n va ac th si -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 vÉn cã thĨ t¹o mét hƯ lu an thèng tự động, nhiên khả đáp ứng tính tự động hệ thống n va 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ã sù xt hiƯn to tn cđa c¸c bé vi xử lý, hệ thống có tính tự động hoá cao đời Đặc trng ie gh hệ thống đợc mô tả công thức đơn giản: Phần cứng + p 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 w oa nl phần mềm thành phần đợc t biÕn d Mét hƯ thèng víi c¸c bé vi xử lý giả suy nghĩ hành động lu an ngời lý đơn giản chúng hoạt động theo chơng trình ngời nf va thiết kế đa vào mà chơng trình thuật toán ý nghĩ ngời lập lm ul 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 z at nh oi Mét hƯ thèng víi cïng phần cứng nhng đợc viết hệ điều hành khả trở nên mạnh h¬n rÊt nhiỊu so víi mét hƯ thèng chØ cã z chơng trình Với mục đích không ngừng đáp ứng nhu cầu m co l gm @ an Lu n va ac th si -10xà 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 hiƯn t¹i Víi sù h−íng dÉn cđa TS Ngun 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 lu hành hệ vi điều khiển an n va Nội dung luận văn bao gồm chơng, đó: Chơng 2: Giới thiệu vi điều khiển đợc sử dụng để viết hệ điều hành gh tn to Chơng 1: Giới thiệu tổng quan hệ điều hành p ie 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 nl w oa Chơng Thiết kế hệ điều hành cho hệ vi điều khiển d Do thời gian khả có hạn nên luận văn nhiều thiếu sót lu nf va an 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 lm ul Học viên z at nh oi Vị Trung Kiªn z m co l gm @ an Lu n va ac th si -73Có thể mô tả hoạt động chơng trình hình 4.6 ISRtimer0() { while(counter

Ngày đăng: 17/07/2023, 09:36

Xem thêm: