BÁO CÁO ĐAMH1: ĐIỀU KHIỂN TỪ XA BẰNG HỒNG NGOẠI
Phần B: Nội Dung Chính Của Đồ Án
Chương 1: Mở Đầu
Chương này trình bày vắn tắt quá trình thực hiện đề tài và toàn bộ nội dung của đề tài.
Nội dung chương bao gồm những phần chính như sau : lý do chọn đề tài; mục tiêu của đồ án;
nội dung thực hiện; giới hạn đồ án và phương pháp nghiên cứu.
1.1 – Khái Quát Vấn Đề
Ngày nay, con người cùng với những ứng dụng của khoa học kỹ thuật tiên tiến của thế
giới, chúng ta đang ngày một thay đổi, văn minh vàh hiện đại hơn. Sự phát triển của kỹ thuật
điện tử đã tạo ra hàng loạt những thiết bị với các đặc điểm nổi bậc như độ chính xác cao, tốc
độ nhanh, gọn nhẹ,… là những yếu tố rất cần thiết góp phần cho hoạt động của con người đạt
hiệu quả ngày càng cao hơn.
Điện tử đang trở thành một ngành khoa học đa nhiệm vụ. Điện tử đã đáp ứng được
những địi hỏi khơng ngừng của các ngành, lĩnh vực khác nhau cho đến nhu cầu thiết yếu cảu
con người trong cuộc sống hằng ngày. Một trong những ứng dụng quan trọng của ngành công
nghệ điện tử là kỹ thuật điều khiển từ xa bằng hồng ngoại. Sử dụng hồng ngoại được ứng
dụng rất nhiều trong công nghiệp và các lĩnh vực khác trong cuộc sống với những thiết bị điều
khiển từ xa rất tinh vi và đạt được năng suất, kinh tế thật cao.
Xuất phát từ những ứng dụng đó, em đã thiết kế và thi công một mạch ứng dụng nhỏ
trong thu phát hồng ngoại: “Bộ điều khiển từ xa bằng hồng ngoại”. Đề tài này giúp em hiểu rõ
hơn về nguyên lý thu phát và ứng dụng những lý thuyết được học vào thực tế. Đồng thời tìm
hiểu thêm những điều chưa được học và nâng cao kỹ năng thực hành cũng như là những ứng
dụng của mạch trong thực tế.
Vì thời gian thực hiện cịn hạn chế, và những gì đã học và tìm hiểu được cũng có giới
hạn nên đề tài cịn nhiều hạn chế. Kính mong nhận được sự chỉ dẫn và góp ý tận tình của cơ
các bạn.
1.2 – Mục Tiêu Yêu Cầu Của Đề Tài
Đề tài này sử dụng một cặp IC thu (PT2249) phát (PT2248) kết hợp với vi điều khiển
89S52 để tạo thành mạch điều khiển, định thời. IC phát (PT2248) có nhiệm vụ kiểm tra phím
được nhấn và truyền mã phím đó đi dưới dạng xung thơng qua led phát hồng ngoại. IC thu
(PT2249) có nhiệm vụ kiểm tra tín hiệu nhận được và thay đổi mức logic của các ngõ ra theo
xung nhận được. Tín hiệu ngõ ra của IC thu được đưa đến vi xử lý và bắt đầu giải mã tín hiệu
này theo chương trình được viết sẵn.
Từ đây có thể suy ra mục đích yêu cầu của đề tài như sau:
SVTH: NGUYỄN VĂN ANH VŨ
7
BÁO CÁO ĐAMH1: ĐIỀU KHIỂN TỪ XA BẰNG HỒNG NGOẠI
Có thể điều khiển thiết bị từ xa thông qua cặp IC thu phát.
Có thể cài đặt thời gian, khởi động hoặc dừng thiết bị bằng 6 phím nhấn.
Khi thời gian cài cặt đã hết sẽ tự động ngắt nguồn thiết bị.
Giá thành sản phẩm khơng q đắt.
Chạy ổn định, chính xác, nhỏ gọn, dễ sử dụng, sửa chữa.
1.3 – Nội Dung Đề Tài
Tìm hiểu ngun lý hoạt động của mạch.
Tính tốn , thiết kế, thi cơng mạch.
1.4 – Giới Hạn Đề Tài Nghiên Cứu
Đề tài chỉ dừng lại ở việc nghiên cứu nguyên lý thu phát và ứng dụng bộ thu phát hồng
ngoại để điều khiển thiết bị.
1.5 – Phương Pháp Nghiên Cứu
Tham khảo các tài liệu trên mạng, sách trong thư viện.
SVTH: NGUYỄN VĂN ANH VŨ
8
BÁO CÁO ĐAMH1: ĐIỀU KHIỂN TỪ XA BẰNG HỒNG NGOẠI
Chương 2: Cơ Sở Lý Thuyết Liên Quan
2.1 Khái Niệm Về Ánh Ánh Sáng Hồng Ngoại (Tia Hồng Ngoại)
Ánh sáng hồng ngoại (tia hồng ngoại) là ánh sáng khơng thể nhìn thấy được bằng mắt
thường, có bước sóng từ 0.86µm đến 0.98µm. Tia hồng ngoại có vận tốc truyền bằng vận tốc
ánh sáng.
Tia hồng ngoại có thể truyền đi được nhiều kênh tín hiệu. Nó được ứng dụng rộng rãi
trong cơng nghiệp. Lượng thơng tin có thể đạt 3 mega bit/s. Lượng thông tin được truyền đi
với ánh sáng hồng ngoại lớn gấp nhiều lần so với sóng điện từ mà người ta vẫn dùng.
Tia hồng ngoại dễ bị hấp thụ, khả năng xuyên thấu kém. Trong điều khiển từ xa bằng tia
hồng ngoại, chùm tia hồng ngoại phát đi hẹp, có hướng, do đó phải thu đúng hướng.
Sóng hồng ngoại có những đặc tính quan trọng giống như ánh sáng (sự hội tụ qua thấu
kính, tiêu cự…). Ánh sáng thường và ánh sáng hồng ngoại khác nhau rất rõ trong sự xuyên
suốt qua vật chất. Ánh sáng hồng ngoại không bị yếu đi khi vượt qua các lớp bán dẫn để đi ra
ngoài.
2.2 Nguyên Lý Thu Phát Hồng Ngoại
Tia hồng ngoại được sử dụng rất phổ biến và không bị ảnh hưởng bởi từ trường, vì thế
nó được sử dụng tốt trong truyền thơng và điều khiển. Nhưng nó vẫn có một số khuyết điểm,
một số vật phát hồng ngoại mạnh làm ảnh hưởng đến truyền thông và điều khiển như quang
phổ mặt trời.
Khó khăn khi sử dụng hồng ngoại là, REMOTE điều khiển TV/VCR hoặc những ứng
dụng khác và linh kiện rất tốn kém.
Việc thu hoặc phát bức xạ hồng ngoại bằng nhiều phương tiện khác nhau, có thể nhận tia
hồng ngoại từ ánh sáng mặt trời. Nhiều thứ có thể phát tia hồng ngoại như: lị bức xạ, lò điện,
đèn, cơ thể người,…
Để truyền tia hồng ngoại tốt phải tránh xung nhiễu, bắt buộc phải dùng mã phát và nhận
ổn định để xác định xem đó là xung truyền hay nhiễu. Tần số làm việc tốt nhất là từ 30KHz
đến 60KHz, nhưng thường sử dụng khoảng 36KHz.
SVTH: NGUYỄN VĂN ANH VŨ
9
BÁO CÁO ĐAMH1: ĐIỀU KHIỂN TỪ XA BẰNG HỒNG NGOẠI
Dùng tần số 36 KHz để truyền tín hiệu thì dễ, nhưng khó thu và giải mã, phải sử dụng bộ
lọc để tín hiệu ngõ ra là xung vng, nếu ngõ ra có xung nghĩa là đã nhận được tín hiệu ngõ
vào.
2.2.1 Phần Phát
Sơ đồ khối chức năng:
Khối chọn chức năng và khối mã hóa: khi người sử dụng bấm vào các phím chức năng
để phát lệnh yêu cầu của mình, mỗi phím chức năng tương ứng với một số thập phân. Mạch
mã hóa sẽ chuyển đổi thành số nhị phân tương ứng dưới dạng mã lệnh tín hiệu số gồm các bit
0 và 1. Số bit trong mã lệnh nhị phân có thể là 4 hay 8 bit… tùy theo số lượng phím chức năng
nhiều hay ít.
Khối dao động có điều kiện: khi nhấn một phím chức năng thì đồng thời khởi động mạch
giao động tạo xung clock, tần số xung clock xác định thời gian chuẩn của mỗi bit.
Khối chốt dữ liệu và khối chuyển đổi song song ra nối tiếp: mã nhị phân tại mạch mã
hóa sẽ được chốt để đưa vào mạch chuyển đổi dữ liệu song song ra nối tiếp. Mạch chuyển đổi
dữ liệu song song ra nối tiếp được điều khiển bởi xung clock và mạch định thời nhằm đảm bảo
kết thúc đúng lúc việc chuyển đổi đủ số bit của một mã lệnh.
Khối điều chế và phát FM: mã lệnh dưới dạng nối tiếp sẽ được đưa qua mạch điều chế
và phát FM để gép mã lệnh vào sóng mang có tần số từ 38Khz đến 100Khz, nhờ sóng mang
cao tần tín hiệu được truyền đi xa hơn, nghĩa là tăng cự ly phát.
Khối thiết bị phát: là một led hồng ngoại. Khi mã lệnh có giá trị bit = „1‟ thì LED phát
hồng ngoại trong khoảng thời gian T của bit đó. Khi mã lệnh có giá trị bit = „0‟ thì LED khơng
sáng. Do đó, bên thu khơng nhận được tín hiệu xem như bit = „0‟.
2.2.2 Phần Thu
Sơ đồ chức năng:
SVTH: NGUYỄN VĂN ANH VŨ
10
BÁO CÁO ĐAMH1: ĐIỀU KHIỂN TỪ XA BẰNG HỒNG NGOẠI
Khối thiết bị thu: Tia hồng ngoại từ phần phát được tiếp nhận bởi LED thu hồng ngoại
hay các linh kiện thu quang khác.
Khối khuếch đại và tách sóng: trước tiên khuếch đại tín hiệu nhận rồi đưa qua mạch tách
sóng nhằm triệt tiêu sóng mang và tách lấy dữ liệu cần thiết là mã lệnh.
Khối chuyển đổi nối tiếp sang song song và khối giải mã: mã lệnh được đưa vào mạch
chuyển đổi nối tiếp sang song song và đưa tiếp qua khối giải mã ra thành số thập phân tương
ứng dưới dạng một xung kích tại ngõ ra tương ứng để kích mở mạch điều khiển.
Tần số sóng mang còn được dùng để so pha với tần số dao động bên phần thu giúp cho
mạch thu phát hoạt động đồng bộ, đảm bảo cho mạch tách sóng và mạch chuyển đổi nối tiếp
sang song song được hoạt động chính xác.
2.3 Tổng Quan Về Linh Kiện Chính Sử Dụng Trong Mạch
2.3.1 IC Phát Tín Hiệu Hồng Ngoại PT2248
Đây là một bộ truyền phát tia hồng ngoại ứng dụng bởi công nghệ CMOS. PT2249 kết
hợp với PT2248 tạo ra 10 phím chức năng. Với cách tổ hợp phím như vậy, có thể dùng cho
nhiều loại thiết bị từ xa.
Đặc tính:
Được sản xuất theo công nghệ CMOS.
Tiêu thụ công suất thấp.
Vùng điện áp hoạt động: 2.2V – 5V.
Sử dụng được nhiều phím.
Ứng dụng:
Bộ phát hồng ngoại dùng trong các thiết bị điện tử như: Television, Video Cassette
Recode,…
SVTH: NGUYỄN VĂN ANH VŨ
11
BÁO CÁO ĐAMH1: ĐIỀU KHIỂN TỪ XA BẰNG HỒNG NGOẠI
Chân 1 (Vss): là chân mass được nối với cực âm của nguồn điện.
Chân 2 và 3: là hai đầu để nối với thạch anh bên ngoài cho bộ tạo dao động ở bên trong IC.
Chân 4-9 (K1 – K6): là đầu của bàn phím kiểu ma trận, các chân từ K1 đến K6 kết hợp với
các chân 10 đến 12 (T1 – T3) để tạo thành ma trận 18 phím.
Chân 13(CODE): là chân mã số dùng để kết hợp với các chân khác để tạo ra tổ hợp mã hệ
thống giữa phần phát và phần thu.
Chân 14 (TEST): là chân dùng để kiểm tra mã của phần tử phát, khi khơng sử dụng có thể bỏ
trống.
Chân 15 (Txout): là đầu ra của tín hiệu đã được điều chế FM.
Chân 16 (Vcc): là chân cấp nguồn dương.
Bộ tạo dao động và bộ phân tần: để có thể phát được xa, ta cần có xung có tần số 38Khz
ở nơi nhận, nhưng trên thị trường khó tìm được thạch anh đúng tần số nên ta chọn tần số của
SVTH: NGUYỄN VĂN ANH VŨ
12
BÁO CÁO ĐAMH1: ĐIỀU KHIỂN TỪ XA BẰNG HỒNG NGOẠI
thạch anh là 455Khz cho bộ tạo dao động, tần số đó sẽ được đưa qua bộ phân tần để chia nó ra
thành 12 lần.
Mạch điện phím vào: có tổng cộng 18 phím được nối tới các chân K1 – K6 và 3 chân T1
– T3 để tạo ra bàn phím ma trận (6x3).
Phím 1 – 6: là những phím cho ra tín hiệu liên tục khi ấn giữ.
Phím 7 – 18: là những phím cho ra tín hiệu khơng liên tục. Tín hiệu sẽ mất ngay khi ấn
vào cho dù có giữ phím.
Mạch hoạt động tín hiệu thời gian – Mạch phát sinh tín hiệu:
Lệnh truyền: gồm một từ lệnh được tạo bởi 3 bit mã người dùng, 1 bit mã liên tục, 2 bit
mã không liên tục và 6 bit mã ngõ vào. Vậy, nó có 12 bit mã. Trong đó, 3 bit mã người
dùng được tạo như sau:
Dữ liệu của 3 bit mã T1, T2, T3 sẽ là “1” nếu một diode được nối giữa chân CODE
và chân Tn (n=1,2,3); và là “0” khi không nối diode.
Vì IC thu PT2249, chỉ có 2 bit mã (CODE 2, CODE 3), nên chân T1 của PT2248 sẽ
luôn ở mức “1”.
C1, C2, C3: mã người dùng.
H: mã tín hiệu liên tục.
S1, S2: mã tín hiệu khơng liên tục.
D1 – D6: mã tín hiệu ngõ vào.
Dạng sóng truyền:
SVTH: NGUYỄN VĂN ANH VŨ
13
BÁO CÁO ĐAMH1: ĐIỀU KHIỂN TỪ XA BẰNG HỒNG NGOẠI
Thời gian của bit “a” phụ thuộc vào tần số dao động và được tính bởi cơng thức:
Tín hiệu khơng liên tục:
Khi ấn bất kì 1 phím khơng liên tục, tín hiệu không liên tục chỉ truyền hai từ lệnh đến ngõ ra.
Tín hiệu liên tục:
Khi nhấn bất kì một phím liên tục, tín hiệu liên tục sẽ lặp lại chu kì s khi truyền 2 từ lệnh và
thời gian dừng cho đến khi phím khơng được nhấn nữa.
2.3.2 IC Thu Và Mã Hóa Tín Hiệu Hồng Ngoại PT2249
PT2249 cũng được chế tạo bởi cơng nghệ CMOS. Nó có thể điều khiển tối đa 10 thiết bị.
Đặc tính:
SVTH: NGUYỄN VĂN ANH VŨ
14
BÁO CÁO ĐAMH1: ĐIỀU KHIỂN TỪ XA BẰNG HỒNG NGOẠI
Tiêu tán công suất thấp.
Khả năng chống nhiễu rất cao.
Nhận được đồng thời 5 chức năng từ IC phát PT2248.
Cung cấp bộ tạo dao động RC.
Bộ lọc số và bộ kiểm tra mã ngăn ngừa sự tác động từ những nguồn sáng khác
nhau như đèn PL. Do đó khơng ảnh hưởng đến độ nhạy của mắt thu.
Sơ đồ chân của PT2249:
Chân 1 (Vss): là chân mass được nối với cực âm của nguồn điện.
Chân 2 (R): là đầu vào tiếu hiệu thu.
Chân 3 – 7 (H1 – H5): là đầu ra tín hiệu liên tục. Chỉ cần thu được tín hiệu tương
ứng với đầu ra nào thì đầu ra đó ln duy trì ở mức “1”.
Các chân 8 – 12 (S1 – S5): là đầu ra tín hiệu khơng liên tục. Chỉ cần thu được tín
hiệu tương ứng với đầu ra nào thì đầu ra đó sẽ ln duy trì ở mức “1” trong khoảng
thời gian là 107ms.
Chân 14 và 13 (CODE2 (C2) và CODE3 (C3)): để tạo ra các tổ hợp mã hệ thống
giữa phần phát và phần thu. Mã số của hai chân này phải giống tổ hợp mã hệ thống của
phần phát thì mới thu được tín hiệu.
Chân 15 (OSC): dùng để nối với tụ điện và điện trở bên ngoài tạo ra dao động cho
mạch.
Chân 16 (Vcc): là chân được nối với cực dương của nguồn cung cấp.
Sơ đồ khối của IC thu hồng ngoại PT2249:
SVTH: NGUYỄN VĂN ANH VŨ
15
BÁO CÁO ĐAMH1: ĐIỀU KHIỂN TỪ XA BẰNG HỒNG NGOẠI
Giải thích sơ đồ khối: sau khi IC phát PT 2248 phát tín hiệu (2 chu kì) đi, tín hiệu sẽ
được mắt thu(IC thu) tiếp nhận rồi đưa nó đến chân Rxin. Chân Rxin có nhiệm vụ sẽ chỉnh lại
dạng sóng của tín hiệu cho chuẩn. Sau đó, tín hiệu được đưa đến bộ lọc số. Bộ lọc có nhiệm vụ
lọc lấy các dữ liệu rồi đưa đến thanh ghi. Dữ liệu đầu tiên được đưa vào thanh ghi 12 bit. Tiếp
đến, dữ liệu thứ hai sẽ được nạp vào thanh ghi. Dữ liệu đầu tiên sẽ được đưa qua bộ đệm ngõ
ra nếu mã của nó khớp với mã của phần phát. Trường hợp, mã của dữ liệu không khớp với mã
của phần phát thì quá trình sẽ được lặp lại.
2.3.3 Module Hay LED Thu Tín Hiệu Hồng Ngoại PIC – 1018SCL
PIC – 1018SCL là IC thu tín hiệu hồng ngoại với những đặc điểm sau:
Là IC có kích thước nhỏ.
Phạm vi thu nhận tín hiệu xa (± 45o).
Khả năng chống nhiễu tốt.
Sơ đồ khối của PIC – 1018SCL:
SVTH: NGUYỄN VĂN ANH VŨ
16
BÁO CÁO ĐAMH1: ĐIỀU KHIỂN TỪ XA BẰNG HỒNG NGOẠI
Giải thích sơ đồ khối: Tín hiệu hồng ngoại từ nguồn phát qua bộ truyền đến mạch thu
được led hồng ngoại nhận rồi đưa qua ba tầng khuếch đại. Sau đó tín hiệu này được qua mạch
lọc băng thơng để chọn dãy băng thơng thích hợp. Ở ngõ ra tín hiệu này được qua mạch
khuếch đại (AGC) để tăng độ khuếch đại nếu cần thiết. Xung này được qua mạch so sánh và
phân tích trước khi vào mạch Schmitt Trigger.
Mạch Schmitt Trigger là mạch so sánh só phản hồi như hình sau:
Lúc này do Vin so sánh với tín hiệu ngõ vào V+ là điện thế trên mạch phân áp R4 – R2,
nên theo sự biến thiên giữa hai mức điện áp của Vout, mạch Schmitt Trigger cũng có hai
ngưỡng so sánh là VH và VL:
SVTH: NGUYỄN VĂN ANH VŨ
17
BÁO CÁO ĐAMH1: ĐIỀU KHIỂN TỪ XA BẰNG HỒNG NGOẠI
Qua hình ta nhận thấy, mạch Schmitt Trigger là mạch so sánh Vin theo hai ngưỡng VH và
VL. Khi điện áp Vin vượt qua VH thì giá trị Vout là 0V và khi Vin thấp hơn VL thì Vout sẽ ở mức
+Vcc (nghĩa là có sự đảo pha).
Nhiệm vụ chủ yếu của mạch Schmitt Trigger là đổi tín hiệu liên tục thành tín hiệu vng
với khả năng chống nhiễm cao.
Tín hiệu ngõ ra của mạch Schmitt Trigger qua mạch đảo sẽ cho tín hiệu ở ngõ ra của PIC
– 1018SCL là tín hiệu đảo.
2.3.4 Led Quang – LED Phát Tín Hiệu Hồng Ngoại
Ở quang trở, diode quang, transistor quang, năng lượng của ánh sáng chiếu vào chất bán
dẫn và cấp năng lượng cho các điện tử vượt dải cấm. Ngược lại, khi một điện tử từ dải dẫn
điện rớt xuống dãi hóa trị thì sẽ phát ra một năng lượng: E=h.f
Dải dẫn điện Dải hóa trị Dải cấm hf. Khi phân cực thuận một mối nối P-N, điện tử tự do
từ vùng N xuyên qua vùng P và tái hợp với lỗ trống (về phương diện năng lượng ta nói các
điện tử trong dải dẫn điện - có năng lượng cao - rơi xuống dãi hóa trị - có năng lượng thấp - và
kết hợp với lỗ trống), khi tái hợp thì chúng sinh ra năng lượng.
Đối với diode Ge, Si thì năng lượng phát ra dưới dạng nhiệt. Nhưng đối với diode cấu
tạo bằng GaAs (Gallium Arsenide) năng lượng phát ra là ánh sáng hồng ngoại (không thấy
bằng mắt thường được) dùng trong các mạch báo động, điều khiển từ xa,… Với GaAsP
(Gallium Arsenide phosphor) năng lượng phát ra là ánh sáng vàng hay đỏ. Với GaP (Gallium
phosphor), năng lượng phát ra là màu vàng hoặc xanh lá cây. Các LED phát ra ánh sáng thấy
được dùng để làm đèn báo, trang trí… Phần ngồi của LED có một thấu kính để tập trung ánh
sáng phát ra ngồi.
SVTH: NGUYỄN VĂN ANH VŨ
18
BÁO CÁO ĐAMH1: ĐIỀU KHIỂN TỪ XA BẰNG HỒNG NGOẠI
Để có ánh sáng liên tục, người ta phân cực thuận LED. Tùy thoe mức năng lượng giải
phóng cao hay thấp mà bước sóng ánh sáng phát ra khác nhau sẽ quyết định màu sắc của LED.
Thơng thường, LED có điện thế phân cực thuận cao hơn diode thông thường, torng khoảng 1,5
– 2,8V tùy thoe màu sắc phát ra, màu đỏ: 1,4 – 1,8V, vàng 2 – 2,5V, xanh lá cây: 2 – 2,8V, và
dòng điện qua LED khoảng vài mA.
2.3.5 Vi Điều Khiển AT89S52
Tổng quan về 89S52
AT89S52 là họ vi điều khiển do hãng Intel sản xuất. Các sản phẩm AT89S52 thích hợp
cho những ứng dụng điều khiển. Việc xử lý trên byte và các tính tốn số học ở cấu trúc dữ liệu
nhỏ được thực hiện bằng nhiều chế độ truy xuất dữ liệu nhanh trên RAM nội. Tập lệnh cung
cấp một bảng tiện dụng của những lệnh số học 8 bit gồm cả lệnh nhân và lệnh chia. Nó cung
cấp những hỗ trợ mở rộng trên chip dành cho những biến một bit như là kiểu dữ liệu riêng biệt
cho phép quản lý và kiểm tra bit trực tiếp trong hệ thống điều khiển.
AT89S52 cung cấp những đặc tính chuẩn như: 8 Kbyte bộ nhớ chỉ đọc có thể xóa và lập
trình nhanh (EPROM), 128 Byte RAM, 32 đường I/O, 3 TIMER/COUNTER 16 Bit, 5 vector
ngắt, 1 mạch dao động tạo xung Clock và bộ dao động ON-CHIP.
Các đặc điểm của chip AT89S52 được tóm tắt như sau:
8 Kbyte bộ nhớ có thể lập trình nhanh.
-
Tần số hoạt động từ 0Hz đến 24MHz.
3 mức khóa bộ nhớ chương trình.
3 bộ TIMER/COUNTER 16 Bit.
128 Byte RAM nội.
4 Port xuất/nhập 8 bit.
Giao tiếp nối tiếp.
64 KB vùng nhớ mã ngoài.
SVTH: NGUYỄN VĂN ANH VŨ
19
BÁO CÁO ĐAMH1: ĐIỀU KHIỂN TỪ XA BẰNG HỒNG NGOẠI
64KB vùng nhớ dữ liệu ngồi.
4µs cho hoạt động nhân hoặc chia.
Sơ đồ khối:
SVTH: NGUYỄN VĂN ANH VŨ
20
BÁO CÁO ĐAMH1: ĐIỀU KHIỂN TỪ XA BẰNG HỒNG NGOẠI
-
Sơ đồ chân 89S52:
Mặc dù các thành viên của họ 8051
(ví dụ 7851, 89S52, 89C51,DS5000) đều
có các kiểu đóng vỏ khác nhau, chẳng hạn
như hai hàng chân DIP (Dual In-Line
Pakage), dạng vỏ dẹt vuông QPF (Quad
Flat Pakage) và dạng chip không có chân
đỡ LLC ( Leadless Chip Carrier) thì chúng
đều có 40 chân cho các chức năng khác
nhau như vào ra I/O, đọc ̅̅̅̅ , ghi ̅̅̅̅̅, địa
chỉ, dữ liệu và ngắt. Cần phải lưu ý một số
hãng cung cấp một phiên bản 8051 có 20
chân với số cổng vào ra ít hơn cho các ứng
dụng yêu cầu ít hơn. Tuy nhiên vì hầu hết
các nhà phát triển sử dụng chip đóng vỏ 40
chân với hai hàng chân DIP nên ta chỉ tập
trung mô tả phiên bản này.
-
Chức năng của các chân 89S52
Port 0: từ chân 32 đến chân 39 (P0.0_P0.7). Port 0 có hai chức năng: trong các thiết kế
cỡ nhỏ khơng dùng bộ nhớ mở rộng nó có chức năng như các đường I/O, đối với các thiết kế
lớn có bộ nhớ mở rộng nó được kết hợp giữa bus địa chỉ và bus dữ liệu.
Port 1: từ chân 1 đến chân 9 (P1.0_P1.7). Port 1 là Port I/O dùng cho giao tiếp với các
thiết bị bên ngoài nếu cần.
Port 2: từ chân 21 đến chân 28 (P2.0_P2.7). Port 2 là một port có tác dụng kép dùng như
các đường xuất/nhập hoặc là byte cao của bus địa chỉ đối với các thiết bị dùng bộ nhớ mở
rộng.
Port 3: từ chân 10 đến chân 17 (P3.0_P3.7). Port 3 là Port có tác dụng kép. Các chân của
Port này có nhiều chức năng, có cơng dụng chuyển đổi có liên hệ đến các đặc tính đặc biệt của
89S52 như ở bảng sau:
SVTH: NGUYỄN VĂN ANH VŨ
21
BÁO CÁO ĐAMH1: ĐIỀU KHIỂN TỪ XA BẰNG HỒNG NGOẠI
Bit
P3.0
P3.1
P3.2
P3.3
P3.4
P3.5
P3.6
P3.7
Tên
RXD
TXD
INT0
INT1
T0
T1
WR
RD
Chức năng chuyển đổi
Ngõ vào dữ liệu nối tiếp.
Ngõ xuất dữ liệu nối tiêp.
Ngắt ngoài Timer0.
Ngắt ngoài T1.
Ngõ vào TIMER/COUNTER thứ 0.
Ngõ vào TIMER/COUNTER thứ 1.
Tín hiệu ghi dữ liệu lên bộ nhớ ngồi.
Tín hiệu đọc bộ nhớ dữ liệu ngồi.
PSEN (Program store enable):
PSEN là tín hiệu ngõ ra có tác dụng cho phép đọc bộ nhớ chương trình mở rộng và
thường được nối đến chân OE của EPROM cho phép đọc các byte mã lệnh.
PSEN ở mức thấp trong thới gian 89S52 lấy mã lệnh. Các mã lệnh của chương trình
được đọc từ EPROM qua bus dữ liệu, được chốt vào thanh ghi lệnh bên trong 89S52 để giải
mã lệnh. Khi 89S52 thi hành xong chương trình trong ROM nội, PSEN ở mức cao.
ALE (Address Latch Enable):
Khi 89S52 truy xuất bộ nhớ ngồi, Port 0 có chức năng là bus địa chỉ và dữ liệu do đó
phải tách các đường địa chỉ và dữ liệu. 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 ALE là một xung trong khoảng thời gian Port 0 đóng vai trị là địa chỉ thấp nên
chốt địa chỉ thấp hoàn toàn tự động.
EA (External Access):
Tín hiệu vào chân EA ( chân 31) thường được nối lên mức 1 hoặc mức 0. Nếu ở mức 1,
thì 89S52 thi hành chương trình từ ROM nội. Nếu ở mức 0, 89S52 thi hành chương trình từ bộ
nhớ mở rộng. Chân EA được lấy alm2 chân cấp nguồn 21V khi lập trình cho Eprom trong
89S52.
RST (Reset): 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
ghi 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 mạch phải
tự động reset.
Các ngõ vào bộ dao động X1,X2:
SVTH: NGUYỄN VĂN ANH VŨ
22
BÁO CÁO ĐAMH1: ĐIỀU KHIỂN TỪ XA BẰNG HỒNG NGOẠI
Bộ tạo dao động được tích hợp bên trong 89S52. Khi sử dụng 89S52, người ta chỉ cần
nối thêm thạch anh và các tụ. Tần số thạch anh tùy thuộc vào mục đích của người sử dụng, giá
trị tụ thường được chọn là 33p.
-
Tổ chức bộ nhớ bên trong 89S52
Bộ nhớ trong 89S52 bao gồm ROM và RAM. RAM trong 89S52 bao gồm nhiều thành
vùng: vùng RAM đa dụng, vùng RAM truy xuất từng bit, các bank thanh ghi và các thanh ghi
có chức năng đặc biệt.
AT89S52 có bộ nhớ được tổ chức theo kiến 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 89S52 nhưng
vẫn có thể kết nối với 64KByte bộ nhớ chương trình và 64Kbyte dữ liệu bên ngoài.
Bản đồ bộ nhớ DATA bên trong Chip 89S52 được tổ chức như sau:
RAM bên trong 89S52 được phân chia như sau:
Các bank thanh ghi có địa chỉ từ 00H đến 1FH.
RAM truy xuất từng bit 20H đến 2FH.
RAM đa dụng từ 30H đến 7FH.
SVTH: NGUYỄN VĂN ANH VŨ
23
BÁO CÁO ĐAMH1: ĐIỀU KHIỂN TỪ XA BẰNG HỒNG NGOẠI
Các thanh ghi có chức năng đặc biệt từ 80H đến FFH.
RAM đa dụng
RAM đa dụng có địa chỉ từ 30H – 7FH có thể truy xuất mỗi lần 8 bit bằng cách dùng chế
độ định địa chỉ trực tiếp hay gián tiếp.
Các vùng địa chỉ thấp từ 00H đến 2FH cũng có thể sử dụng cho mục đích như trên, ngồi
các ra cịn có những chức năng đặc biệt được đề cập ở phần sau.
RAM có thể định địa chỉ bit
Vùng địa chỉ từ 20H – 2FH gồm 16 byte có thể thực hiện như vùng RAM đa dụng (truy
xuất mỗi lần 8 bit) hay thực hiện truy xuất mỗi lần 1 bit bằng các lệnh xử lý bit.
Các bank thanh ghi
Vùng địa chỉ 00H – 1FH được chia thành 4 bank thanh ghi: bank 0 từ 00H – 07H, bank 1
từ 08h – 0FH, bank 2 từ 10H – 17H và bank 3 từ 18H – 1FH. Các bank thanh ghi này được đại
diện bằng các thanh ghi từ R0 đến R7. Sau khi khởi động thì hệ thống bank 0 được chọn sử
dụng.
Do có 4 bank thanh ghi nên tồn tại một thời điểm chỉ có một bank thanh ghi được truy
xuất bởi các thank ghi R0 – R7. Việc thay đổi bank thanh ghi được thực hiện thông qua thanh
ghi từ trạng thái chương trình (PSW).
Các thank ghi có chức năng đặc biệt
Các thanh ghi trong Chip được định dạng như một phần của RAM trên Chip vì vậy mỗi
thanh ghi sẽ có một địa chỉ (ngoại trừ thanh ghi bộ đếm chương trình và thanh ghi lệnh vì các
thanh ghi này hiếm khi bị tác động trực tiếp). Cũng như R0 đến R7, 89S52 có 21 thanh ghi có
chức năng đặc biệt (SFR: Special Funcion Register) ở vùng trên của RAM nội từ địa chỉ 80H
đến 0FFH.
Sau đây là một vài thanh ghi đăc biệt thường được sử dụng:
BIT
PSW.7
PSW.6
PSW.5
PSW.4
PSW.3
PSW.2
PSW.1
Thanh ghi trạng thái chương trình (PSW: Program Status Word)
SYSBOL ADDRESS DESCRITION
C
D7H
Cary flag
AC
D6H
Auxiliary Cary Flag
F0
D5H
Flag 0 cịn gọi là cờ zero kí hiệu là Z
RS1
D4H
Register Bank select 1: bit lực chọn bank thanh ghi
RS0
D3H
Register Bank select 0: bit lựa chọn bank thanh ghi
00=Bank 0; address 00H÷07H gán cho R0-R7
01=Bank 1; address 08H÷0FH gán cho R0-R7
10=Bank 2; address 10H÷17H gán cho R0-R7
11=Bank 3; address 18H÷1FH gán cho R0-R7
OV
D2H
Over Flag: cờ tràn số nhị phân có dấu.
D1H
Reserved: chưa thiết kế nên chưa được sử dụng.
SVTH: NGUYỄN VĂN ANH VŨ
24
BÁO CÁO ĐAMH1: ĐIỀU KHIỂN TỪ XA BẰNG HỒNG NGOẠI
PSW.0
P
D0H
Eevn Parity Flag: cờ chẵn lẻ.
Cờ Cary:
Cờ nhớ thường được sử dụng trong các lệnh toán học: C=1 nếu phép tố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 cộng không tràn và phép trừ không
mượn.
Cờ AC (Auxiliary Cary Flag):
Khi công những giá trị BCD, cờ AC=1 nếu kết quả 4 bit thấp lớn hơn 09H, ngược lại
AC=0. Cờ AC để hiệu chỉnh số BCD khi thực hiện lệnh cộng 2 số BCD.
Cờ Zero:
Cờ Z=1 khi khi kết quả xử lý bằng 0 và cờ Z=0 khi kết quả xử lý khác 0.
2 bit lựa chọn bank thanh ghi truy xuất:
Gồm bit RS1 và RS0, dùng để gán 8 thanh ghi R7-R0 cho 1 trong 4 bank thanh ghi.
RS1 RS0 sẽ bằng 0 sau khi reset vi điều khiển.
Cờ tràn OV:
Cờ tràn được set sau một loạt hoạt động cộng hoặc trừ nếu có sự tràn tốn học.
Bit Parity:
Bit tự động được set hay clear ở mỗi chu kỳ máy để kiểm tra chẳn với thanh ghi A.
Các bit 1 trong thanh ghi A cộng vớ bit Parity luôn là số chẳn. Ví dụ thanh ghi A chứa
10101101B thì bit P set lên 1 để tổng số bit 1 trong A và P tạo thành số chẵn.
Bit Parity 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 truyền đi hoặc kiểm tra bit Parity sau khi thu.
TIMER
Vi điều khiển 89S52 có 3 timer 16 bit, mỗi timer có bốn cách làm việc.
Người ta sử dụng timer để:
o Định thời gian.
o Đếm sự kiện.
o Tạo tốc độ Baud cho port nối tiếp trong 89S52.
Trong các ứng dụng định thời, người ta lập trình timer ở những khoảng đều đặn và đặt
cờ tràn timer. Cờ tràn được sử dụng để đồng bộ hóa chương trình để thực hiện một tác
động như kiểm tra trạng thái của các ngõ vào hoặc gửi sự kiện ra các ngõ ra. Các ứng
dụng khác có thể sử dụng việc tạo xung nhịp đều đặn của timer để đo thời gian trôi qua
giữa hai sự kiện (ví dụ đo độ rộng xung).
SVTH: NGUYỄN VĂN ANH VŨ
25
BÁO CÁO ĐAMH1: ĐIỀU KHIỂN TỪ XA BẰNG HỒNG NGOẠI
Thanh ghi ngắt (INTERRUPT)
Một ngắt là sự xảy ra một điều kiện, một sự kiện mà nó gây ra treo tạm thời chương trình
chính trong khi điều kiện đó đang được phục vụ bởi một chương trình khác.
Các ngắt đón một vai trò quan trọng trong thiết kế và cài đặt các ứng dụng vi điều khiển.
chúng cho phép hệ thống đáp ứng bất đồng bộ với một sự kiện và giải quyết sự kiện đó
trong khi một chương trình khác đang thực thi.
- Tổ chức ngắt của 89S52:
Có 5 nguồn ngắt ở 89S52: 2 ngắt ngoài, 2 ngắt từ timer và 1 ngắt port nối tiếp. Tất cả
các ngắt theo mặc nhiên đều bị cấm sau khi reset hệ thống và được cho phép từng cái
một bằng phần mềm. Mức độ ưu tiên của các ngắt được lưu trong thanh ghi IP
(Interrupt Priority) hay nói cách khác thanh ghi IP cho phép chọn mức ưu tiên cho các
ngắt (giá trị thanh ghi khi reset là 00h)
Bit
IP.7
IP.6
IP.5
Ký hiệu
_
_
ET2
Địa chỉ bit
_
_
BDH
IP.4
ES
BCH
IP.3
ET1
BBH
IP.2
EX1
BAH
IP.1
ET0
B9H
IP.0
EX0
B8H
Mô tả
Không được mô tả
Không được mô tả
Chọn mức ưu tiên cao (mức 1) hay thấp (mức 0)
tại timer 2
Chọn mức ưu tiên cao (mức 1) hay thấp (mức 0)
tại cổng nối tiếp.
Chọn mức ưu tiên cao (mức 1) hay thấp (mức 0)
tại timer 1.
Chọn mức ưu tiên cao (mức 1) hay thấp (mức 0)
tại ngắt ngoài 1.
Chọn mức ưu tiên cao (mức 1) hay thấp (mức 0)
tại timer 0.
Chọn mức ưu tiên cao (mức 1) hay thấp (mức 0)
tại ngắt ngoài timer 0
Tóm tắt thanh ghi IP
ra đồng thời thì ngắt nào có mức ưu tiên cao hơn sẽ được
Nếu hai ngắt xảy
phục vụ trước.
Nếu hai ngắt xảy ra đồng thời có cùng mức ưu tiên thì thứ tự ưu tiên được thực
hiện từ cao xuống thấp như sau: ngắt ngoài timer 0 – timer 0 – ngắt ngoài timer
1- ngắt timer 1 – cổng nối tiếp – timer 2.
Nếu chương trình của một ngắt có mức ưu tiên thấp đang chạy mà có một ngắt
xảy ra với cùng mức ưu tiên cao hơn thì chương trình đang chạy này tạm dừng
để chạy một chương trình khác có mức ưu tiên cao hơn.
SVTH: NGUYỄN VĂN ANH VŨ
26