1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Biên soạn sách Điện tử Ứng dụng trong thực hành vi Điều khiển với phần mềm mô phỏng sim 51

201 0 0
Tài liệu được quét OCR, nội dung có thể không chính xác
Tài liệu đã được kiểm tra trùng lặp

Đ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

Thông tin cơ bản

Tiêu đề Biên Soạn Sách Điện Tử Ứng Dụng Trong Thực Hành Vi Điều Khiển Với Phần Mềm Mô Phỏng Sim 51
Tác giả Dương Hoàng Hiếu
Người hướng dẫn Thầy Nguyễn Phương Quang
Trường học Trường Đại Học Sư Phạm Kỹ Thuật
Chuyên ngành Kỹ thuật Điện - Điện tử
Thể loại luận văn tốt nghiệp
Năm xuất bản 2003
Thành phố TP.Hồ Chí Minh
Định dạng
Số trang 201
Dung lượng 18,14 MB

Nội dung

Nhờ thế người thiết mạch kế điện tử, người học, đặc biệt là sinh viên chuyên ngành điện ~ điện tứ có những thao tác đơn giản hơn trong quá trình kết nối các linh kiện điện tử, Tuy nhiền,

Trang 1

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRUONG DAI HOC SU’ PHAM KY THUAT

THÀNH PHÓ HÒ CHÍ MINH

HGMUIIE

ĐỎ ÁN TÓT NGHIỆP NGÀNH LUẬN VĂN TÓT NGHIỆP

BIÊN SOẠN SÁCH ĐIỆN TỬ ỨNG DỤNG

TRONG THUC HANH VI DIEU KHIEN

VO! PHAN MEM MO PHONG SIM 51

GVHD: NGUYEN PHUO'NG QUANG SVTH: DUONG HOANG HIEU

SKLOO

TP H6 Chi Minh, thang 03/2002

Trang 2

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT

KHOA ĐIỆN - ĐIỆN TỬ

Trang 3

BO GIÁO DUC VA DAO TAO CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM

TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT ĐỘ LẬP- TỰ DO - HẠNH PHÚC

1 Ten dé ai BIỂN SOẠN SÁCH ĐIỆN TỪ ỨNG ĐỤNG TRONG THỰC HÀNH

VI ĐIỆU KHIỂN VỚI PHẨN MÊM MÔ PHONG SIM ~ 51

Chung 5: Teoh biên dịch ASM5I

Chuving 6 : Giới thiệu chương trình mô phỏng SIMfS1

Chương 7 : Nhập môn Thiết kế lập trình

Chương 8 : Hướng dẫn sử dụng chương trình mô phỏng và các bài tập

Chương 9 : Lập trình nâng cao

Phụ luc A: Tra cứu tập lệnh

Phụ lục B: Lời giải các bài tập

Phụ lục C: Giới thiệu các phần mễm mô phỏng khác „

2 San thẩm „61 dea sath iin IM Meh ki dais dang, Mult mb+„ + tãn( dváu, Power Penl gẤt hủ Ân

GVHD :Nguyễn Phương Quang Ngày giao nhiệm vu: 04/10/2002

Ngày hoàn thành: 22/02/2003

Thông qua bộ môn

TP.Hồ Chí Minh, Ngày tháng năm 2003

Trang 4

GVHD_ : Nguyễn Phương Quang

Tén dé tai: BIEN SOAN SACH [ ĐIỆN TỬ ỨNG DỤNG TRONG THUC

HÀNH VI ĐIỀU KHIỂN VỚI PHAN MEM MO PHONG SIM - 51 Lời nhân xét của giáo viên hương dã

"1 "

ini an

KT.GVH D TP.Hồ Chí Minh, Ngày tháng năm 2003

Giáo viên hướng dẫn

Trang 5

Tên để tài : BIÊN SOẠN SÁCH ĐIỆN TỬ ỨNG DỤNG TRONG THỰC,

TP.Hồ Chí Minh, Ngày tháng năm 2003

Giáo viên phản biện

Trang 6

LỜI NÓI ĐẦU

Ngay nay, trong sự trong sự phát triển nhanh chóng của khoa học kỹ thuật Đặc biệt

công nghệ kỹ thuật điện tử phát triển rất mạnh mẽ và đạt được những thành tựa to lớn Nó

không chỉ tạo ra các chuyển biến đáng kinh ngạc trong lĩnh vực điện tử mà còn trở thành

một phương tiện kỹ thuật mũi nhọn thúc đẩy sự phát triển tiến bộ của các ngành khác Từ khi xuất hiện hệ thống tự động điều khiển hay hệ thống sản xuất tự động thì năng suất lao động tăng cao, giảm thiểu sức lao động chân tay, đáp ứng mọi yêu cầu sản xuất

Việc nắm bắt khoa học kỹ thuật, củng cố xây dựng và phát triển nguồn nhân lực

phục vụ cho tiến trình *Công nghiệp bóa, Hiện đại hóa” đất nước là nhu cầu cấp thiết và nông bỏng Do đồ nhằm thực hiện mục tiêu trên thì giáo dục eó một trọng trách to lớn là

đão tạo nhân lực, bổi đường nhân tài, Trường Đại học Sự phạm Kỹ thuật là một trong

những nai đão tạo đội ngủ ky sự giáo dục vững về chuyên món, giỏi về sư phạm Trong

NHẬT thời giản học tại Trường Đại học Su phạm Kỹ thuật, món học chuyên để vi điều khiển

Wa mon chuyên ngành được người thực biện để tai quan tam Mon hoe nay trang bi cho hoc Moh, sinh viên những kiến thức kỹ năng cơ bản về các vi mạch lập trình (be và tp) và Ahững ứng dụng vào thực tế, Sau khi học sinh viền có khả năng vận dụng vào những yêu

cấu sắn xuất bằng các chương trình điển khiển ,

Nhung trong khi học sinh viên gặp nhiỀu khó khán chung quanh việc sử dụng tập

lệnh, cầu trúc phần cứng

Là một giáo viên kỹ thuật tương lai, những người thực hiện để tài luôn trăn trở làm

thể nào để truyền đạt kiến thức môn học vi điều khiển đến người học cũng như để cho người học tiếp cận với môn học vi điều khiển một cách dễ dàng và có hiệu quả hơn Vì

vậy người thực hiện chọn để tài “BIÊN SOẠN SÁCH ĐIỆN TỬ ỨNG DỤNG TRONG

THUC HANH VI ĐIỀU KHIỂN VỚI PHẦN MỀM MÔ PHÔNG SIM 51” Sách điện tử

được người thực hiện trình bày dưới dạng trang web sẽ làm cho người học tiếp cận với môn

học theo một phương pháp mới : phương pháp Multimedia (truyền thông đa phương tiện)

Đó là một phương pháp dạy và học đạt hiệu quả cao trong xu hướng xã hội hóa hiện nay N6 sẽ kích thích sự hứng thú, say mê học tập, tỉnh thần tích cực và ham học hỏi của người học

: Mặc dù đã có nhiều cố gắng nhưng vì thời gian hạn chế và kinh nghiệm còn yếu, nên

tập luân văn này không tránh khỏi những sai sót rất mong sự đánh giá của quí Thầy Cô và

sự góp ý của các bạn

Nhóm sinh viên thực hiện

Dương Hoàng Hiếu Trần Thanh Dương

Trang 7

LỜI CÁM ƠN

>> GS

Nhóm thực hiện để tài xin chân thành tỏ lòng biết ơn đến Thầy Nguyễn

Phương Quang, giáo viêh trực tiếp hướng dẫn nhóm trong suốt quá trình làm

luận văn tốt nghiệp Sự tận tình hướng dẫn,giúp đỡ và động viên của Thầy đã

giúp nhóm rất nhiều trong việc hoàn thành tập luận văn nay

Nhóm thực hiện dé tai xin chân thành cầm ơn quí thầy cô trường Đại Học

Sư Phạm Kỹ Thuật đã tận tình dạy chúng em trong suốt thời gian qua

Cuối cùng là lời cám ơn chân thành đến gia đình, người thân cùng toàn

thé ban bè còng khóa đã đóng góp những ý kiến quí báu và là những người

em thực hiện để tài, hoàn thành

hiền đồng viên tính thấn giúp nhóm chủ

nhiệm vụ được giáo,

Nhóm sinh viên thực hiện

Dương Hoàng Hiếu

Tran Thanh Dương

Trang 8

Lời cắm tạ

Mục lục Liệt kê bằng Liệt kê hình NỘI DỤNG

2.3.2 Phương tiện nghiên cứu

2.3.3 Thời gian nghiên cứu

Lý thuyết tổng quan về mô hình - mô phỏng

3.1 Khái niệm về mô hình mô phỏng

3.2 Phân loại mô hình mô phỏng

3.3 Các bước tiến hành mô phỏng

Cấu trúc và ngôn ngữ của họ vi điều khiển MCS51

4.1 Giới thiệu họ vi điều khiển MCSS1

4.2 Cấu trúc phần cứng của họ vi điều khiển MCS51 4.3 Ngôn ngữ của họ vi điều khiển MCS51

Trình biên dịch ASM51 5.1 Giới thiệu

5.2 Hoạt động của trình biên dịch

5.3 Định dạng chương trình hợp ngữ

5.4 Các biểu diễn của trình dịch hợp ngữ

5.5 Các định hướng của trình biên dịch

5.6 Tóm tắt quá trình biên dịch tập tin

Giới thiệu chương trình mô phồng SIM51

Trang 9

6.3 Các đặc trưng của chương trình mô phồng,

6.4 Giới thiệu màn hình giao diện SIMS]

8.1.1 Hướng dẫn khởi động SIM5I 8.1.2 Các thao tác cơ bản trên SIM5I

1 TS Control Emulator 8051 1.1 Màn hình giao diện chính 1.2 Cai dat chung tinh TS Control Emulator 8051

1.3 Hướng dẫn sử dụng chương trình TS Control 8051

2 SMS32V23 2.1 Giới thiệu màn hình giao diện chính 2.2 Cài đặt chương trình

Kết luận

60 T8

Trang 10

LIỆT KE BANG

Hãng 4 Bang các loại vì điêu khiển họ MCSS5I

Ting a Chức nàng của các chắn aaa

Rang 4 - Các thanh ghí chức nang dac b

Tom tat thank phi chức nâng SCON

Các chế độ của port nối tiếp

Trang 11

Mach cấp xung clock

Báng đồ Ram nội của 8051 Hợp dịch một chương trình nguồn Màn hình giao diện SIM5I

Quá trình mô phỏng

Các ký hiệu thường dùng trong lập trình cấu trúc

Màn hình SIM51 mới khởi động

Màn hình SIM51 khởi động xong

Hướng dẫn khởi động chương trình SIM51

Màn hình giao diện chính TS Control 8051

Màn hình chọn đường dẫn để cài dat TS Control 8051 Màn hình chọn tập tin cài đặt

họ MCS5I

.149

„ 150 lỗ]

Trang 12

Chương I

DAN NHAP

11 ĐẶT VẤN ĐỂ

Cùng với sự phát triển của khoa học công nghệ, các thiết bị điện tử đã đang và sẽ

được ứng dụng ngày càng rộng rãi, nó sẽ mang lại hiệu quả trong hầu hết các lĩnh vực kinh tế kỹ thuật cũng như đời sống xã hội

Sự phát triển mạnh mẽ của công nghệ chế tạo các thiết bị, linh kiện điện tử đã

cho ra đời nhiều vi mạch tổ hợp (IC), vi mạch lập trình (vi điều khiển và vi xử l0, vi

mạch giao tiếp gọn nhẹ Nhờ thế người thiết mạch kế điện tử, người học, đặc biệt là sinh viên chuyên ngành điện ~ điện tứ có những thao tác đơn giản hơn trong quá trình kết nối các linh kiện điện tử, Tuy nhiền, việc đơn giản hóa và tích hợp vi mạch gây khó khăn cho người học Ở thời điểm mới bất đâu tiếp xúc với linh kiện và đặc biệt là linh

kiện ho pe va pp, do tinh nang gọn nhẹ, đa dụng, xử lí nhờ chương trình, cấu trúc hệ

thông phức tạp điển hình là vị điều khiển ATH9C5I

Song xong với sự phát triển mạnh mẽ và khá náng ứng dụng của các vi mạch tích

hap ÑC), vì mạch lập lak (pie va pp) thi vấn để tim biếu, khảo sát, học tập về vị điều

khiến ngày càng tầng nó đã và đang thám nhập mạnh mẽ váo các trường kỹ thuật và

nó được học sinh, sinh viên rất là thích thú do tính khả thi của nó,

‘Tuy nhiên, khi mới tiếp cận tìm hiểu về vi điêu khiến người học gặp một số khó khan là khẳng thể thấy được những hoạt động bên wong ví điêu khiển dẫn đến trừu tang khủ hình dung vì vậy sẽ khó tiếp thu,

Bên cạnh đó là vấn để kinh tế vì giá thành của các hệ thống ví điều khiển cao do vậy người học khó tiếp xúc với thực tế Bức xúc trước những khó khăn trên trong vấn

để học tập, giảng dạy, và nhu cầu hiểu biết về vi điều khiển là động lực để người thực

hiện để tài "BIÊN SOẠN SÁCH ĐIỆN TU UNG DUNG TRONG THUC HANH VI

ĐIỀU KHIỂN VỚI PHẦN MỀM SIM 51

Với việc mô phỏng vi điều khiển họ MCS ~ 51 (AT89C51) được thiết kế dưới

dạng trang web sẽ phần nào khắc phục được những khó khăn trong quá trình học tập,

tìm hiểu vi điều khiển tạo ra cách tiếp cận với môn học chuyên dé vi điểu khiển ở một

phương pháp mới : phương pháp multimedia, trực quan hơn, sống động hơn giúp người

học có thể tự học vi điều khển, nâng cao khả năng lập trình và tiết kiệm được thời gian

Sử dụng phần mềm mô phỏng cho phép quan sát và thay đổi từng bit trog RAM

nội và RAM ngoại của hoạt động vi điều khiển

Khi sử dụng phần mém mô phỏng cho phép quan sát cùng lúc nhiều ô nhớ và

thanh ghi.

Trang 13

Luận văn tốt nghiệp GVHD: Nguyễn Phương Quang _

1.3 GIỚI HẠN VẤN ĐỀ

Có nhiều hãng sản xuất vi điều khiển và mỗi hãng lại có nhiều họ vi điều khiển

như là :

> Họ MCS - 51 của hang INTEL, ngoài ra còn có các vi điều khiển cũng

thuộc họ MC§- 51 nhưng được phát triển thêm một số chức năng khác và được sản từ các hãng khác như AMD, Siemens, Philips, Dallas, OKI, ATMEL

>_ Họ 68COS cua hãng Motorola

> Ho TS62 cla hing SGA — Thomson

> He H8 eda hang Hitachi

® Họ PIC của hang Microchip

Do những người thực hiện để tải được trang bị kiến thức về vi diéu khién ho MCS

— §I qua TŠ nết học môn chuyên để vị điều khiển, nhụ câu học tập, tìm hiểu về vi điều

khiển, do xinh Wen trong trường cùng được trang bị kiến thức vì điều khiển họ MCS —

51 và tiên thị nường vũng phổ biến IC họ MCS ~ 51, Nên người thực hiện để tài chọn

5] của hãng INTE Mae đù abo nghiện cứu đã cố gắng hết sức

mô pháng ví điểu khiển họ MCS

ựng do thời gian có hạn và lần

đấu tiện thực hiện để tài nên nhóm chỉ dừng lại ở mức đó đơn giản là:

>_ Nghiên cứu về cách thức sử dụng chương trình mm phỏng

>_ Hướng dẫn nhập môn thiết kế lập trình +

+ Hướng dẫn sử dụng chương trình mô phỏng và đưa ra một số bài tập cơ

bản và nâng cao để minh họa

>_ Nghiên cứu một số phân mềm tin học để tạo trang web

Có nhiều phần mềm mô phỏng vi điều khiển,vi xử lí như: SIMS1, UMPS, 535 TS,

T§ Control Emulator 8051, nhưng những người thực hiên để tài chọn phần mềm mô

phỏng SIM51 để mô phỏng vi điều khiển họ MCS - 51 (8051/8751) các vấn để chọn

mô phỏng gồm:

êu khiến

Hoạt động xuất nhập qua port

Hoạt động giao tiếp bộ nhớ

Trang 14

Luận văn tốt nghiệp GVHD: Nguyễn Phương Quang

^—=—————ễ

Đồng thời có cơ hội để tìm hiểu thêm về những kiến thức mới trong các chương trình phần mềm ứng dụng liên quan đến vi điều khiển, vi xử lí, viết chương cho các giao diện phần cứng và các phần mềm tin học ứng dụng thiết kế trang web

Đề tài này được xây dựng thành một tài liệu dưới dạng trang web hướng dẫn mô

phỏng vi điều khiển họ MCS — 51 thong qua những ứng dụng cụ thể, Nó sẽ là tài cân thiết cho những người đang tìm hiểu, tự học, nghiên cứu vi điều khiển họ MCS - 51

Trang 15

Chương 2

CƠ SỞ LÍ LUẬN

2.1 DÀN Ý NGHIÊN CỨU

Nhóm thực hiện để tài tiến hành thực hiện để tài theo trình tự sau :

+* Lý thuyết tổng quan về mô hình mô phồng

+ Cấu trúc và ngôn ngữ của họ vi điều khiển MCS-51

s Trình biên dịch ASM5I

+ Giới thiệu chương trình mô phỏng SIMS1

+ Nhập mòn Thiết kế lập tình,

+ Hướng dẫn sứ dụng chương trình mô phỏng và lập trình cơ bản

Lap tinh nang cao

+ Bằng tra cứu tập lệnh

lời giái vác bài Lập cúng cổ

ĐỐI TƯỢNG NGHIÊN CỨU

> Phần mềm mô phỏng vi điều khiển SIM 51

+ _ Trình dịch hợp ngữ ASMS1

> Vi điều khiển AT89C5]

> Cúc phẩn mễểm tạo web và hỗ trợ tạo web nhức Microsoft frontpage,

Microsoft powerpoint, Fash

3.3 PHƯƠNG PHÁP VÀ PHƯƠNG TIỆN NGHIÊN CỨU

2.3.1 Phương pháp nghiên cứu

Nhóm thực hiện đề tài sử dụng các phương pháp nghiên cứu dưới đây trong khi thực hiện để tài:

Phương pháp tham khảo tài liệu: sưu tập phân tích, tổng hợp các tài liệu về vi

điều khiển họ MCS — 51; phần mềm mô phồng SIM 5]; trình dịch hợp ngữ ASMSI và

cdc phan mém tao web nhu Microsoft frontpage; Xarawebstyle

Phương pháp thực nghiệm: tiến hành mô phỏng các hoạt động của vi điều khiển

họ MCS ~ 51 trên phần mềm mô phỏng SIM

Phương pháp quan sát, thu thập các kết quả sau khi mô phỏng các hoạt động vi

điều khiển họ MCS - 51

2.3.2 Phương tiện nghiên cứu

Máy vi tính

Luận văn tốt nghiệp khóa trước

Sách chuyên ngành điện tử, công nghệ thông tin

Đĩa mềm, đĩa CD, đĩa cứng

Trang 16

Luận văn tốt nghiệp GVHD : Nguyén Phuong Quang

2.3.3 Thdi gian nghién cifu

© Tuan 1 (26/12/2002 đến 03/01/2003) thu thập tài liệu, soạn để cương

e Tuần 2 (04/01/2003 đến 11/01/2003) phân tích tổng hợp tài liệu

e Tuần 3, 4, 5, 6, 7 (12/01/2003 đến 15/02/2003) tiến hành viết chương trình, thử

nghiệm, biên dịch chương trình và mô phỏng chương trình Thiết kế trang web

e Tuần 8 (18/02/2003 đến 22/02/2003) hoàn chỉnh và in ấn

SVTH : Dương Hoàng Hiếu Trang 5

Trang 17

> ` Chương 3

LÝ THUYẾT TỔNG QUAN VỀ MÔ HÌNH-MÔ PHỎNG

3.1 KHÁI NIỆM VỀ MÔ HÌNH - MÔ PHÒNG

3.1.1 Khái niệm chung

+ Mô hình - mô phỏng ngày càng được sử dụng nhiều để phân tích và đoán trước

những đáp ứng, diễn biến của một hệ thống kỹ thuật, đặc biệt mô hình - mô

phỏng là trung tâm của việc thiết kế những hệ thống điểu khiển, bởi vì đối với những hệ thống thiết bị công nghiệp lớn, vấn để này chưa được biết đến hoặc Không tổn tại và không có bất kỳ hệ thống phân tích nào có thể đạt được Mô

phông có thể là một phương cách duy nhất xây dựng vấn tắt các thiết bị vật lý

nô phông

` Mô hành mề phóng thường được sử dụng cân thiết cho các trường hợp sau đây:

£ˆ Mô hình tất phức tạp với nhiều biến và nhiều thánh phần đối tác với nhau

bệ giữa các biến số cơ bản là phí tuyến

s* Mô hình thường mô tả đơn giản một hệ thống ở một vài điểm riêng biệt

theo thời gian và không gian nhằm gia tăng sự hiểu biết của con người về

hệ thống đó

s* Một mô hình có tốt hay không phụ thuộc vào khả năng trợ giúp của con người nhiều hay ít vì tất cả các mô hình được xây dựng theo cách đơn giản, hệ thống

thực và như vậy một số chỉ tiết nào đó bị loại ra nên cân có sự hài hòa về mức

độ chỉ tiết của mô hình

s* Điều quan trọng cần lưu ý là nếu người xây dựng một mô hình được bắt chước

mẫu thì mỗi bước thay đổi chỉ tiết phải tương đối nhồ và mỗi lần mô phồng phải

phép nhận biết được sự tác động qua lại bên trong hệ thống thực, nhờ sự tách

biệt theo thời gian và không gian

Một cách tổng quát, mô phỏng làsự lập lại và phát triển của mô hình Một người xây dựng một mô hình mô phỏng, nó nghiên cứu quá trình mô phông, sửa đổi mô hình và tiếp tục mô phỏng cho đến khi thu được một mức độ hiểu biết đây đủ về mô hình

Trang 18

Luận văn tốt nghiệp | GVHD : Nguyễn Phương Quang,

Mô hình và mô phỏng là một ngành khoa học giúp cho con người hiểu biết thêm về

sự tương tác giữa các yếu tố cấu thành một hệ thống, cũng như toàn bộ hệ thống

Mức độ hiểu biết thu nhận dược từ ngành khoa học này lớn đến mức hiếm khi đạt được thông qua bất kỳ 1 ngành khoa học nào khác Toàn bộ quá trình mô phỏng bao

gồm 3 giai đoạn chủ yếu:

“Thiết kế mô hình

sề Mô hình trực quản ( Intnitional model ): Lá mộ hình dựa trên các giả thiết suy

từ các nhận thức có được hay suy từ các trực quan tưởng tự về đối tượng

+ Mô hình kỹ dấu hiệu: Là mô hình được trình bày dưới dạng bằng ký hiệu

Vi dụ : Mô hình đỗ thị, mô hình chớp, m6 hành báng biểu,

+ Mô hình tự nhiên ( Nature model ): Là mồ hình mó tả một hệ thống bằng một

hệ thống khác đang tổn tại trong hệ thống thực

® Mô hình toán học ( Mathematical model ): La phản mềm mô tả hệ thống và

trạng thái của hệ thống đó thông qua các mô tả toán học và thuật toán giải Mô

hình toán học được chia làm các loại như sau:

Mõ hình sơ đồ thay thé (egairalust circuit model) :

Mô hình tính toán (computational model): Bao gồm các thuật toán và các

chương trình giải trên máy tính Các chương trình này thể hiện các quá trình xác

định được mô tả bằng hệ phương trình vi phân đặt trong phần cơ bản của bài toán

Mô hình số hoá (numberical model): Là mô hình toán trong đó tập các thuật

toán suy biến thành dạng tích hợp để giải bằng các phương pháp đơn giản như phương pháp giải tích số là một ví dụ

+ Mô hình vật lý

+ Mô hình tương tự số (Analog_digital model)

Mô hình tương tự: Là mô hình dựa trên các phần tử thực thi các phép toán tương

tự

Mô hình số: Là mô hình dựa trên các phần tử thực thi phép toán gián đoạn Ưu

điểm của nó so với tương tự là độ chính xác cao

Mô phỏng tổng hợp: Là sự tổng hợp của hai mô hình trên Sự tổng hợp như vậy

sẽ tận dụng được tính chất của mô hình tương tự rồ ràng, đơn giản trong sự lựa

chọn sơ đồ tác động nhanh và máy tính số lưu trong bộ nhớ những dữ liệu cần thiết và kết quả

Trang 19

Luận văn tốt nghiệp GVHD : Nguyễn Phương Quang

Mô hình chức năng hay mô hình điều khiển: Trong mô hình này đối tượng được

thể hiện bằng những mẫu chủ yếu lấy từ quá trình thông tin và quá trình điều

khiển

3.3 CÁC BƯỚC TIẾN HÀNH MÔ HÌNH MÔ PHỎNG

3.3.1 Xác định rõ đặc điểm vấn để

s Đây là bước quan trọng nhất nhưng thường được xem qua loa Quan niệm sai

lầm là những người chưa quen với mô phỏng là khi một mô hình được xây dựng

thì nó có thể cung cấp các câu trả lời cho tất cả các câu hỏi liên quan đến hệ

xây dựng bảng danh xách các câu hỏi mã mô hình phái trảlời, nhưng lưu ý

những câu hội này nên mở hướng suy nghĩ chứ không nén đi vào một vấn để cụ

the

Hong danh xách các câu hói phải phán chia thánh 2 loại ?

v Loại cầu hỏi bất buộc mô hình phải trả lới

v_ Loại cầu hỏi mong muốn mô hình trả lời

S\N hin càng chỉ tiết thì càng phức tap, vì váy lúc đó doi hôi phải đặt vấn để về

Yêu cầu (thời gian, tiễn bạc, )

s$ Nên tránh bổ bớt những câu hỏi được xem là có sấn cáu trả lời hoặc coi khía cạch đó của hệ thống là không quan trọng hoác khống liên quan đến vấn để cần giải quyết Ở bước này việc xác định lợi ích mang lại từ những câu tr lời ở mỗi câu hỏi là cần thiết

s+ Trong bước này nếu mô hình không giải quyết được các câu hỏi yêu cầu thì quá

trình mô phỏng thất bại

3.3.2 Hiểu rõ hệ thống

+ Không thể mô hình hóa cái không hiểu, đó là tiêu để đơn giản, nhưng những,

người mô phỏng lần đầu thường bỏ qua hay vội vàng “vạch ranh giới” cho mô hình Những phần hệ thống cân xem xét bao gồm:

+“ Cấu tạo đặc điểm của các phân tử hệ thống

“_ Chức năng các phần tử

⁄ˆ Mối tương tác giữa các phần tử

v⁄_ Sự tương tác của tiến trình và thao tác điều khiển quan trọng

+ Nếu cần nên trao đổi với người giám sát hoặc vận hành Sau đó đặc các câu hồi ghi chú và làm bảng thống kê thành tài liệu mô tả vận hành của hệ thống kê

thành tài liệu mô tả vận hành của hệ thống Nếu cần để nghị người giám sát cho

xem lại tài liệu và chú giải

Trang 20

Luận văn tốt nghiệp GVHD : Nguyễn Phương Quang

+ Sau khi xem xét các thiết bị, dựng bảng vẽ thiết kế của hệ thống dưới sự giúp

đỡ của máy tính, điều này giúp cho việc hiểu hệ thống rổ hơn và bố trí các câu hỏi để trả lời Ngoài ra chúng còn làm cơ sở để phát triển mô hình

+ Ap dung các giác quan thông thường, để trả lời các câu hỏi như sau : tất cả các khía cạnh của hệ thống được hiểu rổ và đủ để trả lời các câu hỏi then chốt hay không, có thể thiết kế mô hình trên giấy mà nó sẽ cho câu trả lời hay không

3.3.3 Xác định rõ mục đích và mục tiêu của của dự án

+ Bước này nhằm xác định rõ mục đích và mục tiêu dự án, điều này liên hệ mật thiết đến việc xác định các câu hỏi then chốt và có thể lập lại 2 bước này đến

khi chắc chắn và được bạn điều hành chấp nhận

& Mục tiêu của người lâm mô hình là giới hạn kích thước và phạm vi của người làm mô hình đến mức đứ để đáp ứng mục tiêu của dự ấn và trả lời các câu hỏi chủ yêu

Mặc dù đây là bước thích hợp cần boàn tất ưước khi izm dự án mô phỏng chuyên

bị thúc đẩy bởi vấn để thực

ng thì phải chấc chắn rằng thời cho phép mình lam như thế nào

nglnệp, nhiều người thấy nó là 1 điều dễ thực hiện néut

Về cần piải quyết, Nếu là người mới bất dau lam m6

pin thực hiện được ấn định trong kế hoạch của dự

4.3.5 Đoán chắc của mô hình mô phỏng

Những trường hợp hệ thống phức tạp thì đùng mồ hình - mô phỏng

3.3.6 Có thật sự ủng hộ rõ ràng từ phía người điều hành

Đây là một bước giống như 1 điều hiển nhiên nhưng nó lại thường đẩy dự án tiến

về phía trước và phải chiếm được sự ủng hộ rõ ràng từ người hành từ khi bắt đầu

dự án

3.3.7 Nghiên cứu các phần mềm mô phồng

"Thực hiện việc lựa chọn cho một số khá lớn phần mễm có giá trị cho mô phổng,

những sự kiện mà người lầm mô hình quan tâm (hiện nay có trên 50 phần mềm mô phồng)

Người làm mô hình - mô phỏng có thể thu hẹp sự thăm dò của mình bằng cách đặt câu hỏi như sau:

> Ban muén sit dung phần mềm của hẳng sản xuất nào

>_ Bạn muốn mô phỏng bằng ngôn ngữ nào

»>_ Các phần mềm cố định hay điều khiển dược

> Có cần đồ hoạ không

SVTH : Dương Hoàng Hiếu Trang 9

Trang 21

Luận văn tốt nghiệp GVHD : Nguyễn Phương Quang

'Từ các câu hỏi trên, chúng ta còn có thể sử dụng khoảng 5 phần mềm và phẩi trả lời các câu hồi sau:

Độ chính xác và độ chỉ tiết của của mô hình

Có các khả năng tăng hiệu suất của người là mô hình mô phỏng

Chọn tốc lớn nhất có thể có

Cẩn thân với những mục quảng cáo hoặc những thứ mà nó không phải là

những thông tin về tiền năng thực sự của phần mềm từ người bán

Có hay không các nhà cung cấp phan mềm mô phỏng giải quyết các vấn để hẹp đủ hiểu

> Tim kiểm những chỉ dẫn mà nó có thể cho biết những khả năng và những hạn chế của phần mềm

vvvvy

43/8 Xác định cúc thông số có giá trị và cần thiết

Việc xác định các thông số có giá trị và vân thiết trong mô hình - mô phỏng là rất

quần trọng, VÌ điều này về ảnh hướng đến mức đ chính xác của thời gian, kích cỡ của

mô hình, thời gian thô phóng

A.49 Triển khai cav giá định về vấn để

Có miệt số lý do cho rằng sự thành công hoá chính nhỡ quan tâm đến bước này Ví dụ: Các giá định đúng bao gồm việc vạch ra ranh giới thích hợp cho hệ thống, nêu cạnh giới quá rộng thì lầm tăng thời gian và phí tổn vào quá trình hoàn thành mô phòng, nếu rạnh giới quá nhỏ thì những câu bồi đát ra cho m6 phéng ¢6 thể sẽ không

trả lời được Tương tự cũng có thể quyết định sự phức tạp của mô phỏng, độ phức tạp

củu mô hình, nên đủ để trả lời các câu hồi đặt ra và khóng nền phức tạp hơn

3.3.10 Xác định đầu ra cần thiết để giải quyết một vấn để đã định

Bước này nhằm mục đích xác định ngõ ra cần thiết để có thể trả lời các câu hồi

đặt ra cho mô hình

3.3.11 Việc mô phỏng được tiến hành từ bên ngoài hay bên trong

“Thực ra sự phối hợp được dự định mô hình - mô phỏng, mô phỏng phải được điều

khiển từ bên trong, bên ngoài hoặc kết hợp cả hai

3.3.12 Bắt đầu tiến hành mô phồng

Ở bước này cân lưu ý các bước sau:

“_ Nên ghi vào nhật ký công tác những việc khó khăn đối với những để mục

v_ Việc bắt đầu mô phỏng sẽ thấy lạc quan hon, tiến triển nhanh chống hơn và duy trì sự thích thú trong mô phỏng

v Nêu những sự kiện quan trọng, điều này sẽ có ích cho những người thực hiện

đưa ra các quyết định về giải pháp cho vấn đề

Trang 22

Luận văn tốt nghiệp GVHD : Nguyễn Phương Quang,

Y Lén ké hoạch cho những tương tác, điểu này giúp đỡ người đưa ra quyết định

tiếp tục hứng thú với tiến trình

*“_ Phái có câu trả lời đối với công việc và mục tiêu của tiến trình

⁄ Phải có thực tế, những ý kiến liều mang thì có thể dẫn đến việc hình thành

nhanh chống va giá rể, nhưng người ta hoàn toàn cố thể chứng minh nó làm

hồng tiến trình

Y Hoan thành một cách chắc chắn

ˆˆ Cuối cùng của việc bắt đầu tiến trình làtổng kết lại các ý kiến mà những người

tham dự đưa ra, đó là những ý kiến có thể giúp cho sự thành công của tiến trình

Trang 23

Chương 4

CẤU TRÚC VA NGON NGU

CUA HO VI DIEU KHIỂN MCS51

4.1 GIỚI THIỆU HỌ VI DIEU KHIỂN MCS-51

Ho vi điều khiển MCS-51 được thiết kế dựa trên một cấu trúc tối ưu cho các hệ

thống điều khiển chung Nó được dùng rất rộng rãi, từ các thiết bị tự động thông thường, hay dân dụng như: MODEM, VCR, hay bàn phím máy tính Xét về doanh số,

tuy chỉ sau GRHCLL eda MOTOROLA, nhung vi điều khién ho MCS-51 đã được rất nhiều nhà sắn xuất nổi tiếng sắn xuất như: INTBI„ PHILIPS bay SEMENS, hoặc thường dùng trong giổi sinh viên là từ nhà sản xuất ATMPL Các nhà sản xuất này

các đất tính cớ bản của họ MCSS5I, mã sẽ trình bày ngay sau, cồn nghiên cứu thêm vào nhiều tình năng đái sắc khúc như: giáo tiếp lus 12C, tích hợp các bộ chuyển

day AD vin ban tong, ede bQ dink thai watchdog, hay các ngõ ra được điều rộng

tp cho các ví điều khiển này có thể đến 40MHZ, nguồn cấp áp

« UART song công

© 05 ngudn ngắt với 02 mức ưu tiên

«_ 128kb RAM trên chỉp

Xét riêng cho INTEL, hiện nay có 03 thành viên cốt lõi thuộc họ này, gồm 8031, 8031và8751 Xét riêng cho từng loại, dựa vào cải tiến công nghệ, cũng có các vỉ điều

khiển khác nhau Bắng liệt kê sau đây tuy chưa đầy đũ nhưng phần nào giúp cho chúng

ta hình dung được sự đa dạng và có lựa chọn chính xác khi cẩn một vi điều khiển ho

MCS -51 của INTEL

Trang 24

GVHD :Nguyễn Phương Quang

Luận văn tốt nghiệp

TSSOWN

UQIYY Ngip

'diqd Ud-0

SNON

| SONH

| HVIE0

991d udvv

'diqd td:0y

2014

ta

‘digg udor

3NON

SONH

| HVZE08

991d tdt

‘didd ud-ov

2014 0d

‘aidd ud-ov

‘did ud-ov

'didd td-0

'diGd td-0v

‘ddd dor

SNON

| SONHO

vaIsoos

9014 0a-ry

14Iqd 0-0

NOHd3 9x6

‘add ud-or

91/ZL-66

9922 v2z9*:

W'9iXE

NVH 8X9gZ

‘did ud-or

Woda ex»ze

/8I8uL

Arowayy ieuast0|

Trang 25

Luận văn tốt nghiệp GVHD :Nguyễn Phương Quang

Trong cột loại linh kiện (device), ta thấy ngoài các chữ số cơ bản, con có các ký

hiệu mà được nhà sản xuất dùng để thể hiện một số đặc tính của linh kiện đó Nó được

mô tả như sau :

Vi du : Tên linh kiện là AN0CSIBH

+ Ký tự thứ nhất từ bên trái qua: Nhiệt độ chịu đựng của linh kiện

> TL: -40°C dén +80°C

> A: -40°C dén + 125°C

* Ký tư thứ hai từ bên trái qua: Loại vỏ

> P : Loại dịp, nhựa, 40 chân

2 Ký tự thứ tư từ bên trái qua: Bộ nhớ chương trình

>0: Có ROM hay không có ROM

42 CẤU TRÚC PHẪN CỨNG CỦA HỌ VI ĐIỀU KHIỂN MCS 51

4.3.1 Sơ đồ chân ~ý nghĩa các chân

V¡ điều khiển ở thị trường TP HCM thường xuất hiện ở dạng như sau:

Trang 26

.Luận văn tốt nghiệp GVHD :Nguyễn Phương Quang,

1+8 Port1_: Chuyên cho việc xuất nhập

“ Reset : Dat lai giá trị ban đầu cho các thanh ghi khi nó ở mức cao

9 trong ít nhất 2 chu kỳ máy

10° RXD : Nhận data từ port nối tiếp

IN —— | PND : Truyén data qua port nối tiep

12"

ee _ INTO Ng® vio etia ngAt ngoaiO _—_

Ww |ivn Ngõ vào của ngất ngoài |

HH CÚ — r Ngô vào cho mer /Counter0-

jas YL: Ngd vao cho timer /counter)

16 _WÑ _ : Tạo xung cho việc ghi vào 5ý nhớ dữ liệu ngoài

| 17 _ RD Tao xung cho việc đọc từ bộ nhớ đỡ liệu ngoài

) XI,X2 : Nối với thạch anh và tụ dùng để ổ định dao động nội của

21428 Pon2 : Có hai chức năng (xuất nhập đơn thuần hay phan byte cao

của bus địa chỉ khi ở chế độ hợp kênh giữa data và địa chỉ)

29 PSEN : Tín hiệu để cho phép bộ nhớ chương trình mở rộng và

thường được nối với chân OE ( Output Enable) của BPROM để đọc

các byte mã lệnh

30 ALE/P : Khi port0 được dùng ở chế độ chuyển đổi của nó, vừa là

bus data, vừa là byte thấp của bus địa chỉ, nó là tín hiệu để chốt địa

chỉ vào một thanh ghi bên ngoài trong nữa chu kỳ đầu của bộ nhớ

kỳ sau của bộ nhớ

32:39 Port0 : Có hai chức năng (xuất nhập đơn thuần hay phần byte thấp

của bus địa chỉ khi ở chế độ hợp kênh giữa data và địa chỉ)

40 Vee : Chân cấp nguồn +5v cho AT89C51

Bảng 4— 2 : Chức năng của các chân

Trang 27

Luận văn tốt nghiệp GVHD :Nguyễn Phương Quang 4.22 Sơ đồ khối

Sơ đồ khối chung cho họ vi điều khiển họ MCS-51 như hình sau :

Hình 4~ 2: Sơ đồ khối vi điều khiển ho MCS-51

——————————————————————————

Trang 28

Luận văn tốt nghiệp GVHD :Nguyễn Phương Quang,

4.2.3 Nguôn xung clock của AT89C51

Có thể xem nguồn tạo xung clock của AT89C51 là trái tim của nó Nhờ vào xung, clock này, các hoạt động diễn ra bên trong vi điều khiển được đồng bộ với nhau và diễn ra theo một trình tự nhất định Hai chân XTAL1 và XTAL2 được cung cấp nhằm

nối với một mạch cộng hưởng bên ngoài để tạo ra một bộ dao động Thông thường, ta dùng một thạch anh và hai tụ điện để đẩm nhận, mạch có dạng như sau:

cao hơn tần số cho phép, hoạt động của chương trình sẽ bị sai

4.2.4 Thanh ghi bộ đếm chương trình PC và con trỏ dữ liệu

AT§9C51 có 02 thanh ghi 16 bit: Thanh ghi bộ đếm chương trình PC và con trỏ dữ liệu DPTR Chúng được dùng để giử địa chỉ của một byte dữ liệu trong bộ nhớ Các byte lệnh chương trình được nạp từ các ô nhớ mà có địa ch là nội dung của thanh ghi

PC Bộ nhớ chương trình có thể on chip hay gắn ngoài Thanh ghi PC tự động tăng lên

sau mỗi lệnh được gọi và có thể bị thay đổi tuỳ theo lệnh, chú ý rằng PC là thanh ghi

duy nhất không có địa chỉ nội

Thanh ghi DPTR được tạo thành từ hai thanh ghi 8 bit, được gọi là DPL và DPH,

chúng được dùng để cung cấp các địa chỉ bộ nhớ cho việc truy xuất mã lệnh nội hay

ngoại hoặc dữ liệu ngoài Thanh ghi DPTR được điều khiển bởi các lệnh của chương trình và có thể được chỉ định thông qua tên của nó DPTR, hay riêng rẽ từng DPL hay DPH DPTR không có địa chỉ đơn

Trang 29

đến B3, mỗi bank có 8 thanh ghi, từ R0 đến R7

Thanh ghi A, hay Accumulator 1a thanh ghi da nang nhất trong hai thanh ghi của

CPU và được dùng nhiều nhất trong tác vụ, bao gồm tác vụ cộng, trừ, nhân và chia số

nguyên, và các thao tác trên các bịt luận lý Thanh ghi A cũng được dùng trong việc

truyền dữ liệu giữa 8951 và bộ nhớ ngoài Thanh ghỉ B dược dùng kèm với thanh ghi A trong các tác vụ nhân và chia, ngoài khả năng này ra nó không có gì đặc biệt ngoại trừ

được đàng như một thành ghỉ bình thường, nghĩa là được dùng để lưu trữ đữ liệu

4.2.6 Các cờ thanh phí từ trạng thái chương trình

hai chương trình được xem Ja thank ghi | bit, được cũng cấp để

hae wit ket qua lệnh chương trình nh:

chưng Hình cả thể kiểm tra trạng thái CỦa CỜ vá đưa

kiểm ta due | Nim lam cho các cỡ được định diz

được nhóm lại thành một thanh ghỉ gọi là thanh ghi từ

thành phí điều khiến nguồn PCON

NOẠI có 4 cỡ toán học dùng đáp ứng uực tiếp đến kết quả của các tác vụ toán học, và 3 cờ du dụng mà người dùng có thể bật lên 1 hay đưa về 0 Bốn cờ toán học là :

ry, AC: Auxiliary, OV: Overflow va P: Parity Bá cỡ của người dùng là: FO, GFO

chúng là các cờ đa dụng mà người dùng có thể dùng để ghi nhận một số sự

Kiện xây ra khi thực hiện chương trình, chú ý rằng: Tất cả các cỡ đều có thể bị thay đổi bởi người lập trình khi cần thiết Các cỡ toán học, ngoài ra còn bị tác động bởi các tác

Ý nghĩa của các bit như sau:

Bit ký hiệu chức năng

BOOLEAN

6 AC Cờ nhớ phụ,dùng cho toán BCD

5 FO Cờ người dùng

3 RS0 Bitchọn bank thanh ghỉ

Trang 30

Luận văn tốt nghiệp GVHD :Nguyễn Phương Quang

0P Cờ kiểm ưa lẻ cho thanh ghi A

Các bit có thể truy xuất trực tiếp bằng các địa chi bit hod: PSW.0 đến PSW.7

4.2.7 Bộ nhớ nội

Một thiết bị dùng vì điều khiển để thực hiện được các chức năng cần phải có các byfe mã lệnh, thường chứa trong ROM và bộ nhớ RAM dùng để chứa dữ liệu sản sinh

năng này, Các bộ nhờ phụ thêm có thể gấn vào hệ thống thóng qua các mạch tích hợp

Không giáng vớt các ví điểu khiển 66 cau ide Yon Neuman, ma chỉ dùng một bộ

nhỉ chúng cho chướng trình hoậc dữ liệu, nhưng không cho cả hai 8951 có cấu trúc

Harwanl, là câu truy mà chỉ dùng chung một địa chỉ, nhưng khác bộ nhớ, cho chương trình và dữ hiệu Các mạch điện bên trong sẽ cho phép #251 truy xuất đúng bộ nhớ cần

thiết dựa vào trang thái hoạt động của chương trình

7FH Bank

OTH Stack pointer

00 oO J

Hình 4— 4: Bản đồ Ram nội của 8951

+ Byte đầu tiên trong vùng RAM nội, từ địa chỉ 00h đến 1Fh có chức năng là 32 thanh ghi làm việc, được chia làm 04 nhóm, từ 0 đến 3, mỗi nhóm 8 thanh ghi, từ

0 đến 7 Các thanh ghi này có thể truy xuất bằng tên hay bằng dia chi RAM nội của nó Do vậy, thanh ghỉ RO của bank 3 nếu hiện thời bank 3 đang được chọn,

được truy xuất bằng R0 hay qua dia chi RAM nội là 18h, không cần biết bank

nào được chọn Hai bit R§ và RS1 của từ trạng thái chương trình PSW dùng xác

Trang 31

Luận văn tốt nghiệp GVHD :Nguyễn Phương Quang

định bank thanh ghi nào hiện thời chương trình đang sử dụng Các bank thanh ghi không được chọn có thể được dùng như RAM đa dụng Khi reset, bank 0

mặc định được chọn

+ 16 byte tiếp theo, từ địa chỉ 20h đến 2fh, là vùng được định địa chỉ theo bit, tạo

ra 128 bit địa chỉ hoá Một bit cổ địa chỉ hoá là một bit có thể được chỉ bằng địa chi bit hod, từ 00h đến 7Eh, hoặc theo byte tạo thành từ 8 bịt bằng địa chi t 20h đến 2Fh Do vậy, vi dụ : BiL có địa chỉ là 4Eh cũng là bịt 7 của byte có địa chí là 29h Vùng bịt được địa chỉ hoá hữu dụng khi chương trình chỉ cần nhớ một sự kiện dạng nhị phân như bật hay tất đèn Vùng RAM bên trong rất hạn chế, do

vậy tại sau ta dùng đến một byte khi chỉ cần một bit?

s* Vùng trên, từ 30h đến 7h là vùng RAM đa dụng, có địa chỉ theo byte

Câu búc vũng nhờ dữ liệu đã được d€ cập ở phân trên Tướng ứng với ving nay, có

vang bộ nh chưng trình nần ong RÓM nội có địa chỉ tự 0/00h đến 0FFTh, nghĩa là

vưdt qua ức chưa ROM nội, 8951 tự dong tim byte lenh wong bó nhớ chương trình

ngoại Chúng tà cũng có thể cho 8951 truy xuất bộ nữ chương trình hoàn toàn dùng bộ

nhớ bên ngoài bằng cách đặc chân EA, hay chân 31 xuống mức 0 hay đất Thanh ghi

PC không quản tâm đến bộ nhớ chương trình nằm ở đâu, người thiết kế mạch là người

quyết định chương trình chứa trong ROM nội hay nzöái, hay cả hai

c Truy xuất bộ nhớ ngoài

Trong trường hợp chương trình viết có dung lượng lớn hơn 4KB ROM nội lập trình được của AT9C51, dùng bộ nhớ chương trình Bộ nhớ chương trình ngoài là một IC ROM được cho phép bởi tín hiệu PSEN

Bộ nhớ dữ liệu ngoài là một bộ nhớ RAM, được cho phép ghi/doc bằng các tín hiệu WR/RD (các chân p3.6 và p3.7 thay đổi chức năng)

4.2.8 Ngăn xếp và con trổ ngăn xếp

Ngăn xếp là một RAM nội được dùng để kết hợp với các mã lệnh nhất định để

lưu trữ và truy xuất lại dữ liệu một cách nhanh chóng Con trổ ngăn xếp 8 bit, SP được dùng bởi 8951 để lưu trữ địa chỉ RAM nội được gọi là đỉnh của ngăn xếp Địa chỉ được

lưu giữ trong SP là vị trí trong RAM nơi mà byte dữ liệu cuối cùng được lưu trữ bằng tác vụ liên quan đến ngăn xếp

Khi dữ liệu được lưu vào stack, và sau đó SP tăng lên 1 trước khi lưu trữ dữ liệu

vào ngăn xếp, do vậy ngăn xếp tăng lên khi dữ liệu được lưu trữ Khi dữ liệu được lấy lại từ stack, byte được đọc từ staok, và sau đó SP giảm 1 để trổ đến byte kế tiếp của dữ liệu được lưu trữ

Trang 32

Luận văn tốt nghiệp GVHD :Nguyễn Phương Quang

Khi sử dụng, lưu ý đến kích thước vùng stack do giới hạn của RAM nội Nếu không, nguy cơ tràn stack xấy ra, khi đó dữ liệu ghi vào stack sẽ đè lên và làm mất dữ liệu trong RAM

4.2.9 Các thanh ghi chức năng đặc biệt

Một số tác vụ của 8951 mà không dùng 128 byte RAM nội có địa chỉ từ 00h đến 7Fh dude thyc hiện thông qua một nhóm các thanh ghi nội đặc biệt, mỗi thanh ghỉ này

được thực hiện thông qua một nhóm các thanh ghỉ đặc biệt, mỗi thanh ghỉ này được gọi

là thanh ghi chức năng đặc biệt SFR, ching nằm trong RAM nội, từ địa chỉ80h đến FFh

người lập trình chí thay đổi bít nào cần thiết, giữ lại các bit khác không đổi nhằm không

ảnh hưởng đến các hoạt đồng khác

Chủ ý rằng, không phái tất cá vung RAM nội từ #0h đến FFh điều là các SER, do Vậy việc cô E dàng các ô nhớ không được định nghĩa, hay trống, sẽ dẫn đến các kết b y Ế-

quả không

Thanh phy PC không thuộc nhóm SER, và nó không có địa chỉ trong RAM nội Các SER có thể được chỉ dịnh tực tiếp thông qua tén eda chúng, ví dụ A hay THO, hoặc dùng địa chỉ ưực tiếp OE0h hày SCh

Địa chỉ dùng trong RAM nội phải được bất ở:

I:0h phải đưyệc phí là 0EOh

Trang 33

Luận văn tốt nghiệp GVHD :Nguyễn Phương Quang

Table _89C51 Special Function Registers

AUXRE- Amiay een [| —[L— [= [TL T|L-T[- TL |«««s

DPTR 0PH - | dam Pointer High Dats Pointer (2 bytes) on oak

TIM NHA K we wie CAH 004

recon? [tmarzConmel con [Hee [eee RO Tee TERE oon

Talops [mmarzMedeCond | eủ | — | ~ | - 1 ESin E1

Tuoo | Timer Meda wn [ome or [mm | wo [ome [or [mi] wo | oa

Bang 4 — 3: Cac thanh ghi chifc ning dc biét

4.2.10 Sd luge về bộ đếm /định thời, cổng nối tiếp, ngất

a Bộ đếm / định thời

Có hai bộ timer 16 bit, người ta sử dụng các timer để:

> Định khoảng thời gian

Trang 34

Luận văn tốt nghiệp GVHD :Nguyễn Phương Quang

b cổng nối tiếp

Chức năng port nối tiếp, nghĩa là truyền hay nhận chỉ từng bịt, được thực hiện bởi

hai chân P3.0 (RxD) và P3.1 (TxD) trén vi điều khiển họ MCS-51 Với chức năng này,

nó cho phép vi điều khiển giao tiếp với các thiết bị khác ở các tốc độ baud khác nhau,

mà được chọn bằng tốc độ tràn của timer

Hoạt động của port nối tiếp trên 8951 là hoàn toàn song công, và có thể chọn một

trong bốn chế độ sau:

e_ Chế độ0: thanh ghi dịch 8 bit

« Chế độ I:UART 8 bít

«— Chế độ 2: UART 9 bit, tốc độ baud cố định

«` Chế độ 3:ART 9 bit, tốc độ baud thay đổi được

©— Xác định việc sứ dụng ngất nào bằng cách set bịt tướng ứng lên Ì

© Lập chưng tình phục vụ ngất tại địa chỉ vector tướng ứng với ngất sử dụng hay lắp một lệnh nhấy đến chương trình phục vụ nga

4.3 NGON NGU CUA HỌ VI DIEU KHIEN HO MCS-51

Các bộ vi điều khiển họ MCS-51được thiết kế và lập trình bởi hãng INTEL, các

vi điều khiển này được điều khiển để đáp ứng nhu cầu của người đùng nhờ vào phần

mềm hay còn gọi là chương trình Các vi điều khiển họ MCS-51 có ngôn ngữ lập trình theo kiểu lập trình hợp ngữ (Assembly language)

Lập trình bằng hợp ngữ là sử dụng những mã gợi nhớ hay các ký hiệu dưới dạng

các lệnh để thay thế các mã nhị phân của máy tính Máy tính sẽ nhận chương, trình này

sau khi chương trình đã được dịch sang ngôn ngữ máy Quá trình này được thực hiện nhờ vào trình địch hợp ngữ và trình liên kết Các chương trình của hợp ngữ thường gọi

là chương trình nguôn hay mã nguồn, cũng không thể thực thi bởi máy tính

Các mã hay các ký hiệu gợi nhớ được sử dụng trong chương trình hợp ngữ còn gọi

là tập lệnh của vi điều khiển Tập lệnh này dùng làm ngôn ngữ chính để báo cho vi điều khiển biết cần phải làm gì, hay phải lấy đữ liệu để xứ lý hoặc để điều khiển khi

nó đang thực hiện các lệnh tương ứng, các lệnh này hay các mã nhị phân này cho vi điều khiển biết phải thực hiện nhiệm vụ gì tương ứng với mã lệnh đã cho

Trang 35

xẻ Chương 5

TRÌNH BIÊN DỊCH ASM51

5.1 GIỚI THIỆU

Ngôn ngữ Assembly là giữa ngôn ngữ máy và ngôn ngữ cấp cao Ngôn ngữ cấp

cao được dặc trưng như ; Pascal, C, Còn chương trình ngôn ngữ máy là một chuỗi các

byte nhị phân được đặc trưng bởi các lệnh mà máy tính có thể thực thi

Ngôn ngữ Assembly thay thế các mã nhị phân của ngôn ngữ máy để sử dụng các

“thuật nhớ * dé dàng trong quá trình lập trình Ví dụ lệnh cộng trong ngôn ngữ máy

được đặc trưng bởi mã nhị phân “1011001 1" trong khi ngôn ngữ Assembly là “ADD” Một chướng trình ngôn ngữ Assembly không thể thực thị bởi máy tính mà nó phải được dịch sang mã nhì phân ngôn ngữ máy,

Một linker là một chương tình mà nó kết hợp các chương trình đặc trưng

Relocatahle (Module) và thiết kế một chương trình đác trưng tuyệt đối thực thi bằng

may tink:

Sepuent là một phẩn của bộ nhớ mã hoặc dữ liệu, nó có thể tái định vị được

(teloeatable) Hoặc tuyệt đổi (Absolute), Segment Relzcatable có tên, kiểu và có thể

đúc kết nội với segment cục bộ khác, Segment Absolute khóng có lên và không thể được kết nội seeuttent khác,

Module chứa 1 hoặc nhiễu segment hay các segment cục bộ, Một module có thể

A mot “tile” ở nhiều trường hợp cá biệt

Một chương trình module Absolute đơn được hoà vào toàn bộ các segmenL

bsolute va Segment Relocatable từ tất cả các mode nhập

Chương trình chỉ chứa các mã nhị phân thay cho các lệnh (với các địa chỉ và các

hằng dữ liệu) được hiểu bởi máy tính

Ngoài trình biên dịch ASM5I, vi diều khiển họ MCS51 còn có một số trình biên dịch khác như trình dịch AS31 nằm trong khối phần mềm biên SDSC của nhóm Sandeep Dutta, chương trình dịch 8051 Assembler chạy trên hệ điều hành windows

5.2 HOẠT ĐỘNG CỦA TRÌNH BIÊN DỊCH

Có nhiều trình biên dịch và các chương trình hổ trợ khác cho phép ta dễ dàng phát trển các ứng dụng trên chip vi điều khiển AT9C51 Trình dich hợp ngữ họ MCS-51 của INTEL(ASM51) được dùng làm chuẩn để so sánh với các trình dịch hợp ngữ khác

ASM5I là trình biên dich mạnh, hoạt động tốt trên các hệ thống phát triển INTEL

và họ IBM PC của máy vi tính Chương tình nguồn viết cho AT89C51 có thể được

soạn thảo trên máy tính và có thể được hợp dịch thành một tập tin đối tượng và một tập

tin liệt kê bằng ASM51

ASM5I được gọi từ dấu nhắc hệ thống bởi lệnh:

ASM51 source_file[Assembly_Control]

Tập tin nguồn [source_file] được hợp dịch và các điều khiển của trình dịch hợp ngữ

Trang 36

Luận văn tốt nghiệp —— GVHD : Nguyễn Phương Quang

file đối tượng (.OBI ) và tập tin liệt kê (.LST)

PROGRAM.OBJ

Hình 5 - 1: Hợp dịch một chương trình nguồn

Vì hầu hết các tình dịch hợp ngữ quét tập un nguồn 2 lần trong quá trình dịch tập

In nguồn súng ngôn ngữ máy, chúng còn được gọi lá trình dịch hợp ngữ 2 bước Trình dịch hếp ngữ sử dụng một bộ đếm vị tí LC (Locauon Counter) để xác định địa chỉ của

các lệnh và các nhân Hoạt động của mỗi bude duge mé 12 dudi day

Bước 1: Trong bước này, tập tỉn nguôn được quét wag dong va mot bang ky higu due tao ta, BO dém Location được mặc định bằng 0 hoát được set giá trị ban đầu bởi vhi thị ORG (đặt Origin) Khi tập tin được quét, bộ đếm Location dude tang lên bằng độ

dài môi lệnh Các chỉ dẫn định nghĩa dữ liệu DB hoặc DW táng bộ đếm Location bởi số byte dược định nghĩa Các chỉ dẫn dự trữ bộ nhớ DS táng bộ đếm Location bởi số byte

được dự trữ

Mỗi lần một nhãn được tìm thấy ở trước 1 dòng lệnh, thì nó được đặt vào bản ký

hiệu cùng giá trị hiện hành của bộ đếm Location Bảng ký hiệu được lưu lại

Bước 2: Trong bước này, các tập tin đối tượng và tập in liệt kê được tạo ra Các

mã gợi nhớ được biến đổi thành các Opcode và được đặt vào trong các tập tin trên

hiện trong toán hạng, các giá trị được lấy ra từ bảng ký hiệu và dùng tính toán dữ liệu hoặc địa chỉ cho các lệnh

Tập tin đối tượng, nếu thuộc dạng địa chỉ tuyệt đối chỉ cứa các byte nhị phân (00h

-ffh) của chương trình ngôn ngữ máy, nếu thuộc loại tái định vị thì sẽ chứa một bảng ký

hiệu và các thông tin khác cần cho sự kết hợp và định vị sau này Tập tin liệt kê chứa

các mã văn bản ASCII (20h-7fh) cho chương trình nguồn và các byte số hex trong

chương trình mã máy

5.3 ĐỊNH DẠNG CHƯƠNG TRÌNH HỢP NGỮ

Các chương trình hợp ngữ chứa:

+ Các lệnh (Instruction) của bộ vi xử lý, bộ vi điều khiển

„ _ Các chỉ dẫn (Directive) của trình biên dịch

————ễễ-ễễ—Ễễễ——

Trang 37

Luận văn tốt nghiệp GVHD : Nguyễn Phương Quang

„_ Các điều khiển (Control) của trình biên dịch

„_ Các chú thích (Commen)) của trình biên dịch

Các lệnh là các mã gợi nhớ quen thuộc của các lệnh thực thi được Các chỉ dẫn là các lệnh của trình biên dịch dùng định nghĩa cấu trúc chương trình, các dữ liệu, ký hiệu,

hằng số, Các điều khiển thiết lập các mode của trình biên dịch và các luồng hợp dịch

Các chú thích giúp chương trình dễ đọc bằng cách đưa ra các giải thích về

mục dích và hoạt động của các chuỗi lệnh

Khuôn dạng tổng quát của mỗi dòng:

(Label:] mnemonic [operand][,operand|Í ][;comment]

Label ; nhần

Mnemonic : ma gyi abd

Operand : joan hang,

Comment : chú thích

Chí có tinting md yor hd 13 bat bude

Với ASMAI, tường nhân không bất buộc bất đấu ở cột 1, trường mã gợi nhớ

không cẩn ở trên cùng L dòng với tường nhãn, nhưng trưởng toán hạng phải ở trên

củng Lông với trường tHã gợi nhớ,

Nhân biểu thị dịa chỉ của lệnh (hoặc dữ liệu) theo sau Khí có sự rể nhánh đến lệnh này, nhần được dùng trong trường toán hạng của lệnh rẻ nhánh (hoặc lệnh nhảy)

Nhân là một loại ký hiệu và được nhận dạng bằng dấu hai chấm: (kết thúc nhãn)

§.3.2 Trường mã gợi nhớ (Mnemonic field)

Mã gợi nhớ của lệnh hoặc chỉ dẫn của trình dịch hợp ngữ theo sau trường nhãn Các ví dụ về mã gợi nhớ của lệnh là: ADD, MOV, DIV, DEC HOẶC INC,

Các ví dụ về mã gọi nhớ của chỉ dẫn là: ORG, EQU hoặc DB

5.3.3 Trường toán hang (Operand field)

"Trường toán hạng theo sau trường gợi nhớ, trường này chứa địa chỉ hay dữ liệu mà lệnh sẽ sử dụng Các khả năng của trường toán hạng phụ thuộc vào thao tác, có thao tác không có toán hạng như: RET trong khi các thao tác khác cho phép nhiều toán hạng

cách nhau bởi dấu phẩy

5.3.4 Trường chú thích (Comment field)

Các chú thích để làm rổ chương trình được đặc trong trường chú thích ở cuới dồng lệnh Các chú thích phải được bắt đầu bằng dấu chấm phẩy(;)

Trang 38

Luận văn tốt nghiệp GVHD : Nguyễn Phương Quang,

5.3.5 Các ký hiệu đặc biệt (Special Assembler Symbol)

Các ký hiệu đặc biệt được dùng trong các kiểu định địa chỉ thanh ghi Các ký hiệu này bao gồm các thanh ghi A, R0-R7, DPTR, PC, C, AB Dấu $ cũng là ký hiệu đặc biệt dùng tham chiếu các giá trị hiện hành của bộ đếm Location

5.3.6 Địa chỉ gián tiếp (Indireet Address)

của thanh ghi là địa chỉ của dữ liệu, dấu @ chỉ ra địa chỉ gián tiếp mà thanh ghỉ theo

sau địa chỉ là R0 R1, DPTR hoặc PC tuỳ vào lệnh cụ thể

$.3.7 Dữ liệu tức thời ( Lmmediate Data)

+ kiểu định địa chỉ tức thới cúng cấp dữ liệu trong trường toán

ảnh T phần lệnh Ký hiệu # được đát trước dữ liệu tức thời

Cúc lệnh sử dụn

hang và dự liệu này

Nhiều lệnh truy xuất các vị trí nhớ: bằng cách sử dụng kiểu định địa chỉ trực tiếp

thành phí

Chức nàng đặc biệt SFR (80H + 0EFH) trong trường toán hạng Các ký hiệu tiền đình nghĩa được sử dụng thay cho địa chỉ của các thanh øhi chức nang đặc biệt SFR

§,3.9 Địa chỉ bit ( Bit Address )

Các lệnh truy xuất các vị trí được định địa chỉ bít phải cung cấp dia chi bit trong

bộ nhớ dữ liệu nội (00H + 7FH) hoặc địa chỉ bit trong các thanh ghi SFR (80H + 0FFH)

Có 3 cách để xác định địa chỉ bịt trong 1 lệnh:

+ Địa chỉ bit đã biết trước

„ _ Sử dung toán tử dot(.) giữa địa chỉ byte và địa chỉ bit

„ _ Sử dụng ký hiệu tiền định nghĩa

5.3.10 Địa chỉ của lệnh (Code Address)

Địa chỉ của lệnh được dùng trong toán hạng cho các lệnh nhay và thường được

cho dưới dạng các nhãn

5.3.11 Các lệnh nhảy và goi téng quat (Generic Jump and Calls)

ASM51 cho phép người lập trình sử dụng mã gợi nhớ tổng quát JMP hay CALL Lệnh “JMP” có thể được dùng thay cho “SIMP, AJMP, LIMP” và “CALL” có thể thay cho ACALL hay LCALL Tủnh dịch hợp ngữ biến đổi mã gợi nhớ tổng quát thành lệnh

Trang 39

Luận văn tốt nghiệp GVHD : Nguyén Phuong Quang

“thực “ theo 1 vài qui luật đơn giản Việc biến đổi không nhất thiết phải có sự lựa chọn lập trình tốt nhất

5.4 CÁC BIỂU DIỄN CỦA TRÌNH DỊCH HỢP NGỮ

Các giá trị và hằng số trong trường toán hạng có thể được biểu diễn theo 3 cách:

„_ Một cách tường minh

„_ Dùng ký hiệu tiền định nghĩa

„ _ Dùng một biểu thức

Việc sử dụng các biểu thức cho ta 1 kỹ thuật mạnh để làm cho chương trình hợp

ngữ dễ đọc hơn và linh hoạt hơn Khi 1 biểu thức được sử dụng, trình dịch hợp ngữ tính

toán giá trị và chèn kết quả vào trong lệnh

8.4.1 Cac co sé (Number Basses)

Cit ad cho các hằng xố được chỉ ra theo cách thông dung, Các hằng số phẩi được theo hởi các xô nhí phán *B”, theo sau số Octal “O” huge “Q”, theo sau số thập phân

*Ðh hoặc không có gí theo số hẹx TH”

Lưu ý là 1 dịyu xố phải là ký tự đầu tiên cho các hang số dạng số hex để phân

Inet chung vai eae Ký tự

5.4.2 Cac chudi ky ty (Character String)

Các chuỗi có 1 hay 2 ký tự có thể được sử dụng làm các toán hạng trong các biểu

thức Cúc mã ASSCII được biến đổi thành nhị phán tương đương bởi trình dịch hợp ngữ

Các hằng ký tự được đặc trong hai dấu nháy đơn

5.4.3 Các toán tử logic (logic Operation)

+ : cộng

- : trừ

* ; nhân

/ : chia

Mod :modulo (phép lấy dư)

Vì toán tử mod có thể bị nhằm lẫn với một ký hiệu, toán tử này phải cách các toán hạng tối thiểu 1 ký hiệu khoảng trắng hoặc tab, hoặc các toán hạng phải được ở

trong hai dấu ngoặc

5.4.4 Các toán tử logic (Logic Operations)

Các toán tử logic là OR, AND, XOR, NOT

Các thao tác được thực hiện trên các bit tương ứng trong từng, toán hạng Các toán

tử phải được cách các toán hạng bởi một khoảng trắng hoặc tab

'Toán tử NOT chỉ thực hiện trên 1 toán hạng

Trang 40

Luận văn tốt nghiệp E, GVHD : Nguyễn Phương Quang, —

5.4.5 Các toán tử dac biét (Special Operation)

Khi một toán tử quan trọng được sử dụng giữa hai toán hạng thì kết quả luôn luôn

hoặc sai (0000h) hoặc đúng (FEEEH), các toán tử quan hệ là:

EQ = Equals (bing)

NE <>: NOT equals (khong bằng)

Ive Less than (nhd hơn)

ats Greater than (1p hon)

Gib >= Greater than or equal (lớn hơn hoặc báng)

Vú mỗi mật toàn tử có thể sử dụng 1 ưong 2 dạng ký hiệu néu trên

&.47 Cúc thị dụ cho biểu thức

Đười đây là các thí dụ cho biểu thức và các kết quả:

5.4.7 Ưu tiên các toán tử

Ưu tiên của các toán tử trong biểu thức từ cao nhất đến thấp nhất như sau :

Ngày đăng: 22/11/2024, 11:03

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

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

TÀI LIỆU LIÊN QUAN

w