Download presentation
Presentation is loading. Please wait.
Published byRosemary Norton Modified over 9 years ago
1
PIC microcontrollers
2
PIC Microcontrollers Families Eigenschappen De PIC16C84 Eigenschappen Pinnen Interne structuur Instructieset De PIC16F877 Eigenschappen Interne structuur
3
De PIC controller Families –PIC 16C5x reeks –PIC 16Cxxx reeks –PIC 17Cxxx reeks –PIC 18Cxxx reeks Met welke hebben wij te maken ? –PIC 16C84 –PIC 16F877 –12 bit program word –14 bit program word –16 bit program word
4
PIC Microcontrollers Families Eigenschappen De PIC16C84 Eigenschappen Pinnen Interne structuur Instructieset De PIC16F877 Eigenschappen Interne structuur
5
Eigenschappen Harvard Architectuur –Program en Data Memory gebruiken verschillende bus Long Word instructions Single Word instructions Single Cycle instructions Instruction Pipelining Reduced Instruction Set Register File Architecture: –bv. 16C84 heeft 36 8-bits registers Orthogonal (symmetric) instructions –Alle instructies kunnen op elk register gebruikt worden
6
RISC eigenschappen
7
Harvard structuur
8
PIC Microcontrollers Families Eigenschappen De PIC16C84 Eigenschappen Pinnen Interne structuur Instructieset De PIC16F877 Eigenschappen Interne structuur
9
De PIC 16C84 - eigenschappen Eigenschappen –35 instructies –1K-woord EEPROM –36 8-bit interne registers –64 bytes 8-bit RAM –Hardware stack met 8 levels voor jumps –4 interrupt levels –External INT op pin RB0 –TMR0 overflow –Port B (pins 7:4) change –EEPROM write –15 special functions hardware registers –Directe, indirecte en relatieve adressering
10
De PIC 16C84 - pinning Pinning –13 I/O pinnen –20 mA current sink LEDs direct aan te sturen –External interrupt op RB0 –Timer en oscillator pinnen
12
De PIC 16C84 - memory 2 memory blockken –Program memory –Data memory Program memory –13 bit 8K woorden –Slechts 1K ingevuld –Reset vector op 0000h –Interrupt vector op 0004h
13
De PIC 16C84 - memory Data memory verdeeld in –Special functions register (SFR) –General purpose SRAM –EEPROM memory Banked SFR –Keuze via het status register
14
De PIC 16C84 – program counter Addressering in het program memory Program counter (13 bits) = PCH (5bit) + PCL (8bit) PCL is read/write PCL heeft memory boundary van 256 bytes PCH comes from PCLATH register Vb. 16C84 heeft 1K CALL en GOTO hebben 11 bit address Controleer of PAGE BITS juist staan !
15
PIC 16C84 – PORT A Twee poorten : PORTA en PORTB Selectie van Input of Output door TRIS register –TRISA en TRISB –TRISA bit = 1 INPUT –TRISA bit = 0 OUTPUT Soorten pinnen –RA3:RA0 push-pull –RA4 open collector
16
PIC 16C84 – PORT B Selectie van Input of Output door TRISB register –TRISA en TRISB –TRISB bit = 1 High Z –TRISB bit = 0 OUTPUT Soorten pinnen –RB7:RB4 geven interrupt
17
PIC 16C84 – Timer Instelling gestuurd door OPTION register Functies: 8 bit read/write 8 bit prescaler Select : internal or external clock Interrupt on overflow
18
PIC 16C84 – Speciale functies EEPROM programmeerbaar in normale werking In-circuit serial programming Watchdog timer Power-up timer Code protection SLEEP mode voor low-current operation Clock met crystal of goedkoop RC circuit
19
PIC 16C84 – programmatie Definities –f : register file address, gaat van 0x00 tot 0x7f –b : bit address within an 8- bit file register –W: Working register (Accumulator) –d : destination Als d=0 : result in W Als d=1 : result in file register (default) –k : constant or label
20
PIC 16C84 – instruction set Algemeen Bit-oriented
21
PIC 16C84 – instruction set Literal and Control Voorbeeld: wis geheugen van 0x20 tot 0x2F movlw0x20;initialize W register B0010 0000 movwfFSR;put in FSR register LOOPclrfINDF;clear indirect with FSR incfFSR;increment FSR register btfssFSR,7;bit 7 test, skip if set gotoLOOP;if NO, goto LOOP CONTINUE :;if YES, continue :
22
PIC 16C84 – Vb. instructies MOVF reg7equ07h Wequ0 movfreg7,W
23
PIC 16C84 – Vb. instructies MOVWF
24
PIC 16C84 – Vb. instructies MOVLW
25
PIC 16C84 – Vb. gebruik Verwissel inhoud van w met de inhoud van reg Kortere methode movwftemp1;save w movfreg,W;save reg movwftemp2 movftemp1,W;old (w) -> reg movwfreg movftemp2,W;old (reg) -> w ; w = 1010 1010AA ; reg =0101 010155 xorwfreg,F;w = AA, reg = FF xorwfreg,W;w = 55, reg = FF xorwfreg,F;w = 55, reg = AA
26
PIC 16C84 – toepassing 1: seriële poort
27
PIC 16C84 – toepassing 2: LCD display
28
PIC Microcontrollers Families Eigenschappen De PIC16C84 Eigenschappen Pinnen Interne structuur Instructieset De PIC16F877 Eigenschappen Interne structuur
29
De PIC 16F877 Complexer 40 pins IC 8 K Woord (14 bit) Program memory 368 Bytes data memory 256 Bytes EEPROM Ook hier slechts 35 instructies. Speciale functies: –10 kanaals 8-bit analog input –SPI seriële poort –USART seriële communicatie –Brown-out detection –In-circuit programmable
31
PIC 16F877 - geheugen Program Memory Banked memory: instelbaar met het STATUS register
32
PIC 16F877 - geheugen Data Memory
33
PIC 16F877 – I/O poorten 3 Input/Output poorten –PORT A : push-pull op RA3:RA0 en RA5 Open collector op RA4
34
PIC 16F877 – I/O poorten PORT B : High Z inputs RB7:RB4 aangesloten op de interrupt
35
PIC 16F877 – I/O poorten PORT C : TRIS C=1 : INPUT TRIS C=0 : OUTPUT Meerdere functies. O.a. Schmitt trigger
36
PIC 16F877 – I/O poorten Andere poorten: –PORT D/TRIS D: Schmitt-trigger input buffer –PORT E/TRIS E : Schmitt-trigger input buffers –Analoge ingangen: verspreid over andere poorten
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.