Tải bản đầy đủ (.doc) (93 trang)

Thu tín hiệu GPS hiển thị lên LCD

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 (1.97 MB, 93 trang )

ĐỒ ÁN MÔN THIẾT BỊ ĐẦU CUỐI

GVHD: NGUYỄN NGỌC TÙNG

NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------TP. HCM, ngày

tháng

năm

GIÁO VIÊN HƯỚNG DẪN

SVTH
1


ĐỒ ÁN MÔN THIẾT BỊ ĐẦU CUỐI

GVHD: NGUYỄN NGỌC TÙNG

LỜI NÓI ĐẦU
Từ thời xa xưa con người đã biết sử dụng nhiều cách để xác định được vị trí như
là các vì sao, các ngọn núi, mặt trời, ..Ngày nay với sự ra đời của công nghệ kỹ thuật
con người đã phát minh ra đựơc nhiều thiết bị để xác định vi trí một cách chính xác
tuyệt đối nhờ vào các vệ tinh nhân tạo bay xung quanh trái đất, chúng phát ra tín hiệu
gọi là tín hiệu gps.
Hệ thống định vị toàn cầu (Gobal Positioning System - GPS) là hệ thống xác định vị
trí dựa trên vị trí của các vệ tinh nhân tạo. Trong cùng một thời điểm, ở một vị trí trên
mặt đất nếu xác định được khoảng cách đến ba vệ tinh (tối thiểu) thì sẽ tính được toạ
độ của vị trí đó.


GPS được thiết kế và quản lý bởi Bộ Quốc phòng Hoa Kỳ. Trước đây, hệ thống này
chỉ được sử dụng cho mục đích quân sự của Mỹ, nhưng ngày nay chính phủ Hoa Kỳ
cho phép mọi người sử dụng nó miễn phí, bất kể quốc tịch. Dựa trên đặc tính của hệ
thống GPS, ngày càng nhiều công ty đã phát triển các ứng dụng GPS phục vụ dân sự.
Những ứng dụng này ngày càng được áp dụng rộng rãi không chỉ cho một số ngành
chức năng như trắc địa, hàng hải,…mà còn phục vụ đời sống dân sinh như: thiết bị
định vị xe cộ, thiết bị định vị cho người già, trẻ nhỏ hoặc vật nuôi, thiết bị dẫn đường
vệ tinh.
.

SVTH
2


ĐỒ ÁN MÔN THIẾT BỊ ĐẦU CUỐI

GVHD: NGUYỄN NGỌC TÙNG

LỜI CẢM ƠN

Trường CĐ KỸ THUẬT CAO THẮNG là ngôi trường mà em đan theo học, nơi
đây có các thầy cô hết lòng truyền đạt những kiến thức cho chúng em đặc biệt là các
thầy cô trong khoa ĐIỆN TỬ TIN HỌC. Khoa có ngành điện tử viễn thông chúng em
đan theo học. Suốt thời gian chúng em học đã thu thập được những kiến thức bổ ích
cho công việc sau này và thật nhiều lời khuyên qúi báo về học tập cung như về cách
sống của các thầy cô đặt biệt là thầy Nguyễn Ngọc Tùng
Chúng em xin cảm ơn Thầy Nguyễn Ngọc Tùng giáo viên hướng dẫn đã nhiệt
tình giúp đỡ và cho em những lời chỉ dạy qúi báu,thầy đã đưa ra ý tưởng về một mảng
đề tài mới định vị toàn cầu GPS cho chúng em thực hiện. Dưới sự hướng dẫn của thầy
chúng em đã thực hiện đồ án môn Thiết Bị Đầu Cuối với đề tài Thu Tín Hiệu GPS

Hiển Thị Lên LCD.Một lần nửa chúng em chân thành cảm ơn Thầy.

TP.HCM, tháng 12 năm 2011

.

SVTH
3


ĐỒ ÁN MÔN THIẾT BỊ ĐẦU CUỐI

GVHD: NGUYỄN NGỌC TÙNG

CHƯƠNG 1
TỔNG QUAN VỀ HỆ THỐNG ĐỊNH VỊ TOÀN CẦU
GPS
Ngày nay cùng với sự phát triển của thế giới thì thông tin ngày càng trở nên quan
trọng, là một phần không thể thiếu trong cuộc sống, nhu cầu có thông tin và sử dụng
thông tin ngày càng được chú trọng.Do đó, để đáp ứng nhu cầu này ngày càng có
nhiều phương thức, phương tiện để khai thác thông tin với mục đích là nâng cao hiệu
quả và chất lượng thông tin. Để thực hiện quá trình truyền và thu nhận thông tin người
ta có thể chia ra làm hai loại : thông tin mặt đất và thông tin vệ tinh. Trong đó thông
tin vệ tinh được đánh giá là có tính ổn định cao hơn với khả năng phủ sóng rộng với
mọi địa hình, trong chương này chúng em xin giới thiệu về thông tin vệ tinh
GPS là chữ viết tắt của từ Global Positioning System : Hệ thống định vị toàn cầu.
GPS được thiết kế và bảo quản bởi Bộ Quốc Phòng Hoa Kỳ, và được chính phủ Hoa
Kỳ cho phép mọi người sử dụng nó miễn phí. Hệ thống GPS bao gồm 24 vệ tinh (thực
tế chỉ có 21 vệ tinh hoạt động), vệ tinh ban đầu được phóng vào năm 1978 và toàn bộ
24 vệ tinh đưuọc phóng lên quỹ đạo vào năm 1994, Các vệ tinh hoạt động dựa vào

năng lượng mặt trời, mỗi vệ tinh nặng 1,5 tấn và dài 5m.
GPS ban đầu chỉ dành cho các mục đích quân sự, nhưng từ năm 1980 chính phủ Mỹ
cho phép sử dụng dân sự. GPS hoạt động trong mọi điều kiện thời tiết, mọi nơi trên
Trái Đất, 24 giờ một ngày. Không mất phí thuê bao hoặc mất tiền trả cho việc thiết lập
sử dụng GPS.
1.1 Tổng quan về GPS
Vệ tinh có khả năng thu và phát sóng vô tuyến điện dùng cho mục đích
truyền thông thì có tên gọi là vệ tinh thông tin. Vệ tinh sẽ khuếch đại sóng vô tuyến
điện nhận được ở mặt đất và phát sóng vô tuyến điện đến các trạm mặt đất khác.
Vệ tinh được chia làm hai loại là : Vệ tinh quỹ đạo thấp và vệ tinh địa tĩnh.

SVTH
4


ĐỒ ÁN MÔN THIẾT BỊ ĐẦU CUỐI

GVHD: NGUYỄN NGỌC TÙNG

 Vệ tinh quỹ đạo thấp: Là vệ tinh mà có thời gian chuyển động một vòng trên
quỹ đạo của nó khác với chu kỳ quay của trái đất. Các quỹ đạo bay của vệ tinh
quỹ đạo thấp hình ellipse gồm có :
 LEOs (Low Earthe Orbits) có ở độ cao 750 – 1500 Km, loại vệ tinh này
được ứng dụng nhiều trong thông tin di động qua vệ tinh.
 MEOs (Medium Earthe Orbits) ở độ cao là 10000 – 20000 Km.
 Vệ tinh địa tĩnh GEO (Geostationary Orbit ) là vệ tinh có quỹ đạo tròn nằm
trên mặt phẳng đường xích đạo cách trái đất khoảng 35786 Km, chu kỳ bay
xung quanh trái đất là 24h. Do chu kỳ trùng với chu kỳ quay của trái đất xung
quanh trục của nó theo hướng từ Tây sang Đông và vị trí tương đối của vệ
tinh so với trái đất là không đổi.


Trên danh nghĩa, GPS bao gồm một chòm 24 quả vệ tinh. Chòm vệ tinh này gọi
là khả năng vận hành ban đầu (IOC), được hoàn thành vào tháng 7 năm 1993. Tuy
nhiên, đến tháng 12 năm 1993 IOC mới chính thức thông báo. Để đảm bảo bao phủ
trái đất liên tục các vệ tinh GPS được bố trí sao cho có 4 vệ tinh trên 6 quỹ đạo bay
(hình 2.1). Với chòm vệ tinh địa lý này, tại bất cứ đâu trên trái đất sẽ quan sát được từ
4 đến 10 vệ tinh GPS, nếu khi xét với góc ngẩng là 10 0 . Chỉ cần 4 vệ tinh để cung cấp
thông tin hay vị trí của một điểm.

SVTH
5


ĐỒ ÁN MÔN THIẾT BỊ ĐẦU CUỐI

GVHD: NGUYỄN NGỌC TÙNG

Quỹ đạo vệ tinh GPS là quỹ đạo gần như tròn (Dạng elip có độ lệch chuẩn 0.01)
với góc nghiêng 55 0 so với xích đạo. Nửa trục chính của quỹ đạo GPS vào khoảng
26560 km (độ cao của vệ tinh vào khoảng 20200 km so với bề mặt trái đất). Chu kỳ
quỹ đạo GPS là 11 giờ 58 phút. Hệ thống GPS được khai báo chính thức để đạt được
dung lượng hoạt động đầy đủ (FOC) vào ngày 17/7/1995, đảm bảo 24 quả vệ tinh hoạt
động. Trên thực tế, vì GPS đạt được dung lượng hoạt động đầy đủ của nó, số các vệ
tinh trong chùm vệ tinh GPS luôn lớn hơn 24 quả.
1.2 Các ưu điểm và thành phần của GPS
Hệ thống thông tin vệ tinh có tính bảo mật, độ tin cậy thông tin và chất lượng
thông tin cao. Do hệ thống thông tin vệ tinh có ba trạm trong đó vệ tinh đóng vai trò
trạm lặp còn hai trạm thu và phát ở trên trái đất nên xác suất hư hỏng thấp và có thể
khắc phục.
Hệ thống thông tin vệ tinh có vùng phủ sóng rộng bởi vì hệ thống thông tin vệ

tinh sử dụng vệ tinh ở rất xa so với trái đất nên vùng phủ sóng của vệ tinh rộng trên
một vùng lãnh thổ rộng lớn.
Hệ thống thông tin vệ tinh có thể đáp ứng một dung lượng thông tin lớn: Hệ
thống thông tin vệ tinh sử dụng ở tấn số cao và áp dụng các biện pháp tiết kiệm tần số
nên hệ thống có một băng tần rộng và thỏa mãn nhiều yêu cầu thông tin.
Hệ thống thông tin vệ tinh có tính hiệu quả kinh tế cao: Hệ thống thông tin được
thiết lập nhanh chóng trong điều kiện các trạm mặt đất cách xa nhau. Đặc biệt là khả
năng truyền thông tin ở khoảng cách xa như là cách lục địa.
Hệ thống thông tin vệ tinh có thể cung cấp nhiều loại hình dịch vụ : Dịch vụ thoại,
Fax, phát thanh, truyền hình, VSAT… Với tính linh động cao
GPS chứa 3 thành phần: Phần không gian, phần điều khiển và phần người dùng
Phần không gian chứa 24 vệ tinh như đã được giới trình bày mục trên. Mỗi vệ
tinh GPS phát ra một tín hiệu, tín hiệu này có một số thành phần: Hai sóng sin (gọi là
tần số sóng mang), hai mã số và một bản tin dẫn đường.
Thông tin dẫn đường bao gồm tạo độ của vệ tinh theo thời gian. Tín hiệu được
truyền đi bởi các đồng hồ nguyên tử có độ chính xác cao trên các vệ tinh.
SVTH
6


ĐỒ ÁN MÔN THIẾT BỊ ĐẦU CUỐI

GVHD: NGUYỄN NGỌC TÙNG

Hình các thành phần của GPS
 Phần điều khiển của hệ thống GPS bao gồm các trạm trên mặt đất, trong đó có
một trạm điều khiển trung tâm (MCS) đặt ở Clorado Springs nước mỹ. Chức
năng chính của phân hệ điều khiển là nhận tín hiệu từ các vệ tinh và bám sát
các vệ tinh GPS theo trật tự để xác định, dự báo vị trí vệ tinh, tích hợp hệ
thống, xử lý đồng hồ nguyên tử trên vệ tinh, dữ liệu khí quyển, niên giám vệ

tinh và các thông số khác.
 Phân hệ người dùng bao gồm cả người dùng quân sự và dân sự. Với một máy
thu GPS được kết nối với anten GPS, một người sử dụng có thể nhận tín hiệu
GPS để xác định vị trí của họ ở bất cứ đâu trên toàn thế giới. GPS hiện đang
được sử dụng rộng rãi trên toàn thế giới mà không cần phải trả phí trực tiếp.
1.1

GPS đã phát triển như sau

Hệ thống định vị toàn cầu của Mỹ là hệ dẫn đường dựa trên một mạng lưới 24 quả vệ
tinh được Bộ Quốc phòng Hoa Kỳ đặt trên quỹ đạo không gian.Các hệ thống dẫn
đường truyền thống hoạt động dựa trên các trạm phát tín hiệu vô tuyến điện. Được
SVTH
7


ĐỒ ÁN MÔN THIẾT BỊ ĐẦU CUỐI

GVHD: NGUYỄN NGỌC TÙNG

biết đến nhiều nhất là các hệ thống sau: LORAN – (LOng RAnge Navigation) – hoạt
động ở giải tần 90-100 kHz chủ yếu dùng cho hàng hải, hay TACAN – (TACtical Air
Navigation) – dùng cho quân đội Mỹ và biến thể với độ chính xác thấp VOR/DME –
VHF (Omnidirectional Range/Distance Measuring Equipment) – dùng cho hàng
không dân dụng.
Ban đầu, GPS và GLONASS đều được phát triển cho mục đích quân sự, nên mặc dù
chúng dùng được cho dân sự nhưng không hệ nào đưa ra sự đảm bảo tồn tại liên tục
và độ chính xác. Vì thế chúng không thỏa mãn được những yêu cầu an toàn cho dẫn
đường dân sự hàng không và hàng hải, đặc biệt là tại những vùng và tại những thời
điểm có hoạt động quân sự của những quốc gia sở hữu các hệ thống đó. Chỉ có hệ

thống dẫn đường vệ tinh châu Âu Galileo (đang được xây dựng) ngay từ đầu đã đặt
mục tiêu đáp ứng các yêu cầu nghiêm ngặt của dẫn đường và định vị dân sự.
GPS ban đầu chỉ dành cho các mục đích quân sự, nhưng từ năm 1980 chính phủ Mỹ
cho phép sử dụng trong dân sự. GPS hoạt động trong mọi điều kiện thời tiết, mọi nơi
trên Trái Đất, 24 giờ một ngày. Không mất phí thuê bao hoặc mất tiền trả cho việc
thiết lập sử dụng GPS nhưng phải tốn tiền không rẻ để mua thiết bị thu tín hiệu và
phần mềm nhúng hỗ trợ.
Chùm vệ tinh GPS ban đầu được xây dựng với 11 vệ tinh gọi là Block I. Vệ tinh
đầu tiên được phóng vào ngày 22/2/1978. Vệ tinh Block I cuối cùng phóng vào ngày
9/9/1985. Các vệ tinh Block I được chế tạo với mục đích chủ yếu là nghiên cứu thử
nghiệm. Ngóc nghiêng của mặt phẳng quỹ đạo của các vệ tinh này so với mặt phẳng
xích đạo là là 63o, góc này sau đó được thay đổi trong các thế hệ vệ tinh tiếp theo.
Mặc dù thời gian tồn tại của vệ tinh Block I là 4.5 năm, một số còn lại vẫn phục vụ
hơn 10 năm. Vệ tinh Block I cuối cùng ngừng hoạt động vào ngày 18/10/1995.
Thế hệ vệ tinh GPS thứ hai là vệ tinh Block II/IIA . Block IIA là phiên bản cải
tiến của Block II, với việc tăng dung lượng lưu trữ dữ liệu bản tin dẫn đường từ 14
ngày cho Block II đến 180 ngày cho Block IIA. Điều này có nghĩa là các vệ tinh
Block II và Block IIA có thể hoạt động liên tục trong vòng 14 đến 180 ngày mà không
cần có hỗ trợ ở mặt đất. Tổng cộng 28 vệ tinh Block II/IIA được phóng lên trong
khoảng từ 9/1989 đến 10/1997. Trong số này có 23 vệ tinh đang hoạt động. Khác với
Block I, quỹ đạo bay của Block II/ IIA nghiêng 55 o so với mặt phẳng xích đạo. Thời
SVTH
8


ĐỒ ÁN MÔN THIẾT BỊ ĐẦU CUỐI

GVHD: NGUYỄN NGỌC TÙNG

gian tồn tại theo thiết kế của một vệ tinh Block II/IIA là 7.5 năm, thời gian này đã

vượt quá đối với hầu hết các vệ tinh Block II/IIA. Để đảm bảo an ninh quốc gia một
số nội dung như khả năng lựa chọn và chống làm giả được thêm vào trong các vệ tinh
Block II/IIA.
Một thế hệ vệ tinh GPS mới gọi là Block IIR đang được phóng lên. Các vệ tinh
bổ sung này sẽ tương thích lại với Block II/IIA, điều đó có nghĩa là những thay đổi
này không ảnh hưởng đến khi người sử dụng. Block IIR chứa 21 vệ tinh với thời gian
tồn tại theo thiết kế là 10 năm. Để nâng cao độ chính xác, các vệ tinh Block IIR có
khả năng hoạt động độc lập ít nhất 180 ngày mà không cần điều chỉnh ở dưới mặt đất
hay bị giảm độ chính xác. Khả năng dẫn đường độc lập của thế hệ vệ tinh này đạt
được phần nào qua phối hợp vệ tinh với nhau. Thêm vào đó, lịch thiên văn dự báo và
dữ liệu đồng hồ được tải lên từ phân hệ điều khiển để hỗ trợ cho dẫn đường độc lập.
Một số nội dung khác được thêm vào 12 vệ tinh Block IIR cuối cùng theo chương
trình hiện đại hóa GPS, các vệ tinh này phóng vào năm 2003. Vào tháng 7/2001 có 6
vệ tinh Block IIR được phóng lên thành công.
Block IIR sẽ được kế tiếp bởi các hệ thống khác gọi là Block IIF (Follow-on)
chứa 33 vệ tinh. Khoảng thời gian tồn tại của vê tinh sẽ là 15 năm. Các vệ tinh Block
IIF sẽ có những khả năng mới theo chương trình hiện đại hóa, trong đó tăng cường độ
chính xác định vị GPS độc lập.
Trong tương lai chùm vệ tinh GPS được kỳ vọng sẽ có sự kết hợp của các
vệ tinh Block IIR đang được phóng lên và Block IIF và có thể cả vệ tinh Block III.
Một trong những mục tiêu của chương trình hiện đại hóa này là giảm dư thừa tín hiệu
và cải thiện độ chính xác, khả năng ngăn cản tín hiệu và tính toàn vẹn của hệ thống.

CHƯƠNG 2
SVTH
9


ĐỒ ÁN MÔN THIẾT BỊ ĐẦU CUỐI


GVHD: NGUYỄN NGỌC TÙNG

VI ĐIỀU KHIỂN PIC 16F877A
2. 1. Giới thiệu về vi điều khiển PIC16F87A
2.1.1. Kiến trúc Pic

SVTH
10


ĐỒ ÁN MÔN THIẾT BỊ ĐẦU CUỐI

GVHD: NGUYỄN NGỌC TÙNG

SVTH
11


ĐỒ ÁN MÔN THIẾT BỊ ĐẦU CUỐI

GVHD: NGUYỄN NGỌC TÙNG

PIC 16F877A là dòng PIC phổ biến nhất hiện nay (đủ mạnh về tính năng, 40 chân, bộ
nhớ đủ cho hầu hết các ứng dụng thông thường). Cấu trúc tổng quát của PIC 16F877A
như sau:
- 8 K Flash ROM.
- 368 Bytes RAM.
- 256 Bytes EEPROM.
- 5 ports (A, B, C, D, E) vào ra với tín hiệu điều khiển độc lập.
- 2 bộ định thời 8 bits (Timer 0 và Timer 2).

- Một bộ định thời 16 bits (Timer 1) có thể hoạt động trong chế độ tiết kiệm năng
lượng (SLEEP MODE) với nguồn xung Clock ngoài.
- 2 bô CCP( Capture / Compare/ PWM).
- 1 bộ biến đổi AD 10 bits, 8 ngõ vào.
- 2 bộ so sánh tương tự (Compartor).
- 1 bộ định thời giám sát (WatchDog Timer).
- Một cổng song song 8 bits với các tín hiệu điều khiển.
- Một cổng nối tiếp.
- 15 nguồn ngắt.
- Có chế độ tiết kiệm năng lượng.
- Nạp chương trình bằng cổng nối tiếp ICSP(In-Circuit Serial Programming)
- Được chế tạo bằng công nghệ CMOS
- 35 tập lệnh có độ dài 14 bits.
- Tần số hoạt động tối đa 20MHz.

SVTH
12


ĐỒ ÁN MÔN THIẾT BỊ ĐẦU CUỐI

GVHD: NGUYỄN NGỌC TÙNG

Đây là vi điều khiển thuộc họ PIC16Fxxx với tập lệnh gồm 35 lệnh có độ dài
14 bit. Mỗi lệnh đều được thực thi trong một chu kì xung clock. Tốc độ hoạt động tối
đa cho phép là 20 MHz với một chu kì lệnh là 200ns. Bộ nhớ chương trình 8Kx14 bit,
bộ nhớ dữ liệu 368 byte RAM và bộ nhớ dữ liệu EEPROM với dung lượng 256byte.
Số PORT I/O là 5 với 33 pin I/O.
Các đặc tính ngoại vi bao gồm các khối chức năng sau:
Timer0: bộ đếm 8 bit với bộ chia tần số 8 bit.

Timer1: bộ đếm 16 bit với bộ chia tần số, có thể thực hiện chức năng đếm dựa
vào xung clock ngoại vi ngay khi vi điều khiển hoạt động ở chế độ sleep.
Timer2: bộ đếm 8 bit với bộ chia tần số, bộ postcaler.
Hai bộ Capture/so sánh/điều chế độ rông xung.
Các chuẩn giao tiếp nối tiếp SSP (Synchronous Serial Port), SPI và I2C.
Chuẩn giao tiếp nối tiếp USART với 9 bit địa chỉ.
Cổng giao tiếp song song PSP (Parallel Slave Port) với các chân điều khiển
RD, WR, CS ở bên ngoài.
Các đặc tính Analog:
8 kênh chuyển đổi ADC 10 bit.
SVTH
13


ĐỒ ÁN MÔN THIẾT BỊ ĐẦU CUỐI

GVHD: NGUYỄN NGỌC TÙNG

Hai bộ so sánh.
Bên cạnh đó là một vài đặc tính khác của vi điều khiển như:
Bộ nhớ flash với khả năng ghi xóa được 100.000 lần.
Bộ nhớ EEPROM với khả năng ghi xóa được 1.000.000 lần.
Dữ liệu bộ nhớ EEPROM có thể lưu trữ trên 40 năm.
Khả năng tự nạp chương trình với sự điều khiển của phần mềm.
Nạp được chương trình ngay trên mạch điện ICSP (In Circuit Serial
Programming)
thông qua 2 chân.
Watchdog Timer với bộ dao động trong.
Chức năng bảo mật mã chương trình.
Chế độ Sleep.


SVTH
14


ĐỒ ÁN MÔN THIẾT BỊ ĐẦU CUỐI

GVHD: NGUYỄN NGỌC TÙNG

2.2. Sơ đồ khối và chức năng các chân PIC16F877A
2. 2.1 Sơ đồ khối

SVTH
15


ĐỒ ÁN MÔN THIẾT BỊ ĐẦU CUỐI

GVHD: NGUYỄN NGỌC TÙNG

2. 2.2. Sơ đồ chân PIC16F877A

2. 2.3 Chức năng các chân
Tên

Chân Loại

Mô tả chức năng

OSC1/CLKI


13

I

Dao động tinh thể lối vào dao động ngoài

OSC2/CLKO

14

O

Dao động tinh thể hoặc lối ra xung nhịp

MCLR/Vpp

1

I/P

Lối vào reset. Lối vào điện áp nạp trình
Vpp

RA0/AN0

2

I/O


Vào/ ra số. Lối vào analog 0

RA1/AN1

3

I/O

Vào/ ra số. Lối vào analog 1
Vào ra số. lối vào analog 2. Lối vào điện

RA2/AN2/V-reff/CVRef

4

I/O

áp chuẩn V-ref của ADC. Lối ra Vref so
sánh

RA3/AN3/V+Ref

5

I/O

Vào/ ra số. Lối vào analog 3. Lối vào điện
áp chuẩn V-ref của ADC

RA4/TOCKI/C1OUT


6

I/O

Vào/ra số cực máng ngỏ. Lối vào xung
ngoài cho timer. Lối ra bộ so sánh 1

SVTH
16


ĐỒ ÁN MÔN THIẾT BỊ ĐẦU CUỐI

RA5/SS/AN4/C2OUT

7

GVHD: NGUYỄN NGỌC TÙNG

I/O

Vào/ra số. lối vào chọn SOI. Lối vào
analog 4. lối ra bộ so sánh 2

RB0/INT

33

I/O


Vào/ra số. Lối vào ngắt ngoài.

RB1

34

I/O

Vào/ra số.

RB2

35

I/O

Vào/ra số.

RB3/PGM

36

I/O

Vào/ra số. Nạp trình LVP

RB4

37


I/O

Vào/ra số

RB5

38

I/O

Vào/ra số

RB6

39

I/O

Vào/ra số. Xung nhịp nạp trình ICSP

RB7

40

I/O

Vào/ra số. Dữ nạp trình ICSP

RC0/T1OSO/T1CKI


15

I/O

Vào/ra số. Tạo dao động timer. Xung nhịp
ngoài cho timer 1

RC1/T1OSI/CCP2

16

I/O

Vào/ra số. Tạo timer1. Lối vào Capture.
Lối ra Compare2. Lối ra PWM2

RC2/CCP1

17

I/O

Vào/ra số. Lối vào Vào/ra số Capture1.
Lối ra PWM1

RC3/SCK/SCL

18


I/O

Vào/ra số. Nhịp đồng bộ choSPI và I2C

RC4/SDI/SDA

23

I/O

Vào/ra số. Vào dữ liệu SPI. Vào/ra dữ liệu
I2C

RC5/SDO

24

I/O

Vào/ra số. Ra dữ liệu SPI

RC6/TX/CK

25

I/O

Vào/ra số. Cổng truyền thông không đồng
bộ. Xung nhịp truyền đồng bộ


RC7/RX/DT

26

I/O

Vào/ra số. Cổng nhận không đồng bộ. Dữ
liệu đồng bộ

RD0

19

I/O

Vào/ra số. Cổng song song tớ

RD1

20

I/O

Vào/ra số. Cổng song song tớ

RD2

21

I/O


Vào/ra số. Cổng song song tớ

RD3

22

I/O

Vào/ra số. Cổng song song tớ

RD4

27

I/O

Vào/ra số. Cổng song song tớ

RD5

28

I/O

Vào/ra số. Cổng song song tớ

RD6

29


I/O

Vào/ra số. Cổng song song tớ

SVTH
17


ĐỒ ÁN MÔN THIẾT BỊ ĐẦU CUỐI

GVHD: NGUYỄN NGỌC TÙNG

RD7

30

I/O

Vào/ra sô. Cổng song song tớ

RE0/RD/AN5

7

I/O

Vào/ra số. Điều khiển RD cổng song song

RE1/WR/AN6


8

I/O

Vào/ra số. Điều khiển WR cổng song song

RE2/CS/AN7

9

I/O

Vào/ra số. Điều khiển CS cổng song song

Vss

12,31 I/O

Đất chung cho lối vàp/ra và analog

Vdd

11,32 I/O

Cấp nguồn dương

2. 3. Tổ chức bộ nhớ
PIC16F877A gồm có ba bộ nhớ: bộ nhớ EEPROM, Bộ nhớ dữ liệu, bộ nhớ chương
trình .


SVTH
18


ĐỒ ÁN MÔN THIẾT BỊ ĐẦU CUỐI

GVHD: NGUYỄN NGỌC TÙNG

2. 3.1 Bộ nhớ EEPROM
Một bộ nhớ dữ liệu đặc biệt kiểu EEPROM dung lương 256 byte được tích hợp
trong PIC 16F877A và được xem như thiết bị ngoại vi được nối vào bus dữ liệu, bộ
nhớ này có thể ghi đọc trong quá trình hoạt động dưới sự điều khiển của chương trình.
Bộ nhớ EEPROM thường dùng các lưu trữ các chương trình không bị thay đổi như
các hằng chuẩn, các dữ liệu của người sử dụng. và không bị mất đi khi ngắt nguồn
nuôi.
2. 3.2 Bộ nhớ dữ liệu
Bộ nhớ dữ liệu được chia thành 4 bank, mỗi bank có dung lượng 128 byte
RAM tĩnh. Mỗi bank bao gồm các thanh ghi có chức năng đặc biệt SFR (Special
Function Register) nằm ở vùng địa chỉ thấp, và các thanh ghi mục đích chung GPR
(General Purpose Register) nằm ở vùng địa chỉ cao. Các thanh ghi SFR thường xuyên
được sử dụng như STATUS, INTCON, FSR được bố trí trên tất cả

các bank

giúp thuận tiện trong quá trình truy xuất.

SVTH
19



ĐỒ ÁN MÔN THIẾT BỊ ĐẦU CUỐI

GVHD: NGUYỄN NGỌC TÙNG

Sơ đồ tổ chức bộ nhớ dữ liệu PIC16F877A
* Stack
Stack không nằm trong bộ nhớ chương trình hay bộ nhớ dữ liệu mà là một
vùng nhớ đặc biệt không cho phép đọc hay ghi.
Khi lệnh CALL được thực hiện hay khi một ngắt xảy ra làm chương trình bị rẽ nhánh,
giá trị của bộ đếm chương trình PC tự động được vi điều khiển cất vào trong stack.
Khi một trong các lệnh RETURN, RETLW hat RETFIE được thực thi, giá trị PC sẽ tự
động được lấy ra từ trong stack, vi điều khiển sẽ thực hiện tiếp chương trình theo đúng
qui trình định trước.
SVTH
20


ĐỒ ÁN MÔN THIẾT BỊ ĐẦU CUỐI

GVHD: NGUYỄN NGỌC TÙNG

Bộ nhớ Stack trong vi điều khiển PIC họ 16F87xA có khả năng chứa được 8 địa chỉ
và hoạt động theo cơ chế xoay vòng. Nghĩa là giá trị cất vào bộ nhớ Stack lần thứ 9 sẽ
ghi đè
lên giá trị cất vào Stack lần đầu tiên và giá trị cất vào bộ nhớ Stack lần thứ 10 sẽ ghi
đè lên giá trị cất vào Stack lần thứ 2
2. 3.3 Bộ nhớ chương trình.
Bộ nhớ chương trình của vi điều khiển PIC16F877A là bộ nhớ flash, dung lượng
bộ nhớ 8K word (1 word = 14 bit) và được phân thành nhiều trang (từ page0 đến page

3) . Như vậy bộ nhớ chương trình có khả năng chứa được 8*1024 = 8192 lệnh (vì một
lệnh sau khi mã hóa sẽ có dung lượng 1 word (14 bit).
Khi vi điều khiển được reset, bộ đếm chương trình sẽ chỉ đến địa chỉ 0000h
(Reset vector). Khi có ngắt xảy ra, bộ đếm chương trình sẽ chỉ đến địa chỉ 0004h
(Interrupt vector). Bộ nhớ chương trình không bao gồm bộ nhớ stack và không được
địa chỉ hóa bởi bộ đếm chương trình.
2. 4. Các cổng xuất nhập
Cổng xuất nhập (I/O port) chính là phương tiện mà vi điều khiển dùng để
tương tác với thế giới bên ngoài. Bên cạnh đó, do vi điều khiển được tích hợp sẵn bên
trong các đặc tính giao tiếp ngoại vi nên bên cạnh chức năng là cổng xuất nhập thông
thường, một số chân xuất nhập còn có thêm các chức năng khác để thể hiện sự tác
động của các đặc tính ngoại vi nêu trên đối với thế giới bên ngoài.
Vi điều khiển PIC16F877A có 5 cổng xuất nhập, bao gồm PORTA, PORTB,
PORTC, PORTD và PORTE.

SVTH
21


ĐỒ ÁN MÔN THIẾT BỊ ĐẦU CUỐI

GVHD: NGUYỄN NGỌC TÙNG

Các port của pic 16f877a
2. 4.1 Port A
PORTA bao gồm 6 I/O pin ( RA0 –RA5) . Đây là các chân “hai chiều”
(bidirectional pin), nghĩa là có thể xuất và nhập được. Chức năng I/O này được điều
khiển bởi thanh ghi TRISA (địa chỉ 85h). Muốn xác lập chức năng của một chân trong
PORTA là input, ta “set” bit điều khiển tương ứng với chân đó trong thanh ghi TRISA
và ngược lại, muốn xác lập chức năng của một chân trong PORTA là output, ta

“clear” bit điều khiển tương ứng với chân đó trong thanh ghi TRISA
Chân RA4 dùng chung với lối vào xung nhịp cho timer0 khi dùng bộ đếm xung từ bên
ngoài.
Các chân khác của cổng A được ghép lối vào của các bộ so sánh tương tự và bộ biến
đổi ADC 8 kênh .
2. 4.2 Port B
PORTB (RPB) gồm 8 pin I/O ( RB0 – RB7). Thanh ghi điều khiển xuất nhập
tương ứng là TRISB. Bên cạnh đó một số chân của PORTB còn được sử dụng trong
quá trình nạp chương trình cho vi điều khiển với các chế độ nạp khác nhau. PORTB
còn liên quan đến ngắt ngoại vi và bộ Timer0.

SVTH
22


ĐỒ ÁN MÔN THIẾT BỊ ĐẦU CUỐI

GVHD: NGUYỄN NGỌC TÙNG

PORTB còn được tích hợp chức năng điện trở kéo lên (20k ohm) được điều khiển bởi
chương trình.
Chân RB0 có thể lựa chọn là lối vào của ngắt ngoài Extint.
Có 3 chân của cổng B được ghép lối với chức năng ICSP là RB6, RB7, RB3 tương
ứng với lối vào PGC, PGD, LVP khi nạp trình.Lối vào RB4 và RB7 làm phát sinh
ngắt RBIF khi thay đổi trạng thái khi các chân này định nghĩa là các lối vào. Trạng
thái hiện tại của lối vào này được so sánh với trạng thái được chốt lại tại lần đọc trước
đó. Khi có sự khác nhau thì cờ ngắt RBIF được lập.
2. 4.3 Port C
PORTC (RPC) gồm 8 pin I/O (RC0 – RC7). Thanh ghi điều khiển xuất nhập
tương ứng là TRISC. Bên cạnh đó PORTC còn chứa các chân chức năng của bộ so

sánh, bộ Timer1, bộ PWM và các chuẩn giao tiếp nối tiếp I2C, SPI, SSP, USART.
2. 4.4 Port D
PORTD (RPD) gồm 8 chân I/O ( RD0 – RD7), thanh ghi điều khiển xuất nhập
tương ứng là TRISD.
PORTD còn là cổng xuất dữ liệu của chuẩn giao tiếp PSP (Parallel Slave Port).
2. 4.5 Port E
Port E có 3 chân RE0 , RE1 , RE2 có thể được cấu hình là các chân xuất nhập.
Các chân của PORTE có ngõ vào analog , tại chế độ này khi đọc trạng thái các chân
port E sẽ cho ta giá trị 0 . Bên cạnh đó PORTE còn là các chân điều khiển của chuẩn
giao tiếp PSP.
2. 5.Các bộ định thời
2. 5.1 Timer 0


Bộ đếm 8 bit



Ghi/đọc được.



Có bộ chia 8 bit lập trình được.



Chọn xung nhịp bên ngoài hoặc bên trong.




Sinh ngắt TOIF khi tràn chuyền từ FFh→ 00h.



Chọn sườn xung khi lấy xung nhịp từ bên ngoài.

SVTH
23


ĐỒ ÁN MÔN THIẾT BỊ ĐẦU CUỐI

GVHD: NGUYỄN NGỌC TÙNG

Timer0 dùng làm bộ đếm xung nhịp của vi điều khiển vể tạo ra một bộ đếm thời gian.
Chế độ đếm thời gian được chọn bằng cách đặt bit T0CS = 0 (bit OPTION<5>).
Trong các chế độ đếm thời gian, thanh ghi TMR0 tăng một đơn vị sau mỗi chu kỳ
máy. Thanh ghỉ TMR0 có thể được ghi đọc trong chương trình để xác lập hoặc lấy giá
trị hiện thời của timer0.

Hình : Sơ đồ khối Timer0.
Timer0 dùng để đếm các xung từ bên ngoài cấp vào chân RA4. Chế độ đếm
xung được chọn bằng cách đặt T0CS = 1. Trong chế độ này thanh ghi Timer0 tăng
một đơn vị sau mỗi sườn lên hoặc sườn xuống tùy thuộc vào trạng thái của bit T0SE.
Bộ chia trước được dùng chung cho hai khối watchdog và Timer0. Việc gắn bộ chia
trước cho khối nào được chọn bằng bít PSA(OPTION<3>). Hệ số chia phụ thuộc giá
trị của bit PS2:PS1:PS0 của thanh ghi OPTION.
Ngắt timer0 xảy ra khi thanh ghi TMR0 tràn, chuyển từ FFh→00h. Sự tràn này
sẽ đặt bít T0IF = 1. Ngắt T0IF có thể che bằng bit T0IE. Cờ T0IF phải được xóa bằng
phần mềm.


SVTH
24


ĐỒ ÁN MÔN THIẾT BỊ ĐẦU CUỐI

GVHD: NGUYỄN NGỌC TÙNG

2. 5.2 Timer 1
Timer1 là bộ định thời 16 bit, giá trị của Timer1 sẽ được lưu trong hai thanh
ghi (TMR1H:TMR1L). Cờ ngắt của Timer1 là bit TMR1IF (PIR1<0>). Bit điều khiển
của Timer1 sẽ là TMR1IE (PIE<0>). Tương tự như Timer0, Timer1 cũng có hai chế
độ hoạt động: chế độ định thời (timer) với xung kích là xung clock của oscillator (tần
số của timer bằng ¼ tần số của oscillator) và chế độ đếm (counter) với xung kích là
xung phản ánh các sự kiện cần đếm lấy từ bên ngoài thông qua chân
RC0/T1OSO/T1CKI (cạnh tác động là cạnh lên). Việc lựa chọn xung tác động (tương
ứng với việc lựa chọn chế độ hoạt động là timer hay counter) được điều khiển bởi bit
TMR1CS (T1CON<1>). Sau đây là sơ đồ khối của Timer1:

Hình :Sơ đồ khối của Timer1
2. 5.3 Timer 2
Timer2 là bộ định thời 8 bit và được hỗ trợ bởi hai bộ chia tần số prescaler và
postscaler. Thanh ghi chứa giá trị đếm của Timer2 là TMR2. Bit cho phép ngắt
Timer2 tác động là TMR2ON (T2CON<2>). Cờ ngắt của Timer2 là bit TMR2IF
(PIR1<1>). Xung ngõ vào (tần số bằng ¼ tần số oscillator) được đưa qua bộ chia tần
số prescaler 4 bit (với các tỉ số chia tần số là 1:1, 1:4 hoặc 1:16 và được điều khiển bởi
các bit T2CKPS1:T2CKPS0 (T2CON<1:0>)).
Ngoài ra ngõ ra của Timer2 còn được kết nối với khối SSP, do đó Timer2 còn
đóng vai trò tạo ra xung clock đồng bộ cho khối giao tiếp SSP.

Timer0 và Timer2 là bộ đếm 8 bit (giá trị đếm tối đa là FFh), trong khi Timer1
là bộ đếm 16 bit (giá trị đếm tối đa là FFFFh). Timer0, Timer1 và Timer2 đều có hai
chế độ hoạt động là timer và counter. Xung clock có tần số bằng ¼ tần số của
SVTH
25


×