Tải bản đầy đủ (.pdf) (15 trang)

nghiên cứu, thiết kế, chế tạo mô hình giao tiếp giữa máy tính và hệ thống điều khiển động cơ

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (8.44 MB, 15 trang )

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

ĐỀ TÀI NGHIÊN CỨU KHOA HỌC CẤP BỘ

NGHIÊN CỨU, THIẾT KẾ, CHẾ TẠO
MÔ HÌNH GIAO TIẾP GIỮA MÁY TÍNH
VÀ HỆ THỐNG ĐIỀU KHIỂN ĐỘNG CƠ
S

K

C

0

0

3

9

5

9

MÃ SỐ: B2006-22-10

S KC 0 0 2 6 9 7


Tp. Hồ Chí Minh, tháng 11 năm 2009


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



ĐỀ TÀI NCKH CẤP BỘ

NGHIÊN CỨU, THIẾT KẾ, CHẾ TẠO MÔ HÌNH GIAO TIẾP
GIỮA MÁY TÍNH VÀ HỆ THỐNG ĐIỀU KHIỂN ĐỘNG CƠ
MÃ SỐ:

B2006-22-10

Thuộc nhóm ngành : Khoa học Kỹ thuật
Người chủ trì

: ThS. Huỳnh Quốc Việt

Người tham gia

: ThS. Nguyễn Văn Long Giang
ThS. Lý Vĩnh Đạt

Đơn vị

: ĐH. SPKT TP. HCM


Tp. Hồ Chí Minh, tháng 11/2009


MỤC LỤC
NỘI DUNG
Chương 1. DẪN NHẬP
1.1
Đặt vấn đề ............................................................................................
1.2
Tình hình nghiên cứu trong và ngoài nước ..........................................
1.3
Mục tiêu và nhiệm vụ ..........................................................................
1.4
Phạm vi nghiên cứu ..............................................................................
1.5
Đối tượng nghiên cứu ..........................................................................
1.6
Phương pháp nghiên cứu .....................................................................
1.7
Ứng dụng thực tiễn ...............................................................................
1.8
Tính cấp thiết của đề tài ......................................................................
1.9
Bố cục của đề tài .................................................................................
Chương 2. VI ĐIỀU KHIỂN
2.1
Đặt điểm của họ vi điều khiển AVR ...................................................
2.2
Cấu trúc phần cứng của họ vi điều khiển AVR....................................
2.3

Giới thiệu về vi điều khiển atmega16 .................................................
2.4
Giới thiệu về vi điều khiển atmega8 ...................................................
2.5
Giới thiệu về các card giao tiếp của LabVIEW ...................................
Chương 3. ĐỘNG CƠ
3.1
Giới thiệu về động cơ ..........................................................................
3.2
Cảm biến ..............................................................................................
3.3
Bộ điều khiển .......................................................................................
3.4
Các tín hiệu điều khiển .........................................................................

Trang
1
1
2
2
3
3
4
4
4
4
6
6
8
10

15
22
24
24
24
27
27

Chương 4. LABVIEW
4.1
Những khái niệm cơ bản .....................................................................
4.2
Kỹ thuật lập trình Labview ..................................................................
4.3
Kỹ thuật lập trình nâng cao trong Labview ..........................................
Chương 5. THIẾT KẾ, CHẾ TẠO BỘ GIAO TIẾP
5.1
Sơ đồ tổng quát ....................................................................................
5.2
Bộ giao tiếp ..........................................................................................
5.3
Thi công mạch giao tiếp ......................................................................
Chương 6. THIẾT KẾ GIAO DIỆN GIAO TIẾP
6.1
Giao diện người sử dụng .....................................................................
6.2
Cửa sổ chương trình ............................................................................
Chương 7. THỰC NGHIỆM
7.1
Mục tiêu thí nghiệm..............................................................................

7.2
Phương pháp thí nghiê ̣m ......................................................................

36
36
38
48
58
58
62
70
73
73
77
83
83
83


7.3
Sơ đồ thí nghiệm ..................................................................................
7.4
Phương pháp vận hành ........................................................................
7.5
Kết quả thí nghiệm ..............................................................................
7.6
Ứng dụng .............................................................................................
7.7
Nhận xét kết quả thực nghiệm .............................................................
Chương 8. KẾT LUẬN VÀ KIẾN NGHỊ

8.1
Kết luận ...............................................................................................
8.2
Kiến nghị .............................................................................................
8.3
Hướng phát triển của đề tài .................................................................
Phụ lục.
Các bài thực hành

84
86
87
91
94
95
95
95
96


TÓM TẮT
Tên đề tài: Nghiên cứu, thiế t kế , chế tạo mô hình giao tiếp giữa máy tính và hệ
thống điều khiển động cơ
Mã số:

B2006-22-10

Chủ nhiệm đề tài: Huỳnh Quốc Việt Tel.: 0987799346 E-mail:
Cơ quan chủ trì đề tài: Trường ĐH. Sư Phạm Kỹ Thuật TP. Hồ Chí Minh
Cơ quan và cá nhân phối hợp thực hiện: ThS. Nguyễn Văn Long Giang

ThS. Lý Vĩnh Đạt
Thời gian thực hiện: từ 06/2006 đến 03/ 2008
1. Đối tượng:
 Nghiên cứu hệ thống điều khiển động cơ.
 Nghiên cứu cấu trúc, hoạt động của vi điều khiển AVR và các linh kiện điện tử
liên quan. Ứng dụng ngôn ngữ lập trình C trong xử lý, điều khiển bộ giao tiếp.
 Nghiên cứu cấu trúc máy tính và phương pháp kết nối với thiết bị ngoại vi.
 Nghiên cứu phương pháp thiết kế giao diện giao tiếp và phương pháp truyền
dữ liệu nối tiếp bằng phần mềm LabVIEW.
2. Mục tiêu của đề tài là thiết kế, chế tạo bộ giao tiếp giữa máy tính và ECU điều
khiển động cơ kết hợp với thiết kế giao diện giao tiếp bằng phần mềm LabVIEW. Từ
đó, thiết lập giao thức truyền dữ liệu giữa động cơ và máy tính thông qua cổng nối
tiếp RS-232, sao cho, trên giao diện người sử dụng có thể quan sát sự thay các thông
số động cơ. Mặt khác, họ có thể thay đổi các thông số đầu vào để thấy được các đáp
ứng của các tín hiệu điều khiển cơ cấu chấp hành. Ngoài ra, người sử dụng cũng có
thể điều khiển nguồn cung cấp cho động cơ, khởi động động cơ và truy xuất mã lỗi
bằng máy tính.
3. Kết quả.
 Từ những nội dung nghiên cứu đó tác giả đã thiết kế bộ giao tiếp, viết chương
trình xử lý cho vi điều khiển và giao diện giao tiếp LabVIEW.
 Kiểm tra độ chính xác của bộ giao tiếp, bằng thực nghiệm trên động cơ 4S-FE
Toyota Camry và so sánh với kết quả của máy chẩn đoán DCN-PRO.
 Sản phẩm của đề tài ứng dụng trong giảng dạy kỹ thuật đạt hiệu quả cao.
 Sản phẩm này còn có thể ứng dụng trong thí nghiệm để xác định bản đồ dữ
liệu của động cơ.


SUMMARY
Project Title: Researching, designing and manufacturing the interface
communicator between personal computer and engine mangament system

Code number:

B2006-22-10

Coordinator:

MSc. Huynh Quoc Viet

Implementing Institution: Universty of Technical Education HCMC.
Cooperating Institution(s): MSc. Nguyen Van Long Giang - MSc. Ly Vinh Đat
Duration: from Jun 2006 to March 2008
1. Objectives
 Studying in engine management sytems
 Examining structure, operation of microcontroller AVR and some related
electronic components programming in C language for processing and
controlling the communicator
 Examining the structure of personal computer and the method of connecting
with external devides.
 Examining the method to design the interface and the way to transfer serial
data by LabVIEW software.
2. Main contents: The purpose of this thesis is to design the interface communicator
between computer and ECU by mean of LabVIEW software. Thenceforth, it could
lay out the protocol of data transferring between the engine and computer through the
serial port RS-232, so that the user could observe the change of the engine parameters
from the interface. One the other hand, the user could also change one of those input
parameters to see the response of actuators. Besides, the user could also use computer
to turn off/turn on, to start or access code of the engine.
3. Result obtained:
 Base on above-mentioned tasks, an interface communicator and program
for both microcontroller and communicator have been designed by the

author.
 Providing the experiment on the engine of 4S-FE Toyota Camry to check
the exact of communicator and comparing with the diagnostic engine tester
DCN-PRO.
 Products of thesis are applied in teaching techniques to achieve high
efficiency.
 The product also can be applied in experiments to determine the map's data
engine.


Trang 1

Chương 1. Dẫn Nhập

Chương 1:
1.1.

DẪN NHẬP

Đặt vấn đề.

Đã hơn 118 năm kể từ khi chiếc ô tô đầu tiên trên thế giới ra đời, đến nay ô tô
đã trở thành một phương tiện vận chuyển cần thiết không gì thay thế được trong xã
hội loài người. So với các phương tiện giao thông khác, ô tô có vị trí vô cùng quan
trọng vì tỉ lệ hành khách tham gia giao thông bằng đường bộ cao hơn hẳn so với các
loại phương tiện giao thông khác, hằng năm tỷ lệ tăng trưởng trong sản xuất ôtô đạt
xấp xỉ 3%.
Cùng với xu hướng phát triển của thế giới, khoa học kỹ thuật và công nghệ
cũng phát triển không ngừng, nhiều thành tựu nổi bật góp phần thúc đẩy sự phát triển
các ngành công nghiệp. Nền công nghiệp ô tô cũng không nằm ngoài quy luật đó, từ

những năm 80 của thế kỷ XX, công nghệ điện tử đã được ứng dụng trên ô tô dần dần
thay thế các cơ cấu điều khiển bằng cơ khí. Qua nhiều thập niên, điện tử trở thành
một trong những nhân tố quan trọng không thể thiếu được trên ô tô. Nó không những
giúp động cơ ô tô điều khiển chính xác hơn nhằm giảm ô nhiễm môi trường, tiết kiệm
nhiên liệu, tăng công suất động cơ mà còn là thước đo giá trị về tính êm dịu, mức độ
tiện nghi của chiếc ô tô hiện đại, từ đó, quyết định khả năng sống còn của chiếc ô tô
đó.
Song song với việc hiện đại hóa chiếc ô tô ngày càng hoàn hảo hơn thì vấn đề
bảo trì, chẩn đoán, sửa chữa cũng ngày càng phức tạp hơn. Với những chiếc ô tô hiện
đại hiện nay, lượng dữ liệu điều khiển xe ngày càng nhiều. Vì vậy, chẩn đoán, sửa
chữa theo phương pháp thủ công đã trở nên hết sức khó khăn nếu không muốn nói là
không tưởng. Do đó, để giúp cho người kỹ thuật viên thực hiện tốt công việc chẩn
đoán và sữa chữa, các ô tô đời mới đã trang bị hệ thống tự chẩn đoán. Tuy nhiên, hệ
thống tự chẩn đoán chỉ phát hiện được lỗi hệ thống khi các tín hiệu nằm ngoài khoảng
xác định cho phép. Vì thế, khi tín hiệu đó sai lệch với thực tế nhưng vẫn nằm trong
khoảng xác định đó thì hệ thống tự chẩn đoán vẫn không phát hiện được. Điều này
dẫn đến động cơ hoạt động không đạt hiệu quả cao.
Mặt khác, với cương vị là người giáo viên kỹ thuật, người nghiên cứu luôn
mong muốn đạt hiệu quả cao trong công tác giảng dạy. Ngoài kiến thức chuyên môn,
lòng say mê công việc cộng với phương pháp sư phạm hiện đại thì thiết bị dạy học
cũng góp phần rất lớn trong việc nâng cao hiệu quả giảng dạy, đặc biệt là giảng dạy
kỹ thuật. Nghiên cứu, thiết kế, chế tạo mô hình dạy học là một minh chứng cụ thể và
đề tài này cũng không ngoài mục đích đó. Sản phẩm của đề tài là mô hình dạy học
minh họa sự thay đổi các thông số động cơ và đặc biệt là ảnh hưởng của các tín hiệu
đầu vào đến hoạt động của động cơ như thế nào.
Song song với công tác giảng dạy, công tác nghiên cứu của người giáo viên kỹ
thuật cũng không kém phần quan trọng. Hầu hết các dữ liệu điều khiển động cơ được


Chương 1. Dẫn Nhập


Trang 2

xác định từ thực nghiệm. Nhưng do tín hiệu đầu vào khá nhiều, thiết bị trong nước
còn khiêm tốn nên chúng ta không thể xác định được sự ảnh hưởng của từng tín hiệu
đến các chế độ hoạt động của động cơ. Điều này ảnh hưởng rất lớn đến công tác
nghiên cứu.
Với những trăn trở, khúc mắt trong chuyên môn cùng với khát vọng nâng cao
trình độ, cải tiến, phát triển kỹ thuật. Nhóm nghiên cứu đã tìm được hướng giải quyết
trong đề tài: “Nghiên cứu, thiết kế, chế tạo mạch giao tiếp giữa máy tính và hệ
thống điều khiển động cơ “. Đề tài này được thực hiện với ba nội dung chính:

1.2.



Nghiên cứu lý thuyết về giao tiếp giữa máy tính và động cơ bằng
LabVIEW.



Thiết kế, chế tạo bộ giao tiếp giữa máy tính cá nhân và ECU điều khiển
động cơ.



Thiết kế giao diện giao tiếp giữa máy tính cá nhân và ECU điều khiển
động cơ.

Tình hình nghiên cứu trong và ngoài nước


Với công nghệ tiên tiến hiện nay, rất nhiều đề tài ứng dụng công nghệ thông
tin vào điều khiển, tuy nhiên, ở Việt Nam chúng ta chỉ dừng lại ở việc khai thác, bảo
trì, chẩn đoán, sửa chữa mà không thể nghiên cứu đến việc thiết kế hay cải tiến tối ưu
bỡi chúng ta thiếu các phòng thí nghiệm để tìm được các thông số tối ưu cho động cơ.
Với sự hỗ trợ của các phần mềm giao tiếp, tính toán, mô phỏng hiện nay chúng ta có
thể thực hiện được các phép tính và mô phỏng hoạt động trước khi thiết kế, chế tạo
sản phẩm thật. LabVIEW là một phần mềm mạnh được nhóm nghiên cứu chọn lựa để
thực hiện giao tiếp điều khiển động cơ.
Hiện nay, trong những nghiên cứu của các chuyên gia nước ngoài thì
LabVIEW được ứng dụng rộng rãi trong các phòng thí nghiệm, cũng như các dự án
nghiên cứu lớn, tuy nhiên, các nghiên cứu thực hiện cho điều khiển động cơ vẫn còn
giới hạn. Tại Việt Nam LabVIEW chỉ được sử dụng trong những năm gần đây nên
hầu như chưa công trình nào thực hiện việc điều khiển giao tiếp với động cơ.
Trong hướng nghiên cứu này, gầ n đây ở Việt Nam có luận văn cao học của
Thạc sỹ Huỳnh Quốc Việt năm 2005 ứng dụng Matlab trong điều khiển giao tiếp,
luận văn cao học của Thạc Sỹ Trần Thế Liên năm 2009 ứng dụng LabVIEW trong
điều khiển giao tiếp. Do đó, với đề tài này nhóm tác giả hy vọng là một trong những
nghiên cứu tiếp tục thúc đẩy sự phát triển trong liñ h vực nghiên cứu này ; trong vấn đề
tính toán, thí nghiệm xây dựng được bảng đồ dữ liệu hoàn thiện của động cơ.
1.3.

Mục tiêu và nhiệm vụ.

Đề tài “Nghiên cứu, thiết kế, chế tạo mạch giao tiếp giữa máy tính và hệ
thống điều khiển động cơ “ nhằm thiết kế và chế tạo mạch giao tiếp hai chiều giữa
máy tính và ECU điều khiển động cơ nhằm hiển thị các thông số hoạt động của động


Chương 1. Dẫn Nhập


Trang 3

cơ, đồng thời, điều khiển động cơ từ máy tính. Việc tính toán mô phỏng và điều khiển
động cơ được thực hiện thông qua phần mềm LabVIEW. Trên cơ sở mạch giao tiếp
này, ta có thể phát triển thành các thiết bị chẩn đoán và sửa chữa động cơ.
Các bước thực hiện đề tài:
 Nghiên cứu cấu trúc vi điều khiển.
 Nghiên cứu nguôn ngữ lập trình C.
 Nghiên cứu cấu trúc máy tính cá nhân.
 Khảo sát các dạng dữ liệu của động cơ.
 Nghiên cứu về truyền dữ liệu nối tiếp trong LabVIEW.
 Nghiên cứu, thiết kế giao diện giao tiếp bằng LabVIEW.
 Nghiên cứu, thiết kế phần cứng bộ giao tiếp.
 Lập trình vi điều khiển bằng ngôn ngữ C.
 Lập trình điều khiển giao diện giao tiếp bằng LabVIEW.
 Thực nghiệm và kiểm tra độ chính xác của của thí nghiệm thông qua máy chẩn
đoán.
1.4.

Phạm vi nghiên cứu.

Do chủng loại động cơ khá đa dạng và thời gian thực hiện đề tài có hạn, người
nghiên cứu chỉ tập trung thực hiện trong phạm vi sau:
Nghiên cứu cơ sở lý thuyết về linh kiện thiết kế bộ giao tiếp và ngôn ngữ lập
trình C.
Khảo sát các dạng tín hiệu trên hệ thống điều khiển động cơ.
Nghiên cứu cơ sở lý thuyết về cấu trúc máy tính và phương pháp truyền dữ
liệu nối tiếp trong LabVIEW. Thiết kế giao diện và lập trình giao tiếp bằng
LabVIEW.

Ứng dụng lý thuyết này, thiết kế, chế tạo bộ giao tiếp giữa máy tính cá nhân và
ECU điều khiển động cơ 4S-FE trên xe Toyota Camry với giao diện giao tiếp bằng
LabVIEW. Sau đó, tiến hành thực nghiệm so sánh với thiết bị đã có để đánh giá khả
năng ổn định và mức độ chính xác của thiết bị.
1.5.

Đối tượng nghiên cứu
Đề tài này liên quan đến bốn đối tượng chính:
 Nghiên cứu hệ thống điều khiển động cơ.
 Nghiên cứu cấu trúc, hoạt động của vi điều khiển AVR và các linh kiện
điện tử liên quan. Ứng dụng ngôn ngữ lập trình C trong xử lý, điều khiển
bộ giao tiếp.
 Nghiên cứu cấu trúc máy tính và phương pháp kết nối với thiết bị ngoại vi.


Chương 1. Dẫn Nhập

Trang 4

 Nghiên cứu phương pháp thiết kế giao diện giao tiếp và phương pháp
truyền dữ liệu nối tiếp bằng phần mềm LabVIEW.
1.6.

Phương pháp nghiên cứu.
Để thực hiện đề tài, tác giả đã vận dụng nhiều phương pháp nghiên cứu khác

nhau:
Phương pháp tham khảo tài liệu: Từ Internet, các sách chuyên ngành ô tô, điện
tử, tin học, ….
Phương pháp thực nghiệm: Đo các thông số từ động cơ thực tế và tiến hành xử

lý số liệu đo.
Phương pháp thử và sai: Ứng dụng trong thiết kế mạch, lập trình vi điều khiển
và lập trình LabVIEW.
1.7.

Ứng dụng thực tiễn.

Đề tài hoàn thành là cơ sở lý thuyết (đã qua kiểm chứng là sản phẩm đề tài)
của việc ứng dụng điều khiển động cơ bằng máy tính cá nhân với chương trình
LabVIEW, là nền tảng cho việc phát triển ứng dụng LabVIEW trong tính toán, mô
phỏng, và điều khiển.
Sản phẩm của đề tài là mô hình ứng dụng hữu ích, tăng tính trực quan trong
công tác giảng dạy kỹ thuật, đặc biệt là vấn đề điều khiển động cơ. Vì vậy sản phẩm
có thể ứng dụng rộng rãi cho các trường đại học, cao đẳng, công nhân kỹ thuật, ….
Sản phẩm đề tài có thể ứng dụng kiểm tra, chẩn đoán, sửa chữa các xe ô tô
hiện đại.
Ngoài ra, nếu đề tài được tiếp tục phát triển thì sản phẩm có thể được ứng
dụng làm thiết bị thí nghiệm động cơ và ô tô.
1.8.

Tính cấp thiết của đề tài.

Đề tài là bước đột phá trong việc ứng dụng phần mềm LabVIEW, một phần
mềm rất mạnh về đồ họa, tính toán, mô phỏng toán học các hệ thống, điều khiển, giao
tiếp, … để điều khiển giao tiếp giữa động cơ và máy tính. Đề tài này thành công đã
mở cho nhóm nghiên cứu hướng phát triển mới là kết hợp các phần tính toán, điều
khiển trong LabVIEW có thể tiến hành đo đạc, lựa chọn thông số tối ưu của động cơ.
Hay nói cách khác, đề tài có thể phát triển thành thiết bị thí nghiệm để xác định bảng
đồ dữ liệu tối ưu cho động cơ.
1.9.


Bố cục của đề tài.
Với nội dụng đề tài thực hiện, thuyết minh được trình bày theo bố cục sau:

Chương 1. Dẫn nhập
Giới thiệu về đề tài, tầm quan trọng đề tài, giới hạn đề tài.
Chương 2. Vi điề u khiể n


Chương 1. Dẫn Nhập

Trang 5

Trình bày lý thuyết về cấu trúc vi điều khiển, cơ sở lý thuyế t v ề các linh kiện
chính trong thiết kế bộ giao tiếp.
Chương 3. Động cơ.
Trình bày dạng xung của các tín hiệu trong hệ thống điều khiển động cơ.
Chương 4. LabVIEW.
Trình bày lý thuyết về thiết kế giao diện và lập trình giao tiế p bằng LabVIEW
Chương 5. Thiết kế, chế tạo bộ giao tiếp
Trình bày phương pháp thiết kế và nội dung thiết kế bộ giao tiếp và sản phẩm
thiết kế.
Chương 6. Thiết kế giao diện giao tiếp.
Trình bày ứng dụng LabVIEW trong thiết kế giao diện giao tiếp của đề tài.
Chương 7. Thực nghiệm
Trình bày phương pháp vận hành, kết quả thí nghiệm để xác định độ tin cậy và
độ chính xác của bộ giao tiếp.
Chương 8. Kết luận và kiến nghị
Phụ lục.
Trình bày các bài thực hành.



Chương 2. Vi Điều Khiển

Trang 6

Chương 2. VI ĐIỀU KHIỂN
2.1. ĐẶC ĐIỂM CỦA HỌ VI ĐIỀU KHIỂN AVR.
AVR là tên của một loạt các bộ vi điều khiển do công ty Atmel sản xuất, có kiến
trúc RISC (Reduced Instruction Set Computer) là một kiến trúc phổ biến trong của
các bộ xử lý hiện đại với những đặc tính sau:
1. Kiến trúc RISC với hầu hết các lệnh có chiều dài cố định, truy nhập bộ nhớ
nạp, lưu trữ và 32 thanh ghi đa năng.
2. Kiến trúc bộ nhớ kiểu đường ống cho phép làm tăng tốc độ xử lý lệnh.
3. Có chứa bộ phận ngoại ngay trên chip bao gồm các cổng I/o số, các bộ biến
đổi ADC, bộ nhớ EEFROM, bộ định thời UART, bộ định thời RTC, bộ điều
chế độ rộng xung PWM,.v.v.. Đặc điểm này được xem là nổi bật so với nhiều
vi điều khiển khác vì trong khi các bộ vi xử lý khác phải tự tạo ra bộ truyền
nhận UART hoặc giao diện SPI bằng phần mềm thì trên vi điều khiển AVR đã
được tích hợp sẵn:
 Có 48 đường dẫn I/O lập trình được.
 bộ truyền nhận UART lập trình được.
 Một giao diện SPI đồng bộ.
 bộ timer/Counter 8 bit
 Một bộ timer/Counter 16 bit với chức năng so sánh và bắt mẫu.
 Gồm bốn lối ra điều biến độ rộng xung PWM.
 Một đồng hồ thời gian thực (RTC-Timer)
 Một bộ biến đổi ADC 10 bit có đến 8 kênh lối vào.
 Một bộ phát hiện trạng thái sụt điện áp nguồn nuôi.
 Một bộ so sánh Analog

 Một bộ định thời Watchdog
4. Hầu hết các lệnh chỉ trừ lệnh nhảy và nạp/lưu trữ đều được thực hiện trong
một chu kì xung nhịp.
5. Hoạt động với tốc độ đồng hồ đến 20MHz. so với các họ vi điều khiển khác thì
vi điều khiển họ ATMEL có tần số xung nhịp cho phép tương đối cao, cụ thể
là từ 0 đến 20MHz tùy theo từng loại cụ thể. Xung nhịp do bộ dao động tạo ra
cũng chính là xung nhịp của hệ thống, không hề phải qua bộ chia tần như trong
trường hợp các vi điều khiển ra đời trước đó, nên kéo theo tốc độ xử lý lệnh
cao.
6. Khả năng thực hiện lệnh trong một chu kì xung nhịp, AVR có khả năng đạt
đến tốc độ xử lý 20 MPIS ( triệu lệnh trong một giây )


Chương 2. Vi Điều Khiển

Trang 7

Hình 2.1 So sánh thời gian thực thi lệnh giữa các bộ vi xử lý
Các vi điều khiển SX cũng có tần số xung nhịp cao hơn ở các vi điều khiển
AVR nhưng lại có dòng tiêu thụ tương đối lớn, ngoài ra lại không có các bộ
phận ngoại vi trên chíp rất tiện dụng cho người dùng như vi điều khiển AVR.
Chính các bộ phận ngoại vi tích hợp đã góp phần làm tăng tốc độ xử lý lệnh
tính chung cho cả hệ thống.
7. Bộ nhớ chương trình và dữ liệu được tích hợp ngay trên chíp AVR có tới 3
công nghệ bộ nhớ khác nhau.
Bộ nhớ EPROM xóa được kiểu Flash (luôn luôn lập trình mới được) dùng cho
mã chương trình mà người dùng có thể lập trình được.
Bộ nhớ EPROM hay PROM xóa được bằng điện, nhưng nội dung bộ nhớ vẫn
giữ nguyên sau khi tắt điện áp nguồn. Chương trình người dùng có thể được
lập trình trong thời gian thựckhi hệ thống đang hoạt động.

Bộ nhớ RAM tĩnh (SRAM) dùng cho các biến, nội dung của bộ nhớ sẽ mất đi
khi tắt điện áp nguồn. Ngoài ra, vi điều khiển AVR có tới 32 thanh ghi làm
việc đa năng, tất cả đều được nối trực tiếp với khối ALU (đơn vị logic số học)
và được trao đổi trực tiếp trên vùng địa chỉ bộ nhớ, cụ thể là 32 ô đầu tiên của
bộ nhớ (0x00 đến 0xFF) tương ứng với thanh ghi làm việc đa năng R0-R31.
8. Khả năng lập trình được trong hệ thống. do cách thiết kế và công nghệ bộ nhớ
được sử dụng mà các vi điều khiển có thể được lập trình ngay khi đang còn
cấp nguồn trên bản mạch. Không cần phải nhấc vi điều khiển ra ngoài bản
mạch như nhiều họ vi điều khiển khác. Các cổng giao tiếp RS-232 và SPI cho
phép thao tác dễ dàng thực hiện trên hệ thống.
9. Có tốc độ xử lý lớn hơn 12 lần so với các vi điều khiển CISC thông thường.
10. Hỗ trợ cho việc lập trình bằng ngôn ngữ bậc cao, chẳng hạn như ngôn ngữ C.
11. Tất cả các vi điều khiển đang lưu hành trên thị trường đều được chế tạo bằng
công nghệ CMOS 0.6 μm.
12. Điện áp làm việc cho phép từ 2.7V đến 6V.
13. Một kiến trúc đơn giản và hợp lý sẽ giúp người dùng tìm hiểu dễ dàng trong
thời gian ngắn.


Chương 2. Vi Điều Khiển

Trang 8

14. Tập lệnh AVR có tới 113 lệnh cho phép lập trình một cách dễ dàng và đơn
giản bằng hợp ngữ, nhưng cấu trúc của bộ xử lý Atmel còn cho phép lập trình
bằng ngôn ngữ C.
2.2. CẤU TRÚC PHẦN CỨNG CỦA HỌ VI ĐIỀU KHIỂN AVR.
2.2.1. Tổng quan về kiến trúc.
Các thanh ghi đa năng truy cập nhanh gồm 32 thanh ghi 8 bit được truy cập
trong một chu kì xung nhịp. Điều này có nghĩa là trong 1 chu kì xung nhịp ALU thực

hiện được một phép toán: hai toán hạng được xuất từ các thanh ghi đa năng, phép
toán được thực hiện và kết quả được lưu trở lại vào tập các thanh ghi. 6 trong số 32
thanh ghi này có thể dùng làm con trỏ địa chỉ gián tiếp 16 bit để định địa chỉ không
gian dữ liệu và cho phép tính địa chỉ hiệu dụng. Một trong 3 con trỏ địa chỉ cũng
được dùng làm con trỏ địa chỉ cho chức năng tìm kiếm bảng hằng số. Các thanh ghi
có chức năng bổ xung này là các thanh ghi 16 bit X,Y,Z.
ALU: Hỗ trợ các chức năng số học và chức năng logic giữa các thanh ghi. Các
phép toán trong thanh ghi cũng được thực hiện trong ALU.

Hình 2.2 Kiến trúc của bộ xử lý AVR
Ngoài chế độ định địa chỉ gián tiếp thanh ghi, chế độ định địa chỉ bộ nhớ
thông thường cũng có thể được dùng trong tập các thanh ghi đa năng. Nguyên nhân là


Chương 2. Vi Điều Khiển

Trang 9

các thanh ghi đa năng được gán 32 địa chỉ thấp nhất trong không gian dữ liệu từ $00
đếm $1F nên chúng được truy cập những vị trí thông thường.
Không gian bộ nhớ vào ra chứa 64 bit địa chỉ cho các chức năng ngoại vi của
CPU như các thanh ghi điều khiển, bộ Timer/Counter, bộ ADC và chức năng I/O
khác. Bộ nhớ I/O có thể truy cập trực tiếp hoặc như các vị trí trong không gian dữ
liệu ngay sau các vị trí của tập các thanh ghi đa năng từ địa chỉ $20 đến $5F.
AVR sử dụng kiến trúc Harvard với bộ nhớ và bus riêng biệt cho chương trình
và dữ liệu. Bộ nhớ chương trình được thực thi với một đường ống hai tầng. Trong khi
một lệnh đang được thực thi thì lệnh tiếp theo được nhập vào bộ nhớ chương trình.
Giải pháp này cho phép vác lệnh được thực thi trong mọi chu kì xung nhịp. Bộ nhớ
chương trình là bộ nhớ Flash lập trình được.


Hình 2.3. Sơ đồ tổ chức bộ nhớ
Hầu hết các lệnh gọi AVR có dạng từ đơn 16 bit. Mỗi địa chỉ của bộ nhớ
chương trình chứa một lệnh 16 hoặc 32 bit.
Trong quá trình gọi ngắt và chương trình con, địa chỉ trở về của bộ đếm lệnh
hay bộ đếm chương trình PC được đưa vào ngăn xếp. Ngăn xếp được cấp phát trong
bộ lưu dữ liệu SRAM nên kích thước chỉ bị giới hạn bởi dung lượng và không gian đã
sử dụng của bộ nhớ SRAM. Tất cả chương trình của người dùng phải khởi tạo con trỏ
ngăn xếp SP (Stack Pointer) khi bắt đầu chương trình (trước khi chương trình con và
ngắt được thực thi). Con trỏ ngăn xếp 16 bit SP được truy cập để đọc/ghi trong không
gian vào/ra. Bộ nhớ SRAM có thể được truy cập dễ dàng thông qua 5 chế độ định địa
chỉ được cung cấp trong kiến trúc AVR.
Các không gian nhớ trong kiến trúc AVR được định địa chỉ theo kiểu ánh xạ
bộ nhớ tuyến tính đều.
Khối ngắt mềm dẻo có các thanh ghi điều khiển trong không gian vào ra và
một bit cho phép ngắt toàn cục trong thanh ghi trạng thái. Mỗi ngắt đều có một vector
ngắt riêng. Các ngắt có thứ tự ưu tiên tương ứng với thứ tự vector ngắt của chúng, địa
chỉ của vector ngắt càng thấp thì thứ tự ưu tiên càng cao.
2.2.2. Các thanh ghi đa dụng.



×