Giới thiệu tổng quan lại về PIC 16F877A, khám phá PIC16F877A là gì, sơ đồ vật chân, tác dụng các chân, thông số kỹ thuật kỹ thuật, datasheet cùng nhiều thông tin hữu ích khác


Trong bài viết này, Điện Tử sau này sẽ reviews cho các bạn về PIC 16F877A. Đây là vi điều khiển và tinh chỉnh PIC được sử dụng phổ cập nhất vày tính linh động trong hoạt động, tính khả dụng cùng giá rẻ. 

Bạn có thể tham khảo giá sản phẩm tại đây vi điều khiển PIC16F877A

 

Điện Tử Tương Lai đã nhận được không ít yêu ước về PIC16F877a từ các sinh viên kỹ thuật vì chưng vi điều khiển PIC này được sử dụng nhiều trong những dự án kỹ thuật. Bởi vì vậy, kia là vì sao tại sao Điện Tử sau này sẽ share tất cả thông tin chi tiết về PIC16F877a. 

 

PIC16F877A là gì

*

PIC16F877A là 1 trong Vi điều khiển PIC 40 chân với được sử dụng phần lớn trong những dự án và áp dụng nhúng. Nó có năm cổng bước đầu từ cổng A đến cổng E. Nó có tía bộ định thời trong số ấy có 2 cỗ định thời 8 bit và 1 cỗ định thời là 16 Bit. Nó cung ứng nhiều giao thức tiếp xúc như giao thức nối tiếp, giao thức tuy vậy song, giao thức I2C. PIC16F877A cung cấp cả ngắt chân phần cứng cùng ngắt cỗ định thời.

Bạn đang xem: Vi điều khiển pic 16f877a

Thông số nghệ thuật PIC16F877A

 

CPU

PIC 8 bit

Cấu trúc

8

Kích thước bộ lưu trữ chương trình (Kbyte)

14

RAM (bytes)

368

EEPROM/HEF

256/HEF

Số chân

40

Tốc độ CPU về tối đa (MHz)

20

Chọn chân nước ngoài vi (PPS)

Không

Bộ tạo xấp xỉ bên trong

Không

Số bộ so sánh

2

Số opamp

Không

Số kênh ADC

14

Độ phân giải ADC tối đa (bit)

10

ADC cùng với tính toán

Không

Số bộ biến đổi DAC

0

Độ phân giải DAC về tối đa

0

Tham chiếu năng lượng điện áp nội bộ

Zero Cross Detect

Không

Số bộ định thời 8 bit

2

Số cỗ định thời 16 bit

1

Bộ định thời đo tín hiệu

0

Bộ định thời số lượng giới hạn phần cứng

0

Số đầu ra PWM

0

Độ phân giải PWM về tối đa

10

Bộ định thời góc

Không

Bộ tăng speed toán học

Không

Số module UART

1

Số module SPI

1

Số module I2C

1

Số module USB

0

Bộ định thời đo lường và thống kê có hành lang cửa số (WWDT)

Không

CRC/Scan

Không

Bộ tạo giao động được tinh chỉnh bằng số

0

Cap. Touch Channels

11

LCD phân đoạn

0

Nhiệt độ chuyển động tối thiểu (* C)

-40

Nhiệt độ hoạt động tối đa (* C)

125

Điện áp hoạt động tối thiểu (V)

2

Điện áp vận động tối đa (V)

5.5

Điện áp cao tất cả thể

Không

Sơ đồ chân PIC16F877A

Hình dưới đây là Sơ đồ vật chân PIC16F877A. Bên cạnh đó còn tất cả bảng thông tin chi tiết đi kèm số vật dụng tự của chân, tên khớp ứng và miêu tả sơ lược về chân.

*

 

STT chân

Tên chân

Mô tả

1

MCLR / Vpp

MCLR được thực hiện trong quy trình lập trình, chủ yếu được kết nối với programer như PicKit

2

RA0 / AN0

Chân analog 0 hoặc chân 0 của PORTA

3

RA1 / AN1

Chân analog 1 hoặc chân 1 của PORTA

4

RA2 / AN2 / Vref-

Chân analog 2 hoặc chân 2 của PORTA

5

RA3 / AN3 / Vref +

Chân analog 3 hoặc chân 3 của PORTA

6

RA4 / T0CKI / C1out

Chân 4 của PORTA

7

RA5/AN4/SS/C2out

Chân analog 4 hoặc chân 5 của PORTA

8

RE0 / RD / AN5

Chân analog 5 hoặc chân 0 của PORTE

9

RE1 / WR / AN6

Chân analog 6 hoặc chân 1 của PORTE

10

RE2/CS/AN7

Chân 7 của PORTE

11

Vdd

Chân nối đất của MCU

12

Vss

Chân dương của MCU (+5V)

13

OSC1 / CLKI

Bộ dao động phía bên ngoài / chân nguồn vào clock

14

OSC2 / CLKO


*

Bộ dao động bên ngoài / chân nguồn vào clock

15

RC0 / T1OSO / T1CKI

Chân 0 của PORT C

16

RC1 / T1OSI / CCP2

Chân 1 của POCTC hoặc chân Timer / PWM

17

RC2 / CCP1

Chân 2 của POCTC hoặc chân Timer / PWM

18

RC3 / SCK / SCL

Chân 3 của POCTC

19

RD0 / PSP0

Chân 0 của POCTD

20

RD1 / PSPI

Chân 1 của POCTD

21

RD2 / PSP2

Chân 2 của POCTD

22

RD3 / PSP3

Chân 3 của POCTD

23

RC4 / SDI / SDA

Chân 4 của POCTC hoặc chân Serial Data vào

24

RC5 / SDO

Chân 5 của POCTC hoặc chân Serial Data ra

25

RC6 / Tx / CK

Chân trang bị 6 của POCTC hoặc chân phạt của Vi điều khiển

26

RC7 / Rx / DT

Chân đồ vật 7 của POCTC hoặc chân thu của Vi điều khiển

27

RD4 / PSP4

Chân 4 của POCTD

28

RD5/PSP5

Chân 5 của POCTD

29

RD6/PSP6

Chân 6 của POCTD

30

RD7/PSP7

Chân 7 của POCTD

31

Vss

Chân dương của MCU (+5V)

32

Vdd

Chân nối đất của MCU

33

RB0/INT

Chân vật dụng 0 của POCTB hoặc chân ngắt ngoài

34

RB1

Chân trước tiên của POCTB

35

RB2

Chân thứ 2 của POCTB

36

RB3/PGM

Chân vật dụng 3 của POCTB hoặc liên kết với programmer

37

RB4

Chân đồ vật 4 của POCTB

38

RB5

Chân lắp thêm 5 của POCTB

39

RB6/PGC

Chân lắp thêm 6 của POCTB hoặc kết nối với programmer

40

RB7/PGD

Chân trang bị 7 của POCTB hoặc liên kết với programmer

Bạn có thể thấy vào hình trên các chân của Vi điều khiển PIC có khá nhiều hơn một tên, bởi mỗi chân của PIC rất có thể thực hiện những nhiệm vụ.

Ví dụ, Chân số 25, nó có thể được thực hiện như một chân số 6 cổng C hiện đại số (RC6) cùng cũng rất có thể được áp dụng như một bộ phát (TX) cho giao tiếp nối tiếp.

Vì vậy nó đã tùy ở trong vào cách bạn có nhu cầu sử dụng từng chân. Trong bài xích hướng dẫn này chúng ta sẽ kiểm tra phần đông các tác dụng của chân.

 

Mạch cơ phiên bản PIC16F877A

Mỗi vi điều khiển và tinh chỉnh PIC gồm một mạch cơ bản và nếu như bạn không xây dựng mạch cơ bạn dạng thì nó sẽ không còn hoạt động.

Nó giống như cấp nguồn mang đến vi điều khiển và tinh chỉnh PIC cùng nó vận động ở nấc + 5V.

Nếu bạn muốn bật quạt thì bạn sẽ làm gì? Bạn chỉ cần cung cấp điện mang lại nó với đó là phần đa gì bọn họ sẽ có tác dụng với PIC mà lại trong trường vừa lòng của PIC, họ cũng cần cung ứng tần số nhưng nó đã hoạt động.

Chúng ta cần thiết kế mạch cơ bạn dạng và mạch cơ bản này đựng công suất cũng như tần số cơ mà nó đang hoạt động.

Để hỗ trợ tần số mang lại vi điều khiển và tinh chỉnh PIC, họ sử dụng bộ giao động tinh thể và đối với PIC 16F877a, bạn cũng có thể sử dụng bộ giao động tinh thể dải tần tự 4MHz mang lại 40MHz.

Đây là Mạch cơ phiên bản PIC16F877a nhưng bạn cần thiết kế:

*

Giải thích mạch trên

Chân số 1: Chân này được hotline là MCLR (Master Clear) và chúng ta cần cấp cho 5V mang lại chân này thông qua điện trở 10k-ohm.

Chân số 11 và chân số 32: những chân này được ký hiệu là Vdd nên bọn họ cũng phải cấp mang lại nó + 5V và bạn có thể thấy những đường này có màu đỏ trong hình trên.

Chân số 12 với chân số 31: những chân này là Vss, do vậy chúng ta cấp GND (nối đất) trên chân này và những đường của nó tất cả màu đen.

Chân số 13 cùng 14: những chân này chọn cái tên là OSC1 (Bộ tạo xê dịch 1) và OSC2 (Bộ tạo xê dịch 2), bây giờ chúng ta cần gắn cỗ tạo xê dịch tinh thể (16MHz) tại các chân này trê tuyến phố màu cam. Sau bộ giao động tinh thể, chúng ta có tụ điện 33pF và tiếp nối được nối đất.

 

Chúng ta đã thi công mạch cơ phiên bản và bây giờ vi điều khiển PIC đã sẵn sàng vận động và chúng ta có thể thấy một LED được lắp ở chân số 21, đó là cũng chính vì chúng ta cũng cần kiểm tra coi nó có đang chạy hay không để bạn cũng có thể bật hoặc tắt đèn led này.

 

Các cổng PIC16F877A

Trong mạch cơ bản, họ đã sử dụng toàn bộ các chân mối cung cấp của vi điều khiển và tinh chỉnh PIC, vào khi tất cả các chân cổng vẫn còn đó chưa được sử dụng.

Vì vậy, hiện thời khi chúng ta đã cấp cho nguồn cho bộ vi tinh chỉnh PIC, điều tiếp theo chúng ta cần làm cho là kiến thiết một số code và sử dụng các cổng vi điều khiển PIC. Đầu tiên bọn họ hãy coi xét những Cổng PIC16F877a.

PIC16F877a có tổng cộng 5 Cổng là:

Cổng A: có tổng số 6 chân ban đầu từ chân số 2 đến chân số 7. Những chân cổng A được ký kết hiệu từ bỏ RA0 mang lại RA5 trong các số đó RA0 là ký hiệu của chân trước tiên của Cổng A.

Cổng B: có tổng số 8 chân ban đầu từ chân số 33 cho chân số 40. Những chân cổng B được cam kết hiệu từ bỏ RB0 cho RB7 trong số ấy RB0 là cam kết hiệu của chân thứ nhất của cổng B.

Cổng C: có tổng cộng 8 Chân. Các chân của chính nó không được thẳng sản phẩm với nhau. Tứ chân trước tiên của cổng C nằm tại vị trí chân số 15 mang lại chân số 18, còn tư chân ở đầu cuối nằm sinh sống chân số 23 mang đến chân số 26.

Cổng D: có tổng cộng 8 chân. Những chân của nó cũng không thẳng mặt hàng với nhau. Bốn chân thứ nhất của cổng D nằm ở vị trí chân số 19 cho chân số 22, trong những lúc bốn chân ở đầu cuối nằm làm việc chân số 27 mang lại chân số 30.

Xem thêm: Những Áo Đấu Đẹp Nhất Thế Giới, Top 10 Bộ Áo Đấu Đẹp Nhất Mùa Giải 2020/2021

Cổng E: có tổng số 3 chân bắt đầu từ chân số 8 cho chân số 10. Các chân cổng E được ký kết hiệu từ bỏ RE0 mang đến RE2 trong các số ấy RE0 là ký kết hiệu của chân thứ nhất của cổng E.

 

Trước hết đầy đủ gì chúng ta cần đưa ra quyết định là bạn có nhu cầu các chân cổng là đầu vào hay đầu ra.

Giả sử bạn có một số cảm ứng và bạn muốn nhận giá chỉ trị của nó thì chúng ta phải kết nối cảm biến này cùng với vi tinh chỉnh và điều khiển PIC. Trong trường vừa lòng này, chân PIC sẽ chuyển động như chân đầu vào vì nó đang nhập quý hiếm từ cảm biến. Cảm biến gửi quý hiếm và PIC dìm nó.

Trong trường hợp bạn có bộ động cơ DC và bạn có nhu cầu di chuyển động cơ DC đó bởi vi tinh chỉnh và điều khiển PIC. Các bạn phải nhờ cất hộ lệnh từ bộ vi điều khiển PIC đến hộp động cơ DC để chân PIC vận động như chân đầu ra.

 

Mỗi cổng của vi tinh chỉnh và điều khiển PIC được links với hai thanh ghi (register), ví dụ những thanh ghi cổng D là PortD với TRISD.

Cả nhị thanh ghi này đều sở hữu 8 bit bởi cổng D bao gồm 8 chân.

TRISD ra quyết định cổng là đầu ra hay đầu vào và họ cũng rất có thể gán giá chỉ trị mang đến từng chân riêng biệt. Nếu họ đã gán 0 thì nó sẽ là cổng output và nếu họ đã gán 1 thì nó sẽ là đầu vào.

Ví dụ: nếu chúng ta gán TRISD = 0x01, thì 7 chân trước tiên của cổng D vẫn là đầu ra nhưng chân cuối cùng sẽ là đầu vào vì 0x01 là 00000001 trong hệ nhị phân.

Thanh ghi PortD chứa giá trị thực và cực hiếm này là sự phối hợp của tất cả 8 chân.

 

Trình biên dịch PIC16F877a

Trình biên dịch ưng thuận của vi tinh chỉnh PIC là trình biên dịch MPLAB C18, gồm trên website chính thức của Microchip.

Chúng ta viết code vào trình biên dịch PIC và kế tiếp biên dịch nó. Sau thời điểm biên dịch, một tệp tin hex được chế tác và bọn họ sẽ sở hữu lên trong bộ vi tinh chỉnh và điều khiển PIC.

 

Cổng thông suốt PIC16F877a

PIC16F877a có một cổng tiếp nối trong đó được sử dụng để tiếp xúc dữ liệu.

Chân số 25 cũng hoạt động như TX vì vậy nếu bạn muốn thực hiện giao tiếp nối tiếp thì nó sẽ tiến hành sử dụng để gửi tài liệu nối tiếp.

Chân 26 cũng hoạt động như RX, bởi vậy nếu bạn có nhu cầu thực hiện tiếp xúc nối tiếp thì nó sẽ tiến hành sử dụng nhằm nhận tài liệu nối tiếp.

 

Giao tiếp I2C PIC16F877a

PIC16F877a cũng có một cổng I2C có thể dễ dàng thực hiện giao tiếp I2C.

Chân số 18 chuyển động như SCL, viết tắt của Serial Clock Line.

Chân số 23 vận động như SDA, là chữ viết tắt của Serial Data Line.

Bây giờ chúng ta cũng có thể thấy họ có cổng tiếp nối và cổng I2C trong cổng C, vì vậy chúng ta cũng có thể sử dụng cổng C như 1 cổng đơn giản và dễ dàng nhưng cũng có thể thực hiện nay hai giao tiếp này với những chân của nó, bởi vì vậy nó hoàn toàn phụ thuộc vào vào lập trình sẵn viên.

 

Ngắt PIC16F877a

PIC16F877a có tổng số 8 mối cung cấp ngắt. Nguồn ngắt là một số trong những sự kiện tạo nên ngắt, mối cung cấp này hoàn toàn có thể là cỗ đếm thời hạn như các ngắt được tạo ra sau mỗi 1 giây hoặc cũng hoàn toàn có thể là sự kiện đổi khác trạng thái chân, ví dụ như nếu tâm trạng chân bị biến hóa sau đó ngắt sẽ được tạo ra.

Vì vậy, ngắt PIC16F877a có thể được tạo thành bằng 8 phương pháp sau:

Ngắt ngoài.Ngắt cỗ định thời (Timer0 / Timer1).Thay thay đổi trạng thái cổng B.Cổng Slave tuy vậy song Đọc / Ghi.Bộ thay đổi A / D.Nhận / Truyền nối tiếp.PWM (CCP1 / CCP2).Thao tác ghi EEPROM.