Home Kiến thức Vi điều khiển Giới thiệu vi điều khiển PIC 16F877A

Giới thiệu vi điều khiển PIC 16F877A

0
Giới thiệu vi điều khiển PIC 16F877A

PIC (Programmable Intelligent Computer) nghĩa là “Máy tính thông minh khtrình” xut phát từ vi điu khin PIC đầu tiên PIC1650, do hãng General Instrument đt tên. Sau đó hãng Microchip tiếp tc phát trin loi PIC này và cho ra đi gn 100 loi PIC đến nay.

Vi điều khiển PIC 16F877A

Ngày nay, rất nhiều dòng PIC được xuất xưởng với hàng loạt các module ngoại vi tích hợp sẵn như UART, PWM, ADC, … với bộ nhớ chương trình từ 512 word đến 32k word.

Các dòng PIC hin nay:

  • Dòng PIC 12Cxx có đdài lnh 12bit (Basic-line).
  • Dòng PIC 10F, 12F, 16F có đdài lnh 14bit (Mid-range).
  • Dòng PIC 18F có đdài lnh 16bit (High-End).
  • Dòng dsPIC là dòng PIC mi hin nay

Cu trúc tng quát ca PIC16F877A:

Cấu trúc bên trong PIC 16F877A

  • 8K x 14 bits/word Flash ROM.
  • 368 x 8 Bytes RAM.
  • 256 x 8 Bytes EEPROM.
  • 5 Port xuất/nhập (A, B, C, D, E) tương ứng 33 chân ra.
  • 2 Bộ định thời 8 bit Timer 0 và Timer 2.
  • 1 Bộ định thời 16 bit Timer 1, có thể hoạt động ở chế độ tiết kiệm năng lượng (SLEEP MODE) với nguồn xung clock ngoài.
  • 2 Bộ Capture/ Compare/ PWM (Bắt giữ/ So sánh/ Điều biến xung)
  • 1 Bộ biến đổi Analog to Digital 10 bit, 8 ngõ vào.
  • 2 Bộ so sánh tương tự (Comparator).
  • 1 Bộ định thời giám sát (Watch Dog Timer).
  • 1 Cổng giao tiếp song song 8 bit.
  • 1 Port nối tiếp.
  • 15 Nguồn ngắt (Interrupt).
  • Chế độ tiết kiệm năng lượng (Sleep Mode).
  • Nạp trương trình bằng cổng nối tiếp ( ICSP™ )(In-Circuit Serial Programming™ -)
  • Tập lệnh gồm 35 lệnh có độ dài 14 bit.
  • Tần số hoạt động tối đa 20 MHz.

Sơ đồ và chc năng các chân PIC16F877A

Sơ đồ chân

Sơ đồ chân PIC 16F877A

Chức năng các chân

Chân

Tên

Chc năng

1

/MCLR/VPP

– /MCLR: Hoạt động Reset ở mức thấp
– VPP : ngõ vào áp lập trình

2

RA0/AN0

– RA0 : xuất/nhập số
– AN0 : ngõ vào tương tự

3

RA1/AN1

– RA1 : xuất/nhập số
– AN1 : ngõ vào tương tự

4

RA2/AN2/VREF-/CVREF

– RA2 : xuất/nhập số
– AN2 : ngõ vào tương tự
– VREF -: ngõ vào điện áp chuẩn (thấp) của bộ A/D

5

RA3/AN3/VREF+

– RA3 : xuất/nhập số
– AN3 : ngõ vào tương tự
– VREF+ : ngõ vào điện áp chuẩn (cao) của bộ A/D

6

RA4/TOCKI/C1OUT

– RA4 : xuất/nhập số
– TOCKI : ngõ vào xung clock bên ngoài cho timer0
– C1 OUT : Ngõ ra bộ so sánh 1

7

RA5/AN4//SS /C2OUT

– RA5 : xuất/nhập số
– AN4 : ngõ vào tương tự 4
– SS : ngõ vào chọn lựa SPI phụ
– C2 OUT : ngõ ra bộ so sánh 2

8

RE0//RD/AN5

– RE0 : xuất nhập số
– RD : điều khiển việc đọc ở port nhánh song song
– AN5 : ngõ vào tương tự

9

RE1//WR/AN6

– RE1 : xuất/nhập số
– WR : điều khiển việc ghi ở port nhánh song song
– AN6 : ngõ vào tương tự

10

RE2//CS/AN7

– RE2 : xuất/nhập số
– CS : Chip lựa chọn sự điều khiển ở port nhánh song song
– AN7 : ngõ vào tương tự

11

VDD

Chân nguồn của PIC 

12

VSS

Chân nối đất

13

OSC1/CLKI

Ngõ vào dao động thạch anh hoặc xung clock bên ngoài.
– OSC1 : ngõ vào dao động thạch anh hoặc xung clock bên ngoài. Ngõ vào Schmit trigger khi được cấu tạo ở chế độ RC; một cách khác của CMOS.
– CLKI : ngõ vào nguồn xung bên ngoài. Luôn được kết hợp với chức năng OSC1.


14

OSC2/CLKO

Ngõ vào dao động thạch anh hoặc xung clock
– OSC2 : Ngõ ra dao động thạch anh. Kết nối đến thạch anh hoặc bộ cộng hưởng.
– CLKO : ở chế độ RC, ngõ ra của OSC2, bằng tần số của OSC1 và chỉ ra tốc độ của chu kỳ lệnh.

15

RC0/T1 OCO/T1CKI

– RC0 : xuất/nhập số
– T1OCO : ngõ vào bộ dao động Timer 1
– T1CKI : ngõ vào xung clock bên ngoài Timer 1

16

RC1/T1OSI/CCP2

– RC1 : xuất/nhập số
– T1OSI : ngõ vào bộ dao động Timer 1
– CCP2 : ngõ vào Capture 2, ngõ ra compare 2, ngõ ra PWM2

17

RC2/CCP1

– RC2 : xuất/nhập số
– CCP1 : ngõ vào Capture 1, ngõ ra compare 1, ngõ ra PWM1

18

RC3/SCK/SCL

– RC3 : xuất/nhập số
– SCK : ngõ vào xung clock nối tiếp đồng bộ/ngõ ra của chế độ SPI
– SCL : ngõ vào xung clock nối tiếp đồng bộ/ ngõ ra của chế độ I2C

19

RD0/PSP0

– RD0 : xuất/nhập số
– PSP0 : dữ liệu port nhánh song song

20

RD1/PSP1

– RD1 : xuất/nhập số
– PSP1 : dữ liệu port nhánh song song

21

RD2/PSP2

– RD2 : xuất/nhập số
– PSP2 : dữ liệu port nhánh song song

22

RD3/PSP3

– RD3: xuất/nhập số
– PSP3 : dữ liệu port nhánh song song

23

RC4/SDI/SDA

– RC4 : xuất/nhập số
– SDI : dữ liệu vào SPI
– SDA : xuất/nhập dữ liệu vào I2C

24

RC5/SDO

– RC5 : xuất/nhập số
– SDO : dữ liệu ra SPI

25

RC6/TX/CK

– RC6 : xuất/nhập số
– TX : truyền bất đồng bộ USART
– CK : xung đồng bộ USART

26

RC7/RX/DT

– RC7 : xuất/nhập số
– RX : nhận bất đồng USART
– DT : dữ liệu đồng bộ USART

27

RD4/PSP

– RD4: xuất/nhập số
– PSP4 : dữ liệu port nhánh song song

28

RD5/PSP5

– RD5: xuất/nhập số
– PSP5 : dữ liệu port nhánh song song

29

RD6/PSP6

– RD6: xuất/nhập số
– PSP6 : dữ liệu port nhánh song song

30

RD7/PSP7

– RD7: xuất/nhập số
– PSP7 : dữ liệu port nhánh song song



31

VSS

Chân nối đất

32

VDD

Chân nguồn của PIC 

33

RB0/INT

– RB0 : xuất/nhập số
– INT : ngắt ngoài

34

RB1

xuất/nhập số

35

RB2

xuất/nhập số

36

RB3

– RB3 : xuất/nhập số
– Chân cho phép lập trình điện áp thấp ICPS

37

RB4

– xuất/nhập số
– Ngắt PortB

38

RB5

– xuất/nhập số
– Ngắt PortB

39

RB6/PGC

– RB6 : xuất/nhập số
– PGC : mạch vi sai và xung clock lập trình ICSP
– Ngắt PortB

40

RB7/PGD

– RB7 : xuất/nhập số
– PGD : mạch vi sai và dữ liệu lập trình ICSP
– Ngắt PortB

Phần mềm lập trình cho vi điều khiển PIC

Phần mềm lập trình cho PIC

Hiện nay có rất nhiều phần mềm có thể lập trình cho vi điều khiển PIC, các bạn nên chọn một phần mềm và học theo nhé.

CCS C Compiler

Nếu bạn nào đã làm quen với PIC chắc hẳn bạn biết CCS. Vì sao tôi lại đề cập đến CCS đầu tiên. Đơn giản bởi vì nó là loại trình biên dịch cho PIC phổ biến nhất hiện nay. CCS là một trình biên dịch hỗ trợ ngôn ngữ C cho hầu hết các dòng vi điều khiển PIC. Sử dụng CCS, có thể tạo 1 project, viết source code, xây dựng, debug và lập trình cho PIC một cách nhanh chóng. Tuy nhiên, CCS đã tích hợp sẵn các thư viện chứa các hàm chuyên dụng. Nếu bạn muốn hiểu sau về bản chất của các thanh ghi hơn thì tôi khuyên bạn nên sử dụng phần mềm MPLAB X IDE.

MikroC PRO for PIC

Mikro C cũng có những tính chất tương tự CCS – cùng là hướng tiện dụng và nhanh chóng nhất cho người dùng. Cái mạnh nhất của MikroC là mảng thư viện, hỗ trợ từ nhà sản xuất (tutorial, tài liệu, ứng dụng).

MPLAB X IDE

MPLAB X IDE là phần mềm chuyên nghiệp để lập trình cho vi điều khiển với các tính năng nổi bật.

  • Tạo môi trường lập trình C, ASM: XC8, nhúng, CCS C Compiler, HTPIC C Compiler và các Compiler khác.
  • Debug và mô phỏng kết hợp với chương trình nạp.
  • Quản lý project dễ dàng.
  • Có thư viện hỗ trợ cho người dùng.

Hitech

Hitech là một tổ chức thiết lập cung cấp quy tắc thiết kế kỹ thuật tốt và phục vụ cho quản lý thi công công trình chất lượng hệ thống kỹ thuật về cơ & điện.

LEAVE A REPLY

Please enter your comment!
Please enter your name here