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

Thiết kế và chế tạo 8 mô hình thực hành môn vi điều khiển sử dụng vi điều khiển pic 18f4520 cho viện kỹ thuật – kinh tế biể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 (2.85 MB, 33 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC BÀ RỊA-VŨNG TÀU
--------

ĐỀ TÀI NGHIÊN CỨU KHOA HỌC HỢP TÁC
Co-operative research project between BVU and La Croix Rouge
TÊN ĐỀ TÀI:

Thiết kế và chế tạo 8 mô hình thực hành môn vi điều khiển
sử dụng vi điều khiển pic 18f4520 cho viện kỹ thuật – kinh
tế biển
Trình độ đào tạo: Chương trình trao đổi sinh viên với trường
La Croix Rouge in Brest (Pháp)
Giảng viên hướng dẫn: Ts. LÊ NGỌC TRÂN
Sinh viên thực hiện: Grégory LEROY
Lớp
: Digital System
Niên khóa
: 2016-2018

Bà Rịa-Vũng Tàu, năm 2018


[Date]

INTERNSHIP REPORT

Grégory LEROY

2



TABLE OF CONTENTS

PERSONAL INFORMATION………………………………..page 3
THANKS………………………………………………………page 4
I. INTRODUCTION………………………………………….. page 5
II. DESIGN OF ELECTRICAL BOARD……………………...page 7
1. Introduction of microprocessor PIC………………….......page 7
2. Design of PIC board by EAGLE software………………page 10
III. IMPLEMENTATION……………………………………..page 27
VI. CONCLUSION……………………………………………page 31
REFERENCE

3


PERSONAL INFORMATION
First name : Grégory
Name : LEROY
Phone number : +33 7 82 37 90 78
Email :
School: La Croix Rouge La Salle, 2 rue Mirabeau Brest, 29200, France
I write this information if you want contact me.

4


THANKS
I thank Mister Vo and Mrs Jézéquel who helped me find this internship.
I also thank the Vietnamese students who welcomed me and helped me.

I thank my tutor M.TRAN who guided me and taught me a lot of new interesting
things.
I thank Mrs. Phuong who helped me in the daily life.
I thank and I am extremely grateful to my guide who allowed me to visit and
discover great unforgettable places of Vung tau.

5


I. GIỚI THIỆU
Ngày nay, những ứng dụng của Vi điều khiển đã đi sâu vào đời sống sinh
hoạt và sản xuất của con người. Thực tế hiện nay là hầu hết các thiết bị điện dân
dụng hiện nay đều có sự góp mặt của Vi Điều Khiển và vi xử lí . Ứng dụng vi
điều khiển trong thiết kế hệ thống làm giảm chi phí thiết kế và hạ giá thành sản
phẩm đồng thời nâng cao tính ổn định của thiết bị và hệ thống.Trên thị trường có
rất nhiều họ vi điều khiển: họ 4520 của Intel, 68HC11 của Motorola, Z80 của
hãng Zilog, PIC của hãng Microchip, H8 của Hitachi,vv…
Việc phát triển ứng dụng các hệ vi xử lý đòi hỏi những hiểu biết cả về phần
cứng cũng như phần mềm, nhưng cũng chính vì vậy mà các hệ vi xử lý được sử
dụng để giải quyết những bài toán rất khác nhau. Tính đa dạng của các ứng dụng
phụ thuộc vào việc lựa chọn các hệ vi xử lý cụ thể cũng như vào kỹ thuật lập
trình. Ngày nay các bộ vi xử lý có mặt trong rất nhiều thiết bị điện tử hiện đại: từ
đầu đĩa CD, máy thu hình, máy ghi hình, dàn âm thanh HiFi, bộ điều khiển lò
sưởi cho đến các thiết bị điều khiển dùng trong công nghiệp.
Lĩnh vực ứng dụng của các hệ vi xử lý cũng rất rộng lớn: từ nguyên cứu
khoa học, truyền dữ liệu, đến công nghiệp, năng lượng, giao thông và y tế…
Tùy theo kinh nghiệm và mức độ thơng thạo mà chúng ta có thể sử dụng các
ngơn ngữ khác ngoài hợp ngữ như: C, C++, Visual basic để có những chương
trình chất lượng cao hơn.
Từ các thơng tin trên các diễn đàn Internet và các trung tâm học tập thực

hành, cho thấy nhu cầu học tập và nghiên cứu cũng như tự mài mị tìm hiểu về
nhiều lĩnh vực trong ngành điện tử nói chung, tự động hóa nói riêng là rất cao.
Trong nhiều lĩnh vực được quan tâm, có một lĩnh vực về vi điều khiển được
quan tâm rất nhiều hiện nay đó là vi điều khiển PIC. Việc tìm hiểu và ứng dụng
hết khả năng của nhiều loại PIC là cả một quá trình dài lý thú và hữu ích, vì sự
thuận tiện, tính gọn, khả năng phát triển cũng như sự đa dạng các dịng sản
phẩm phù hợp nhiều quy mơ ứng dụng của nó.
6


Một lĩnh vực khác được quan tâm đông đảo trên các diễn đàn học tập
ngành cơ khí – cơ điện tử, nhưng chưa có một tài liệu chính thống phổ biến
hướng dẫn hay cung cấp thơng tin về nó, cũng như chưa được giảng dạy ở nhiều
trung tâm đó là ứng dụng PIC 18F4520 để truy xuất tín hiệu cảm biến nhiệt độ
LM35 lên màn hình LCD và thể hiện một sự linh hoạt mà trong thực tế rất phù
hợp với nhu cầu giám sát chất lượng nước đa dạng trong các hệ thống từ công
nghiệp cho đến dân dụng. Thuận tiện cho người vận hành trình bày một cách
sinh động hơn.
Lựa chọn PIC trong đề tài này là một bước đi phù hợp với những yêu cầu
giới hạn cần có của một đồ án vi điều khiển cũng như đáp ứng những nhu cầu
ứng dụng thực tế trong các lĩnh vực của ngành cơ khí – cơ điện tử đã theo học.
Tuy đã có nhiều cố gắng nhưng do vốn kiến thức còn hạn chế cũng như thời
gian còn hạng chế nên sẽ khơng tránh khỏi những sai sót và khuyết điểm trong
qúa trình tính tốn cũng như thi cơng cơng mơ hình, rất mong được sự thơng
cảm và góp ý kiến của qúi thầy cơ cũng như các bạn sinh viên.
Khoa cơ khí trường Đại học Bà Rịa- Vũng Tàu được thành lập từ năm 2014
gồm 3 chuyên ngành:


Cơ khí chế tạo máy




Cơ khí ơ tơ



Cơ điện tử
Trong rất nhiều mơn học trong ngành Cơ khí thì mơn học vi điều khiển

không thể thiếu được trong thời đại của cuộc cách mạng lần thứ 4, tiếp cận môn
học này ngồi vấn đề học ngơn ngữ lập trình C++ sinh viên còn phải thiết kế
mạch phần cứng. Tuy nhiên trong điều kiện nhà trường cịn nhiều khó khăn chưa
đầu tư phịng thực hành vi điều khiển,do đó trong đợt thực tập này đề tài của tôi
là nghiên cứu, thiết kế và xây dựng 8 kit thực hành môn vi điều khiển PIC phục
vụ đào tạo thực hành môn học vi điều khiển cho chuyên ngành cơ điện tử trường
ĐH Bà Rịa – Vũng Tàu.

7


II. THIẾT KẾ MẠCH VI ĐIỀU KHIỂN
II.1. Giới thiệu về vi điều khiển PIC
PIC (Programmable Interlligent Computer) là một sản phẩm của hãng
General Intruments đặt cho dòng sản phẩm đầu tiên của họ là PIC 1605. Vào
thập kỷ 70 của thế kỷ 20, General Intruments và Honeywell kết hợp sản xuất ra
bộ vi xử lý 16 bit CP1600. Đây là bộ vi xử lý khá mạnh vào thời điểm đó nhưng
lại hạn chế về hoạt động vào/ra. PIC 1650 được sản xuất để hỗ trợ vi xử lý CP
1600 trong các máy tính sử dụng bộ vi xử lý này. PIC 1650 hoạt động với tập
lệnh đơn giản nằm trong ROM. Vào thời điểm đó chưa có khái niệm về

RISC(Reduced Intructions Set Code), tuy nhiên PIC 1650 thực sự là một bộ vi
điều khiển được thiết kế theo kiểu kiến trúc RISC. Tập lệnh của PIC 1650 vơi
khoảng 30 lệnh và độ dài của mỗi lệnh là 14 bit. Mỗi lệnh được PIC 1650 thực
hiện trong 1 chu kỳ máy(4 chu kỳ của bộ dao động). Năm 1985 General
Intruments bán bộ phận sản xuất vi điện tử của họ và chủ sở hữu mới hủy bỏ hầu
hết các dự án liên quan( do các dự án lúc trước đó đã lỗi thời). Năm 1989
Microchip Technology tiếp tục phát triển PIC, bắt đầu bằng việc thêm bộ nhớ
EEPROM để tạo thành một bộ điều khiển vào ra khả trình. Tiếp đến là tích hợp
các tính năng như ngắt, ADC( Analog Digital Convertr) … để tạo thành cá bộ vi
điều khiển( Micro Controller).
Đến năm 1992 Microchip Technology đã cho ra đời 6 loại chip với 3 dịng
khác nhau:


Dịng chip có độ dài mã lệnh bằng 12 bit gồm 4 chip PIC 15C5x. Các chip này có từ 12 đến 28 chân vào/ra.



Dịng chip độ dài mã lệnh băng 14 bit là PIC 16C71. Bộ vi điều khiển
này đã được tích hợp thêm hai tài ngun là ngắt ADC.



Dịng chip độ dài mã lệnh bằng 16 bit là PIC 17C41, tuy nhiên dòng chip
này không được chú trọng phát triển vào thời điểm đó.

Cùng thời gian này hàng loạt các cơng cụ hỗ trợ cũng được các công ty khác
nhau cho ra đời. Điển hình là PICMASTER emulator, PIC Pro II programmer và
8



cả trình dịch C( C Compiler). Các cơng cụ này cùng với việc thay bộ nhớ OTP
(one – time programmable parts) bằng bộ nhớ EEP (Electically Erasable Parts)
đã mang đến rắt nhiều tiện lợi cho người lập trình, ví dụ như: người lập trình có
thể nạp chương trình mà khơng cần gỡ chip ra khỏi mạch. PIC 16C84 là bộ vi
điều khiển đầu tiên có bộ nhớ kiểu EEP.
Khơng lâu sau đó Microchip Technology tiếp tục đưa vào bộ vi điều khiển
với mã lệnh dài 14 bit PIC16F877 tính năng gỡ rối (Flash debugging). Tính
năng này cho phép người lập trình có thể kiểm sốt từng thanh ghi, từng câu
lệnh trong chương trình. Nhờ những cải tiến liên tiếp, PIC16F87 trở thành bộ vi
điều khiển bán chạy nhất vào thời điểm đó( năm 1995 đến 1998).
Đến năm 2000, Microchip Technology tái phát triển lại dịng chip có độ dài
mã lệnh bằng 16bit đã có trước đó 8 năm. Đại diện cho dòng chip này là
PIC18F4520 với tốc độ mã lệnh bằng 16bit đã có trước đó 8 năm. Đại diện cho
dòng chip này là PIC18F452 với tốc độ , dung lượng bộ nhớ được cải thiện và
khá nhiều tính năng được bổ sung như các bộ định thời(timer), truyền thông nối
tiếp…Dòng vi điều khiển PIC 8 bit đã dẫn đầu số lượng bộ bán ra mỗi năm liên
tục từ năm 2002 đến nay.
Trước nhu cầu về tốc độ xử lý cũng như các tính năng đặc biệt khác,
Microchip Technology tiếp tục cho ra đời các dòng vi điều khiển tiên tiến hơn
như: PIC24, PIC33, dsPIC..
Ngày nay đã có đến hàng chục dòng PIC với hàng trăm loại chip khác nhau.
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ở đã 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...
Bộ vi xử lý có khả năng vượt bậc so với các hệ thống về khả năng tính
tốn, xử lý và thay đổi chương trình linh hoạt theo mục đích người dùng, đặc
biệt hiểu quả đối với các bài toán và hệ thống lớn. Tuy nhiên đối với các ứng
dụng nhỏ, tầm tính tốn khơng địi hỏi khả năng tính tốn lớn thì việc ứng dụng

9


vi xử lý cần cân nhắc. Bởi vì hệ thống dù lớn hay nhỏ, nếu dùng vi xử lý thì
cũng đòi hỏi các khối mạch điện giao tiếp phức tạp như nhau. Các khối này bao
gồm bộ nhớ để chứa dữ liệu và chương trình thực hiện, các mạch điện giao tiếp
ngoại vi để xuất nhập và điều khiển trở lại, các khối này cũng liên kết với vi xử
lý thì mới thực hiện được cơng việc. Để kết nối khối này đòi hỏi người thiết kế
phải hiểu biết tinh tường về các thành phần vi xử lý, bộ nhớ, các thiết bị ngoại
vi. Hệ thống được tao ra khá phức tạp, chiếm nhiều không gian, mạch in phức
tạp và vấn đề chính là trình độ người thiết kế, Kết quả là giá thành sản cuối cùng
rất cao, không phù hợp để áp dụng cho các hệ thống nhỏ.
Vì một số nhược điểm trên nên các nhà chế tạo đã tích hợp một ít bộ nhớ
và một số mạch giao tiếp ngoại vi cùng với vi xử lý vào IC duy nhất được gọi là
Microcontroller-Vi điều khiển.
Một số điểm khác nhau giữa vi xử lý và điều khiển:
✓ Về phần cứng: VXL cần được ghép thêm các thiết bị ngoại vi bên ngoài
như bộ nhớ, và các thiết bị ngoại vi khác,… Để có thể tạo thành một bản
mạch hồn chỉnh. Đối với VĐK thì bản thân nó đã là một hệ máy tính
hồn chỉnh với CPU, bộ nhớ, các mạch giao tiếp, các bộ định thời và
mạch điều khiển ngắt được tích hợp bên trong mạch.
✓ Về đắc trưng tập lênh: Do ứng dụng khác nhau nên các bộ VXL và VĐK
có những yêu cầu khác nhau đối với tập lênh của chúng. Tập lênh của các
VXL thường mạnh về các kiểu định địa chỉ với các lệnh cung cấp các
hoạt động trên các dữ liệu lớn như 1 byte,1/2 byte, word,… Ở các bộ
VĐK, các tập lệnh rất mạnh trong việc xử lý các kiểu dữ liệu nhỏ như bit
hoặc một vài bit.
✓ Do VDK cấu tạo về phần cứng và khả năng xử lý thấp hơn nhiều so với
VXL nên giá thành của VĐK cũng rẻ hơn nhiều. Tuy nhiên nó vẫn đủ khả
năng đáp ứng được tất cả các yêu cầu của người dùng.

Vi điều khiển được ứng dụng trong các dây chuyền tự động loại nhỏ, các
robot có chức năng đơn giản, trong máy giặt ôtô v.v..
10


II.2. Thiết kế mạch vi điều khiển trên phần mềm Eagle

Hình 1: Mạch vi điều khiển PIC 18F4520 thiết kế trên phần mềm EAGLE
* Các thành phần trong mạch thiết kế:
II.2.1. Vi điều khiển PIC 18F4520:


CPU: Tần số tối đa 40MHz, kiến trúc Havard, được sản xuất bằng công
nghệ nano Watt.





Bộ nhớ:


Bộ nhớ chương trình FLASH: 32K



RAM: 1536 bytes




Bộ nhớ dữ liệu EEPROM: 256 bytes

Cổng vào ra: A,B,C,D,E


Cổng A: RA0-RA7



Cổng B: RB0-RB7



Cổng C: RC0-RC7
11




Cổng D: RD0-RD7



Cổng E: RE0-RE3



Định thời/đếm: 4 bộ (Timer2: 8bit; Timer0,1,3: 16 bit)




PWM: 2 bộ (CCP1:RC2; CCP2:RC1)



Truyền thơng nối tiếp L2 module: MSSP và EUSART Module MSSP
gồm 2 module: SPI(Serial Peripheral Interface) và IC (Intergrated Circuit)



ADC: 13 kênh ADC với độ phân giải 10bit

Sơ đồ chân và sơ đồ khối của vi điều khiển PIC 18F4520 giới thiệu trên hình 2
và 3

Hình 1: Sơ đồ chân PIC 18F4520

12


Hình 3: Sơ đồ khối PIC 18F4520

13


Hình 4: PIC18F4520 I/O
Sau đây là giới thiệu cấu tạo chân loại 40 chân (40 Pin PDIP):
• Chân 1(MCLR /VPP/RE3) :
- MCLR là đầu vào Master Clear (reset) hoạt động ở mức thấp dể reset toàn bộ
thiết bị.

- VPP dùng để thay đổi điện áp đầu vào.
- RE3 đầu vào số.
Các chân thuộc cổng vào ra Port A
• Chân 2(RA0/AN0):với RA0 là cổng vào ra số, AN0 là đầu vào tương tự
Input0.
• Chân 3(RA1/AN1): RA1 là cổng vào ra số, AN1 là đầu vào tương tự Input1.
• Chân 4(RA2/AN2/VREF+): RA2 là cổng vào ra số, AN2 là đầu vào tương tự
Input2. VREF+ đầu vào tương tự chuyển đổi A/D điện áp tham chiếu(mức
thấp), còn CVREF là đầu ra tương tự để so sánh điện áp chuẩn.
• Chân 5(RA3/AN3/VREF-/CVREF ): RA3 là cổng vào ra số, AN3 là đầu vào
tương tự Input3. VREF- đầu vào tương tự chuyển đổi A/D điện áp tham
chiếu(mức cao).
14


• Chân 6(RA4/T0CKI/C1OUT): RA4 là đầu vào ra số,T0CKI dầu vào xung bên
ngoài của Timer0, C1OUT là đầu ra bộ so sánh 1.
• Chân 7(RA5/AN4/ SS /HLVDIN/C2OUT): trong đó RA5 là cổng vào ra só,
AN4 là đầu vào tương tự Input 4, SS chọn đầu vào phụ thuộc SPI, HLVDINđầu
vào tương tự để dò điện áp, C2OUT đầu ra bộ so sánh 2.
• Chân 13(OSC1/CLKI/RA7): với OSC1 là đầu vào bộ dao động thạch anh hoặc
là đầu vào nguồn xung từ bên ngoài, khi ta nối dây với các thiết bị tương tự thì
đầu vào này dạng ST( Schmitt Trigger input ưith CMOS levels). CLKI là đầu
vào CMOS cho nguồn xung bên ngồi và ln được ghép nối với chân OSC1.
Cịn RA7 là chân vào ra sử dụng chung .
• Chân 14(OSC2/CLKO/RA6): OSC2 là đầu ra bộ dao động thạch anh được nối
với thạch anh hoặc bộ công hưởng dể lựa chọn dạng bộ dao động thạch anh.
CLK0 có tần số bằng ¼ tần số của OSC1 đọ rộng chu kì lệnh, RA6 là đầu vào ra
chung. Các chân cổng vào ra hai chièu Port B. Port B có thể lập trình bằng phần
mềm khi cho kéo đầu vào bên trong yếu lên trên tồn bộ đầu vào.

• Chân 33(RB0/INT0/FLT0/AN12): Với RB0 là cổng vào ra số, INT0 là đầu vào
ngắt ngoài Interrup 0, FLT0 là đầu vào báo lỗi PWM được tăng cường CCP1,
AN12 đầu vào tương tự Input 12.
• Chân 34(RB1/INT1/AN10): RB1 là đầu vào ra số, INT1 đầu vào ngắt ngồi
Interrup1, AN10 đầu tương tự Input 10.
• Chân 35(RB2/INT2/AN8): RB2 là đầu vào ra số, INT2 đầu vào ngắt ngồi
Interrup2, AN8 đầu tương tự Input 8.
• Chân 36 (RB3/AN9/ccp2): RB3 là đầu vào ra số, AN9 đầu tương tự Input 9,
CCP2 ( Capture 2 input/Compare 2 output/PWM2 output.)
• Chân 37(RB4/KBI0/AN11):): RB4 là đầu vào ra số, KBI0 thay đổi mở ngắt,
AN11 đầu tương tự Input 9.
• Chân 38(RB5/KBI1/PGM): RB5 đầu vào ra số, KBI1 thay đổi mở ngắt, PGM
cho phép có thể lập trình ISCPTM ở điện áp thấp.
• Chân 39(RB6/KBI2/PGC): RB6 là đầu vào ra số, KBI2 thay đổi mở ngắt, PGC
15


chân dùng trong mạch chạy và xung lập trình ICSP.
• Chân 40(RB7/KBI3/PGD): RB7 đầu vào ra số, KBI3 thay đổi mở ngắt, PGD
chân dùng trong mạch chạy và xung lập trình ICSP. Các chân cơng Port C
• Chân 15(RC0/T1OSO/T13CKI):RC0 đầu vào ra số, T1OSO đầu ra bộ dao
động Timer1, T13CKI đầu vào xung bên ngồi Timer1/Timer3.
• Chân 16(RC1/T1OSI/CCP2): RC1 đầu vào ra số, T1OSI đầu vào bộ dao động
Timer1, CCP2(Capture 2 input/Compare 2 output/PWM2 output.).
• Chân 17(RC2/CCP1/P1A): RC2 lầ đầu vào ra số, CCP1(Capture1
input/Compare 1 output/PWM1 output.), P1A đầu ra tăng cường CCP1.
• Chân 18(RC3/SCK/SCL): RC3 là đầu vào ra số, SCK đầu vào ra đư chuỗi
xung vào ra cho SPI lựa chọn, SCL đầu vào ra đưa chuỗi xung vào ra cho
I2CTM lựa chọn.
• Chân 23(RC4/SDI/SDA): RC4 là đầu vào ra số, SDI đầu vào dữ liệu API,

SDA đầu vào ra dữ liệu cho I2C.
• Chân 24(RC5/SDO): RC5 đầu vào ra số, SDO đầu ra dữ liệu SPI.
• Chân 25(RC6/TX/CK): RC6 đầu vào ra số, TX đầu ra chuyển đổi dị bộ
EUSARRT, CK dầu vào ra xung đồng bộ EUSART.
• Chân 26(RC7/RX/DT): RC7 đầu vào ra số, RX đầu vào nhận dị bộ EUSART,
DT đầu vào ra dữ liệu đồng bộ EUSART. Các chân cổng Port D( Port D có thể
vào ra hai hướng hoặc cổng song song phụ thuộc(PSP) cho giao diên vi xử lý và
khi đó các đầu vào phải là TTL..
• Chân 19(RD0/PSP0): RD0 đầu vào ra số, PSP0 cổng dữ liệu song song phụ
thuộc.
• Chân 20(RD1/PSP1): RD1 đầu vào ra số, PSP1cổng dữ liệu song song phụ
thuộc
• Chân 21(RD2/PSP2): RD2đầu vào ra số, PSP2 cổng dữ liệu song song phụ
thuộc
• Chân 22(RD3/PSP3): RD3 đầu vào ra số, PSP3 cổng dữ liệu song song phụ
thuộc
16


• Chân 27(RD4/PSP4): RD4 đầu vào ra số, PSP4 cổng dữ liệu song song phụ
thuộc
• Chân 28(RD5/PSP5/P1B): RD5 đầu vào ra số, PSP5 cổng dữ liệu song song
phụ thuộc, P1B đầu ra được tăng cường CCP1.
• Chân 29(RD6/PSP6/P1C): RD6 đầu vào ra số, PSP6 cổng dữ liệu song song
phụ thuộc, P1C đầu ra được tăng cường CCP1.
• Chân 30(RD7/PSP7/P1D): RD7 đầu vào ra số, PSP7 cổng dữ liệu song song
phụ thuộc, P1D đầu ra được tăng cường CCP1. Các chân cổng Port E
• Chân 8(RE0/ RD/AN5): RE0 đầu vào ra số, RD đầu vào điều khiển đọc cho
cổng PSP, AN5 đầu vào tương tự Input5.
• Chân 9(RE1/WR /AN6): RE1 đầu vào ra số, WR đầu vào điều khiển viết dữ

liệu cổng PSP, AN6 đầu vào tương tự Input6.
• Chân 10(RE2/CS /AN7): RE2 đầu vào ra số, CS điều khiển chọn Chip cho
cổng PSP, AN7 đầu vào tương tự Input7.
- Đầu RE3 nằm ở chân 1
Các chân khác
• Chân 12,31(VSS): nối đất chuẩn cho I/O và logic.
• Chân 11,32(VDD): cungcấp nguồn dương cho I/O và logic.
Loại 44 chân có thêm một số chân phụ khác khi cần thiết ta có thể dễ dàng tra
trong DataSheet. Chi tiết hơn chúng ta có thể thấy qua sơ đồ khối của
Pic18F4420/4520 trong tài liệu do microchip cung cấp sẽ có hồn tồn đầy đủ
thơng tin. đặc điểm cấu tạo.
II.2.2. Màn hình lcd
II.2.2.1. Phân loại LCD
Có thể chia các module LCD làm hai loại chính:
✓ Loại hiện thị ký tự (character LCD) gồm có các kích cỡ 16x1( 16 ký tự 1
dịng), 16x2( 16 ký tự 2 dòng); 16x4 ( 16 ký tự 4 dòng); 20x1 (20 ký tự 1
dòng) v.v..
17


Hình 2: Màn hình LCD 16x2
✓ Loại hiển thị đồ họa (graphic LCD) đen trắng hoặc màu, gồm các kích cỡ
1,47 inch (128x 128 điểm ảnh); 1.8 inch (128x 160 điểm ảnh ); 2.4 inch
(240x 320 điểm ảnh) v.v..

Hình 3:Graphic LCD

Hình 4:Màn hình LCD Mơ phỏng trong Proteus

18



II.2.2.2. Mô tả về các chân của màn hình LCD 16x2
Chân

Ký hiệu

I/O

Mô tả

1

VSS

-

Đất

2

VCC

-

Nguồn +5v

3

VEE


-

Cấp nguồn điều khiển
phản

4

RS

I

RS =0 Chọn thanh ghi
lệnh
RS =1 chọn thanh dữ
liệu

5

R/W

I

R/W =1 Đọc dữ liệu.
R/W =0 ghi dữ liệu

6

E


I/O

Cho phép

7

DB0

I/O

Các bit dữ liệu

8

DB1

I/O

Các bit dữ liệu

9

DB2

I/O

Các bit dữ liệu

10


DB3

I/O

Các bit dữ liệu

11

DB4

I/O

Các bit dữ liệu

12

DB5

I/O

Các bit dữ liệu

13

DB6

I/O

Các bit dữ liệu


14

DB7

I/O

Các bit dữ liệu

Chức năng của các chân:
- Chân Vcc: cấp nguồn dương
- Chân Vss: Cấp nguồn âm
- Chân VEE: Điều khiển độ tương phản của LCD
- Chân chọn thanh ghi RS: có 2 thanh ghi rất quan trọng trong LCD, Chân
RS( register select) được dùng để chọn thanh ghi như sau: Nếu RS-1 thì thanh
ghi dữ liệu được chọn cho phép người dùng gửi dữ liệu cần hiện thị về LCD;
19


nếu RS= 0 thì thanh ghi mã lệnh được chọn để cho phép người dùng gửi một
lệnh chẳng hạn như lệnh xóa màn hình, đưa con trỏ chuột về đầu dòng…
- Chân đọc/ ghi (R/W) : đầu vào đọc/ ghi cho phép người dùng ghi thông
tin lên LCD khi R/W =0 hoặc đọc thơng tin từ nó khi R/W=1
- Chân cho phép E(Enable): Chân cho phép E sử dụng bởi LCD để chốt dữ
liệu của nó. Khi dữ liệu được cấp đến chân dữ liệu thì một xung mức cao xuống
thấp phải được áp đến chân này để LCD chốt dữ liệu trên các chân dữ liệu.
Xung này phải rộng tối thiểu 450ns.
- Chân D0 => D7: Đây là 8 chân dữ liệu 8bit, được dùng để gửi thông điệp
lên LCD hoặc đọc nội dung các thanh ghi trong LCD. Để hiện thị các chữ cái và
các con số, chúng ta gửi mã ASCII của các chữ cái tù A đến Z, a đến z và các
con số từ 0 đến 9 đến các chân này khi bật RS=1. Cũng có các mã lệnh có thể

gửi đến LCD để xóa màn hình hoặc đưa con trỏ về đầu dịng hoặc nhấp nháy
con trỏ.
- Chú ý: Chúng ta cũng được sử dụng RS= 0 để xem LCD có sẵn sàng
nhận thơng tin mới. Lưu ý chúng ta nên kiểm tra cờ bân trước khi bất kì dữ liệu
nào lên LCD.
II.2.3. Encoder switch
Encoder là loại cảm biến vị trí được sử dụng để xác định vị trí góc của trục
quay. Nó tạo ra tín hiệu điện, tương tự hoặc kỹ thuật số, theo chuyển động quay.

Hình 5: Encoder Switch
Có nhiều loại Encoder khác nhau được phân loại theo Tín hiệu đầu ra hoặc
Cơng nghệ cảm biến. Bộ mã hóa quay đặc biệt mà chúng ta sẽ sử dụng trong
20


hướng dẫn này là một bộ encoder tương đối và đó là bộ cảm biến vị trí đơn giản
nhất để đo vòng quay.
Encoder này còn được gọi là bộ mã hóa cầu phương hoặc bộ mã hóa quay
tương đối và đầu ra của nó là một loạt các xung sóng vng.

Hình 6: Sơ đồ khối encoder
a. Encoder là gì ?
Encoder là một loại cảm biến vị trí, đưa ra thơng tin về góc quay dưới dạng
số mà khơng cần bộ ADC.
Khái niêm Encoder là đo lường dịch chuyển thẳng hoặc góc. Đồng thời
chuyển đổi vị trí góc hoặc vị trí thẳng thành tín hiệu nhị phân và nhờ tín hiệu
này có thể xác định được vị trí trục hoặc bàn máy. Tín hiệu ra của Encoder cho
dưới dạng tín hiệu số. Encoder được sử dụng làm phần tử chuyển đổi tín hiệu
phản hồi trong các máy CNC và robot. Trong các công cụ điều khiển số, chuyển
động của bàn máy được dẫn động từ một động cơ qua vít me đai óc bi tới bàn

máy. Vị trí của bàn máy có thể xác định được nhờ encoder lắp trong cụm chuyền
dẫn
b. Cấu tạo của encoder
- Đĩa quay được khoét lỗ gắn vào trục động cơ .
- Một đèn led làm nguồn phát sáng và 1 mắt thu quang điện được bố trí thẳng
hàng.
- Mạch khuếch đại tín hiệu
21


Hình 7:Cấu tạo Encoder
c. Ngun lý hoạt động

Hình 8:Mơ Phỏng Encoder
Chúng ta hãy xem xét kỹ hơn bộ mã hóa và xem nguyên tắc làm việc của
nó. Đây là cách các xung sóng vng được tạo ra: Bộ mã hóa có đĩa với các
vùng tiếp xúc cách đều nhau được nối với chân C chung và hai chân tiếp xúc
riêng biệt khác A và B, như minh họa bên dưới.
Khi đĩa sẽ bắt đầu xoay từng bước, các chân A và B sẽ bắt đầu tiếp xúc với
chốt chung và hai tín hiệu đầu ra sóng vng sẽ được tạo ra tương ứng.
Bất kỳ đầu ra nào trong hai đầu ra đều có thể được sử dụng để xác định vị trí
xoay nếu chúng ta chỉ đếm các xung của tín hiệu. Tuy nhiên, nếu chúng ta muốn
xác định hướng xoay là tốt, chúng ta cần xem xét cả hai tín hiệu cùng một lúc.

22


Chúng ta có thể nhận thấy rằng hai tín hiệu đầu ra được di dời ở 90 độ ra
khỏi pha từ nhau. Nếu bộ mã hóa quay theo chiều kim đồng hồ thì đầu ra A sẽ ở
phía trước đầu ra B.


Hình 9:Xung Encoder
Như vậy là encoder sẽ tạo ra các tín hiệu xung vng và các tín hiệu xung
vng này được cắt từ ánh sáng xuyên qua lỗ. Nên tần số của xung đầu ra sẽ phụ
thuộc vào tốc độ quay của tấm trịn đó.

Hình 10:Biểu đồ dang xung Encoder
d. Phân loại Encoder:
Encoder được chia làm 2 loại: Encoder tuyệt đối (Absolute encoder) và Encoder
tương đối (Incremental encoder).
• Encoder tuyệt đối: được gọi như vậy bởi vì tín hiệu trả về từ encoder cho
biết chính xác vị trí của encoder mà người dùng khơng cần sử lí gì thêm.
• Encoder tương đối : là encoder chỉ có 1,2 hoặc tối đa 3 vịng lỗ. Encoder
tương đối thường có thêm một lỗ định vị ( channel Z)
23


e. Bảng mơ tả các chân của Encoder switch:

Hình 11:Encoder Switch
Chân

Ký hiệu

I/O

Mô tả

1


GND

-

Nối đất

2

VSS

-

Nối nguồn 5v

3

SW

O

Đầu ra của nút
bên trong

4

DT

O

Output A hoặc

Data

5

CLK

O

Output B hoặc
Clock

* Tính năng và thơng số kỹ thuật:


Xoay 360º.



20 bước hoặc chu kỳ quay.



Kiểu Encoder tương đối



Có thể làm việc trên điện áp thấp




Nhiệt độ hoạt động tối đa: 0 ° C đến + 80 ° C



Giao diện dễ dàng



Tuổi thọ cao.

24


II.2.4. Cảm biến nhiệt độ LM35

Hình 12:Cảm biến nhiệt độ LM35
Cảm biến LM35 là bộ cảm biến nhiệt mạch tích hợp chính xác cao mà điện
áp đầu ra của nó tỷ lệ tuyến tính với nhiệt độ theo thang độ Celsius. Chúng cũng
khơng u cầu cân chỉnh ngồi vì vốn chúng đã được cân chỉnh. Cảm biến
LM35 hoạt động bằng cách cho ra một giá trị hiệu điện thế nhất định tại chân
Vout (chân giữa) ứng với mỗi mức nhiệt độ.
Các thơng số kỹ tḥt


Điện áp đầu vào từ 4V đến 30V



Điện áp ra: -1V đến 6V




Cơng suất tiêu thụ l 60àA

ã

phõn gii in ỏp u ra l 10mV/C

ã

chính xác cao ở 25ºC là 0.5ºC



Trở kháng đầu ra thấp 0.1 cho 1mA tải



Độ chính xác thực tế: 1/4°C ở nhiệt độ phịng và 3/4°C ngồi khoảng 55°C tới 150°C

Hình 13:Các chân của LM35
25


×