Tải bản đầy đủ (.docx) (54 trang)

Quang báo sử dụng led ma trận

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 (926.32 KB, 54 trang )

Đồ án – Quang báo sử dụng led ma trận

MỤC LỤC
Phần A: GIỚI THIỆU

Phần B: NỘI DUNG
Chương 1 .Giới thiệu linh kiện.
1.1 Điện trở.
1.1.1. Hình dáng và kí hiệu.
1.1.2. Điện trở mắc nối tiếp và song song
1.1.3.Mã màu trên điện trở
1.2 Tụ điện
1.2.1 Điện dung.
1.2.2 Điện thế
1.2.3 Các loại tụ điện
1.3 Cấu tạo của transistor
1.4 Led 7 đoạn
1.5 Tổng quan về PIC
1.5.1 PIC là gì.
1.5.2 Giới thiệu về PIC 16F877A
Chương 2. THIẾT KẾ VÀ THI CÔNG HỆ THỐNG
2.1 Sơ đồ khối tổng quan của hệ thống
2.2 Giải thích sơ đồ từng khối.
2.2.1 Khối nguồn
2.2.2 Khối điều khiển trung tâm
2.2.3 Khối hiển thị
GVHD : Nguyễn Trọng Khanh

- 1-

Nhóm 20




Đồ án – Quang báo sử dụng led ma trận

2.2.4 Khối bàn phím
2.3 Nguyên lý hoạt động
Chương 3. LƯU ĐỒ GIẢI THUẬT – CHƯƠNG TRÌNH
3.1 Lưu đồ giải thuật
3.2. Chương trình
Chương 4 TỔNG KẾT
4.1 Kết luận
4.2 Hướng phát triển

Tài liệu tham khảo

GVHD : Nguyễn Trọng Khanh

- 2-

Nhóm 20


Đồ án – Quang báo sử dụng led ma trận

Phần A : Giới thiệu

Hình-A:Quang báo quảng cáo
Ngày nay với sự phát triển của xã hội cùng với sự phát triển của khoa học kỹ thuật,cho nên nhu
cầu về thông tin trở nên thiết yếu đối với con người trong cuộc sống cũng như trong hoạt động
sản xuất kinh doanh.Việc đưa thông tin quảng cáo đến với người tiê dùng đến với xã hội trở nên

dễ dàng,nhanh chóng.Thông qua nhiều hình thức quảng cáo khác nhau mà doanh nghiệp giới
thiệu sản phẩm của mình đến với mọi người.Trong nhiều hình thức của thông tin quảng cáo thì
việc dùng bảng thông tin điện tử là một cách đơn giản và hiệu quả nhất.
Chúng ta bắt gặp rất nhiều thông tin như vậy trong thực tế.Khi đi vào nhà sách,bạn có thể biết
được nhà sách tên gì,có những loại sách gì….là nhờ vào bảng đèn bắ mắt của cửa hiệu.Hoặc khi
vào sân bay,bạn biết được giờ các chuyến bay,các thông tin của sân bay….cũng là nhờ quang
báo.
Với mong muốn giới thiệu những ứng dụng cơ bản của hệ thống nhúng trong đời sống hiện đại
và để mọi người biết đến một số ứng dụng cụ thể cũng như tầm quan trọng của nhúng,mhóm
chúng em đã tìm hiểu và thi công mô hình quang báo sử dụng led ma trận.

GVHD : Nguyễn Trọng Khanh

- 3-

Nhóm 20


Đồ án – Quang báo sử dụng led ma trận

Phần B : Nội dung
Chương 1. Giới thiệu linh kiện
I-Điện trở
Điện trở hay Resistor là một linh kiện điện tử thụ động trong một mạch điện, hiệu điện thế
giữa hai đầu của nó tỉ lệ với cường độ dòng điện qua nó theo định luật Ohm.

1.Hình dáng và ký hiệu
Trong thiết bị điện tử điện trở là một linh kiện quan trọng, chúng được làm từ hợp
chất cacbon và kim loại tuỳ theo tỷ lệ pha trộn mà người ta tạo ra được các loại điện trở
có trị số khác nhau.


Hình 1.1. Hình dạng của điện trở trong thiết bị điện tử.

Ký hiệu của điện trở trên các sơ đồ nguyên lý.s
Định luật Ohm cho rằng hiệu điện thế (U) qua một thiết bị điện trở tỉ lệ với cường độ
dòng điện (I) qua nó và tỉ số giữa chúng là điện trở (R).

GVHD : Nguyễn Trọng Khanh

- 4-

Nhóm 20


Đồ án – Quang báo sử dụng led ma trận

trong đó:
U: là hiệu điện thế giữa hai đầu vật dẫn điện, đo bằng vôn (V).
I: là cường độ dòng điện đi qua vật dẫn điện, đo bằng ampe (A).
R: là điện trở của vật dẫn điện, đo bằng Ohm (Ω).
Ví dụ: như có một đoạn dây dẫn có điện trở là 1Ω và có dòng điện 1A chạy qua thì điện
áp giữa hai đầu dây là 1V.
2. Điện trở mắc nối tiếp và song song
Điện trở mắc song song

Điện trở mắc nối tiếp

Điện trở mắc hỗn hợp

GVHD : Nguyễn Trọng Khanh


- 5-

Nhóm 20


Đồ án – Quang báo sử dụng led ma trận

3. Mã màu trên điện trở
Trong thực tế, để đọc được giá trị của một điện trở thì ngoài việc nhà sản xuất in trị số
của nó lên linh kiện thì người ta còn dùng một qui ước chung để đọc trị số điện trở và các
tham số cần thiết khác. Giá trị được tính ra thành đơn vị Ohm (sau đó có thể viết lại thành

GVHD : Nguyễn Trọng Khanh

- 6-

Nhóm 20


Đồ án – Quang báo sử dụng led ma trận

kí lô hay mêga cho tiện).

Trong hình


Điện trở ở vị trí bên trái có giá trị được tính như sau:
R = 45 × 102 Ω = 4,5 KΩ
Bởi vì vàng tương ứng với 4, xanh lục tương ứng với 5, và đỏ tưong ứng với giá trị

số mũ 2. Vòng màu cuối cho biết sai số của điện trở có thể trong phạm vi 5% ứng
với màu kim loại vàng.



Điện trở ở vị trí giữa có giá trị được tính như sau:
R = 380 × 103 Ω = 380 KΩ
Bởi vì cam tương ứng với 3, xám tương ứng với 8, đen tương ứng với 0, và cam

GVHD : Nguyễn Trọng Khanh

- 7-

Nhóm 20


Đồ án – Quang báo sử dụng led ma trận

tương ứng với giá trị số mũ 3. Vòng cuối cho biết giá trị sai số là 2% ứng với màu
đỏ.


Điện trở ở vị trí bên phải có giá trị được tính như sau:
R = 527 × 104 Ω = 5270 KΩ
Bởi vì xanh lục tương ứng với 5, đỏ tương ứng với 2, và tím tương ứng với 7, vàng
tương ứng với số mũ 4, và nâu tương ứng với sai số 1%. Vòng màu cuối cho biết
sự thay đổi giá trị của điện trở theo nhiệt độ là 10 PPM/°C.

Lưu ý: Để tránh lẫn lộn trong khi đọc giá trị của các điện trở, đối với các điện trở có tổng
số vòng màu từ 5 trở xuống thì có thể không bị nhầm lẫn vì vị trí bị trống không có vòng

màu sẽ được đặt về phía tay phải trước khi đọc giá trị. Còn đối với các điện trở có độ
chính xác cao và có thêm tham số thay đổi theo nhiệt độ thì vòng màu tham số nhiệt sẽ
được nhìn thấy có chiều rộng lớn hơn và phải được xếp về bên tay phải trước khi đọc giá
trị.
II-Tụ điện
Là một linh kiện điện tử thụ động tạo bởi hai bề mặt dẫn điện được ngăn cách bởi
điện môi. Khi có chênh lệch điện thế tại hai bề mặt, tại các bề mặt sẽ xuất hiện điện
tích cùng cường độ, nhưng trái dấu.
Sự tích tụ của điện tích trên hai bề mặt tạo ra khả năng tích trữ năng lượng điện
trường của tụ điện. Khi chênh lệch điện thế trên hai bề mặt là điện thế xoay chiều, sự tích
luỹ điện tích bị chậm pha so với điện áp, tạo nên trở kháng của tụ điện trong mạch điện
xoay chiều.
Về mặt lưu trữ năng lượng, tụ điện có phần giống với ắc qui. Mặc dù cách hoạt động
của chúng thì hoàn toàn khác nhau, nhưng chúng đều cùng lưu trữ năng lượng điện. Ắc
qui có 2 cực, bên trong xảy ra phản ứng hóa học để tạo ra electron ở cực này và chuyển
electron sang cực còn lại. Tụ điện thì đơn giản hơn, nó không thể tạo ra electron - nó chỉ
GVHD : Nguyễn Trọng Khanh

- 8-

Nhóm 20


Đồ án – Quang báo sử dụng led ma trận

lưu trữ chúng. Tụ điện có khả năng nạp và xả rất nhanh. Đây là một ưu thế của nó so với
ắc qui.
1.Điện dung
Là đại lượng vật lý nói lên khả năng tích điện giữa hai bản cực của tụ điện, điện dung
của tụ điện phụ thuộc vào diện tích bản cực, vật liệu làm chất điện môi và khoảng cách

giữ hai bản cực theo công thức:

ξ×ξ0
Trong đó,


C : là điện dung tụ điện, đơn vị là Fara [F]



ε : Là hằng số điện môi của lớp cách điện;



ε0 : Là hằng số điện thẩm;



d : là chiều dày của lớp cách điện;



S : là diện tích bản cực của tụ điện.

Đơn vị của đại lượng điện dung là Fara [F]. Trong thực tế đơn vị Fara là trị số rất lớn, do
đó thường dùng các đơn vị đo nhỏ hơn như micro Fara (1µF=10−6F), nano Fara
(1nF=10−9F), pico Fara (1pF=10−12F).
2. Điện Thế
Tụ điện trong các mạch thông thường có thông số điện áp: 5V, 10V, 12V, 16V, 24V, 25V,
35V, 42V, 47V, 56V, 100V, 110V, 160V, 180V, 250V, 280V, 300V, 400V...


GVHD : Nguyễn Trọng Khanh

- 9-

Nhóm 20


Đồ án – Quang báo sử dụng led ma trận

3.Các loại Tụ điện

Hình 1.2 Tụ điện phân cực, tụ hóa
Tụ điện phân cực (có cực xác định) hoặc theo cấu tạo còn gọi là tụ hóa. Thường trên tụ
quy ước cực âm phân biệt bằng một vạch màu sáng dọc theo thân tụ, khi tụ mới chưa cắt
chân thì chân dài hơn sẽ là cực dương. Khi đấu nối phải đúng cực âm - dương. Trị số của
tụ phân cực vào khoảng 0,47μF - 4.700μF, thường dùng trong các mạch tần số làm việc
thấp, dùng lọc nguồn.

Hình 1.3 Tụ không phân cực
Tụ điện không phân cực (không xác định cực dương âm); theo cấu tạo có thể là tụ giấy,
tụ gốm, hoặc tụ mica. Tụ xoay chiều thường có trị số điện dung nhỏ hơn 0,47μF và
thường được sử dụng trong các mạch điện tần số cao hoặc mạch lọc nhiễu.

GVHD : Nguyễn Trọng Khanh

- 10-

Nhóm 20



Đồ án – Quang báo sử dụng led ma trận

III- Cấu tạo của Transistor
Transistor gồm ba lớp bán dẫn ghép với nhau hình thành hai mối tiếp giáp P-N , nếu
ghép theo thứ tự PNP ta được Transistor thuận , nếu ghép theo thứ tự NPN ta được
Transistor ngược. về phương diện cấu tạo Transistor tương đương với hai Diode đấu
ngược chiều nhau .

Hình 1.4 Kí hiệu và hình dạng Transistor PNP

GVHD : Nguyễn Trọng Khanh

- 11-

Nhóm 20


Đồ án – Quang báo sử dụng led ma trận

Hình 1.5 Cấu tạo kí hiệu Transistor
Ba lớp bán dẫn được nối ra thành ba cực , lớp giữa gọi là cực gốc ký hiệu là B
( Base ), lớp bán dẫn B rất mỏng và có nồng độ tạp chất thấp.
Hai lớp bán dẫn bên ngoài được nối ra thành cực phát ( Emitter ) viết tắt là E, và cực thu
hay cực góp ( Collector ) viết tắt là C, vùng bán dẫn E và C có cùng loại bán dẫn (loại N
hay P ) nhưng có kích thước và nồng độ tạp chất khác nhau nên không hoán vị cho nhau
được.
a. Nguyên tắc hoạt động của Transistor.
* Xét hoạt động của Transistor NPN .


Mạch khảo sát về nguyên tắc hoạt động của transistor NPN
Ta cấp một nguồn một chiều UCE vào hai cực C và E trong đó (+) nguồn vào cực C và
(-) nguồn vào cực E.
Cấp nguồn một chiều UBE đi qua công tắc và trở hạn dòng vào hai cực B và E , trong đó
cực (+) vào chân B, cực (-) vào chân E.
GVHD : Nguyễn Trọng Khanh

- 12-

Nhóm 20


Đồ án – Quang báo sử dụng led ma trận

Khi công tắc mở , ta thấy rằng, mặc dù hai cực C và E đã được cấp điện nhưng vẫn không
có dòng điện chạy qua mối C E ( lúc này dòng IC = 0 )
Khi công tắc đóng, mối P-N được phân cực thuận do đó có một dòng điện chạy từ (+)
nguồn UBE qua công tắc => qua R hạn dòng => qua mối BE về cực (-) tạo thành dòng
IB
Ngay khi dòng IB xuất hiện => lập tức cũng có dòng IC chạy qua mối CE làm bóng đèn
phát sáng, và dòng IC mạnh gấp nhiều lần dòng IB
Như vậy rõ ràng dòng IC hoàn toàn phụ thuộc vào dòng IB và phụ thuộc theo một công
thức .
IC = β.IB
Trong đó IC là dòng chạy qua mối CE
IB là dòng chạy qua mối BE
β là hệ số khuyếch đại của Transistor
Giải thích : Khi có điện áp UCE nhưng các điện tử và lỗ trống không thể vượt qua mối
tiếp giáp P-N để tạo thành dòng điện, khi xuất hiện dòng IBE do lớp bán dẫn P tại cực B
rất mỏng và nồng độ pha tạp thấp, vì vậy số điện tử tự do từ lớp bán dẫn N ( cực E ) vượt

qua tiếp giáp sang lớp bán dẫn P( cực B ) lớn hơn số lượng lỗ trống rất nhiều, một phần
nhỏ trong số các điện tử đó thế vào lỗ trống tạo thành dòng IB còn phần lớn số điện tử bị
hút về phía cực C dưới tác dụng của điện áp UCE => tạo thành dòng ICE chạy qua
Transistor.
* Xét hoạt động của Transistor PNP .

GVHD : Nguyễn Trọng Khanh

- 13-

Nhóm 20


Đồ án – Quang báo sử dụng led ma trận

Sự hoạt động của Transistor PNP hoàn toàn tương tự Transistor NPN nhưng cực tính của
các nguồn điện UCE và UBE ngược lại . Dòng IC đi từ E sang C còn dòng IB đi từ E
sang B.
b. Ký hiệu & hình dáng Transistor .
Ký hiệu của Transistor

IV-IC74HC595
1.Sơ lược về IC ghi dịch 74HC595
GVHD : Nguyễn Trọng Khanh

- 14-

Nhóm 20



Đồ án – Quang báo sử dụng led ma trận

Là ic ghi dịch 8bit kết hợp chốt dữ liệu , đầu vào nối tiếp đầu ra song song .
Chức năng: Thường dùng trong các mạch quét led 7 đoạn, led matrix …để tiết kiệm
số chân cho VDK tối đa (3 chân) . Có thể mở rộng số chân vi điều khiển bao nhiêu tùy
thích mà không họ ic nào có thể làm được bằng việc mắc nối tiếp đầu vào dữ liệu các
ic với nhau .
Cách mở rộng ta chỉ việc nối Q7' của IC trước với chân DATA (chân 14) của IC sau,
với IC đầu tiên nhận dữ liệu từ VĐK
2.Sơ đồ chân

Hình 2.20 IC74HC595
3.Chức năng các chân
Chân 14 : đầu vào dữ liệu nối tiếp . Tại 1 thời điểm xung clock chỉ đưa vào được 1 bit.
Q0=>Q7(output) : trên các chân (15,1,2,3,4,5,6,7)
Xuất dữ liệu khi chân 13 tích cực ở mức thấp và có một xung tích cực ở sườn âm tại
chân chốt 12
Chân 13 (output-enable) : Chân tích cực mức thấp, khi chân này ở mức thấp thì tín hiệu từ bộ
chốt được đưa ra đầu ra.Khi ở mức cao thì tín hiệu không được đưa ra ở đầu ra.
Chân 9(SQH): Chân dữ liệu nối tiếp . Nếu dùng nhiều 74595 mắc nối tiếp nhau thì chân này đưa
vào đầu vào của con tiếp theo khi đã dịch đủ 8bit.
Chân 11(Shift clock): Chân vào xung clock . Khi có 1 xung clock tích cực ở sườn dương(từ 0 lên
1) thì 1bit được dịch vào IC.
Chân 12 (Latch clock): xung clock chốt dữ liệu . Khi có 1 xung clock tích cực ở sườn dương thì
GVHD : Nguyễn Trọng Khanh

- 15-

Nhóm 20



Đồ án – Quang báo sử dụng led ma trận
cho phép xuất dữ liệu trên các chân output . lưu ý có thể xuất dữ liệu bất kỳ lúc nào bạn muốn ,ví
dụ đầu vào chân 14 được 2 bit khi có xung clock ở chân 12 thì dữ liệu sẽ ra ở chân Q0 và Q1(chú
ý chiều dịch dữ liệu từ Q0=>Q7)
Chân 10(Reset): khi chân này ở mức thấp(mức 0) thì dữ liệu sẽ bị xóa trên chip)
74xx595 đầu ra hoạt động ở 2 mức 0 và 1 dòng ra tầm 35mA.Điện áp hoạt
động <=7V. Công suất trung bình 500mW.
V-IC đệm dòng ULN2803

Là IC gồm 8 trasitor NPN ghép Darlington

Sơ đồ khối IC ULN2803

ULN2803 thiết kế phù hợp với tiêu chuẩn TTL
Chỉ số kỹ thuật của ULN2803 :
-Dòng điện ngõ vào khoảng 25mA.
-Điện áp ngõ vào khoảng 0.5V-30V.
-Dòng ra lên tới 500mA/50V.
-Đệm 8 kênh riêng biệt.
VI-Led ma trận
Led matrix là led ma trận hiển thị bao gồm nhiều led đơn kết hợp lại thành một ma trận
gồm n cột và m hàng(ma trận nxm).Led ma trận 8x8 có 8 hàng và 8 cột.Led ma trận có
hai loại :loại thứ nhất là common cathode(cathode chung-cột cathode,hàng anode),loại
thứ hai là comon anode (anode chung-cột anode,hàng cathode).

GVHD : Nguyễn Trọng Khanh

- 16-


Nhóm 20


Đồ án – Quang báo sử dụng led ma trận

hình dạng thực tế led ma trận

Cấu tạo bên trong led ma trận loại K chung

Cấu tạo bên trong led ma trận loại A chung
Nguyên tắc hoạt động của led ma trận

Khi muốn làm sang led đơn thì ta đưa điện áp dương Anode và điện áp âm Cathode với
giá trị thích hợp,khi đó led sẽ sang.Tại một thời điểm không được (không thể) hiển thị
GVHD : Nguyễn Trọng Khanh

- 17-

Nhóm 20


Đồ án – Quang báo sử dụng led ma trận

cùng một lúc hai hang hoặc hai cột.Giá trị điện áp và dòng điện tùy thuộc vào màu sắc
từng loại led.
1.5 Tổng quan về PIC.
1.5.1 PIC là gì ?
PIC là viết tắt của “Programable Intelligent Computer”, có thể tạm dịch là“máy
tính thông minh khả trình”do hãng Genenral Instrument đặt tên cho vi điều khiển đầu tiên
của họ: PIC1650 được thiết kế để dùng làm các thiết bị ngoại vi cho vi điều khiển

CP1600. Vi điều khiển này sau đó được nghiên cứu phát triển thêm và từ đó hình thành
nên dòng vi điều khiển PIC ngày nay.
Tại sao lại dùng PIC mà không phải là các loại vi điều khiển khác.
Hiện nay trên thị trường có rất nhiều họ vi điều khiển như 8051, Motorola 68HC,
AVR, ARM,...Ngoài họ 8051 được hướng dẫn một cách căn bản ở môi trường đại học,
bản thân người viết đã chọn họ vi điều khiển PIC để mở rộng vốn kiến thức và phát triển
các ứng dụng trên công cụ này vì các nguyên nhân sau: Họ vi điều khiển này có thể tìm
mua dễ dàng tại thị trường Việt Nam. Giá thành không quá đắt. Có đầy đủ các tính năng
của một vi điều khiển khi hoạt động độc lập. Là một sự bổ sung rất tốt về kiến thức cũng
như về ứng dụng cho họ vi điều khiển mang tính truyền thống: họ vi điều khiển 8051. Số
lượng người sử dụng họ vi điều khiển PIC. Hiện nay tại Việt Nam cũng như trên thế giới,
họ vi điều khiển này được sử dụng khá rộng rãi. Điều này tạo nhiều thuận lợi trong quá
trình tìm hiểu và phát triển các ứng dụng như: số lượng tài liệu, số lượng các ứng dụng
mở đã được phát triển thành công, dễ dàng trao đổi, học tập, dễ dàng tìm được sự chỉ dẫn
khi gặp khó khăn,…Sự hỗ trợ của nhà sản xuất về trình biên dịch, các công cụ lập trình,
nạp chương trình từ đơn giản đến phức tạp,…Các tính năng đa dạng của vi điều khiển
PIC, và các tính năng này không ngừng được phát triển.
1.5.2 Giới thiệu về PIC 16F877A.
a.Sơ đồ chân.

GVHD : Nguyễn Trọng Khanh

- 18-

Nhóm 20


Đồ án – Quang báo sử dụng led ma trận

Hình 1.6 Ảnh thực tế PIC16F877A


Hình 1.7 Sơ đồ chân của PIC16F877A
b. Các thông số của PIC 16F877A.
Đâ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.
1

Mỗi lệnh đều được thực thi trong một chu kì xung clock.

2

Tốc độ hoạt động tối đa cho phép là 20 MHz với một chu kì lệnh là 200ns.

1

Bộ nhớ chương trình 8Kx14 bit, bộ nhớ dữ liệu 368x8 byte RAM và bộ nhớ dữ
liệu EEPROM với dung lượng 256x8 byte.

3

Số PORT I/O là 5 với 33 pin I/O.

4

Các đặc tính ngoại vi bao gồmcác khối chức năng sau:
1

Timer0: bộ đếm 8 bit với bộ chia tần số 8 bit.

GVHD : Nguyễn Trọng Khanh


- 19-

Nhóm 20


Đồ án – Quang báo sử dụng led ma trận
2

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.

3

Timer2: bộ đếm 8 bit với bộ chia tần số, bộ postcaler.

5

Hai bộ Capture/so sánh/điều chế độ rộng xung.

6

Các chuẩn giao tiếp nối tiếp SSP (Synchronous Serial Port), SPI và I2C.
1

Chuẩn giao tiếp nối tiếp USART với 9 bit địa chỉ.

2

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.


7

Các đặc tính Analog: 8 kênh chuyển đổi ADC 10 bit.

8

Bên cạnh đó là một vài đặc tính khác của vi điều khiển như:

9

1

Bộ nhớ flash với khả năng ghi xóa được 100.000 lần.

2

Bộ nhớ EEPROM với khả năng ghi xóa được 1.000.000 lần.

3

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.

10 Watchdog Timer với bộ dao động trong.
11 Chức năng bảo mật mã chương trình.
12 Chế độ Sleep.

13 Có thể hoạt động với nhiều dạng Oscillator khác nhau.

c. Cổng xuất nhập (I/O port).
1

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. Sự tương tác này rất đa dạng và thông qua quá trình
tương tác đó, chức năng của vi điều khiển được thể hiện một cách rõ ràng.

2

Một cổng xuất nhập của vi điều khiển bao gồm nhiều chân (I/O pin), tùy theo cách
bố trí và chức năng của vi điều khiển mà số lượng cổng xuất nhập và số lượng
chân trong mỗi cổng có thể khác nhau.

GVHD : Nguyễn Trọng Khanh

- 20-

Nhóm 20


Đồ án – Quang báo sử dụng led ma trận
3

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. Chức năng của từng chân xuất
nhập trong mỗi cổng hoàn toàn có thể được xác lập và điều khiển được thông qua

các thanh ghi SFR liên quan đến chân xuất nhập đó.

4

Vi điều khiển PIC16F877A có 5 cổng xuất nhập, bao gồm PORTA, PORTB,
PORTC, PORTD và PORTE.

5

Cấu trúc và chức năng của từng cổng xuất nhập sẽ được đề cập cụ thể trong phần
sau.

* PORTA :
1

PORTA(RPA) bao gồm 6 I/O pin. Đây là các chân “hai chiều” (bidirectional pin),
nghĩa là có thể xuất và nhập được.

1

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.

2

Thao tác này hoàn toàn tương tự đối với các PORT và các thanh ghi điều khiển
tương ứng TRIS (đối với PORTA là TRISA, đối với


3

PORTB là TRISB, đối với PORTC là TRISC, đối với PORTD là TRISD vàđối với
PORTE là TRISE).

4

Các thanh ghi SFR liên quan đến PORTA bao gồm: PORTA (địa chỉ 05h) : chứa
giá trị các pin trong PORTA. TRISA (địa chỉ 85h): điều khiển xuất nhập. CMCON
(địa chỉ 9Ch): thanh ghi điều khiển bộ so sánh. CVRCON (địa chỉ 9Dh) : thanh
ghi điều khiển bộ so sánh điện áp. ADCON1 (địa chỉ 9Fh) : thanh ghi điều khiển
bộ ADC.

* PORTB

GVHD : Nguyễn Trọng Khanh

- 21-

Nhóm 20


Đồ án – Quang báo sử dụng led ma trận
1

PORTB (RPB) gồm 8 pin I/O. 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.


2

PORTB còn liên quan đến ngắt ngoại vi và bộ Timer0. PORTB còn được tích hợp
chức năng điện trở kéo lên được điều khiển bởi chương trình. Các thanh ghi SFR
liên quan đến PORTB bao gồm: PORTB (địa chỉ 06h,106h) : chứa giá trị các pin
trong PORTB TRISB (địa chỉ 86h,186h) : điều khiển xuất nhập OPTION_REG
(địa chỉ 81h,181h) : điều khiển ngắt ngoại vi và bộ Timer0.

*PORTC
1

PORTC (RPC) gồm 8 pin I/O. 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

Các thanh ghi điều khiển liên quan đến PORTC: PORTC (địa chỉ 07h): chứa giá
trị các pin trong PORTC TRISC (địa chỉ 87h): điều khiển xuất nhập.

* PORTD
1

PORTD (RPD) gồm 8 chân I/O, 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

Các thanh ghi liên quan đến PORTD bao gồm: Thanh ghi PORTD: chứa giá trị các

pin trong PORTD.
1

Thanh ghi TRISD : điều khiển xuất nhập.

2

Thanh ghi TRISE : điều khiển xuất nhập PORTE và chuẩn giao tiếp PSP.

* PORTE
1

PORTE (RPE) gồm 3 chân I/O. Thanh ghi điều khiển xuất nhập tương ứng là
TRISE. Các chân của PORTE có ngõ vào analog. Bên cạnh đó PORTE còn là các
chân điều khiển của chuẩn giao tiếp PSP.
1

Các thanh ghi liên quan đến PORTE bao gồm: PORTE : chứa giá trị các chân
trong PORTE. TRISE: điều khiển xuất nhập và xác lập các thông số cho chuẩn
giao tiếp PSP.

GVHD : Nguyễn Trọng Khanh

- 22-

Nhóm 20


Đồ án – Quang báo sử dụng led ma trận
2


ADCON1 : thanh ghi điều khiển khối ADC.

d. Timer
* TIMER 0.
1

Đây là một trong ba bộ đếm hoặc bộ định thời của vi điều khiển PIC16F877A.

2

Timer0 là bộ đếm 8 bit được kết nối với bộ chia tần số (prescaler) 8 bit. Cấu trúc
của Timer0 cho phép ta lựa chọn xung clock tác động và cạnh tích cực của xung
clock.

3

Ngắt Timer0 sẽ xuất hiện khi Timer0 bị tràn. Bit TMR0IE (INTCON<5>) là bit
điều khiển của Timer0. TMR0IE=1 cho phép ngắt Timer0 tác động, TMR0IF= 0
không cho phép ngắt Timer0 tác động.

Sơ đồ khối của Timer0 như sau.

Hình 1.8 Sơ đồ khối của timer0.
1

Muốn Timer0 hoạt động ở chế độ Timer ta clear bit TOSC (OPTION_REG<5>),
khi đó giá trị thanh ghi TMR0 sẽ tăng theo từng chu kì xung đồng hồ (tần số vào
Timer0 bằng ¼ tần số oscillator). Khi giá trị thanh ghi TMR0 từ FFh trở về 00h,
ngắt Timer0 sẽ xuất hiện.


GVHD : Nguyễn Trọng Khanh

- 23-

Nhóm 20


Đồ án – Quang báo sử dụng led ma trận
2

Thanh ghi TMR0 cho phép ghi và xóa được giúp ta ấn định thời điểm ngắt Timer0
xuất hiện một cách linh động.

3

Muốn Timer0 hoạt động ở chế độ counter ta set bit TOSC (OPTION_REG<5>).
Khi đó xung tác động lên bộ đếm được lấy từ chân RA4/TOCK1. Bit TOSE
(OPTION_REG<4>) cho phép lựa chọn cạnh tác động vào bột đếm. Cạnh tác
động sẽ là cạnh lên nếu TOSE=0 và cạnh tác động sẽ là cạnh xuống nếu TOSE=1.

4

Khi thanh ghi TMR0 bị tràn, bit TMR0IF (INTCON<2>) sẽ được set. Đây chính là
cờ ngắt của Timer0. Cờ ngắt này phải được xóa bằng chương trình trước khi bộ
đếm bắt đầu thực hiện lại quá trình đếm. Ngắt Timer0 không thể “đánh thức” vi
điều khiển từ chế độ sleep. Bộ chia tần số (prescaler) được chia sẻ giữa Timer0 và
WDT (Watchdog Timer). Điều đó có nghĩa là nếu prescaler được sử dụng cho
Timer0 thì WDT sẽ không có được hỗ trợ của prescaler và ngược lại. Prescaler
được điều khiển bởi thanh ghi OPTION_REG. Bit PSA (OPTION_REG<3>) xác

định đối tượng tác động của prescaler. Các bit PS2:PS0 (OPTION_REG<2:0>)
xác định tỉ số chia tần số của prescaler. Xem lại thanh ghi OPTION_REG để xác
định lại một cách chi tiết về các bit điều khiển trên. Các lệnh tác động lên giá trị
thanh ghi TMR0 sẽ xóa chế độ hoạt động của prescaler.

5

Khi đối tượng tác động là Timer0, tác động lên giá trị thanh ghi TMR0 sẽ xóa
prescaler nhưng không làm thay đổi đối tượng tác động của prescaler.

6

Khi đối tượng tác động là WDT, lệnh CLRWDT sẽ xóa prescaler, đồng thời
prescaler sẽ ngưng tác vụ hỗ trợ cho WDT. Các thanh ghi điều khiển liên quan
đến Timer0 bao gồm: TMR0 (địa chỉ 01h, 101h): chứa giá trị đếm của Timer0.

7

INTCON (địa chỉ 0Bh, 8Bh, 10Bh, 18Bh): cho phép ngắt hoạt động (GIE và
PEIE). OPTION_REG (địa chỉ 81h, 181h): điều khiển prescaler.

*TIMER 1.
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>).

GVHD : Nguyễn Trọng Khanh


- 24-

Nhóm 20


Đồ án – Quang báo sử dụng led ma trận
2

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).

3

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>).
Sơ đồ khối của Timer1:

Hình 1.9 Sơ đồ khối của Timer1.
Ngoài ra Timer1 còn có chức năng reset input bên trong được điều khiển bởi một
trong hai khối CCP (Capture/Compare/PWM). Khi bit T1OSCEN T1CON<3>) được set,
Timer1 sẽ lấy xung clock từ hai chân C1/T1OSI/CCP2 và RC0/T1OSO/T1CKI làm xung
đếm. Timer1 sẽ bắt đầu đếm sau cạnh xuống đầu tiên của xung ngõ vào. Khi đó
PORTC sẽ bỏ qua sự tác động của hai bit TRISC<1:0> và PORTC<2:1> được gán giá trị
0. Khi clear bit T1OSCEN Timer1 sẽ lấy xung đếm từ oscillator hoặc từ chân
RC0/T1OSO/T1CKI. Timer1 có hai chế độ đếm là đồng bộ (Synchronous) và bất đồng
bộ (Asynchronous). Chế độ đếm được quyết định bởi bit điều khiển (T1CON<2>). Khi
GVHD : Nguyễn Trọng Khanh


- 25-

Nhóm 20


×