บริัท ษอีีีทจํท ัด าก - etteam 877 workshop.pdfsleep...

36
บริษัท อีทีที จํากัด CP-PIC877 V1.0

Upload: others

Post on 10-Mar-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: บริัท ษอีีีทจํท ัด าก - Etteam 877 workshop.pdfSleep Mode-สามารถเล อกโหมดของส ญญาณนาฬ กาได-In-Circuit

บริษัท อีทีที จํากัด

CP-PIC877 V1.0

Page 2: บริัท ษอีีีทจํท ัด าก - Etteam 877 workshop.pdfSleep Mode-สามารถเล อกโหมดของส ญญาณนาฬ กาได-In-Circuit

คุณสมบัติทั่วไปของ CPU PIC 16F877

- 35 Instruction คําสั่ง- ปฏิบัติคําสั่งทั่วไปใน Cycle เดียว และ 2 Cycle ในคําสั่งการกระโดด- ทํางานที่ความถี่สูงสุด 20 MHz (16F877-20/P)- หนวยความจําโปรแกรม 8 K(14 Bit Words)- หนวยความจําขอมูล (RAM) 368 Byte- EEPROM 256 Byte- สามารถตอบสนองอินเตอรรัพท 14 แหลง- STACK 8 ระดับ

- POR, BOR, PWRT , Oscillator Start-Up Timer และWatchdog Timer- Code Protection

Page 3: บริัท ษอีีีทจํท ัด าก - Etteam 877 workshop.pdfSleep Mode-สามารถเล อกโหมดของส ญญาณนาฬ กาได-In-Circuit

- Sleep Mode- สามารถเลือกโหมดของสัญญาณนาฬิกาได- In-Circuit Serial Programming (ICSP)- สามารถโปรแกรมได ดวยแรงดัน +5V

- ทํางานไดที่ไฟเลี้ยง 2.0 V- 5.5 V- กระแสทั้งซิงก และ ซอรสของพอรต คือ 25 mA- Timer/Counter 3 ตัว Timer0,Timer1 และ Timer2- โมดูล Capture/Compare/PWM จํานวน 2 ชุด- USART- Analog to Digital Converter 10Bit 8 Channel

- พอรต I/O จํานวน 5 พอรต A,B,C,D และ E รวมทั้งสิ้น 33 Bit

Page 4: บริัท ษอีีีทจํท ัด าก - Etteam 877 workshop.pdfSleep Mode-สามารถเล อกโหมดของส ญญาณนาฬ กาได-In-Circuit

4Mhz / 4 =1Mhz 1/1Mhz = 1uS

Page 5: บริัท ษอีีีทจํท ัด าก - Etteam 877 workshop.pdfSleep Mode-สามารถเล อกโหมดของส ญญาณนาฬ กาได-In-Circuit
Page 6: บริัท ษอีีีทจํท ัด าก - Etteam 877 workshop.pdfSleep Mode-สามารถเล อกโหมดของส ญญาณนาฬ กาได-In-Circuit

MCLR/VPP RB7/PGD RA0/AN0 RB6/PGC RA1/AN1 RB5RA2/AN2/VREF- RB4RA3/AN3/VREF+ RB3/PGM RA4/T0CKI RB2RA5/SS/AN4 RB1RE0/RD/AN5 RB0/INT RE1/WR/AN6 VDDRE2/CS/AN7 VSSVDD RD7/PSP7 VSS RD6/PSP6OSC1/CLKIN RD5/PSP5OSC2/CLKOUT RD4/PSP4RC0/T1OSO/T1CKI RC7/RX/DT RC1/T1OSI/CCP2 RC6/TX/CK RC2/CCP1 RC5/SDO RC3/SCK/SCL RC4/SDI/SDA RD0/PSP0 RD3/PSP3RD1/PSP1 RD2/PSP2

PIC16F877

Page 7: บริัท ษอีีีทจํท ัด าก - Etteam 877 workshop.pdfSleep Mode-สามารถเล อกโหมดของส ญญาณนาฬ กาได-In-Circuit
Page 8: บริัท ษอีีีทจํท ัด าก - Etteam 877 workshop.pdfSleep Mode-สามารถเล อกโหมดของส ญญาณนาฬ กาได-In-Circuit

การจัดสรรพื้นที่หนวยความจํา และ รีจิสเตอรตางๆ

1. หนวยความจําโปรแกรม 8 Kwords

2. หนวยความจําขอมูล RAM 368 Byte

3. หนวยความจําขอมูล EEPROM 256 Byte

Page 9: บริัท ษอีีีทจํท ัด าก - Etteam 877 workshop.pdfSleep Mode-สามารถเล อกโหมดของส ญญาณนาฬ กาได-In-Circuit

หนวยความจําโปรแกรม

Page 10: บริัท ษอีีีทจํท ัด าก - Etteam 877 workshop.pdfSleep Mode-สามารถเล อกโหมดของส ญญาณนาฬ กาได-In-Circuit

หนวยความจําขอมูล

Page 11: บริัท ษอีีีทจํท ัด าก - Etteam 877 workshop.pdfSleep Mode-สามารถเล อกโหมดของส ญญาณนาฬ กาได-In-Circuit

Bank 0 : 00h - 7FhBank 1 : 80h - FFhBank 2 : 100h - 17FhBank 3 : 180h – 1FFh

0101

0011

Bank SelectRP0RP1

Page 12: บริัท ษอีีีทจํท ัด าก - Etteam 877 workshop.pdfSleep Mode-สามารถเล อกโหมดของส ญญาณนาฬ กาได-In-Circuit

DIRECT/INDIRECT ADDRESSING

Page 13: บริัท ษอีีีทจํท ัด าก - Etteam 877 workshop.pdfSleep Mode-สามารถเล อกโหมดของส ญญาณนาฬ กาได-In-Circuit

MOVLW 0X20 ; Initialize pointer

MOVWF FSR ; to RAM

NEXT CLRF INDF ; clear INDF

INCF FSR,F ; inc pointer

BTFSS FSR,4 ; all done?

GOTO NEXT ; no clear next

CONTINUE

: ; Yes continue

Page 14: บริัท ษอีีีทจํท ัด าก - Etteam 877 workshop.pdfSleep Mode-สามารถเล อกโหมดของส ญญาณนาฬ กาได-In-Circuit

3. หนวยความจําขอมูล EEPROM

มี จํานวน 256 ไบต สามารถอานและเขียนได โดยผาน รีจิสเตอรฟงกชั่นพิเศษ 4 ตัวคือ

EECON1 : ควบคุมการเขาถึงหนวยความจํา

EECON2 : จัดลําดับการเขียนขอมูล

EEDATA : เปนบัฟเฟอรใชเก็บขอมูล 8 บิต สําหรับการอานและเขียน

EEADR : รีจิสเตอรสําหรับเก็บแอดเดรส 00h – FFh (256 Byte)

Page 15: บริัท ษอีีีทจํท ัด าก - Etteam 877 workshop.pdfSleep Mode-สามารถเล อกโหมดของส ญญาณนาฬ กาได-In-Circuit

FLASH Program FLASH Program and Data EEPROM Memoryand Data EEPROM Memory

S. F. R.

256 X 8Data

EEPROMMemory

EEADRH EEADR

EEDATH EEDATA

EECON1

EECON2

13 8

8FLASH Program

Memory

8K X 14 14

Page 16: บริัท ษอีีีทจํท ัด าก - Etteam 877 workshop.pdfSleep Mode-สามารถเล อกโหมดของส ญญาณนาฬ กาได-In-Circuit

FLASH Program & Data EEPROM: EECON1Register

FLASH Program & Data EEPROM: EECON1Register

EEPGD - - - WRERR WREN WR RDbit7 bit0

EEPGD: Program / Data EEPROM Select Bit1 = Accesses Program Memory0 = Accesses Data Memory

WRERR: EEPROM Error Flag Bit1 = A write operation is prematurely terminated0 = The write operation completed

WREN: EEPROM Write Enable Bit1 = Allows write cycles0 = Inhibits write to the EEPROM

WR: Write Control Bit1 = Initiates a write cycle (cleared by hardware only)0 = Write cycle to the EEPROM is complete

RD: Read Control Bit1 = Initiates a read cycle (cleared by hardware only)0 = Read cycle from the EEPROM is complete

Page 17: บริัท ษอีีีทจํท ัด าก - Etteam 877 workshop.pdfSleep Mode-สามารถเล อกโหมดของส ญญาณนาฬ กาได-In-Circuit

รีจิสเตอร STATUS

Page 18: บริัท ษอีีีทจํท ัด าก - Etteam 877 workshop.pdfSleep Mode-สามารถเล อกโหมดของส ญญาณนาฬ กาได-In-Circuit

รีจิสเตอร OPTION

Page 19: บริัท ษอีีีทจํท ัด าก - Etteam 877 workshop.pdfSleep Mode-สามารถเล อกโหมดของส ญญาณนาฬ กาได-In-Circuit

รีจิสเตอร W (Working Register)รีจิสเตอร PC (Program Counter)

2 13 = 8192 (8KByte)

2 11 = 2048 (2KByte)

Page 20: บริัท ษอีีีทจํท ัด าก - Etteam 877 workshop.pdfSleep Mode-สามารถเล อกโหมดของส ญญาณนาฬ กาได-In-Circuit
Page 21: บริัท ษอีีีทจํท ัด าก - Etteam 877 workshop.pdfSleep Mode-สามารถเล อกโหมดของส ญญาณนาฬ กาได-In-Circuit

Program Memory

Page 0Page 1Page 2Page 3

Page

0101

0011

PCLATH<3>PCLATH<4>

Page 22: บริัท ษอีีีทจํท ัด าก - Etteam 877 workshop.pdfSleep Mode-สามารถเล อกโหมดของส ญญาณนาฬ กาได-In-Circuit

สวนประกอบและขอจํากัดตางๆ ของบอรด CP-PIC877 V1.0

Page 23: บริัท ษอีีีทจํท ัด าก - Etteam 877 workshop.pdfSleep Mode-สามารถเล อกโหมดของส ญญาณนาฬ กาได-In-Circuit

RS-232

RS-422/RS-485

Page 24: บริัท ษอีีีทจํท ัด าก - Etteam 877 workshop.pdfSleep Mode-สามารถเล อกโหมดของส ญญาณนาฬ กาได-In-Circuit

Addressable USART: Multi-Drop Serial Interface

Addressable USART: Multi-Drop Serial Interface

SLAVE 1PIC16F87X

SLAVE 2PIC16F87X

SLAVE N-1PIC16F87X

SLAVE NPIC16F87X

MASTERPIC16F877

2 Wire RS-485

•••

Page 25: บริัท ษอีีีทจํท ัด าก - Etteam 877 workshop.pdfSleep Mode-สามารถเล อกโหมดของส ญญาณนาฬ กาได-In-Circuit

Tx+Tx-Rx+Rx-

Tx+Tx-

Rx+Rx-

Rt

Rt

การตอ RS-422 แบบ Full Duplex

Rx+/Tx+

Rx-/Tx-

Rx+/Tx+Rx-/Tx-

การตอ RS-485 แบบ Half Duplex

Page 26: บริัท ษอีีีทจํท ัด าก - Etteam 877 workshop.pdfSleep Mode-สามารถเล อกโหมดของส ญญาณนาฬ กาได-In-Circuit

10-Bit A/D Module:Features

10-Bit A/D Module:Features

PIC16F87X devices have a 10-bit A/D (+/- 1 LSB)

• A/D Result High Register (ADRESH)

• A/D Result Low Register (ADRESL)

• A/D Control Register0 (ADCON0)

• A/D Control Register1 (ADCON1)

PIC16F87X devices have a 10-bit A/D (+/- 1 LSB)

• A/D Result High Register (ADRESH)

• A/D Result Low Register (ADRESL)

• A/D Control Register0 (ADCON0)

• A/D Control Register1 (ADCON1)

Page 27: บริัท ษอีีีทจํท ัด าก - Etteam 877 workshop.pdfSleep Mode-สามารถเล อกโหมดของส ญญาณนาฬ กาได-In-Circuit
Page 28: บริัท ษอีีีทจํท ัด าก - Etteam 877 workshop.pdfSleep Mode-สามารถเล อกโหมดของส ญญาณนาฬ กาได-In-Circuit

10-Bit A/D Module: Left/Right Justification of A/D Result

10-Bit A/D Module: Left/Right Justification of A/D Result

10-Bit Result

ADFM = 1ADFM = 0

ADRESH ADRESL

0000 0002 1 0 77

10-Bit Result

Right Justified

ADRESH ADRESL

10-Bit Result

00 00007 0 7 6 5 0

Left Justified

Page 29: บริัท ษอีีีทจํท ัด าก - Etteam 877 workshop.pdfSleep Mode-สามารถเล อกโหมดของส ญญาณนาฬ กาได-In-Circuit

RTC (Real Time Clock) #DS1307

Page 30: บริัท ษอีีีทจํท ัด าก - Etteam 877 workshop.pdfSleep Mode-สามารถเล อกโหมดของส ญญาณนาฬ กาได-In-Circuit
Page 31: บริัท ษอีีีทจํท ัด าก - Etteam 877 workshop.pdfSleep Mode-สามารถเล อกโหมดของส ญญาณนาฬ กาได-In-Circuit

EEPROM 24XX

การตอจะตอผานระบบบัสของ I2CBUS เหมือนกับ RTC แตการรับสงขอมูลจะไมเกิดปญหา เนื่องจาก อุปกรณทั้งสองจะมีแอดเดรสตางกัน

LCD 14 PIN

1. GND2. +Vcc3. Vo4. RS

5. GND 6. R/W7. GND 8. GND9. GND 10. GND11. D4 12.D513. D6 14. D7

Page 32: บริัท ษอีีีทจํท ัด าก - Etteam 877 workshop.pdfSleep Mode-สามารถเล อกโหมดของส ญญาณนาฬ กาได-In-Circuit

การดาวนโหลดโปรแกรม

Page 33: บริัท ษอีีีทจํท ัด าก - Etteam 877 workshop.pdfSleep Mode-สามารถเล อกโหมดของส ญญาณนาฬ กาได-In-Circuit
Page 34: บริัท ษอีีีทจํท ัด าก - Etteam 877 workshop.pdfSleep Mode-สามารถเล อกโหมดของส ญญาณนาฬ กาได-In-Circuit
Page 35: บริัท ษอีีีทจํท ัด าก - Etteam 877 workshop.pdfSleep Mode-สามารถเล อกโหมดของส ญญาณนาฬ กาได-In-Circuit
Page 36: บริัท ษอีีีทจํท ัด าก - Etteam 877 workshop.pdfSleep Mode-สามารถเล อกโหมดของส ญญาณนาฬ กาได-In-Circuit