intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng Chương 2: Cấu trúc phần cứng PIC16F877A

Chia sẻ: Nguyễn Nguyễn | Ngày: | Loại File: PDF | Số trang:39

177
lượt xem
18
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Bài giảng Chương 2: Cấu trúc phần cứng PIC16F877A cung cấp cho các bạn những kiến thức về cấu trúc tổng quát của PIC16F877A; sơ đồ chức năng và các chân PIC16F877A; tổ chức bộ nhớ của phần cứng PIC16F877A. Mời các bạn tham khảo bài giảng để nắm bắt nội dung về lĩnh vực này, với các bạn chuyên ngành Công nghệ thông tin thì đây là tài liệu hữu ích.

 

Chủ đề:
Lưu

Nội dung Text: Bài giảng Chương 2: Cấu trúc phần cứng PIC16F877A

  1. CHƯƠNG 2: CẤU TRÚC PHẦN CỨNG PIC16F877A 1. Cấu trúc tổng quát của PIC16F877A  8K x 14 words 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 chaân.  2 Boä ñònh thôøi 8 bit Timer 0 vaø Timer 2.  1 Boä ñònh thôøi 16 bit Timer 1, coù thể hoaït ñoäng ôû cheá ñoä tieát kieäm naêng löôïng (SLEEP MODE) vôùi nguồn xung clock ngoaøi.  2 Boä Capture/ Compare/ PWM. • (Baét Giöõ/ So Saùnh/ Ñieàu Bieán Xung) 1 Boä bieán ñoåi Analog to Digital 10 bit, 8 ngoõ vaøo .
  2. CHƯƠNG 2: CẤU TRÚC PHẦN CỨNG PIC16F877A  2 Boä so saùnh tương tự (Compartor)ï.  1 Boä ñònh thôøi giaùm saùt (Watch Dog Timer).  1 Coång giao tieáp song song 8 bit.  1 Port noái tieáp.  15 Nguoàn ngaét (Interrupt).  Cheá ñoä tieát kieäm naêng löôïng (Sleep Mode).  Naïp tröông trình baèng coång noái tieáp ( ICSP™ ) (In-Circuit Serial Programming™ -)  Taäp leänh gồm 35 lệnh coù ñoä daøi 14 bit.  Taàn soá hoaït ñoäng toái ña 20 MHz.
  3. CHƯƠNG 2: CẤU TRÚC PHẦN CỨNG PIC16F877A 2. Sơ đồ và chức năng các chân PIC16F877A PIC16F877A laø hoï Vi ñieàu khieån coù 40 chaân
  4. CHƯƠNG 2: CẤU TRÚC PHẦN CỨNG PIC16F877A 2.1 PORTA và thanh ghi TRISA  Port A goàm 6 chaân töø RA0-RA5.  Vieäc ghi caùc giaù trò vaøo thanh ghi TRISA seõ qui ñònh caùc chaân cuûa PortA. Neáu bằng 0: ngoõ Output, bằng 1: ngoõ Input.  Rieâng chaân RA4 : tích hôïp theâm chöùc naêng laø chaân cung caáp xung clock ngoaøi cho Timer 0 (RA4/T0CKI).  Caùc chaân coøn laïi cuûa PortA ñöôïc ña hôïp vôùi caùc chaân ngoõ vaøo Analog cuûa ADC vaø chaân ngoõ vaøo ñieän aùp so saùnh cuûa Boä so saùnh Comparator.
  5. CHƯƠNG 2: CẤU TRÚC PHẦN CỨNG PIC16F877A a. Bảng chức năng Port A b. Các thanh ghi có liên hệ với Port A
  6. CHƯƠNG 2: CẤU TRÚC PHẦN CỨNG PIC16F877A 2.2 PORTB và thanh ghi TRISB  Port B goàm 8 chaân töø RB7-RB0.  Caùc giaù trò thanh ghi TRISB qui ñònh Port B  3 chaân ñöôïc ña hôïp vôùi chöùc naêng In-Circuit Debugger vaø Low Voltage Programming function: RB3/PGM, RB6/PGC vaø RB7/PGD  4 chaân RB7-RB4 laøm taùc nhaân Ngaét khi traïng thaùi caùc chaân naøy thay ñoåi. (Neáu PortB laø Output thì chöùc naêng ngaét khoâng hoaït ñoäng)  Moãi chaân Port B seõ ñöôïc treo leân Vdd khi ta xoùa bit RBPU\ (OPTION). Tính naêng naøy khoâng coù khi Port B laø Input.
  7. CHƯƠNG 2: CẤU TRÚC PHẦN CỨNG PIC16F877A a. Bảng chức năng Port B b. Các thanh ghi có liên hệ với Port B
  8. CHƯƠNG 2: CẤU TRÚC PHẦN CỨNG PIC16F877A 2.3 PORTC và thanh ghi TRISC  Port C goàm 8 chaân töø RC7-RC0.  Caùc giaù trò thanh ghi TRISC seõ qui ñònh caùc chaân cuûa PortC.  Caùc chaân cuûa PortC ñöôïc ña hôïp vôùi caùc chöùc naêng ngoaïi vi. Chuù yù: -Vaøi chöùc naêng ngoïai vi seõ ghi caùc giaù trò 0 vaøo thanh ghi TRISC vaø maëc ñònh laø Output, nhöng moät soá chöùc naêng ngoaïi vi khaùc seõ töï ñoäng maëc ñònh laø caùc chaân Input. - Do ñoù ngöôøi söû duïng phaûi xem xeùt kyõ caùc tính naêng cuûa caùc haøm chöùc naêng ngoaïi vi, ñeå thieát laäp caùc Bit thanh ghi TRISC cho chính xaùc.
  9. CHƯƠNG 2: CẤU TRÚC PHẦN CỨNG PIC16F877A a. Bảng chức năng Port C b. Các thanh ghi có liên hệ với Port C
  10. CHƯƠNG 2: CẤU TRÚC PHẦN CỨNG PIC16F877A 2.4 PORTD và thanh ghi TRISD  Port D goàm 8 chaân töø RD7-RD0.  Caùc giaù trò thanh ghi TRISD seõ qui ñònh caùc chaân cuûa PortD. Neáu bằng 0: ngoõ Output, baèng 1: ngoõ Input.  Ngoaøi chöùc naêng laø Port xuaát / nhaäp, Port D coøn ñöôïc caáu hình nhö moät Port vi xöû lyù 8 bit (parallel slave port) baèng caùch set bit PSPMODE (TRISE).
  11. CHƯƠNG 2: CẤU TRÚC PHẦN CỨNG PIC16F877A a. Bảng chức năng Port D b. Các thanh ghi có liên hệ với Port D
  12. CHƯƠNG 2: CẤU TRÚC PHẦN CỨNG PIC16F877A 2.5 PORTE và thanh ghi TRISE  Port E goàm 3 chaân töø RE2-RE0.  Caùc giaù trò thanh ghi TRISE seõ qui ñònh caùc chaân cuûa PortE. Neáu bằng 0: ngoõ Output, baèng 1: ngoõ Input.  Caùc chaân PortE ñoùng vai troø laø caùc chaân ngoõ vaøo ñieàu khieån khi söû duïng Port vi xöû lyù neáu bit PSPMODE (TRISE) ñöôïc Set leân 1 vaø PortE trong tröôøng hôïp naøy phaûi laø Input.  Ngoaøi ra, caùc chaân cuûa PortE coøn coù chöùc naêng laø caùc ngoõ vaøo Analog, taïi cheá ñoä naøy phaûi caáu hình PortE laø Input vaø khi ñoïc traïng thaùi caùc chaân cuûa Port E seõ cho ta giaù trò 0.
  13. CHƯƠNG 2: CẤU TRÚC PHẦN CỨNG PIC16F877A a. Bảng chức năng Port E b. Các thanh ghi có liên hệ với Port E
  14. CHƯƠNG 2: CẤU TRÚC PHẦN CỨNG PIC16F877A c. Thanh ghi TRISE  Bit 7 IBF: Bit traïng thaùi baùo Buffer ngoõ vaøo ñaày. 1 = Moät Word (16Bit) ñöôïc nhaän vaøo vaø ñang ñöôïc ñoïc bôûi CPU 0 = Khoâng Word ñöôïc nhaän vaøo  Bit 6 OBF: Bit traïng thaùi baùo Buffer ngoõ ra ñaày. 1 = Buffer ngoõ ra vaãn coøn giöõ 1 Word ñaõ ñöôïc ghi tröôùc ñoù. 0 = Buffer ngoõ ra ñaõ ñöôïc ñoïc  Bit 5 IBOV: Bit baùo traïng thaùi Buffer ngoõ vaøo traøn (trong cheá ñoä port vi xöû lyù). 1 = Một chu kyø ghi môùi baét ñaàu nhöng giaù trò cuõ vaãn coøn trong buffer (phaûi ñöôïc xoùa baèng phaàn meàm). 0 = khoâng coù traøn  Bit 4 PSPMODE: Bit choïn cheá ñoä coång song song cho Port D. 1 = PORTD ñöôïc caáu hình ôû cheá ñoä coång song song. 0 = PORTD ñöôïc caáu hình ôû cheá ñoä xuaát nhaäp thoâng thöôøng.
  15. CHƯƠNG 2: CẤU TRÚC PHẦN CỨNG PIC16F877A 2.6 Chân OSC1- OSC2 PIC 16F877A coù boä dao ñoäng hoaït ñoäng ôû 4 tröôøng hôïp: - LP Low Power Crystal - XT Crystal/Resonator - HS High Speed Crystal/Resonator - RC Resistor/Capacitor RC LP, XT, HS
  16. CHƯƠNG 2: CẤU TRÚC PHẦN CỨNG PIC16F877A 2.7 Chân MCLR (Master Reset) - Chaân MCLR\ laø chaân reset ôû möùc thaáp. - Ña hôïp vôùi chaân Vpp laø chaân nhaän ñieän aùp trong cheá ñoä laäp trình cho PIC. 2.8 Chân cấp nguồn PIC 16F877A hoaït ñoäng vôùi ñieän aùp +5V. - Hai chaân VDD (soá 11 vaø 32) noái vôùi cöïc döông nguoàn 5V - Hai chaân VSS (soá 12 vaø 31) noái vôùi Mass Tất cả 4 chaân naøy ñeàu phaûi ñöôïc keát noái thì PIC môùi hoaït ñoäng.
  17. CHƯƠNG 2: CẤU TRÚC PHẦN CỨNG PIC16F877A 3. TỔ CHỨC BỘ NHỚ PIC16F877A bao gồm 3 khoái boä nhôù rieâng bieät: - Boä nhôù chöông trình (Program Memory) - Boä nhôù döõ lieäu (Data Memory) - Boä nhôù döõ lieäu EEPROM (EEPROM data Memory)
  18. CHƯƠNG 2: CẤU TRÚC PHẦN CỨNG PIC16F877A 3.1 Bộ nhớ chương trình - Goàm coù 8K x 14 words boä nhôù Flash ROM. - Goàm 1 thanh ghi boä ñeám chöông trình 13 bit (PC). (Program Counter) - Vector Reset ñaët taïi 0000h khi xảy ra Reset. - Vector Ngaét ñaët taïi 0004h khi xảy ra Ngắt.
  19. CHƯƠNG 2: CẤU TRÚC PHẦN CỨNG PIC16F877A a. Thanh ghi PC (Program Counter)  Coù ñoä roäng 13bit, 8bit thaáp ñöôïc chöùa trong thanh ghi PCL, 5 bit cao thì khoâng theå ñoïc nhöng coù theå ghi giaùn tieáp vaøo PCH thoâng qua thanh ghi PCLATH. Khi Reset thì 5 bit cao naøy bò xoùa  Hình beân trình baøy caùch thöùc thanh ghi PC ñöôïc naïp giaù trò qua caùc leänh CALL vaø GOTO.
  20. CHƯƠNG 2: CẤU TRÚC PHẦN CỨNG PIC16F877A b. Ngăn xếp (STACK)  PIC16F877A coù goàm 8 ngaên xeáp coù ñoä roäng 13 bit, con troû ngaên xeáp khoâng theå Ghi hay Ñoïc.  Ñòa chæ cuûa PC ñöôïc caát vaøo ngaên xeáp khi thöïc hieän leänh CALL hay khi Ngaét xaûy ra.  Döõ lieäu cuûa Ngaên xeáp ñöôïc laáy ra khi thöïc hieän caùc leänh RETURN, RETLW vaø RETFIE  Thanh ghi PCLATH khoâng bò aûnh höôûng khi caát vaø laáy data töø Ngaên xeáp.  Ngaên xeáp hoaït ñoäng theo voøng kín, nghóa laø khi caát data vaøo ngaên xeáp laàn thöù 9 seõ ghi choàng leân data laàn thöù 1,….
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2