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

VI DIEU KHIEN PIC

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 (9.75 MB, 229 trang )

TRƯỜNG ĐẠI HỌC BÁCH KHOA
KHOA CƠ KHÍ
BỘ MÔN CƠ ĐIỆN TỬ

KỸ THUẬT VI ĐIỀU KHIỂN
Firma convenzione
Giảng
viên: ĐặngFabbrica
Phước Vinh
Politecnico di Milano
e Veneranda
del Duomo
di Milano

Aula Magna – Rettorato

Mercoledì 27 maggio 2015


2

Nội dung
1. Giới thiệu chung về vi điều khiển PIC16F877A
 Trình biên dịch CCS
 Chương trình nạp PIC kit
 Phần mềm mô phỏng Proteus

2. Cấu trúc phần cứng

3. Tập lệnh, chỉ thị tiền xử lý
4. Bộ định thời


5. Hoạt động ngắt
6. Bộ chuyển đổi ADC
7. Giao tiếp nối tiếp
Đặng Phước Vinh

Khoa Cơ khí


3

Hoạt động ở lớp
1. Chia lớp (55 SV)  11 nhóm
2. Mỗi tuần  2-3 nhóm báo cáo
3. Viết bài thu hoạch cho tất cả các chủ đề báo cáo
4. Báo cáo  50% điểm thi cuối kỳ
Điểm = chuyên cần + giữa kỳ + báo cáo + cuối kỳ
Đặng Phước Vinh

Khoa Cơ khí


4

Các bài báo cáo
1. Led 7 đoạn (1 Led và nhiều Led) – không/dùng IC giải mã
2. LCD
3. Nút nhấn và Ma trận phím (khóa điện tử)
4. Bộ định thời
5. Ngắt
6. Cảm biến (nhiệt độ, siêu âm, vật thể…)

7. Điều khiển động cơ DC (quay, đảo chiều, điều khiển tốc độ)
8. Điều khiển động cơ bước
9. Đồng hồ (sử dụng thời gian thực)
10. Giao tiếp với máy tính
Đặng Phước Vinh

Khoa Cơ khí


5

Tài liệu tham khảo
1. Datasheet của PIC
2. CCS C Compiler
3. Vi xử lý. Nguyễn Đình Phú, Trường Đại học Sư
phạm Kỹ thuật TP. Hồ Chí Minh.
4. Các trang web liên quan

Đặng Phước Vinh

Khoa Cơ khí


CHƯƠNG 1
GIỚI THIỆU
CHUNG
Firma convenzione
Politecnico di Milano e Veneranda Fabbrica
del Duomo di Milano
Aula Magna – Rettorato

Mercoledì 27 maggio 2015


7

Vi xử lý
 CPU cho các máy tính
 Không có RAM, ROM, I/O trên chip CPU
 Ví dụ: Intel’s x86, Motorola’s 680x0
Data Bus

CPU
Vi xử lý

RAM

Nhiều chips trên bo mạch chủ

ROM

I/O
Port

Timer

nối tiếp

Address Bus
Đặng Phước Vinh


Cổng

Khoa Cơ khí


8

Vi điều khiển
 Là máy tính mini
 Có RAM, ROM, I/O ports trên CPU chip
 Ví dụ: Intel’s 8051, Zilog’s Z80, & PIC 16X

CPU
I/O
Port

RAM ROM

Cổng
Timer nối tiếp

tất cả bên trong 1 chip
Vi điều khiển

Đặng Phước Vinh

Khoa Cơ khí


9


Vi xử lý & Vi điều khiển
Vi xử lý

Vi điều khiển

CPU chip riêng biệt. RAM, ROM,
I/O, Timer nằm bên ngoài

CPU, RAM, ROM, I/O và Timer
nằm trên cùng 1 chip

Giá thành cao

Thích hợp cho các ứng dụng:

Lượng ROM, RAM, I/O Ports tùy ý

Đa năng, đa mục đích

Đặng Phước Vinh

Cố định lượng ROM, RAM, I/O
Ports trên chip
 Giá cả thấp
 Năng lượng tiêu thụ thấp
 Không gian hạn chế

Đơn mục đích


Khoa Cơ khí


Các tiêu chí chọn vi điều khiển
1. Đáp ứng yêu cầu về nhiệm vụ và giá thành thi công
 Tốc độ, lượng bộ nhớ, cổng I/O, timers, kích cỡ, đóng gói,
năng lượng tiêu thụ
 Dễ nâng cấp
 Giá tiền

2. Các công cụ phát triển phần mềm
 Bộ sửa lỗi, trình dịch C, mô phỏng, hỗ trợ kỹ thuật

3. Thị trường cung cấp sản phẩm tin cậy

Đặng Phước Vinh

Khoa Cơ khí

10


11

Vi điều khiển PIC
 PIC được sản xuất bởi công ty
Microchip Technology

 "Programmable Intelligent
Computer" là một sản phẩm của

hãng General Instruments

 Dòng sản phẩm đầu tiên là PIC1650

 PIC 8-bit được phát triển vào khoảng
năm 1975
Đặng Phước Vinh

Khoa Cơ khí


12

Vi điều khiển PIC
 Có thể tìm mua dể dàng tại thị trường Việt Nam
 Giá thành không quá cao

 Có đầy đủ tính năng của một VĐK khi hoạt động độc lập

 Số lượng người dùng lớn  số lượng tài liệu lớn, mã nguồn
mở, dể dàng trao đổi học tập, thảo luậ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…
 Các tính năng đa dạng của VĐK liên tục được cập nhật

Đặng Phước Vinh

Khoa Cơ khí



13

Các loại chip PIC
Các ký hiệu của vi điều khiển PIC:
PIC12xxxx: độ dài lệnh 12 bit
PIC16xxxx: độ dài lệnh 14 bit
PIC18xxxx: độ dài lệnh 16 bit
C:
F:
LF:
LV:

PIC có bộ nhớ chương trình là EPROM (chỉ có 16C84 là EEPROM)
PIC có bộ nhớ chương trình là flash
PIC có bộ nhớ chương trình là flash hoạt động ở điện áp thấp
tương tự như LF, đây là tín hiệu cũ

 Bên cạnh đó một số vi điều khiển có ký hiệu xxFxxx thì bộ nhớ chương trình là
EEPROM, nếu có thêm chữ A ở cuối thì bộ nhớ chương trình là flash (ví dụ PIC16F877
là EEPROM, còn PIC16F877A là flash).
 Ở Việt Nam phổ biến nhất là các họ vi điều khiển PIC do Microchip sản xuất
Đặng Phước Vinh

Khoa Cơ khí


14

Các loại bộ nhớ

ROM (Read-Only Memory)

 Thông tin trên ROM vẫn được duy trì dù nguồn điện cấp không
còn.
 Nó dùng cho lưu giữ mã chương trình điều hành và dữ liệu mặc
định của hệ thống
 Cho phép chỉ đọc dữ liệu từ chúng, và chỉ cho phép ghi dữ liệu
một lần

EPROM (Erasable Programmable Read-Only Memory)

 Thông tin trên bộ nhớ vẫn được duy trì dù nguồn điện cấp không
còn
 Phải dùng thiết bị chuyên dụng để xóa bộ nhớ. Xóa toàn bộ

Đặng Phước Vinh

Khoa Cơ khí


15

Các loại bộ nhớ
EEPROM (Electrically Erasable Programmable ReadOnly Memory)

 Có khả năng xoá được bằng phương pháp lập trình mà chúng
không cần đến các thiết bị chuyên dụng như các thế hệ trước của


Bộ nhớ Flash


 Là một loại EEPROM, đọc/ghi bằng điện và không mất dữ liệu
khi ngừng cung cấp điện
 Cho phép đọc/ghi từng khối nhỏ hoặc theo từ của máy
Đặng Phước Vinh

Khoa Cơ khí


16

Các loại bộ nhớ
Loại

ROM
EPROM

Mất dữ
liệu
khi mất
điện?
Không
Không

EEPROM Không
Flash

Không

Đặng Phước Vinh


Khả năng
ghi ?
Không

Cỡ xoá ?

Xoá
nhiều
lần ?

Không sẵn
sàng

Không sẵn
sàng

Nhanh

Không đắt

Nhanh

Giới hạn

Nhanh cho
đọc
Chậm cho
xoá và ghi


Vừa phải

Có, nhưng
cần thiết bị
Toàn bộ
chuyên dụng



Byte
Sector

Giới hạn

Giới hạn

Tốc độ ?

Nhanh cho
đọc
Chậm cho
Khoa
khí
xoá vàCơghi

Giá thành
(theo
byte)

Đắt

Vừa phải


17

Trình biên dịch
Ngôn ngữ lập trình cho vi điều khiển PIC có 2 loại:

 Ngôn ngữ lập trình cấp thấp - Hợp ngữ: có phần mềm
MPLAB

 Ngôn ngữ lập trình bậc cao: có nhiều loại, được phát triển
theo ngôn ngữ C, như: CCS, HTPIC, PIC BASIC v.v

Đặng Phước Vinh

Khoa Cơ khí


18

Trình biên dịch hợp ngữ
 Được cung cấp miễn phí bởi nhà sản xuất Microchip

 Giúp người học và lập trình hiểu rõ hơn về cấu trúc bên
trong của vi điều khiển PIC
 Tối ưu hóa bộ nhớ chương trình.

 Tuy nhiên, nhìn chung phương pháp tiếp cận hợp ngữ là khó
và khả năng phát triển ứng dụng là hạn chế, mất thời gian.


Đặng Phước Vinh

Khoa Cơ khí


19

Trình biên dịch CCS
 Kế thừa tất cả đặc điểm của ngôn ngữ C- là ngôn ngữ cơ bản,
quen thuộc mà sinh viên đã được đào tạo

 Xây dựng sẵn các hàm phục vụ cho việc sử dụng dễ dàng các
khối chức năng đặc biệt của Vi điều khiển PIC như: ADC, PWM,
RS232, SPI
 Có khả năng kết hợp với ngôn ngữ hợp ngữ, tạo sự mềm dẻo
trong phát triển ứng dụng
 Khả năng phát triển, nâng cấp ứng dụng là dễ dàng

 Ngày càng được cập nhật với nhiều tính năng ưu việt và hiệu
quả hơn.

Đặng Phước Vinh

Khoa Cơ khí


20

PIC kit


Đặng Phước Vinh

Khoa Cơ khí


Phần mềm mô phỏng Proteus

Đặng Phước Vinh

Khoa Cơ khí

21


CHƯƠNG 2
CẤU TRÚC PHẦN CỨNG
PIC
Firma16F877A
convenzione
Politecnico di Milano e Veneranda Fabbrica
del Duomo di Milano
Aula Magna – Rettorato
Mercoledì 27 maggio 2015


23

Tổng quan về PIC16F877A


 Thuộc họ PIC16Fxxx với tập lệnh gồm 35 lệnh có độ dài 14 bit
 Tất cả các lệnh là 1 chu kỳ máy, ngoại trừ chương trình con là 2 chu kỳ
máy.
 Một chu kỳ lệnh của vi điều khiển bao gồm 4 xung clock
 Sử dụng thạch anh 4MHz  xung lệnh có tần số 1MHz (1us)
 Bộ nhớ chương trình flash với dung lượng 8K x 14 bit, với khả năng
ghi/xóa 100.000 lần
 Bộ nhớ dữ liệu RAM: 368 byte
 Bộ nhớ EEPROM với dung lượng 256 byte, với khả năng ghi/xóa
1.000.000 lần. Có thể lưu trữ dữ liệu hơn 40 năm
 Nguồn sử dụng: 5VDC
 Chế độ sleep
 Có 5 ports I/0 (A, B, C, D, E) với 33 chân

Đặng Phước Vinh

Khoa Cơ khí


24

Sơ đồ chân họ PIC16F87XA

Đặng Phước Vinh

Khoa Cơ khí


25


Sơ đồ chân họ PIC16F87XA
Reset

Port B

Port A
Port E

Power

Power

Port D

Oscillator
Port C

Đặng Phước Vinh

Port C
Port D

Khoa Cơ khí


Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×