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

Biên soạn sách Điện tử Ứng dụng phần mềm ts controls emulator 8051 mô phỏng vi Đìều khiển

155 0 0
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 phần mềm TS Controls Emulator 8051 mô phỏng vi điều khiển
Tác giả Nguyễn Huỳnh Hải Văn
Người hướng dẫn Nguyễn Phương Quang
Trường học Trường Đại Học Sư Phạm Kỹ Thuật Thành Phố Hồ Chí Minh
Chuyên ngành Đ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ố Thành phố Hồ Chí Minh
Định dạng
Số trang 155
Dung lượng 15,77 MB

Nội dung

Phần mềm mô phỏng TS CONTROL 8051 rất sát với tài liệu vi điều khiển 8051 với đây đủ các tập lệnh , các Port, các thanh ghỉ , thanh ghỉ chức năng đặc biệt, các ngắt, bộ định thời giúp c

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 PHAN MEM TS CONTROLS EMULATOR 8051

MO PHONG VI DIEU KHIEN

GVHD: NGUYEN PHUONG QUANG SVTH: NGUYEN HUYNH HAI VAN

SKLOO

TP Hồ Chí Minh, thang 12/2003

Trang 2

BỘ GIÁO DỤC VÀ ĐÀO TẠO ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP HỒ CHÍ MINH

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

BỘ MÔN ĐIỆN ĐIỆN TỬ

5 we

LUẬN VĂN TỐT NGHIỆP

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

PHAN MEM TS CONTROLS EMULATOR 8051

MO PHONG VI DIEU KHIEN

NGUYỄN PHƯƠNG QUANG NGUYEN HUYNH HAI VAN

98101286 :98101 KBD

NIÊN KHÓA:1998 - 2003

Trang 3

BỘ GIÁO DỤC VÀ ĐÀO TẠO CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM DAI HOC QUOC GIA TP.HỒ CHI MINH ĐỘC LẬP -TỰ DO- HẠNH PHÚC

TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT

KHOA ĐIỆN

BỘ MÔN ĐIỆN -ĐIỆN TỬ

NHIỆM VỤ LUẬN VĂN TỐT NGHIỆP

Họ và tên sinh viên : NGUYỄN HUỲNH HẢI VÂN

Ngành : ĐIỆN -ĐIỆN TỬ

1.1 5

SOẠN SACH DIEN TU UNG DUNG PHAN MEM TS

CONTROLS EMULATOR 8051 MO PHONG VI DIEU KHIEN

2 Các số liệu ban đầu:

hil Pewee POINT gdb Haass

wa tiie tt dag -+6U4hafU

5 Giáo viên hướng dẫn: NGUYEN PHƯƠNG QUANG

6 Ngày giao nhiệm vụ:

7 Ngày hoàn thành nhiệm vụ:

Trang 4

Luận án tốt nghiệp, GVHD: Nguyén Phuong Quang

GIOI THIEU

Trang 5

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

NHÂN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN

SVTH : Nguyễn Huỳnh Hải Vân

Trang 6

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

NHÂN XÉT CUA GIAO VIEN PHAN BIEN

———

SVTH : Nguyễn Huỳnh Hải Vân

Trang 7

Luận án tốt nghiệp GVIID: Nguyễn Phương Quang

LỜI CẮM ƠN Qua những năm tháng học tập ở trường, chúng em đã nhận được sự dạy bảo, sự giúp đỡ tận

tình của quí thầy cô trường Đại Học Sư Phạm Kỹ Thuật, chúng em đã vượt qua những chặn đường

đầy khó khăn, để đạt được mục đích học tập như ngày hôm nay Với lòng biết ơn sâu sắc, chúng em kính xin được gởi lời cầm ơn chân thành nhất đến :

- Thầy Nguyễn Phương Quang, thầy trực tiếp hướng dẫn để tài, đã tận tình chỉ dẫn

trong suốt thời gian thực hiện để tài để từ đó chúng em đã đúc kết cho mình những kiến thức bổ ích

> Qui thấy cô khoa Điện - Điện Tử

- Qui thầy cô trường Đại Học Sư Phạm Kỹ Thuật

~_ Tập thể lớp 98 KĐĐ cùng các bạn sinh viên

Đã giúp đỡ hướng dẫn và chỉ bảo nhiệt tình cho chúng em trong suốt thời gian làm luận án cũng như đã truyễn đạt những kiến thức hết sức hữu ích, quí bầu cho chúng em trong những năm học

vừa quạ để làm hành trang bước vào tương lai

Cám dụ qui thâ y cô nhà trường đã dành sự quan tâm cho tập luận án

Cầm dụ tết z4 đý tạo điêu kiện cho chúng em hoàn thành tập luận án này,

Tp.Hồ Chí Minh, ngày 22 tháng 2 năm 2003

Sinh viên thực hiện

Nguyễn Huỳnh Hải Vân

Trang 8

Luận án tốt nghỉ p GVHD: Nguyễn Phương Quang

LỜI MỞ ĐẦU Khi nén van minh của nhân loại ngày càng đi lên và phát triển thì ngành điện ~ điện tử đã góp phẫn quan trọng không nhỏ trong sự phát triển đó Nó là một trong những ngành mũi nhọn của nên kinh tế quốc dân và giữ vai trò quan trọng trong quá trình công nghiệp hoá và hiện đại hóa đất nước

Ta không phóng đại khi nói rằng bộ vi xử lý (Microprocessor) đã cách mạng hóa ngành công nghiệp điện tử và đã có một tác động đáng kể đến nhiều lĩnh vực trong cuộc sống con người Sự phát triển loại IC ( mạch tích hợp) có mật độ cực kỳ cao đã góp phẩn giảm mạnh kích cỡ và giá

thành của máy vi tính, tính đa năng của chúng được thể hiện trong đủ mọi loại sản phẩm và ứng

dụng

Ở nước ta hiện nay, vấn để này cũng khá phát triển, có thể thấy rõ qua những ứng dụng kỹ

thuật số điêu khiển trong nhiều ngành công nghiệp khác nhau Do đó để cập nhật những vấn đẻ mới

Hay, cae trường đại bọc, cao đẳng đã đưa kỹ thuật này vào chương trình giảng dạy cho sinh viên

Tuy nhiễn do tái liệu về vĩ xử lý, vi điều khiển cũng mới phổ biến và còn khá mới lạ trong trường

học Vì vậy để giúp cho người học có cái nhìn tổng quát và cơ bản về vi xử lý, vi điều khiển nên

chúng em đã chọn 4Ê tái : “ điên soạn giáo trình điện tử ứng dụng phân mêm TS CONTROLS EMULATOR 8051 mé phing vi điều khiển ” Trong quá tình thực hiện luận án này, với kiến thức

và thời gian có han nén dé tai con nhiều sai sót không tránh khổi nên mong thầy cô và các bạn sinh viên thông cắm và #ón¿ zóp ý kiến quí báu để đề tài này hoàn thiện hơn

Xin chân thành cẩm ơn

Sinh viên thực hiện

Nguyễn Huỳnh Hải Vân

Trang 9

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

MỤC LỤC

GIỚI THIỆU

Tua dé tai

Nhiệm vụ đồ án

Nhận xét của giáo viên hướng đãi

Nhận xét của giáo viên phần biện

Chương 3: KHẢO SÁT VI ĐIỄU KHIỂN 8051

Chương 4: CÀI ĐẶT Y4 THÁO CÀI ĐẶT CHƯƠNG TRÌNH MÔ PHONG

Chương 5: NHẬP MÔN THIẾT KẾ LẬP TRÌNH

1 Phân tích vấn để

IL Lưu đồ

II Thiết kế chương trình

IV Viết chương trình

Trang 10

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

1, Glau bếp, với led đơn

I Giáo Uếp với & Jed 7 đoạn và bàn phím

UL Giao ếp mà trận led 8X8

IV Giao tiếp ALC 6409 và DAC 080)

ĐIỆN THÍ NGHIỆM

++ 109

a của bộ định thai (Timer) Port nối tiếp (Serial por\)

Ngắt (Interrupt) Bài giải một số bài t Tài liệu tham khảo

woe LAL

Trang 12

Luận án tốt nghiệp

G 'VHD : Nguyễn Phương Quang

CHUONG I: DAN NHAP

Dat van dé

Vị trí của dé tai

Giới hạn đề tài Mục đích nghiên cứu

————————ễễ

Trang 13

Luận án tốt nghiệp

GVHD : Nguyễn Phương Quang

1 Đặt vấn đề ;

Trong những thập niên cuối của thế kỉ 20, kỹ thuật điện tử đã liên tục có những tiến bộ vượt

bậc, đặc biệt là trong kỹ thuật chế tạo mạch vi điện tử Sự ra đời và phát triển nhanh chóng của kỹ thuật vi điện tử đã thật sự thay đổi diện mạo của nhân loại Các máy tính cá nhân ra đời là một

bước tiến vượt bậc, cũng là nền tắng cho nhiều sẩn phẩm điện tử ngày càng thông minh và độc đáo sau này, Kỹ thuật vi xử lý ra đời chiếm vị trí quan trọng trong phần phát triển của khoa học tính

toán và xử lý thông tin, nó ảnh hưởng quyết định đến con đường “tin học hoá” xã hội, tức là con

đường mà thông tin đã và đang trở thành lực lượng sản xuất trực tiếp trong nền sản xuất của kỷ

nguyên tới

Bộ vi xử lý thường làm CPU trên các máy tính hay còn gọi là”Computer on chịp”,và kỹ thuật vỉ xử lý đã không ngừng phát triển từ 4 bit, 32 bit, 64bit, và 128bit v v Vi xử lý thường

được ứng dụng để xử lý thông tin, và tuỳ thuộc vào ứng dụng mà có thể thiết kế phần cứng để

kiẩm số lượng thành phẩn, đôi khi mạch rất cộng kénh Vì vậy với công nghệ tích hợp cao, bộ vi

điều khiển ra đời đáp ứng được các sản phẩm tiêu dùng và sản phẩm công nghiệp đòi hỏi nhỏ,

on đẹp bến, rẻ hơn Bộ vị điểu khiển như một máy tính nhỏ bao gồm: CPU, RAM, ROM, các

thặch giao tiếp nối tiếp và song song, TIMERS, các Port, mạch điểu khiển ngất

(Qua các vấn đề nêu ở trên, ta thấy việc học về vi xử lý, vi điều khiển, tương đối khó đối với sinh viên ede sigsnh điện tử ~ viễn thông, công nghệ thông tỉn, tự động điều khiển khi mới bắt đầu học Do 46 4# giáp các bạn làm quen và hiểu được những vấn đẻ đơn giản ban đầu và dần

đi vào nghiên cứa sâ hơn vé vi điều khiển chúng em đã tiến hành thực hiện để tài này Bản chất

của chương trình tron ghấn mềm này mô tả vi điều khiển 8051 ;khi chạw trên chương trình mô

phống ngưới học sẽ ¿Z được sự thay đổi của tập lệnh thông qua RAM nội, RAM ngoại ,các thanh ghỉ chức năng đặc

H Viứí

Nhận thấy đưc quan trọng của vi điều khiển trong ứng dụng vào thực tế, nhất là các sản phẩm tiêu dùng và sản p›:ểm công nghiệp nên môn học này là môn học sinh viên rất quan tâm

Vì nó đòi hỏi sự tư duy cao xà bam học hỏi Khi tiếp cận với vi điều khiển sinh viên thường gặp

nhiều khó khăn chung quanh việc sử dụng tập lệnh của vi điều khiển và thường vướng phải sai sót

khi lập trình Chương trình mô phỏng này sẽ giúp người học tìm ra những sai sót đồng thời người

học sẽ dễ dàng tiếp cận với việc lập trình vi điều khiển hơn

Phần mềm mô phỏng TS CONTROL 8051 rất sát với tài liệu vi điều khiển 8051 với đây đủ

các tập lệnh , các Port, các thanh ghỉ , thanh ghỉ chức năng đặc biệt, các ngắt, bộ định thời giúp

cho sinh viên dẫn làm quen và thực hành thiết kế các chương trình ứng dụng liên quan đến thực tế, Khi hiểu được chương trình này thì nó sẽ là nền tảng để người học học tiếp các chương trình ngôn

ngữ cao hơn

Khi thực hiện để tài này nhằm giúp cho nhóm nghiên cứu có điều kiện ứng dụng những

kiến thức đã được trang bị ở nhà trường, đồ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ễn ứng dụng liên quan đến_ vi điều khiển, viết chương trình cho các giao diện phần cứng

II Giới hạn đ tài :

Mặc dù nhóm nghiên cứu đã cố gắng hết sức, nhưng do thời gian có hạn và lần đầu tiên thực hiện công tác nên nhóm chỉ dừng lại ở mức độ đơn giản là :

~ _ Nghiên cứu hệ thống vi điều khiển 8051

- _ Hướng dẫn nhập môn thiết kế lập trình vi điều khiển

Trang 14

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

-_ cao Hướng dẫn sử dụng chương trình mô phỏng và đưa ra các bài tập minh họa từ cơ bản đến nâng

- _ Hướng dẫn về tập lệnh và các ví dụ về tập lệnh để dễ hiểu

Mặc dù vậy, khi bắt tay vào thực hiện là cả một lượng kiến thức khá lớn và thời gian nghiên

cứu lâu dài Do đó để tài này vẫn còn một số hạn chế :

~ Bài tập củng cố chưa đa dạng,

- Chương trình mô phỏng này không có các giao diện phẩn cứng nên khi thực hiện các bài tập nâng cao sẽ gây khó hiểu cho người học 5

IY Mục đích nghiên cứu ;

Để tài này có thể ứng dụng phục vụ cho các sinh viên nghiên cứu về vi điều khiển ở mức

độ cơ bản Các bạn sinh viên cũng có thể xem trang web do nhóm nghiên cứu tạo ra để được

hướng dẫn thêm các thông tin về đề tài

Trang 15

GVHD : Neuyén Phuong Quang

Trang 16

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

——————————————-——_

U Đối tượng sử dụng chương trình mô phỏng:

Chương trình mô phỏng này thích hợp cho các sinh viên đang nghiên cứu về lập trình ngôn

ngữ cấp thấp và tất cả những ai có hứng thú trong việc tìm tòi học hỏi về vi điều khiển - một trong

những lĩnh vực được ứng dụng nhiều nhất là các hệ thống tự động điều khiển

Chương trình mô phỏng này có thể sử dụng cho học sinh phổ thông ở lứa tuổi 14 đến 16 giải

quyết những vấn để đơn giản thông qua việc hiểu và thực hành được các nguyên tắc đơn giản về

cách thức họat động của những hệ thống tự động nhỏ như :đèn giao thông, các hệ thống quảng cáo

nhỏ ,

Ngoài ra chương trình còn giúp cho sinh viên các năm cuối có thể giải quyết những vấn để

lập trình ngôn ngữ cấp thấp khá phức tạp có liên quan đến những lệnh gọi chương trình con, các

qui trình ngất phần cứng, phẩn mềm và toán tử logic Mặc dù mức độ các chương trình không lớn, nhưng là một lĩnh vực tốt để ta có thể thiết kế lập trình theo modun , việc chuyển đổi mã và lập

BG Liên quan đến vi điều khiển

KG? Liên quan đến các hệ thống điều khiển

BG Lập trình ngôn ngữ cấp thấp

1U Phần mồ tả chướng trình mô phỏng :

Chuong tinh m6 phong TS controls emulator 8051 sit dung máy tính cá nhân của bạn như là

một bộ vi điểu khiển được thiết kế để gở lỗi và chạy thử các ứng dụng của bạn Bằng các công cụ

gỡ lỗi và kiểm tra của chương trình mô phỏng này bạn có thể phát triển các ứng dụng của mình một cách nhanh chóng, Chúng ta có thể thấy được bên trong của một vi điều khiển đang được mô

phỏng trong lúc các ứng dụng đang chạy, điều này cho phép chúng ta kiểm tra chương trình (phẩn

mềm) của mình mà không cần phải có bộ kít (phần cứng) để thử

Các yêu cầu của hệ thống: bộ xử lý 486 hoặc cao hơn, hệ điều hành Win 9X, hoặc Win NT 3.51 hoặc cao hơn, 2Mb không gian đĩa, 8Mb Ram (16Mb là tốt nhất), màn hình VGA hoặc loại tốt hơn

Trong phiên bản phần mềm quảng cáo ( ree ware) thông thường một số lệnh trong tập lệnh của vi điểu khiển không sử dụng được, các tiện ích của chương trình mô phỏng cũng không đầy

đủ Các phiên bản sau khi đã đăng ký bao gồm tất cả các tinh năng trên và các phần phụ trợ khác

Để đăng ký thì ta phải kết nối internet hoặc chép phần mém crack để chuyển phiên bản free ware thành phiên bản chính thức Để cập nhật phiên bẩn mới của chương trình mô phỏng có thể gửi yêu

cầu thông tin qua địa chỉ: info@tscontrols.com_

Chương trình TS controls emulator 8051 mô phỏng được IC 8031/8051 và 8052 là các IC

thuộc họ MCS51 _ một họ IC vi điều khiển (Microcontroller) do hãng Intel sắn xuất Các IC đời

sau luôn có khả năng giao tiếp với các IC đời trước Điều này giúp cho chương trình có thể mô „

phỏng cho cả các IC họ MCS51, đây là điểm mạnh của phần mềm mô phỏng Thứ nhất, về mặt thực tiễn đây là bộ vi điều khiển đang được ưa chuộng của Intel nó được sử dụng trong nhiều lĩnh

“——————ễễễễ

Trang 17

GVHD : Nguyễn Phương Quang

vực khác nhau, nhất là trong các hệ thống tự động Các bộ vi điều khiển thuộc họ này chắc chắn

được sử dụng rộng rãi cả trong dân dụng lẫn trong công nghiệp nhiều năm nữa vì giá thành thấp và

tính dễ lập trình của nó, nó có thể kết nối với cả các sản phẩm trong ho 80X86, các chương trình

viết cho 80X86 vẫn có thể giao tiếp được trên hệ thống Thứ hai, về góc độ sư phạm thì đây là

bộ vi điều khiển đang được giảng dạy rất nhiễu trong các trường đại học trên cả nước điều này cho

thấy nó cũng không đến nỗi phức tạp nhưng mang đầy tính thực tiễn Vì vậy việc hiểu nó là tương đối đơn giản và cần thiết Thứ ba, các họ vi điều khiển trên thế giới tuy có điểm khác nhau nhưng

xét cho cùng cũng có rất nhiều điểm chủ chốt giống nhau, do đó chỉ cần nắm vững một loại vi điều

khiển của một nhà sản xuất ta sẽ có cơ sở để nắm bắt tất cả các bộ vi điều khiển khác

Chương trình mô phỏng còn cho phép ta thay đổi nội dung các thanh ghi và bộ nhớ Nhờ đó

ta có thể sửa lại nội dung của bộ nhớ và thanh ghí để tiếp tục công việc kiểm tra Các thanh ghi chức năng đặc biệt, Ram nội, Ram ngọai, có thể thay đổi nội dung ở từng thời điểm là 1 byte

IV/ läc trưng của chương trình mô phổng :

> Tốc độ xun¿ ciœ& CPU có thể thay đổi được

> Trong khi thanh ghí chức s¿ng Zng trình chúng ta có thể quan sát được : các thanh ghỉ đa dụng, các đặc biệt, Ram nội, Ram ngoại, mã chương trình và mã nguồn Ta

củng có thể thay đổi nội dung của chúng trong lúc mô phỏng (trừ mã chương trình và mã

nguồn),

V/ Giới thiệu màn hình giao diện TS controls emulator 8051:

Trang 18

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

ice oo + pf, 06.90 00 06 00 a0 00 0-8

lprm 0000 HH Ty 90 00T00”06700°00”08"08700:0d 00.00 00`n0 00 0

SP Psu 00 =—-0—~ | ong gg PC 97 0000 (001 | looo3 09 pei x NOP a 7 00.09.0060 00, 00.00 00.00.00.00: 00.00, 000.00 00 '00 00.00 00 00 00 00 00 ‘00 00°00 00" 99 00 ‘00

+00 00.00 0:00 00'00-00.00 00.00 00 00700 00.0, (| R0 00 Then we 00 09 00.00.00 00 00 00 00 00 09 09, 00 0 00 g0

chúng sẽ được trình bày kỹ ở phần sau

VỤ Tài liệu hướng dẫn :

Ta có thể tham khảo ngay những tài liệu giúp đỡ trực tuyến bằng phím tắt F1 hoặc vào

Help/Contents and index

ee

Trang 19

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

Obtaining Support for TS Controls Emulator 8051

PH How To

Menu Functions Tool Bar

Function Keys

Coremand Line Options

Murrene Input Format

Các thao tác tìm kiếm, in ấn, hủy bỏ, rất quen thuộc với tất cả những ai sử dụng Window

SVTH : Nguyễn Huỳnh Hải Vân Trang 9

Trang 20

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

CHƯƠNG 3 KHẢO SÁT

VI ĐIỀU KHIỂN 8051

Trang 21

Luận án tốt nghiệp GVHD ; Nguyễn Phương Quang

1 Giới Thiệu Cấu Trúc Phần Cứng Ho Mes 51:

Đặc điểm và chức năng hoạt động của các vi điều khiển họ MCS 51 hoàn toàn tương tự như

nhau Ở đây giới thiệu vi điều khiển 8051 có các đặc điểm chung như sau:

Có 4 KB bộ nhớ ROM bên trong dùng để lưu chương trình điều khiển

128 byte RAM nội

4 port xuất nhập (ƯO port) 8 bit

Có khả năng giao tiếp truyền dữ liệu nối tiếp

2 bộ định thời 16 bit

Có thể giao tiếp với 16 Kbyte bộ nhớ ROM bên ngoài để lưu chương trình điều khiển

C6 bộ xử lý bit (thao tác trên các bit riêng rẽ)

Có 210 bit có thể truy xuất từng bit

Có lệnh nhân và chia trong 4 us

Thủ

i

P2.0 2 P24 P22]

P23 “4 P24 P25 P26

Port 0 1a port c6 2 chife nang véi sé thit ty chan 32-39,

Trong các hệ thống đơn giản sử dụng bộ nhớ bên trong không dùng bộ nhớ mở rộng bên

ngoài thì Port 0 được dùng làm các đường điều khiển IO (Input/ OutpuU)

Trang 22

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

Trong các hệ thống điều khiển lớn sử dụng bộ nhớ mở rộng bên ngoài thì port 0 có chức năng là bus địa chỉ và bus dữ liệu AD7 ~ AD0

*% Port:

Port 1 với số thứ tự chân từ 1 đến 8 Các chân của port chỉ được sử dụng để giao tiếp với các thiết bị ngoại vi , và không có các chức năng khác

Port 2:

Port 2 la port có 2 chức năng với số thứ tự chân 21 — 28

Trong các hệ thống đơn giản sử dụng bộ nhớ bên trong không dùng bộ nhớ mở rộng bên ngoài thì port 2 được dùng làm các đường điều khiển 1O

Trong các hệ thống điều khiển lớn sử dụng bộ nhớ mở rộng bên ngoài thì port 2 có chức năng có bus địa chỉ cao

% Port 3:

Port 3 la port có 2 chức năng với số thứ tự chân 10 ~ 17 Các chân của port này có nhiều

chức năng, các công dụng chuyển đổi có liên hệ với các đặc trưng của 8051

Bang trang thái:

P37 #D/ Ì Tín hiệu điều khiển đọc dữ liệu từ bộ nhớ ngoài

2.2/ Các ngõ tín hiệu điều khiển:

$# Chân cho phớp bộ nhớ chương trình PSEN(Program store enable):

PSEN là tn hiệu xuất trên chân 29 có tác dụng cho phép đọc bộ nhớ chương trình mở rộng, thường nối đến chân OE¿ (output enable) của EPROM hoặc ROM để cho phép đọc các byte lệnh

Tín hiệu PSEN ở mức thấp trong suốt thời gian tìm ~ nạp lệnh Các mã lệnh của chương

trình đọc từ EPROM qua bus dữ liệu và được chốt vào thanh ghỉ lệnh IR của 8051 để được giải mã

Khi 8051 thí hành chương trình trong ROM nội thì PSEN ở mức logic 1

+ Chân cho phép chốt địa chi ALE (Address Latch Enable):

Khi vi điều khiển 8051 truy xuất bộ nhớ bên ngoài, port 0 có chức năng là bus địa chỉ và ' bus dữ liệu do đó phải tách các đường dữ liệu và địa chỉ Tín hiệu ra ALE ở chân thứ 30 dùng làm

tín hiệu điều khiển để giải đa hợp các đường địa chỉ và dữ liệu khi kết nối chúng với IC chốt

Tín hiệu ra ở chân ALE là một xung trong khoảng thời gian port 0 đóng vai trò là địa chỉ thấp nên việc chốt địa chỉ được thực hiện một cách hoàn toàn tự động

Các xung tín hiệu ALE có tốc độ bằng 1⁄6 lần tần số dao động trên chip và có thể được dùng làm tín hiệu clock cung cấp cho các phần khác của hệ thống

Trong chế độ lập trình cho bộ nhớ nội thì chân ALE được dùng làm ngõ vào xung lập trình cho EPROM trên chip đối với các phiên bản của 8051 có EPROM

Ngõ tín hiệu EA/ (External Acess);

Tín hiệu vào EA/ ở chân 31 thường nối lên mức 1 hoặc mức 0

Trang 23

Tin higu vao EA/ 4 chan 31 thường nối lên mức I hoặc mức 0

Nếu nối EA/ lên mức I(+5 V) thì vi điều khiển 8051 sẽ thi hành chương trình trong ROM

nội trong khoảng địa chỉ thấp 4 Kbyte

Nếu nối EA/ với mức logic 0 (mass) thì vi điều khiển 8051 sẽ thi hành chương trình từ bộ

nhớ mở rộng

s# Ngõ tín hiêu RST (reset):

Ngõ vào RST ở chân 9 là ngõ vào RESET của 8051 Khi ngõ vào tín hiệu này đưa lên mức

cao ít nhất 2 chu kỳ máy , các thanh ghỉ bên trong được nạp những giá trị thích hợp để khởi động

hệ thống Khi cấp điện cho hệ thống thì mạch tự động Reset

## Các ngõ vào bộ dao đông X1,X2:

Bộ dao động được tích hợp bên trong 8051,khi sử dụng 8051 người thiết kế chỉ cần kết nối thêm tụ thạch anh và các tụ như hình vẽ trong sơ đổ Tân số tụ thạch anh thường sử dụng cho 8051

là l2 MHz

Chân 40( Vcc) thường được nối lên nguồn 5 V

ILL Cu trúc bộ nhớ bên trong vi điều khiển:

Memory FFT pata Enable Enable

Memory via via

Trang 24

GVHD : Nguyễn Phương Quang

TCON PCON

F0 |F7 |F6 [F5 |F4 [F3 lF2 |FI [FO RAM da dụng E0 |E7 |E6 |E5 |E4 |E3 |B2 |E1 [E0

23iF he [1p iC 1B 1A ` tớ) tị 8D|_khOng duge truy xuất bit

2a 7] tổị 15) 14 13 321 111 10) §C |_ không được truy xuất bit

2I|0F or lop loc lop 0a | 09, 08) 8B |_ không được truy xuất bit

20| 07| 0ø| 0s] 04] 031 02] 01! 00 8A |_ không được truy xuất bit

Bank 3 89|_ không được truy xuất bit

IF

18| 88)8F |8E |8D|8C [SB [8A | 89] 88

10)

OF Bank 1 §3|_ không được truy xuất bịt

08| 82|_ không được truy xuất bit

0 Bank thanh ghỉ 0 SI|_ không được truy xuất bit

00Ì_—_ (mặc định cho R0 - R7) 80| 87| 86] 85] 84] 83] 82] 811 so]

RAM

PO

Các thanh ghỉ chức năng đặc biệt

Bộ nhớ trong 8051 bao gồm ROM và RAM

RAM trong 8051 bao gồm nhiều thành phân : phần lưu trữ đa dụng, phần lưu trữ địa chỉ có

thể truy xuất từng bit , các bank thanh ghỉ và các thanh ghi chức năng đặc biệt

Trang 25

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

27 98)9F |9E |9D|9C [9B |9A | 99] 98] SCON

26 :

252F RE 2p 2c 26 2a | 29) 28! 90|97|96|95|94|93|92/91|90| PI

24| 27| 26| 251 22 22 22) 21) 20)

23|IF |IE |ID ic ae 34 | 19} 18h 8D[ không được truy xuất bit | THỊ

22| 17| 6| 15) 14 13) THỊ 10 8C| khOng được truy xuất bit | THO

2I|0E lor lop ‘oc [ox ‘oa | 0) 08| 8B|_ không được truy xuấtbit | TLI

20| 0| 0ó| 05] o4| g3| 02! 01 0o) 8A|_ không được tuy xuấtbit | TLO

Bank 3 §9|_ không được truy xuất bịt | TMOD

IF

18 88)8F |8E [8D|8C |gB |8A | 89] 8g} TCON

1 Bank 2 §7| không được truy xuất bịt | PCON

10|

0E Bank 1 83|_ không được truy xudt bit_ | DPH

07 Bank thanh ghỉ 0 §I| không được truy xuấtbit | SP

00Ì —_ (mặc định cho R0 - R7) 80| 87| 86] 85] sal 83| s2| si] so PO

RAM Các thanh ghỉ chức năng đặc biệt

Bộ nhớ trong 8051 bao gồm ROM va RAM

RAM trong 8051 bao gồm nhiều thành phân : phần lưu trữ đa dụng, phần lưu trữ địa chỉ có

thể truy xuất từng bit , các bank thanh ghi và các thanh ghi chức năng đặc biệt

————————==—————ễ

Trang 26

GVHD ; Nguyễn Phương Quang

8051 có bộ nhớ theo cấu trúc Harvard: có những vùng bộ nhớ riêng biệt cho chương trình và

dữ liệu Chương trình và dữ liệu có thể chứa bên trong 8051 nhưng 8051 vẫn có thể kết nối với 64 Kbyte bộ nhớ chương trình và bộ nhớ dữ liệu

“ Hai đặc tính cần chú ý là:

Các thanh ghỉ và các port xuất nhập đã được định vị (xác định ) trong bộ nhớ và có thể truy xuất trực tiếp giống như các địa chỉ bộ nhớ khác

Ngăn xếp bên trong RAM nội nhỏ hơn so với RAM ngoại so véie các bộ vi xử lý khác

s* RAM bên trong 8051 được phân chia như sau:

Các bank thanh ghi có địa chỉ từ 00H đến 1FH

RAM địa chỉ hoá từng bit có địa chỉ từ 20H đến 2FH

RAM đa dụng từ 30H đến 7FH

Các thanh ghi có chức năng đặc biệt từ 80H đến FFH

> RAM da dung:

Mic dù trên hình vẽ cho thấy 80 byte đa dụng chiếm các địa chỉ từ 30H đến 7FH, 32 byte từ

00M đến IPH cũng có thể dùng với mục đích tương tự ( mặc dù các địa chỉ này đã có mục đích

khác)

Moi dia chi trong vung RAM da dụng đều có thể truy xuất tự do dùng kiểu địa chỉ trực tiếp

hoặc gián tiếp

> RAMc6ứ

Vi diéu kt

byte có địa chi

Ý tưởng truy su:

32 byte thấp của bộ nhớ nội được dành cho các bank thanh ghi Bộ lệnh 8051 hỗ trợ 8 thanh

ghi có tên là R0 đến R7 và theo mặc định sau khi reset hệ thống thì các thanh ghhi RO dén R7

được gán cho 8 ô nhớ có địa chỉ từ 00h đến 07H

Các lệnh dùng các thanh ghỉ R0 đến R7 sẽ ngắn hơn và nhanh hơn so với các lệnh có chức

năng tương ứng nếu dùng kiểu định địa chỉ trực tiếp Các dữ liệu được dùng thường xuyên nên dùng một trong các thanh ghỉ này

Do có 4 thanh ghỉ nên tại một thời điểm chỉ có 1 bank thanh ghỉ được truy xuất bởi các

thanh ghỉ R0 đến R7, để chuyển đổi việc truy xuất các bank thanh ghi ta phải thay đổi các bit chọn

bank trong thanh ghỉ trạng thái

2/Các thanh ghí có chức năng đặc biệt:

Các thanh ghỉ nội của 8051 được truyy xuất ngầm định bởi bộ lệnh Các thanh ghỉ trong

8051 được định đạng như một phẩn của RAM trên chip vì vậy mỗi thanh ghỉ sẽ có một đìa chỉ (ngoại trừ thanh ghỉ bộ đếm chương trình và thanh ghỉ lệnh vì các thanh ghì này hiểm khi bị tắc

động trực tiếp) Cũng như các thanh ghỉ R0 đến R7, vi điều khiển 8051 có 21 thanh ghì có chức

năng đặc biệt (SER: special function register) nằm ở vùng trên của RAM nội từ địa chỉ 80H đến FFH,

xuất từng bit;

“5 ie6 210 bit có thể truy xuất từng bit, trong đó có 128 bit nằm trong các

+ 2FH và các bit còn lại chứa trong nhóm thanh ghi có chức năng đặc biệt

ig bit bang phan mềm là đặc tính là các đặc tính mạnh của vi điều đất , xoá, AND, OR, ., bằng 1 lệnh đơn Đa số các vi xử lý đòi hỏi I

Ễ đạt được mục đích tương tự +

có thể truy xuất được từng biL

nây cũng có thể truy xuất như các byte hoặc như các bit phụ thuộc

Chú ý: tất cả 128 địa chỉ từ 80H đến FEH không được xác định, chỉ cỏ 21 thanh ghì cổ chức

năng đặc biệt được xác định ede dia cht

Trang 27

Luận án tốt nghiệp —=——————-— —_ ——` GVHD : Nguyễn Phương Quang

Ngoại trừ thanh ghi A có thể được truy xuất ngầm như đã nói, đa số các thanh ghỉ có chức

năng đặc biệt SFR có thể địa chỉ hoá từng bit hoặc byte

* Thanh ghi trang thái chương trình (PSW: program status word);

Từ trạng thái chương trình ở địa chỉ DOH được tóm tắt như sau:

PSW.5 F0 DSH Flag 0 con goi IA c& Zero ky higu lA Z

Psw.4_| RSI D4H Chọn dãy thanh ghi bit 1

PSW43 | RS0 D3H Chọn dãy thanh ghỉ bịL0

00 = Bank 0 địa chỉ từ O0h+07h gán cho R0 + R7

ñ 01 = Bank 1 địa chỉ từ 08hz0Fh gán cho R0 + R7

L— | — 10 = Bank 2 địa chỉ từ I0h+17h gán cho R0 + R7

| - 11 = Bank 3 địa chỉ từ 18h+lFh gần cho R0 + R7

bit trang thai:

+ Co Carry CY:Ce nbd c6 tae dung kép Théng thu&ng né dugc ding cho cdc lénh todn hoc:

C =1 nếu phếp toán cộng có tràn hoặc phép trừ có mượn và ngược lại C = 0 nếu phép toán cộng không trần và phép trữ khóng có mượn

> C8 Cary pi Khí cộng những giá trị BCD (Binary Code Decimal), cờ nhớ phụ AC

được set bằng 1 sế+ kết quả 4 bít lớn hơn 09h Ngược lại AC =0

> Cờ0:Cỡ0 (0; cš đa dụng dùng cho các ứng dụng của người dùng

> Những bít chọn bank thanh ghi truy xuất: RS0 và RSI quyết định đãy thanh ghỉ tích cực

Chúng được set sau khi reset hệ thống và được thay đổi bởi phần mềm khi cần thiết

Tuy theo RSI, RSO = 00, 01, 10, 11 sẽ được chọn bank tích cực tương ứng là Bank 0, Bank 1,Bank 2, Bank 3

RSI RSO BANK

> Cờ tràn OV: Cé tran được set sau một hoạt động cộng trừ nếu có, sự tràn toán học

Khi các số có đấu được cộng trừ với nhau, phần mềm có thể kiểm tra bit này để xác định

xem kết quả có nằm trong tâm xác định không Các kết quả lớn hơn + 127 hoặc nhỏ hơn -128 thì bịt OV = I

Khi cộng các số không dấu thi bit OV trở nên không cần thiết

> Bit Parity(P):

Bit P tự động được set hay clear ở mỗi chu kỳ máy để lập Parity chẳn với thanh ghi A Đếm các bit 1 trong thanh A cộng với bit Parity luôn luôn là số chẩn

Bit P thường được dùng trong sự kết hợp với những thủ tục của Port nối tiếp để tạo ra bit

Parity trước khi được truyền đi hoặc kiểm tra bit Parity sau khi nhận

> Thanh ghi B:

EEE

Trang 28

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

Thanh ghi B ở địa chỉ F0h được dùng cùng với thanh ghỉ A để thực hiện các phép toán nhân

chia Lệnh MUL AB : sẽ nhận những giá trị không dấu 8 bit với 8 bit trong 2 thanh ghi A và B, rồi

trả về kết quả 16 bit trong A (byte cao) và B (byte thấp) Lệnh DIV AB: lấy giá trị trong thanh ghỉ

A chia cho gid trj trong thanh ghỉ B, kết quả nguyên lưu trong A, số dư lưu trong B

Thanh ghỉ B có thể được dùng như một thanh ghỉ đệm trung gian đa mục đích Nó có thể

truy xuất từng bit từ F0H +F7 H

> Thanh ghỉ con trổ ngăn xếp SP (stack pointer):

Con trổ ngăn xếp là một thanh ghỉ 8 bit nằm ở địa chỉ 81h Nó chứa địa chỉ của byte dữ liệu hiện hành trên đỉnh ngăn xếp

Các lệnh liên quan đến ngăn xếp bao gồm các lệnh cất dữ liệu vào ngăn xếp (lệnh push)

và lệnh lấy dữ liệu ra khỏi ngăn xếp (lệnh pop)

Lệnh cất dữ liệu vào ngăn xếp sẽ làm tăng SP trước khi ghỉ dữ liệu vào

Sau lệnh lấy ra khỏi ngăn xếp sẽ làm giảm SP

Ngăn xếp của 8051 nằm trong RAM nộivà bị giới hạn về cách truy xuất địa chỉ- chỉ cho phép Iruy xuất địa chỉ gián tiếp

Để khởi dong SP với ngăn xếp bắt đầu tại địa chỉ 60H, ta dùng lệnh:

MOY SP, #5FH Với lệnh trên th ngăn xếp của 8051 chỉ có 32 byte vì địa chỉ cao nhất của RAM trên chip là TFH Giá trị 5H #2 siap vào SP vì SP tăng lên 60H trước khi cất byte dữ liệu

i P sé mang giá trị mặc định là 07H và dữ liệu đầu tiên sẽ được cất vào ô

Í 99H

dng dung không khởi động SP một giá trị mới thì bank thanh ghi 1 có thể cả

“ang RAM này được dùng làm ngăn xếp

xuất trực tiếp bằng các lệnh PUSH, POP để lưu trữ tạm thời và lấy dữ

liệu, hoặc truy xuất nz2z: 5šaz các lệnh gọi chương trình con (ACALL và LCALL) và các lệnh trở

về (RET RETI) để lưu trí hì cũa bộ đếm chương trình khi bắt đầu thực hiện chương trình con

và lấy lại địa chỉ khi kết thúc chương trình con

> Các thanh ghi Port:

Các Port của 8051 bao gồm Port 0 6 dia chi 80H, Port! & dia chi 90H, Port 2 ở địa chỉ A0H

Port3 ở địa chỉ B0H Tất cả các port này đều có khả năng truy xuất từng bit nên rất thuận tiện trong

khả năng giao tiếp

Hoạt động reset:

8051 có ngõ vào Reset tác động ở mức cao trong khoảng 2 chu kỳ xung máy, sau đó xuống

mức thấp để cho 8051 bắt đầu làm việc

Trạng thái của tất cả thanh ghỉ trong 8051 sau khi reset hệ thống được tóm tắt như sau:

——— ———

SKL 00A4 64

Trang 29

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

“——————-—=—'

‘Thanh ghi Nội dung

Bộ đếm chương trình PC 0000H Thanh ghỉ tích lũy A 00H

Trang 30

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

Trang 31

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

Đầu tiên phải chép các file từ đĩa được nhà sản xuất phân phối trên thị trường hay file được

tải trên mạng xuống vào máy tính,

1 Điều kiện cân thiết để cài hệ thong:

Bộ xử lý 486 hoặc cao hơn,

Win 98 hoặc Win NT 3.51 hoặc cao hơn

2Mb không gian đĩa,

8Mb Ram (16Mb là tốt nhất)

Màn hình VGA hoặc loại tốt hơn

1U Cài đặt chương trình:

Sau khi đã có phần mềm cài đặt TS Controls 8051 ta vào trong thư mục có chứa tập tin

TSCE0101.EXE chạy chương trình cài đặt này Ta lần lượt trả lời các hộp thoại yêu cầu của phần mềm cài đặt Chương trình sẽ được mặc định cài đặt trong các thư mục default Nếu muốn lưu trữ

phần mềm trong một thư mục nào đó ta có thể tạo trước nó rồi trong quá trình cài đặt ta sẽ chỉ

đại học, các file bài tập nên tạo sẵn cho sinh viên Các file này được

ah điện tử này này: Baitap01.asm, Baitap02.asm Các tập tin ví dụ khác

ta chương trình mô phỏng và lợi ích của việc sắp xếp các chương trình Sinh viên có thể xez qua chương trình DEMO.asm đã được soạn sẵn Các file ví dụ khác thì thầy

cô giữ tham khảo và lế/ ý ra bài tập

HƯ Cài đặt thong qua mang máy tính ;

Để cài đặt chương trrnln ta vào web site có địa chỉ http//www.tscontrols.com và tải phần

mềm về

Để có được ph n bên có đẩy đủ các giúp đỡ về kỹ thuật ta có thể vào mạng tại địa chỉ

http://www.L or/rezister.btml sau khi đã có các mật mã ta vào Help/Register Product Nó

sẽ bật ra hộp thoa Product dialog, ta nhập các mật mã vào Phần mềm chúng ta đã được

Lời khuyên: ta nên reinstall (cài đặt lại) chương trình lại một lần nữa và nhập mật mã như đã

hướng dẫn ở trên để chắn chắn là phần mềm đã được đăng kí

Nếu cần giúp đỡ hoặc có câu hỏi nào về việc đăng kí phần mềm ta có thể gửi e mail đến

địa chỉ support@tscontrols.com

V/ Chạy

chương trình ;

Nếu bạn đã tạo một biểu tượng (icon) , hãy nhấp 2 lần lên biểu tượng hay lựa chọn từ trong

§tart/proprams biểu tượng và nhấn Enter

Trang 32

Luận án tốt nghiệp

lulonAnlVius

=} Noiton Uti (3 NeT'sweb Books (& 01cad Alesse 91 BAMpags Shagh §

có WINDOWS (thường là ổ C), do đó có thể xóa một phần hay toàn bộ chương trình mà

không làm đảo lộn các chương trình ứng dụng khác Sử dụng File manager xóa tất cả các

file trong thư mục của chương trình mô phỏng Xoá bỏ các biểu tượng hay các sự liên quan khác đến chương trình mô phỏng từ hệ thống của bạn

——————ễễễễ SVTH : Nguyễn Huỳnh Hải Vân Trang 21

Trang 33

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

(Noten vtitios 40) Ner‘eweb Books

=———————

Trang 34

Luận án tốt nghiệp

G'S Noiondnivius ,

& Noon vais ,

4655 PT 's Web Books , (Ä 0ADReess$1 »

& sway veo

Ulead GIF Aninaloy 40

SoantihMoloAnllius SeJoo

Trang 35

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

CHUONGS - NHAP MON THIET KE

LAP TRINH

aS

Trang 36

Luận án tốt nghiệp

1U Phân tích vấn đề;

Có thể nói khi đứng trước bất kỳ một vấn để gì cần giải quyết thì công việc đâu tiên ta làm

là phân tích vấn đề Đây là bước qua trọng nhất và mang tính quyết định cần phải được quan tâm

đúng mức nhưng lại thường bị bổ qua nhiều nhất, Khi phân tích một bài toán ta phải xác định được

mục đích yêu cầu của để bài, và xác định chính xác phạm vi thiết kế, đồng thời xác định được các vấn để trở ngại khi thiết kế Để giải quyết được vấn đẻ đó nên xây dựng bảng danh sách các câu

hỏi và trả lời dẫn các câu hỏi đó để xác định được khả năng thực hiện vấn để Vì vậy, với những chương trình đơn giản, việc phân tích vấn để sẽ không gặp nhiều khó khăn Chúng có thể được

thực hiện thông qua các chương trình có sẵn hay tổ hợp các chương trình đơn giản Việc thiết kế với những chương trình phức tạp hơn như chương trình monitor, chương trình điều khiến hệ thống

hay chương trình với những mục đích chuyên dụng phải được phân tích kỹ

Thông qua việc phân tích vấn để chính xác, ta sẽ xây dựng một lưu đổ rõ ràng Từ đó chương,

trình phần mềm sẽ thể hiện rõ các phần việc cân làm

Phân tích và giải quyết vấn để yêu cầu phải hiểu sâu sắc những điểm sau:

GVHD : Nguyễn Phương Quang

ø _ Đác tính và yêu cầu của vấn để

Giả thiết đã cho

Định đang thông tin ngõ vào và làm thế nào để chuyển đổi nó

ñ đáng thông tin ngõ ra và làm thế nào chuyển đổi nó

Dạsg dữ liêu và mức độ chính xác

Tớ cẫu thực hiện

Kick 66 ahd

Các lệnh vị điểu khiển và thực thi,

Kha nang van dé được giải quyết

Phương pä:áp để giải quyết vấn đề

Lưu đồ có thể được sử dụng để thể hiện những thuộc tính của các thuật toán bằng các biểu

đổ phù hợp Các lưu đổ đặc biệt quan trọng trong gỡ rối vấn đề Nó là một phần quan trong trong chương trình hoàn chỉnh Nó có thể giúp người khác hiểu được thuật toán chính xác do nhà lập

trình sử dụng

Hai cấp biểu đồ thường được ưa chuộng:

œ Lưu đồ hệ thống chỉ ra hướng đi tổng quát của chương trình

@ Liu dé chi tiết cung cấp những chỉ tiết mà nhà lập trình quan tâm

Ngày nay, trong khi tiến hành việc thiết kế hệ thống người ta thường dùng phương pháp

thiết kế từ trên xuống đưới Phương pháp này vì thế cũng được áp dụng trong khi viết phần mềm

cho một hệ thống nhằm giải quyết một nhiệm vụ nhất định nào đó

Bản chất của lập trình này là: đầu tiên ta chia chương trình tổng thể thành các khối chức năng nhỏ hơn, các khối chức năng này lại được chia tiếp thành các khối chức năng nhỏ hơn nữa

Việc phân chia chức năng phải làm cho đến khi mỗi khối nhỏ này trở thành các khối chức năng

đơn giản và dễ thực hiện

ee

Trang 37

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

a Trong khi thực hiện các khối chức năng thành phần, thông thường người ta sử dụng các cấu trúc lập trình cơ bản để thực hiện các nhiệm vụ của khối đó Điểu này làm cho chương trình viết ra

trở thành có cấu trúc với các ưu điểm chính là dễ phát triển, dễ hiệu chỉnh hoặc cải tiến và dễ lập

IHỰ Thiết kế chương trình:

Sau khi phân tích vấn để và bắt tay vào xây dựng lưu đổ xong thì công việc thiết kế chương trình của nhà lập trình có thể nói là đã giải quyết hơn phân nữa công việc Giai đoạn thiết kế chương trình sẽ thực hiện các công việc cụ thể dựa vào các phần của lưu đổ Có nhiều loại chương

trình: chương trình dành cho các phương trình toán học, chuyển đổi ký hiệu ngõ vào ngõ ra, nhập

mã giải mã các dữ liệu chương trình, giao tiếp thiết bị ngoại vi, hoặc ngay cả những ứng dụng chuyên sâu với những chương trình phức tạp Nói chung khi thiết kế chương trình cần lưu ý một

số điểm cơ bản như sau:

+ _ Thu nhập các ký hiệu hoặc dữ liệu ngõ vào

Phân tích logic và các phép tính trong chương trình chính

Mối liên hệ giữa chương trình chính và chương trình phụ

%ử dụng các thanh ghỉ bên trong,

Phô:: bố bộ, nhớ trong chương trình chính

'ố 9ó nhớ trong chương trình phụ

Phần Số s6, nhớ cho các bảng dữ liệu và phương pháp địa chỉ con trồ

Khởi đầu hé thống và các hằng số trong chương trình

Xác biến trơng chương trình

Cân nhắc trình tự thời gían và tốc độ chương trình

i ° c3 bộ nhớ

tính chính xác của dữ liệu

ệu và các phần tham khảo có sẵn

Các đặc điểm đặc biệt khác

Sau khi đã thực hiện xong bước này xem như đã hoàn tất dàn ý chỉ tiết, bước sau chỉ đơn

thuần là điển các lệnh cụ thể vào các ý được soạn sẵn trong phần này

IV/ Viết chương trình:

Sau khi đã phân tích được vấn để, lập lưu đổ cho chương trình, thì giai đoạn viết chương

trình là giai đoạn sau cùng đồng thời là giai đoạn quan trọng nhất Chương trình là tập hợp của các

lệnh được sắp xếp theo một trình tự chặt chế, sau đó vi điều khiển sẽ dịch chương trình sang mã máy Các lệnh trong chương trình được lấy từ tập lệnh của họ vi điều khiển

Trong chương trình mô phông này, các chương trình được viết bằng ngôn ngữ assembly

Một lệnh khai báo trong chương trình bao gồm 4 phần:

Trang 38

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

STAR Mov A BH |chuyển số 7Bh vào thanh ghi A

IMoy B,#02h ;chuyển số 02h vào thanh ghi B

IMul AB ae A với B, B lưu byte cao,A lưu byte

Ngay cả đối với lập trình viên chuyên nghiệp khi xem lại các chương trình cũ do chính mình

viết ra thì phần nhãn này giúp ích rất nhiều trong việc nắm bắt các phần do chính mình đã viết

V/ Cấu trúc chương trình:

Lập trình có cấu trúc( sruetured programming) là một kỹ thuật dùng để tổ chức và viết chương tình sao cho giảm được độ phức tạp, cải thiện tính rõ ràng của chương trình đồng thời dễ

dang gỡ rối, sử: ng như thay đổi.Để công việc lập trình được dễ dàng và chính xác, các

chương trình được cấu trúc một cách rõ ràng thường được nhấn mạnh Mọi chương trình đều có thể

được viết bằng c¿ đụng ba cấu trúc:”các phát biểu”, “các vòng lặp”, " các lựa chọn”, Chính

các cấu trúc trên tạo #2: một tập đẩy đủ các cấu trúc Từ một cấu trúc này được chuyển đến một cấu trúc khác, chương tinh sẽ được điều khiển mà không có các rẽ nhánh không điều kiện Mỗi

nhập vã một điểm thoát,

trột chương trình có cấu trúc chứa một trật tự có thứ bậc các chương

con có một điểm nhập và một điểm thoát

sắt có cấu trúc giúp cho việc lập trình hợp ngữ đạt được những thuận

Giả mã(pseudo code)

Hop ngit(assembly language)

Để giúp cho người học dễ dàng tiếp cận và ứng dụng dễ dàng các kiến thức về lập trình thì

lưu đồ và giả mã là 2 phương pháp thường dùng trước khi thiết kế bài tập Lưu đồ và giả mã là các

công cụ trực quan giúp người học dễ dàng trình bày và hiểu bài tập một cách có hệ thống mà

không cần khảo sát những rắc rối khó hiểu của tập lệnh

s* Giả mã thường được xem như một loại ngôn ngữ máy tính Giả mã bắt chước cú pháp

của Pascal hay C ở dạng ký hiệu cấu trúc đồng thời kết hợp ngôn ngữ tự nhiên để mô tả hoạt động

Trang 39

GVHD : Nguyén Phuong Quang

© Dé dang vach ra céc chudi hoạt động, do vậy thuận tiện cho việc kiểm tra các sai sót

của người lập trình

+ _ Có một số cấu trúc kèm theo thuật ngữ đã được chuẩn hoá

® _ Các cấu trúc giúp cho việc xây dựng các chương trình con được dé dàng

.* Tập các cấu trúc là đẩy đủ, mọi chương trình đều có thể được viết bằng cách sử dụng 3

cấu trúc

+ _ Các cấu trúc giúp đễ dàng mô tả bằng lưu đổ, giản đồ cú pháp, giả mã

® _ Tăng năng suất của người lập trình, chương trình được viết nhanh hơn

s _ Chỉ một vài ngôn ngữ cấp cao nhu Pascal, C chấp nhận trực tiếp các cấu trúc Các

ngôn ngữ cấp cao khác yêu cầu thêm một đoạn dịch nữa

s _ Thời gian thực thi chậm và đòi hồi nhiều bộ nhớ

* Sẽ xuất hiện một số khó khăn khi chỉ sử dụng 3 cấu trúc để lập trình

+ _ Các cấu trúc được lỗng vào nhau cũng gây trở ngại cho việc thực thi chương trình

Các cấu trúc lặp trình cơ bản:

Cấu trúc láp (WHILE - DO)

Cấu trác láp kiểu REPEAT ~ UNTIL

Cấu tị chon kiéu CASE

chon (IF - THEN - ELSE)

ặc điểm œ + tất cả các cấu trúc lập trình cơ bản là tính cấu trúc : Chỉ có một lối vào

cấu trúc và một lối zz để rz khỏi cấu trúc đó

1/ Cấu trúc vòng láp:

Cấu trúc này đc dùng để lặp lại việc thực hiện một thao tác Thí dụ như cộng một chuỗi

số hoặc tìm kiếm mộ: z/4 trị trong danh sách phải dùng cấu trúc vòng lặp Có 2 dạng thông dụng nhất là:

WHILE/ DO và EEPEAT/ UNTIL

1.1/ Cấu trúc WHILE/ DO:

Giả mã có dạng:

While [ điểu kiến ] Do

[ phát biểu ] Điều kiện có giá trị đúng hay sai Nếu điều kiện đúng thì phát biểu được thực thi và sau đó điều kiện được kiểm tra lại, đến khi điều kiện kiểm tra là sai, thì khối phát biểu được bỏ qua, và

việc thực thi chương trình sẽ được thực hiện ở phát biểu kế tiếp

Trang 40

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

1.2/ Cấu trúc REPEAT/UNTIL:

Giả mã:

Repeat [ phat biéu ]

Until [điều kiện]

-_ Phát biểu RepeaU UnHi tương tự phát biểu WHILE/ DO, phát biểu này thường dùng khi

việc lập lại phát biểu phải được thực thi ít nhất 1 lần Phát biểu WHILE/ DO trước tiên kiểm tra điều kiện, phát biểu không được thực thi nếu điều kiện sai

Then [phat biéu ¡ }

Else [phat biéu2]

Phát biểu IF /THEN /ELSE được sử dụng khi một trong hai phát biểu phải được lựa chọn,

việc lựa chọn phụ thuộc vào điều kiện Phần ELSE của phát biểu là tuỳ chọn

———————ễễỄễễ

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

w