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

VI ĐIỀU KHIỂN PIC - ĐẶNG LÊ KHOA - TRƯỜNG ĐH KHTN - KHOA ĐIỆN TỬ VIỄN THÔNG docx

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.59 MB, 50 trang )

TRƯỜNG ðẠI HỌC KHOA HỌC TỰ NHIÊNTRƯỜNG ðẠI HỌC KHOA HỌC TỰ NHIÊN
KHOA ðIỆN TỬ KHOA ðIỆN TỬ VIỄN THÔNGVIỄN THÔNG
VI ðIỀU KHIỂN PICVI ðIỀU KHIỂN PIC
VI ðIỀU KHIỂN PICVI ðIỀU KHIỂN PIC
1
ðặngðặng LêLê KhoaKhoa
TàiTài liệuliệu thamtham khảokhảo
•• SáchSách::
Designing Embedded Systems with PIC Microcontrollers Designing Embedded Systems with PIC Microcontrollers
(principles and applications), 1st Ed, Tim (principles and applications), 1st Ed, Tim WilmshurstWilmshurst, ,
published by published by NewnesNewnes, 2007, 2007
••
BàiBài
giảnggiảng
••
BàiBài
giảnggiảng
•• Link Link thamtham khảokhảo: : />2
CHƯƠNG 1: GIỚI THIỆU
• Hệ thống nhúng
• Vi ñiều khiển
• Các họ vi ñiều khiển
3
Hệ thống nhúng
• “A system whose principal function is
not computational, but which is
controlled by a computer embedded
within it”
within it”
• Ứng dụng rất phổ biến trong các thiết
bị trong nhà, văn phòng, ñiều khiển xe


hơi
• Thường sử dụng 1 vi ñiều khiển
4
Một số ứng dụng hệ thống nhúng
5
Vi ñiều khiển là gì?
• Mini-Computer
– Microprocessor
• The Brains
• Arithmetic Logic Unit
(ALU)

Control Unit

Control Unit
• Program/ Data
Storage
• Peripherals
(Input/Output)
• Low-Cost
6
Kiến trúc Vi ñiều khiển
CPUMemory
I/O
(Ports A, B & C)
7
A Computer on a chip
Timer
0
Timer

1
Timer
2
PWM
1
PWM
2
10-bit
A/D
USART
Microcontroller Families
8
9
PIC12F508/509 block diagram
10
CHƯƠNG 2: CẤU TRÚC HỌ PIC 18F452
• Sơ ñồ khối
• Các giao tiếp
• Bộ ALU

Mạch reset

Mạch reset
• Các thanh ghi
11
PIC 18F452 General Architecture
12
PIC 18F452 : Peripherals
• The PIC 18F452 has the
following peripherals:

– Data ports:
• A (6-Bits)
• B, C and D (8-Bits)

E (3
-
bits)

E (3
-
bits)
– Counter/Timer modules.
• Modules 0,2 (8-Bits)
• Modules 1,3 (16-Bits)
– I2C/SPI serial port.
– USART port.
– ADC 10-bits with 8-way input
multiplexer.
– EEPROM 256 Bytes
13
Microprocessor Unit
• Includes Arithmetic Logic Unit (ALU), Registers, and Control
Unit
14
Arithmetic Logic Unit (ALU)
• CPU dẫn nạp lệnh từ bộ nhớ, giải mã, và gửi
chúng ñến bộ ALU ñể thực thi
• ALU thực thi các lệnh cộng, trừ, dịch và các
phép
toán

logic.
phép
toán
logic.
• ALU hoạt ñộng kết hợp với:
– Một thanh ghi ña dụng gọi là thanh ghi W
– Và thanh ghi f có thể ñịnh vị trong vùng nhớ dữ
liệu
– Giá trị cố ñịnh (Literal) nhúng trong chương trình
15
Arithmetic Logic Unit
16
Example
ADDWF F, d, a ;Add WREG to File (Data) Reg.
;Save result in W if d =0
;Save result in F if d = 1
Reset
• Reset sẽ ñặt vi ñiều khiển về trạng thái ban
ñầu mà bộ vi xử lý sẽ thực thi lệnh ñầu tiên
• Reset có thể từ các yếu tố sau:

Reset ngoài bằng cách kéo MCLR xuống thấp.

Reset ngoài bằng cách kéo MCLR xuống thấp.
– Reset khi mở nguồn
– Reset khi bộ watchdog timer bị tràn
• Reset sẽ làm mất dữ liệu
17
18
Registers

– Bank Select Register (BSR)
• Thanh ghi 4 bit dùng ñể ñịnh ñịa chỉ trực tiếp trong bộ nhớ dữ liệu
– File Select Registers (FSRs)
• Thanh ghi 16-bit ñược dùng như là con trỏ trong ñịnh ñịa chỉ gián
tiếp trong bộ nhớ
– Program Counter (PC)
• Thanh ghi 21-bit lưu trữ ñịa chỉ chương trình khi chương trình
thực thi
thực thi
19
CHƯƠNG 3: BỘ NHỚ
• Bus ñịa chỉ
• Các tín hiệu ñiều khiển
• Bộ nhớ PIC18F452

Bộ nhớ chương trình

Bộ nhớ chương trình
• Bộ nhớ dữ liệu
• ðịnh vị ñịa chỉ
20
PIC18F - Address Buses
• BUS ñịa chỉ
– Bus ñịa chỉ có 21-bit: có bộ nhớ 2MB
– Bus ñịa chỉ 12-bit: có khả năng quản lý bộ nhớ 4KB
21
Data Bus and Control Signals
• Bus dữ liệu
– 16-bit instruction/data bus for program memory
– 8-bit data bus for data memory

• Các tín hiệu ñiều khiển
– Read và Write
22
PIC18F452/4520 Memory
• Bộ nhớ chương trình
(Flash)
• Bộ nhớ dữ liệu
23
FFF=2
12
=16x256=4096=4K
Program Memory
Bộ ñếm chương trình 21-bit
có khả năng ñịnh vị bộ nhớ
chương trình 2-Mbyte.
Vector RESET ở ñịa chỉ
0000h và vector ngắt ở
ñịa chỉ 0008h và 0018h.
24
Truy xuất vùng nhớ
với nội dụng là các số
’0 (là một lệnh).
PIC18F452 có 32 Kbytes
bộ nhớ FLASH.
ðiều này có nghĩa là
chúng có thể lưu trữ 16K
lệnh ñơn.
Access RAM
Data Memory Organization
• Bộ nhớ dữ liệu lên ñến 4k

bytes
• Chia thành các băng 256
byte
• Half of bank 0 and half of
bank 15 form a virtual bank
that is accessible no matter
PIC16F8F2520/4520
Register File Map
000h
07Fh
Bank 0 GPR
Bank 1
GPR
Bank 2
GPR
080h
0FFh
100h
1FFh
200h
2FFh
00h
Access Bank
that is accessible no matter
which bank is selected
25
256 Bytes
Bank 13
GPR
Bank 14

GPR
Bank 15 GPR
Access SFR
Access RAM
Access SFR
D00h
DFFh
E00h
EFFh
F00h
FFFh
F7Fh
F80h
00h
7Fh
80h
FFh

×