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

MẠCH GIAO TIẾP GIỮA PHÍM NHẤN, LED đơn và VI điều KHIỂN PIC (có code và sơ đồ mạch)

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 (801.52 KB, 31 trang )

Trang 1/31

ĐỒ ÁN 1

MẠCH GIAO TIẾP GIỮA PHÍM NHẤN,
LED ĐƠN VÀ VI ĐIỀU KHIỂN PIC

Mạch giao tiếp giữa phím nhấn,
led đơn và vi điều khiển PIC


Trang 2/31

MỤC LỤC
LỜI CẢM ƠN.....................................................................................................................2
DANH MỤC CÁC HÌNH VẼ..............................................................................................5
LỜI MỞ ĐẦU.....................................................................................................................5
CHƯƠNG I: GIỚI THIỆU ĐỀ TÀI.................................................................................7
1.1 Đặt vấn đề:........................................................................................................................... 7
1.2 Yêu cầu của mạch:.............................................................................................................7
1.3 Chức năng hoạt động của mạch:.................................................................................8
CHƯƠNG II: GIỚI THIỆU PHẦN CỨNG.....................................................................9
2.1 Sơ đồ nguyên lý hoạt động của mạch:......................................................................9
2.2 Khối nguồn:........................................................................................................................10
2.3 Khối vi điều khiển:.........................................................................................................11
2.3.1 Đặc điểm PIC 16F877A:........................................................................................11
2.3.2 Sơ đồ khối vi điều khiển PIC 16F877A:.........................................................13
2.3.3 Các cổng ra vào của PIC 16F877A:....................................................................13
2.3.4 Tổ chức bộ nhớ:.......................................................................................................14
2.4 Khối led đơn:.....................................................................................................................17
2.5 Khối phim nhấn:..............................................................................................................18


CHƯƠNG III: THIẾT KẾ VÀ THI CÔNG MẠCH......................................................20
3.1 Lưu đồ giải thuật:...........................................................................................................20
3.2 Sơ đồ nguyên lý:...............................................................................................................21
3.3 Sơ đồ mạch in:..................................................................................................................22
3.4 Mạch thực tế và mô phỏng thực nghiệm:.............................................................23
CHƯƠNG IV: NHẬN XÉT VÀ KẾT LUẬN.................................................................24
4.1 Ưu điểm và nhược điểm của mạch:.......................................................................24
4.2 Khả năng ứng dụng và phát triển:...........................................................................24
TÀI LIỆU THAM KHẢO.................................................................................................25
PHỤ LỤC ( CODE ).........................................................................................................26
Mạch giao tiếp giữa phím nhấn,
led đơn và vi điều khiển PIC


Trang 3/31

DANH MỤC CÁC HÌNH VẼ
Hình 1.1 Một biển quảng cáo led……………………………………………………7
Hình 2.1 Sơ đồ khối hệ thống…………………………………………………….....9
Hình 2.2 Sơ đồ nguyên lý khối nguồn……………………………………………..10
Hình 2.3 Khối vi điều khiển………………………………………………………..11
Hình 2.4 Sơ đồ chân của PIC 16F877A và hình dạng trong thực tế……………….12
Hình 2.5 Sơ đồ khối vi điều khiển PIC16F877A…………………………………..13
Hình 2.6 Sơ đồ bộ nhớ dữ liệu PIC16F877A………………………………………16
Hình 2.7 Khối led đơn……………………………………………………………...17
Hình 2.8 Led đơn thực tế sử dụng trong mạch……………………………………..18
Hình 2.9 Khối phím nhấn gồm 8 phím nhấn……………………………………….18
Hình 2.10 Nút nhấn thực tế sử dụng trong mạch…………………………………..19
Hình 3.1 Lưu đồ giải thuật…………………………………………………………20
Hình 3.2 Sơ đồ nguyên lý của mạch giao tiếp giữa phím nhấn, led đơn và vi

điều khiển PIC…………………………………………………………………………...21
Hình 3.3 Sơ đồ mạch in mạch giao tiếp giữa phím nhấn, led đơn và vi đi ều
khiển PIC…………………………………………………………………………………22
Hình 3.4 Sơ đồ mạch in mạch nguồn………………………………………………22

Mạch giao tiếp giữa phím nhấn,
led đơn và vi điều khiển PIC


Trang 4/31

Hình 3.5 Mạch giao tiếp giữa phím nhấn, led đơn và vi điều khiển
PIC…………..23

LỜI MỞ ĐẦU
Khoa học và công nghệ luôn phát triển không ngừng ngh ỉ, nh ờ đó cu ộc
sống con người ngày càng trở nên tiện nghi, hiện đại hơn. Đi ều này đem l ại
cho ta những giải pháp tốt hơn trong việc xử lý những v ấn đ ề có th ể rất ph ức
tạp gặp phải trong cuộc sống. Việc ứng dụng các thành tựu khoa học kỹ thu ật
hiện đại ngày càng nhiều trong các lĩnh vực đã và đang giúp con ng ười thay
thế dần những phương thức thủ công, lạc hậu.
Cùng với sự phát triển chung này, nước ta cũng đang mạnh mẽ ti ến
hành công cuộc công nghiệp hóa và hiện đại hóa đất nước đ ể b ắt k ịp s ự phát
triển của các nước trong khu vực và trên thế giới. Trong đó lĩnh vực đi ện tử
đang ngày càng đóng vai trò quan trọng trong vi ệc phát tri ển kinh tế và đ ời
sống con người. Sự phổ biến của nó đóng góp không nhỏ tới sự phát tri ển của
tất cả các ngành sản xuất, giải trí, ...trong những năm gần đây đ ặc bi ệt trong
lĩnh vực giải trí, quảng cáo đã có sự phát tri ển mạnh mẽ v ới nhi ều hình th ức,
phương pháp tiếp cận, quảng bá và chia sẻ thông tin hiện đại và toàn di ện
hơn. Với các biển quảng cáo sử dụng các đèn led đủ màu sắc.

Với sự đam mê, yêu thích của mình trong lĩnh vực này cũng như để tìm
hiểu thêm về vi điều khiển PIC. Em đã quyết định chọn đề tài “M ạch giao ti ếp
giữa phím nhấn, led đơn và vi điều khi ển pic” làm đề tài đồ án 1. Trong th ời
gian ngắn thực hiện đề tài với kiến thức còn nhiều hạn chế, nên trong quy ển
báo cáo đồ án này không tránh khỏi thiếu sót. Em mong nhận được nhận xét

Mạch giao tiếp giữa phím nhấn,
led đơn và vi điều khiển PIC


Trang 5/31

và góp ý của các thầy cô để đ ề tài của em có th ể hoàn thi ện hơn cũng nh ư m ở
rộng đề tài sau này.
TP. Hồ Chí Minh, ngày 07 tháng 11 năm 2017
Tác giả
Ngô Văn Hoàng Khánh

CHƯƠNG I: GIỚI THIỆU ĐỀ TÀI
1.1Đặt vấn đề:
Mỗi cửa hiệu, cửa hàng đều cần có biển hi ệu để thu hút khách hàng và cho
khách hàng biết mình bán sản phẩm gì. Nhưng vào buổi tối thì bi ển hi ệu
thông thường không thể nhìn thấy rõ được. Lúc này biển hiệu led hay bi ển
quảng cáo led sẽ phát huy tác dụng. Biển quảng cáo led được s ử dụng khá ph ổ
biến tại các thành phố, nơi đông đúc. Các biển quảng cáo này th ường x ử dụng
rất nhiều led. Các led được sắp xếp theo các chữ hay là các hình ảnh, v ật d ụng
cần quảng cáo của các cửa hiệu. Khi trời tối các bi ển qu ảng cáo này sẽ sáng
rực và chớp tắt đủ màu liên tục rất đẹp, thu hút sự chú ý của mọi người.

Mạch giao tiếp giữa phím nhấn,

led đơn và vi điều khiển PIC


Trang 6/31

Hình 1.1 Một biển quảng cáo led.
Trong đồ án 1 này do mới tìm hiểu và ứng dụng sử dụng PIC. Nên tôi ch ỉ s ử
dụng 8 led đơn và 8 phím nhấn để điều khiển các led này ch ạy một s ố hi ệu
ứng đơn giản.
1.2Yêu cầu của mạch:
 Mạch vận hành ổn định, tuổi thọ cao.
 Mạch nhỏ gọn, đơn giản, dễ sử dụng.
 Có nhiều hiệu ứng led và có thể chuyển đổi giữa các hiệu ứng này.
 Điện áp hoạt động của mạch không gây nguy hiểm đến người sử dụng.
1.3Chức năng hoạt động của mạch:
Mạch gồm 8 led đơn và 8 nút nhấn. Sẽ có bảy hi ệu ứng sáng led khác nhau
tương đương với bảy phím nhấn và nút nhấn thứ tám còn l ại đ ể tắt tất cả các
led. Khi nhấn một phím nhấn bất kỳ ngoài phím tắt thì 8 led sẽ sáng t ắt liên
tục không dừng theo một hiệu ứng tương ứng. Khi bấm phím nh ấn khác thì 8
led sẽ sáng tắt theo hiệu ứng khác tương ứng v ới phím nh ấn m ới này. Các led
sẽ sáng tắt liên tục cho đến khi ta nhấn phím tắt thì mới tắt.

Mạch giao tiếp giữa phím nhấn,
led đơn và vi điều khiển PIC


Trang 7/31

CHƯƠNG II: GIỚI THIỆU PHẦN CỨNG
2.1 Sơ đồ nguyên lý hoạt động của mạch:

KHỐI NGUỒN
DC

KHỐI VI ĐIỀU
KHIỂN PIC
16F877A

KHỐI PHÍM
NHẤN
Mạch giao tiếp giữa phím nhấn,
led đơn và vi điều khiển PIC

KHỐI LED ĐƠN


Trang 8/31

Hình 2.1 Sơ đồ khối hệ thống
.

2.2 Khối nguồn:

Hình 2.2 Sơ đồ nguyên lý khối nguồn.
Khối nguồn lấy nguồn 220 VAC, dùng biến áp hạ xuống còn 9 VAC, khi
đi qua cầu chỉnh lưu thành 9VDC. Sau đó qua IC 7805 ổn áp tạo ngu ồn 5VDC
ổn định cung cấp điện áp cho toàn mạch.
Các tụ C1, C2 có chức năng lọc nguồn. Còn tụ C3 giúp l ọc nhi ễu tần cao.
Các led D1, D2 dùng để báo hiệu.

Mạch giao tiếp giữa phím nhấn,

led đơn và vi điều khiển PIC


Trang 9/31

2.3 Khối vi điều khiển:

Hình 2.3 Khối vi điều khiển.
Khối vi điều khiển sử dụng vi điều khiển PIC 16F877A đóng vai trò r ất
quan trọng để điều khiển hệ thống. Nó bao gồm mạch tạo dao động th ạch
anh, mạch reset để reset hệ thống lại trạng thái ban đầu. Kh ối vi đi ều khi ển
sẽ được cấp nguồn bởi khối nguồn. Các chân của vi đi ều khi ển sẽ được k ết
nối với khối led đơn, khối phím nhấn.
2.3.1 Đặc điểm PIC 16F877A:
PIC 16F877A là vi điều khiển thuộc họ PIC 16FXXX 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.
Hoạt động với điện áp từ 2V đến 5,5V.
Tốc độ hoạt động tối đa cho phép là 20 MHz v ới một chu kì l ệnh là
200ns.

Mạch giao tiếp giữa phím nhấn,
led đơn và vi điều khiển PIC


Trang 10/31

Dung lượng bộ nhớ chương trình (flash) là 8Kx14 bit, bộ nhớ dữ li ệu
RAM là 368x8 byte và bộ nhớ dữ liệu EEPROM là 256x8 byte.
Bộ nhớ flash có khả năng ghi xóa được 100.000 lần. Bộ nhớ EEPROM có
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 và có thể tự lập trình lại được dưới sự đi ều khi ển của ph ần
mềm.
Số chân : 40 chân, 5 cổng ra vào là RA, RB, RC, RD, RE.

Hình 2.4 Sơ đồ chân của PIC 16F877A và hình dạng trong thực tế.

Mạch giao tiếp giữa phím nhấn,
led đơn và vi điều khiển PIC


Trang 11/31

2.3.2 Sơ đồ khối vi điều khiển PIC 16F877A:

Hình 2.5 Sơ đồ khối vi điều khiển PIC16F877A.

Mạch giao tiếp giữa phím nhấn,
led đơn và vi điều khiển PIC


Trang 12/31

2.3.3 Các cổng ra vào của PIC 16F877A:
Việc điều khiển các cổng ra vào của PIC dựa trên vi ệc điều khi ển các File
thanh ghi. Sau đây là đặc điểm các chân của cổng RB, RD đ ược s ừ d ụng trong
mạch này.
 PORTB và thanh ghi TRISB:
PORTB (RPB) gồm có 8 pin I/O, thanh ghi điều khiển xuất nhập tương ứng
là TRISB. Một số chân của PORTB còn được sử dụng cho 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 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. PORTB còn liên
quan đến ngắt ngoại vi và bộ Timer0.
Các thanh ghi SFR liên quan đến PORTB gồm có:
 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.
 PORTD và thanh ghi TRISD:
PORTD (RPD) gồm có 8 chân I/O, thanh ghi điều khi ển xu ất nhập tương
ứng là TRISD. Bên cạnh đó PORTD còn là cổng xuất dữ liệu của chu ẩn giao
tiếp PSP (Parallel Slave Port).
Các thanh ghi liên quan đến PORTD gồm có:
 Thanh ghi PORTD: chứa giá trị các pin trong PORTD.
 Thanh ghi TRISD: điều khiển xuất nhập.
 Thanh ghi TRISE: điều khiển xuất nhập PORTE và chuẩn giao tiếp PSP.
2.3.4 Tổ chức bộ nhớ:
Cấu trúc bộ nhớ của vi điều khiển PIC 16F877A bao gồm bộ nhớ ch ương
trình (Programmemory) và bộ nhớ dữ liệu (Data Memory).

Mạch giao tiếp giữa phím nhấn,
led đơn và vi điều khiển PIC


Trang 13/31

 Bộ nhớ chương trình:
Bộ nhớ chương trình của vi điều khiển PIC 16F877A 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ừ
page 0 đến page 3) .
Như vậy bộ nhớ chương trinh PIC 16F877A 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).
Để mã hóa được địa chỉ của 8K word bộ nhớ chương trình, bộ đếm
chương trình có dung lượng là 13 bit (PC<12:0>).
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ớ dữ liệu:
Bộ nhớ dữ liệu của PIC là bộ nhớ EEPROM được chia ra làm nhiều bank.
Đối với PIC 16F877A bộ nhớ dữ liệu được chia ra làm 4 bank. M ỗi bank có
dung lượng 128 byte, bao gồm các thanh ghi có ch ức năng đ ặc bi ệt SFG
(Special Function Register) nằm ở các 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 ỉ còn l ại trong
bank. Các thanh ghi SFR thường xuyên được sử dụng (ví dụ như thanh ghi
STATUS) sẽ được đặt ở tất cả các bank của bộ nhớ dữ li ệu giúp thu ận ti ện
trong quá trình truy xuất và làm giảm bớt lệnh của chương trình. S ơ đồ cụ th ể
của bộ nhớ dữ liệu PIC 16F877A như sau:

Mạch giao tiếp giữa phím nhấn,
led đơn và vi điều khiển PIC


Trang 14/31

Hình 2.6 Sơ đồ bộ nhớ dữ liệu PIC16F877A.

Mạch giao tiếp giữa phím nhấn,
led đơn và vi điều khiển PIC


Trang 15/31


2.4 Khối led đơn:

Hình 2.7 Khối led đơn.
Khối led đơn dùng 8 điện trờ 220 ohm và 8 led đơn. Các đi ện tr ở dùng
để hạn dòng qua led đơn, để dòng qua led chỉ khoảng 20 mA. Ở đây nối led
theo kiểu Cathode chung, nên các chân Cathode của các led được n ối chung l ại
với nhau và nối xuống max. Nếu nối led theo kiểu này thì muốn led sáng ta
phải xuất ra mức 1 thì led mới sáng được.

Mạch giao tiếp giữa phím nhấn,
led đơn và vi điều khiển PIC


Trang 16/31

Hình 2.8 Led đơn thực tế sử dụng trong mạch.
2.5 Khối phim nhấn:

Hình 2.9 Khối phím nhấn gồm 8 phím nhấn.
Thực hiện chức năng giao tiếp với vi điều khiển PIC 16F877A, dùng đ ể
điều khiển các hiệu ứng của 8 led đơn.
Sử dụng 8 phím nhấn để bật, tắt và chuyển các hiệu ứng trên 8 led đơn.
Nguyên lý hoạt động của việc quét phím: cho các chân n ối v ới PIC c ủa
phím nhấn bằng 1 chân còn lại của phím nhấn nối max. Bình th ưởng PIC sẽ
đọc giá trị 1 do chân nối PIC nối điện trở 10 kohm lên ngu ồn. Khi có phím
nhấn nào nhấn dòng sẽ nối tắt chạy xuống max do có điện tr ở 10 kohm ng ắt
dòng lên nguồn. Lúc này PIC sẽ đọc giá trị 0 ở chân này, từ đó sẽ xác nh ận được
phím nào nhấn để thực hiện các lệnh điều khiển led.
Mạch giao tiếp giữa phím nhấn,

led đơn và vi điều khiển PIC


Trang 17/31

Hình 2.10 Nút nhấn thực tế sử dụng trong mạch.

Mạch giao tiếp giữa phím nhấn,
led đơn và vi điều khiển PIC


Trang 18/31

CHƯƠNG III: THIẾT KẾ VÀ THI CÔNG MẠCH
3.1 Lưu đồ giải thuật:
Start

Khởi tạo các giá trị, quét phím nhấn

Xác nhận phím nhấn, xuất hiệu
ứng led tương ứng

Phím nhấn khác được nhấn

Xác nhận phím nhấn mới, xuất
hiệu ứng led tương ứng ( nếu
nhấn phím tắt thì tất cả led sẽ
tắ t )

End


Hình 3.1 Lưu đồ giải thuật.

Mạch giao tiếp giữa phím nhấn,
led đơn và vi điều khiển PIC


Trang 19/31

3.2 Sơ đồ nguyên lý:

Hình 3.2 Sơ đồ nguyên lý của mạch giao tiếp giữa phím nhấn, led đơn và vi
điều khiển PIC.

Mạch giao tiếp giữa phím nhấn,
led đơn và vi điều khiển PIC


Trang 20/31

3.3 Sơ đồ mạch in:

Hình 3.3 Sơ đồ mạch in mạch giao tiếp giữa phím nhấn, led đơn và vi đi ều
khiển PIC.

Hình 3.4 Sơ đồ mạch in mạch nguồn.

Mạch giao tiếp giữa phím nhấn,
led đơn và vi điều khiển PIC



Trang 21/31

3.4 Mạch thực tế và mô phỏng thực nghiệm:

Hình 3.5 Mạch giao tiếp giữa phím nhấn, led đơn và vi điều khiển PIC.

Mạch giao tiếp giữa phím nhấn,
led đơn và vi điều khiển PIC


Trang 22/31

CHƯƠNG IV: NHẬN XÉT VÀ KẾT LUẬN
4.1 Ưu điểm và nhược điểm của mạch:
Ưu điểm:





Mạch đơn giản, ít linh kiện, dễ sử dụng.
Có nhiều hiệu ứng nháy led.
Phím nhấn cơ khí linh hoạt, dễ sử dụng.
Có nhiều phím nhấn nên có thể chuyển hiệu ứng hay tắt h ết led d ễ

dàng.
 Mạch có thể sử dụng nguồn điện hay pin đều được.
Nhược điểm:
 Mạch sử dụng ít led.

 Tốc độ sử lý còn chậm khi chuyển hiệu ứng led do chương trình chưa
được tối ưu lắm.
 Kích thước mạch chưa được nhỏ gọn.
4.2 Khả năng ứng dụng và phát triển:
Vì chỉ sử dụng 8 led và 8 phím nhấn nên mạch không có nhiều hiệu ứng
và khi chạy hiệu ứng chưa được đẹp lắm. Với mạch này nếu sử dụng nhi ều
led hơn và sắp xếp các led theo các hình dạng khác nhau ta có th ể s ử d ụng làm
các biển quảng cáo. Khi trời tối các bi ển qu ảng cáo led v ới nhi ều màu s ắc s ặc
sỡ chớp tắt liên tục sẽ thu hút được sự chư ý của nhiều người.

Mạch giao tiếp giữa phím nhấn,
led đơn và vi điều khiển PIC


Trang 23/31

TÀI LIỆU THAM KHẢO
Giáo trình môn học điện tử 1, 2 của khoa Điện - Điện tử, Trường ĐH
Tôn Đức Thắng.
Một số tài liệu trên các trang web: picvietnam.com, codientu.org,
dientuvietnam.net, tailieu.vn…

Mạch giao tiếp giữa phím nhấn,
led đơn và vi điều khiển PIC


Trang 24/31

PHỤ LỤC ( CODE )
#include <16f877a.h>

#fuses HS,NOWDT,NOLVP,NOPUT,NODEBUG,NOBROWNOUT
#use delay(clock=20M)
#byte portb=0x06
#byte portd=0x08
#bit RD0=portd.0
#bit RD1=portd.1
#bit RD2=portd.2
#bit RD3=portd.3
#bit RD4=portd.4
#bit RD5=portd.5
#bit RD6=portd.6
#bit RD7=portd.7
int8 a=0;
int16 i;
void quetphim();
void quetphim()
{
portd=0xff;
if(RD0==0)
{
Mạch giao tiếp giữa phím nhấn,
led đơn và vi điều khiển PIC


Trang 25/31

a=1;
while(RD0==0){;}
}
if(RD1==0)

{
a=2;
while(RD1==0){;}
}
if(RD2==0)
{
a=3;
while(RD2==0){;}
}
if(RD3==0)
{
a=4;
while(RD3==0){;}
}
if(RD4==0)
{
a=5;
while(RD4==0){;}
}
if(RD5==0)
Mạch giao tiếp giữa phím nhấn,
led đơn và vi điều khiển PIC


×