PIC18F4550 thuộc họ vi điều khiển ‘ PIC18F ‘. PIC18F4550 là một trong những Bộ vi điều khiển phổ biến với công nghệ vi mạch, có hiệu suất cao, bộ nhớ flash được nâng cao, vi điều khiển USB với Công nghệ nano-Watt.
Đây là bộ vi điều khiển 8-bit phổ biến trong giới sản xuất vi mạch và kỹ sư do tính năng và ứng dụng của nó. PIC18F4550 có nhiều package khác nhau như DIP, QPF và QPN và có thể được lựa chọn theo yêu cầu của dự án.
Cấu hình sơ đồ chân PIC18F4550
Là thiết bị 40 chân như trong sơ đồ chân. Các chân của bộ điều khiển có nhiều tính năng. Các tính năng này được kích hoạt thông qua lập trình tùy theo yêu cầu. Bảng mô tả ngắn gọn từng chức năng chân bên dưới.
Số chân | Tên chân | Mô tả |
1 | MCLR / VPP / RE3 | MCLR: Đầu vào Master Clear (RESET)
VPP: đầu vào điện áp lập trình RE3: Chân I / O của PORTE, chân 3 |
2 | RA0 / AN0 | RA0: Chân I / O của PORTA, chân 0
AN0: Đầu vào analog 0 |
3 | RA1 / AN1 | RA1: Chân I / O của PORTA, chân 1
AN1: Đầu vào analog 1 |
4 | RA2 / AN2 / VREF- / CVREF | RA2: Chân I / O của PORTA, chân 2
AN2: Đầu vào analog 2 VREF-: Đầu vào điện áp tham chiếu A / D (Mức thấp) CVREF: Đầu ra tham chiếu bộ so sánh analog |
5 | RA3 / AN3 / VREF + | RA3: Chân I / O của PORTA, chân 3
AN3: Đầu vào analog 3 VREF +: Đầu vào điện áp tham chiếu A / D (Mức cao) |
6 | RA4 / T0CKI / C1OUT / RCV | RA4: Chân I / O của PORTA, chân 4
T0CKI: Đầu vào xung clock bên ngoài Timer0 C1OUT: Đầu ra so sánh 1 RCV: Đầu vào RCV của bộ thu phát tín hiệu USB bên ngoài |
7 | RA5 / AN4 / SS /HLVDIN / C2OUT | RA5: Chân I / O của PORTA, chân 5
AN4: Đầu vào analog 4 SS: Đầu vào Slave select SPI HLDVIN: Đầu vào phát hiện điện áp cao / thấp C2OUT: Đầu ra so sánh 2 |
8 | RE0 / AN5 / CK1SPP | RE0: Chân I / O của PORTE, chân 0
AN5: Đầu vào analog 5 CK1SPP: Đầu ra 1 xung clock SPP |
9 | RE1 / AN6 / CK2SPP | RE1: Chân I / O của PORTE, chân 1
AN6: Đầu vào analog 6 CK2SPP: Đầu ra 2 xung clock SPP |
10 | RE2 / AN7 / OESPP | RE2: Chân I / O của PORTE, chân 2
AN6: Đầu vào analog 7 OESPP: Đầu ra kích hoạt SPP |
11 | VDD | Chân cấp nguồn dương (+ 5V) |
12 | VSS | Chân nối đất |
13 | OSC1 / CLKI | OSC1: Chân bộ dao động 1
CLKI: Đầu vào xung nhịp ngoài |
14 | OSC2 / CLKO / RA6 | OSC2: Chân dao động 2
CLKO: Đầu ra xung nhịp RA6: Chân I / O của PORTA, chân 6 |
15 | RC0 / T1OSO / T13CKI | RC0: Chân I / O của PORTC, chân 0
T1OSO: Đầu ra bộ dao động Timer1 T13CKI: Đầu vào xung clock ngoài Timer1 / Timer3 |
16 | RC1 / T1OSI / CCP2 / UOE | RC1: Chân I / O của PORTC, chân 1
T1OSI: Đầu vào bộ dao động Timer1 CCP2: đầu vào capture 2 / đầu ra compare 2 / Đầu raPWM2 UOE: Đầu ra OE USB ngoài |
17 | RC2 / CCP1 / P1A | RC2: Chân I / O của PORTC, chân 2
CCP1: Đầu vào capture 1 / đầu ra compare 1 / đầu ra PWM1. P1A: Đầu ra CCP1 PWM enhanced, kênh A |
18 | VUSB | VUSB: Đầu ra bộ điều chỉnh điện áp USB 3.3V bên trong |
19 | RD0 / SPP0 | RD0: Chân I / O của PORTD, chân 0
SPP0: Streaming Parallel Port data 0 |
20 | RD1 / SPP1 | RD1: Chân I / O của PORTD, chân 1
SPP1: Streaming Parallel Port data 1 |
21 | RD2 / SPP2 | RD2: Chân I / O của PORTD, chân 2
SPP2: Streaming Parallel Port data 2 |
22 | RD3 / SPP3 | RD3: Chân I / O của PORTD, chân 3
SPP3: Streaming Parallel Port data 3 |
23 | RC4 / D- / VM | RC4: Chân I / O của PORTC, chân 4
D-: Đường dữ liệu – USB (đầu vào / đầu ra) VM: Đầu vào VM thu phát tín hiệu USB ngoài |
24 | RC5 / D + / VP | RC5: chân I / O của PORTC, chân 5
D +: Đường dữ liệu + USB (đầu vào / đầu ra). VP: Đầu vào VP bộ thu phát USB ngoài |
25 | RC6 / TX / CK | RC6: Chân I / O của PORTC, chân 6
TX: Truyền dữ liệu không đồng bộ EUSART CK: Xung clock đồng bộ EUSART (RX / DT). |
26 | RC7 / RX / DT / SDO | RC7: Chân I / O của PORTC, chân 7
RX: Nhận dữ liệu không đồng bộ EUSART DT: Truyền dữ liệu đồng bộ EUSART (TX / CK). SDO: Đầu ra dữ liệu giao thức SPI |
27 | RD4 / SPP4 | RD4: Chân I / O của PORTD, chân 4
SPP4: Streaming Parallel Port data 4 |
28 | RD5 / SPP5 / P1B | RD5: Chân I / O của PORTD, chân 5
SPP5: Streaming Parallel Port data 5 P1B: Đầu ra CCP1 PWM enhanced, kênh B |
29 | RD6 / SPP6 / P1C | RD6: Chân I / O của PORTD, chân 6
SPP6: Streaming Parallel Port data 6 P1C: Đầu ra PWM CCP1 enhanced, kênh C |
30 | RD7 / SPP7 / P1D | RD7: Chân I / O của PORTD, chân 7
SPP7: Streaming Parallel Port data 7 P1D: Đầu ra CCP1 PWM enhanced, kênh D |
31 | VSS | Chân nối đất |
32 | VDD | Chân cấp nguồn dương (+ 5V) |
33 | RB0 / AN12 / INT0 / FLT0 / SDI / SDA | RB0: chân I / O của PORTB, chân 0
AN12: Đầu vào analog 12 INT0: Ngắt ngoài 0 FLT0: Đầu vào Fault PWM enhanced (module ECCP1) SDI: Chân vào dữ liệu giao thức SPI SDA: Chân I / O dữ liệu giao thức I2C |
34 | RB1 / AN10 / INT1 / SCK / SCL | RB1: chân I / O của PORTB, chân 1
AN10: Đầu vào analog 10 INT1: Ngắt ngoài 1 SCK: I/O xung clock truyền dữ liệu nối tiếp đồng bộ cho giao thức SPI SCL: I/O xung clock truyền nối tiếp đồng bộ cho giao thức I2C |
35 | RB2 / AN8 / INT2 / VMO | RB2: chân I / O của PORTB, chân 2
AN8: Đầu vào analog 8 INT2: Ngắt ngoài 2 VMO: Đầu ra VMO thu phát tín hiệu USB bên ngoài |
36 | RB3 / AN9 / CCP2 / VPO | RB3: chân I / O của PORTB, chân 3
AN9: Đầu vào analog 9 CCP2: Đầu vào capture 2 / Đầu ra 2 compare / Đầu ra PWM2 VPO: Đầu ra VPO bộ thu phát tín hiệu USB bên ngoài |
37 | RB4 / AN11 / KBI0 / CSSPP | RB4: chân I / O của PORTB, chân 4
AN11: Đầu vào analog 11 KBI0: Chân Interrupt-on-change 0 CSSPP: Đầu ra điều khiển chọn chip SPP |
38 | RB5 / KBI1 / PGM | RB5: chân I / O của PORTB, chân 5
KBI1: Chân Interrupt-on-change 1 PGM: Chân kích hoạt lập trình ICSP điện áp thấp |
39 | RB6 / KBI2 / PGC | RB6: Chân I / O của PORTB, chân 6
KBI2: Chân ngắt khi thay đổi PGC: In-Circuit Debugger và chân đồng hồ lập trình ICSP. |
40 | RB7 / KBI3 / PGD | RB7: chân I / O của PORTB, chân 7
KBI3: Chân Interrupt-on-change 3 PGD: Chân lập trình dữ liệu ICSP In-Circuit Debugger và chân dữ liệu lập trình ICSP. |
Tính năng của vi điều khiển PIC18F4550
CPU | 8bit |
Tổng số chân | 40 |
Điện áp hoạt động | +4.0 đến +5.5 V (+ 5.5V là điện áp tối đa) |
Số lượng chân I / O có thể lập trình | 35 |
Giao thức giao tiếp | Giao thức truyền dữ liệu nối tiếp USB (Chân 23, 24) [Có thể được sử dụng để lập trình bộ điều khiển này]
Giao thức Master / Slave SPI (Chân 7, 26, 33, 34) [Có thể được sử dụng để lập trình bộ điều khiển này] Giao thức UART có thể lập trình (Chân 25, 26) [Có thể được sử dụng để lập trình bộ điều khiển này] Giao thức nối tiếp two-wire (Chân 33, 34) [Có thể được sử dụng để kết nối các ngoại vi như cảm biến và màn hình LCD] |
Module ADC | 13 kênh, ADC độ phân giải 10 bit |
Module timer | Một bộ đếm 8bit, Ba bộ đếm 16 bit |
Bộ so sánh analog | 2 |
Kênh PWM | 4 |
Bộ tạo dao động bên ngoài | Lên đến 48MHz |
Bộ dao động bên trong | Bộ dao động bên trong có thể hiệu chỉnh 32KHz-8MHz |
Loại bộ nhớ chương trình | Flash |
Bộ nhớ chương trình | 32Kbyte [10000 chu kỳ ghi / xóa] |
Tốc độ CPU | 12 MIPS |
Byte RAM | 2KBytes |
EEPROM | 256Bytes |
Timer watchdog | có thể lập trình với bộ dao động trên chip riêng biệt |
Chế độ tiết kiệm điện | Có |
Nhiệt độ hoạt động | -40°C đến +85°C (+85 là nhiệt độ cao nhất, -40 là nhiệt độ thấp nhất) |
Vi điều khiển thay thế PIC18F4550
PIC18F4455
Vi điều khiển dòng PIC18F4550
PIC18F2455, PIC18F2550
Nơi ứng dụng vi điều khiển PIC18F4550
Bộ nhớ chương trình đáp ứng tốt hầu hết các ứng dụng. Cùng với 35 chân Input / Output có thể lập trình, có thể giao tiếp với nhiều thiết bị ngoại vi một cách dễ dàng. Với bộ đếm thời gian Watchdog để reset khi bị lỗi, có thể được sử dụng trên các hệ thống không có sự can thiệp của con người.
Có giao thức USB, có thể giao tiếp với bộ điều khiển qua bất kỳ PC nào mà không gặp lỗi. Với nhiều tính năng được bổ sung làm bộ điều khiển PIC18F4550 trở nên phổ biến.
Cách sử dụng Vi điều khiển PIC18F4550
PIC18F4550 được sử dụng giống như các bộ vi điều khiển khác. Để PIC18F4550 hoạt động, trước tiên cần lưu tệp chương trình (code) vào bộ nhớ FLASH của bộ điều khiển. Sau khi cấp nguồn, bộ điều khiển sẽ thực thi code được lưu trong bộ nhớ FLASH để tạo phản hồi tín hiệu mong muốn.
Toàn bộ các bước sử dụng PIC18F4550 sẽ như sau:
- Liệt kê các funtion được thực thi với PIC18F4550
- Viết các hàm trong phần mềm IDE bằng ngôn ngữ lập trình
- (Phần mềm MPLAB dành cho HĐH Windows [ www.microchip.com/mplabx-ide-windows-installer ]
- (Đối với các IDE này, các hàm phải được viết bằng ngôn ngữ ‘C’)
- Sau khi viết, tiến hành biên dịch chương trình để loại bỏ lỗi trên IDE.
- Sau khi biên dịch thành công, dùng phần mềm IDE tạo tệp HEX cho chương trình đã viết.
- Chọn thiết bị lập trình (thường là ‘PIC kit 3’) thiết lập giao tiếp giữa PC và PIC18F4550.
- Chạy phần mềm xuất tệp HEX tương ứng với thiết bị lập trình đã chọn.
- Chọn tệp HEX của chương trình.
- Ghi tệp HEX của chương trình vào bộ nhớ flash PIC18F4550.
- Ngắt kết nối vơi bộ lập trình, kết nối các thiết bị ngoại vi thích hợp cho bộ điều khiển và cấp nguồn cho hệ thống.
- Sau khi kết nối nguồn, bộ điều khiển sẽ thực thi code HEX được lưu trong bộ nhớ và thực hiện các tác vụ theo code.
Các ứng dụng của PIC18F4550
- Các dự án chung của kỹ sư
- Bo mạch điều khiển cho sinh viên
- Hệ thống kiểm soát nhiệt độ
- Đo và xử lý tín hiệu analog.
- Hệ thống nhúng trong máy pha cà phê, máy bán hàng tự động.
- Hệ thống điều khiển động cơ
- Hệ thống giao tiếp ngoại vi
Sơ đồ kích thước 2D của PIC18F4550
>> Mời anh em xem thêm